typescript aws

pull/235/head
mdugdale 2021-03-27 23:06:58 +00:00
parent 5b2591bdea
commit 6298965513
3 changed files with 15 additions and 9 deletions

11
dist/index.js vendored
View File

@ -404,6 +404,7 @@ class AWS {
const taskDefStackName = `${stackName}-taskDef-${image}-${buildUid}`
.toString()
.replace(/[^\da-z]/gi, '');
const taskDefStackNameTTL = taskDefStackName + "-ttl";
core.info('Creating build job resources');
const taskDefCloudFormation = fs.readFileSync(`${__dirname}/task-def-formation.yml`, 'utf8');
yield CF.createStack({
@ -440,9 +441,10 @@ class AWS {
}
].concat(secrets),
}).promise();
core.info("Creating build cluster...");
const ttlCloudFormation = fs.readFileSync(`${__dirname}/cloudformation-stack-ttl.yml`, 'utf8');
yield CF.createStack({
StackName: taskDefStackName + "-ttl",
StackName: taskDefStackNameTTL,
TemplateBody: ttlCloudFormation,
Capabilities: ["CAPABILITY_IAM"],
Parameters: [
@ -456,6 +458,7 @@ class AWS {
},
],
}).promise();
core.info("Creating cleanup cluster...");
try {
yield CF.waitFor('stackCreateComplete', { StackName: taskDefStackName }).promise();
}
@ -530,7 +533,7 @@ class AWS {
ShardId: stream.StreamDescription.Shards[0].ShardId,
})
.promise()).ShardIterator || "";
yield CF.waitFor('stackCreateComplete', { StackName: taskDefStackName + "-ttl" }).promise();
yield CF.waitFor('stackCreateComplete', { StackName: taskDefStackNameTTL }).promise();
core.info(`Task status is ${yield getTaskStatus()}`);
const logBaseUrl = `https://console.aws.amazon.com/cloudwatch/home?region=${SDK.config.region}#logsV2:log-groups/${taskDefStackName}`;
core.info(`You can also watch the logs at AWS Cloud Watch: ${logBaseUrl}`);
@ -573,13 +576,13 @@ class AWS {
StackName: taskDefStackName,
}).promise();
yield CF.deleteStack({
StackName: taskDefStackName + "-ttl",
StackName: taskDefStackNameTTL,
}).promise();
yield CF.waitFor('stackDeleteComplete', {
StackName: taskDefStackName
}).promise();
yield CF.waitFor('stackDeleteComplete', {
StackName: taskDefStackName + "-ttl"
StackName: taskDefStackNameTTL
}).promise();
core.info('Cleanup complete');
});

2
dist/index.js.map vendored

File diff suppressed because one or more lines are too long

View File

@ -219,6 +219,7 @@ class AWS {
const taskDefStackName = `${stackName}-taskDef-${image}-${buildUid}`
.toString()
.replace(/[^\da-z]/gi, '');
const taskDefStackNameTTL = taskDefStackName+"-ttl";
core.info('Creating build job resources');
const taskDefCloudFormation = fs.readFileSync(`${__dirname}/task-def-formation.yml`, 'utf8');
await CF.createStack({
@ -255,10 +256,11 @@ class AWS {
}
].concat(secrets),
}).promise();
core.info("Creating build cluster...");
const ttlCloudFormation = fs.readFileSync(`${__dirname}/cloudformation-stack-ttl.yml`, 'utf8');
await CF.createStack({
StackName: taskDefStackName+"-ttl",
StackName: taskDefStackNameTTL,
TemplateBody: ttlCloudFormation,
Capabilities: [ "CAPABILITY_IAM" ],
Parameters: [
@ -272,6 +274,7 @@ class AWS {
},
],
}).promise();
core.info("Creating cleanup cluster...");
try{
await CF.waitFor('stackCreateComplete', { StackName: taskDefStackName }).promise();
@ -369,7 +372,7 @@ class AWS {
.promise()
).ShardIterator||"";
await CF.waitFor('stackCreateComplete', { StackName: taskDefStackName+"-ttl" }).promise();
await CF.waitFor('stackCreateComplete', { StackName: taskDefStackNameTTL }).promise();
core.info(`Task status is ${await getTaskStatus()}`);
@ -423,7 +426,7 @@ class AWS {
}).promise();
await CF.deleteStack({
StackName: taskDefStackName+"-ttl",
StackName: taskDefStackNameTTL,
}).promise();
await CF.waitFor('stackDeleteComplete', {
@ -431,7 +434,7 @@ class AWS {
}).promise();
await CF.waitFor('stackDeleteComplete', {
StackName: taskDefStackName+"-ttl"
StackName: taskDefStackNameTTL
}).promise();
core.info('Cleanup complete');