这是一个整合问题:
我想在 Google Compute Engine 上运行 Jenkins。我可以做到这一点,但如果我让 8 核虚拟机一直运行,我很快就会超出预算。作为一种解决方案,我认为我可以让一个内存量低的微实例保持开启状态,并始终充当 jenkins 主控器运行。似乎我应该能够配置 github 以在执行推送时启动 jenkins slave(具有 8 个内核)。如何将 github post-commit Hook 连接到 Google Compute Engine 以实现此目的?完整的答案可能要求太多,但即使只是指向相关文档的指针也会有所帮助。
或者,您将如何解决我的问题?
最佳答案
您可以运行 AppEngine 实例并使用它提供的 URL 作为 GitHub on-commit web hook 的目标。这样,除非实例实际运行,否则不会向您收费,这甚至可能比在 Compute Engine 上 24x7 运行微实例更便宜。
然后,您可以在 Compute Engine 上启动/停止实例,或通过在 App Engine 上运行的代码触发对它们的操作。
这是一个 related question其中有一个关于如何从 AppEngine 上运行的代码向 Compute Engine 进行身份验证的答案。
关于github - 在 google 计算引擎上动态部署 Jenkins slaves 以进行 github 提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25223102/