我能否通过webhook自动化应用程序部署到OpsWorks?

14

我想从我们的Github账户设置一个Webhook,以便它可以自动启动OpsWorks中的部署任务。根据文档,这似乎是可能的 - 但是在互联网上找不到任何示例或智能库,这是不寻常的。;)

3个回答

23

这个过程现在变得更加简单了。您所需做的就是根据Webhook提供所需的值,然后它就会为您完成。 opsworks webhook details

步骤:

  1. GitHub存储库 -> 设置
  2. Webhooks和服务
  3. AWS Opsworks
  4. 提供AWS::IAM密钥、Stack和App ID,以及您要部署的分支。

请注意,通过此过程,您将把特定应用程序部署到堆栈中所有的层。这意味着如果您有具有Ruby的自定义层,它们也将将特定应用程序部署到那些层中。对于工作人员层非常有用,但是当您在不同层中拥有多个Rails应用程序时,会增加部署时间。

请确保您的用户具有在特定堆栈上进行部署的适当权限enter image description here


谢谢,我在我的旧回答中评论了同样的内容,但是这个答案现在描述得更好。 - Christian Landgren
我也设置了这个,但我不确定它的作用。在为OpsWorks部署构建应用程序时,您已经指定了从哪个Github仓库拉取应用程序。这是否应该在推送时触发重新部署? - owensmartin
1
对于Github上给定的分支名称,它将使用屏幕上提供的AWS访问密钥和秘密密钥,自动部署到配置的堆栈和应用程序ID的AWS OPSWORKS中。 - Imran Ahmed
@ImranAhmed 我们已在Github上测试过了,显示为通过。我们已经正确设置了双方(opsworks和github)的参数。我不确定该如何测试这个自动部署。一切看起来都准备就绪。我更改index.php然后在Github内置应用程序中按下提交按钮。然后等待部署过程。但是什么也没有发生。我做错了什么吗? - littlealien
2
@littlealien请确保你的用户有权限对特定堆栈进行部署。这在"权限"区域下控制。 - Imran Ahmed
有没有办法调试这个问题?我已经把所有东西都设置好了,但它不会触发。 - Gianni Carlo

3

2
对于任何感兴趣的人,现在 Github 中有一个内置的 Web Hook,可以直接部署到 AWS Opsworks。非常方便! - Christian Landgren
你能添加Github / Opsworks Webhook的链接吗? - Jeff Sisson
1
由于Web钩子列表仅适用于所有者,因此我无法链接到它,但是这里有一个屏幕截图,以便您知道要查找什么。输入所需的信息都可以在Opsworks中的堆栈和层中找到:http://cl.ly/image/2a2h000k0S2n - Christian Landgren

0

对 Imran 回答的一个小补充:现在在 Github 上它被称为 Integration & Services。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接