briareus
Version:
Briareus assists with Feature Branch deploys to ECS
34 lines (29 loc) • 1.08 kB
JavaScript
const AWS = require('aws-sdk');
const _ = require('lodash');
let action = module.exports = function (pipeline, payload, cb) {
const elbv2 = new AWS.ELBv2();
const params = {
Name: payload.name,
Port: payload.webContainerPort,
Protocol: payload.healthcheck.protocol,
VpcId: payload.alb.vpcId,
HealthCheckIntervalSeconds: payload.healthcheck.interval,
HealthCheckPath: payload.healthcheck.path,
HealthCheckProtocol: payload.healthcheck.protocol,
HealthCheckTimeoutSeconds: payload.healthcheck.timeout,
HealthyThresholdCount: payload.healthcheck.healthyThreshold,
UnhealthyThresholdCount: payload.healthcheck.unhealthyThreshold,
Matcher: {
HttpCode: payload.healthcheck.matcherHttpCode
},
};
elbv2.createTargetGroup(params, (err, data) => {
if (err) return cb(err);
cb(null, [
{ op: 'add', path: '/assets/targetGroup', value: { arn: data.TargetGroups[0].TargetGroupArn } },
]);
});
};
action.waiting = 'Creating ALB Target Group';
action.done = 'ALB Target Group has been created';