使用 Laravel Envoy 部署到多个服务器时,如何指定每个服务器的项目根目录?文档中提供的示例假设项目根目录对于两台服务器来说是相同的路径。
Assume web-1
项目根目录为/var/html/www
and web-2
项目根目录为/var/foo/bar
。如何在运行时访问不同服务器的项目根目录?
有多种方法可以使用 Laravel Envoy 来实现您想要实现的目标。例如,根据您的描述,运行后,类似以下内容将在您的 Envoy.blade.php 文件中起作用envoy run deploy
.
@servers(['web-1' => '127.0.0.1', 'web-2' => '127.0.0.1'])
@setup
function logMessage($message) {
return "echo '\033[32m" .$message. "\033[0m';\n";
}
@endsetup
@story('deploy')
deploy-web-1
deploy-web-2
@endstory
@task('deploy-web-1', ['on' => ['web-1']])
cd /Users/Shared
{{ logMessage('???? Task complete for web-1') }}
@endtask
@task('deploy-web-2', ['on' => ['web-2']])
cd /Users/khill
{{ logMessage('???? Task complete for web-2') }}
@endtask
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)