如果Ghost Inspector测试使用deploy钩子执行失败,是否可以中止Heroku部署?我知道部署钩子并不等待钩子的回答,但有什么办法可以实现这一目标吗?如果Ghost Inspector失败,我可以中止Heroku部署吗?
1
A
回答
1
您可以利用发布阶段,该阶段允许您在部署新版本应用程序之前运行任何脚本。
首先,你需要添加这样一行到您的Procfile
release: bin/check-ghost-inspector-test
这是假设你有bin
目录中的项目内,可执行脚本check-ghost-inspector-test
。此脚本将在应用程序构建,配置变更,回滚等后运行。如果脚本返回状态为0,则会部署您的应用程序。否则,发布阶段将失败,您的应用将不会部署。
知道您应该实施该脚本来为您的测试的当前状态轮询Ghost Inspector。如果测试成功,退出时状态为0.如果你有失败,退出的状态不为0。我猜测可以通过发送commit sha来通过一些Ghost Inspector API获取测试运行状态。你必须选择,让电流在您提交赛道SHA:
- 运行
heroku labs:enable runtime-dyno-metadata -a <app name>
启用赛道元数据的实验室功能。这会将几个配置变量注入你的dyno。其中之一是HEROKU_SLUG_COMMIT
。 - 添加this buildpack,将注入
SOURCE_VERSION
config var。
这种方法的缺点是,您需要通过config vars传递Ghost Inspector API的一些凭据。
我能想到的另一个解决方案是为Continuous Delivery设置一些专用解决方案,并且只有在测试通过时调用新部署。
相关问题
- 1. Heroku部署失败
- 2. Heroku部署失败
- 3. 部署到Heroku时失败
- 4. 部署到Heroku时失败
- 5. 失败部署到heroku
- 6. 如果Travis失败,我可以防止git push吗?
- 7. Heroku的部署失败的MySQL耙中止同一个文件
- 8. Heroku部署失败在可发布 - 要求登录到heroku
- 9. 如果子查询失败,可以让MySQL成功吗?如果子查询成功,我可以失败吗?
- 10. circleci部署到heroku失败git推
- 11. python/django:部署到heroku失败
- 12. 播放2x webjars部署到heroku失败
- 13. Heroku部署Django应用程序失败
- 14. 的Rails 3.1.1部署到Heroku的失败
- 15. Heroku上的Symfony 3部署失败
- 16. msdeploy - 如果预同步失败,在postync中停止部署
- 17. 可以”部署在Heroku
- 18. 我可以将简单的旧.war文件部署到Heroku吗?
- 19. 由于sqlite3失败,将ROR部署到heroku失败
- 20. 部署失败
- 21. 部署失败
- 22. 如果Socket.Connect失败,我可以说域不存在吗?
- 23. PHP:如果标题位置失败,我们可以绕过吗?
- 24. windows:如果ReadFile失败,我可以再次ReadFile吗?
- 25. Force Octopus部署步骤失败,如果PostDeploy Powershell脚本失败
- 26. 我可以从_pre_put_hook导致失败吗?
- 27. 我可以XCOPY部署Windows服务吗?
- 28. Turbogears2应用程序可以在Heroku中部署吗?
- 29. Datalab“部署”失败
- 30. Capifony失败部署
甜,感谢您的详细解答! – Cojones