如何将应用程序限制为仅在AWS Opsworks中默认部署到一个图层?
我已经从Github设置了一个webhook来自动将我的应用程序部署到Opsworks,但是当应用程序只部署到一个层时,应用程序将部署到我的所有层。
答案 0 :(得分:0)
如果可能,请提供显示图层和实例设置方式的屏幕截图。我认为可能是错误的配置导致层安装应用程序。
默认情况下,Opsworks不会在所有图层上安装应用程序,除非在图层集中指定它以运行该实例的相关配方。
答案 1 :(得分:0)
我在同样的问题上挣扎了一下,我想我终于得到了答案:
创建新的SNS主题。
创建一个AWS Lambda函数,使用JavaScript AWS-SDK为您启动任何您想要的部署。所以你可以得到这个想法:
var AWS = require('aws-sdk');
AWS.config.region = 'us-east-1'; // Opsworks only uses this one for Stacks in any region
var opsworks = new AWS.OpsWorks();
opsworks.describeStacks({}, function(err, data) {
console.log(data);
context.succeed(message);
});
为此lambda函数分配所需的策略,以允许您从AWS API调用的任何内容。
设置Github将通知发送到SNS主题,而不是直接调用Opsworks。