我正在尝试使用 Harbormaster 和 Drydock 创建一个简单的构建计划:
每当提交时,都应触发构建计划Deployment
。这可以通过 Harold 轻松完成。
构建计划Deployment
包含一些运行命令的构建步骤。
我知道 Drydock 和 Harbormaster 是原型,因此似乎没有太多文档。
首先,我创建了一个构建计划,并添加了两个构建步骤进行测试:
Lease Host
构建步骤,localhost
为名称,linux
为平台Run Command
构建步骤,php /var/www/ci/test.php
为命令,localhost
为主机但是手动启动后的错误信息是:
exception 'Exception' with message 'Lease has been broken!' in /var/www/phabricator/src/applications/drydock/storage/DrydockLease.php:172
Stack trace:
#0 /var/www/phabricator/src/applications/drydock/storage/DrydockLease.php(198): DrydockLease::waitForLeases(Array)
#1 /var/www/phabricator/src/applications/harbormaster/step/HarbormasterLeaseHostBuildStepImplementation.php(32): DrydockLease->waitUntilActive()
#2 /var/www/phabricator/src/applications/harbormaster/worker/HarbormasterTargetWorker.php(52): HarbormasterLeaseHostBuildStepImplementation->execute(Object(HarbormasterBuild), Object(HarbormasterBuildTarget))
#3 /var/www/phabricator/src/infrastructure/daemon/workers/PhabricatorWorker.php(91): HarbormasterTargetWorker->doWork()
#4 /var/www/phabricator/src/infrastructure/daemon/workers/storage/PhabricatorWorkerActiveTask.php(162): PhabricatorWorker->executeTask()
#5 /var/www/phabricator/src/infrastructure/daemon/workers/PhabricatorTaskmasterDaemon.php(22): PhabricatorWorkerActiveTask->executeTask()
#6 /var/www/libphutil/src/daemon/PhutilDaemon.php(183): PhabricatorTaskmasterDaemon->run()
#7 /var/www/libphutil/scripts/daemon/exec/exec_daemon.php(125): PhutilDaemon->execute()
#8 {main}
有人能给我一些提示,说明如何使用 Harbormaster 和 Drydock 在localhost上运行命令吗?
答案 0 :(得分:0)
问题是我没有通过 Drydock 创建任何资源。在这里,您可以使用 Harbormaster 和 Drydock 执行命令:
Blueprint 4711
)。K123
)。通过本地主机的CLI创建 Drydock资源:
./bin/drydock create-resource --blueprint 4711 --name localhost --attributes host=localhost,platform=linux,remote=true,port=22,path=/var/drydock,credential=123
创建 Harbormaster构建计划。
Lease Host
)添加到构建计划,将 Drydock蓝图用作Artifact
和linux
Platform
。Run Command
)添加第二个构建步骤 Host
。将服务器本身用于CD / CI可能只是小型安装的一种选择。
答案 1 :(得分:0)
您可能对我在Wikibooks上发布的涵盖了大多数方面的出色指南感兴趣。如果您想了解年历,Drydock和Harbormaster如何相互配合:
https://en.wikibooks.org/wiki/Phabricator_Administrator%27s_Handbook/Continuous_integration
当然,您会发现一些屏幕截图和不错的模式,例如:
该指南以某种方式扩展了官方文档,此外,还包括“疑难解答”部分(涵盖了您的确切问题!)。
祝您阅读愉快!