typescript aws
parent
5b2591bdea
commit
6298965513
|
|
@ -404,6 +404,7 @@ class AWS {
|
||||||
const taskDefStackName = `${stackName}-taskDef-${image}-${buildUid}`
|
const taskDefStackName = `${stackName}-taskDef-${image}-${buildUid}`
|
||||||
.toString()
|
.toString()
|
||||||
.replace(/[^\da-z]/gi, '');
|
.replace(/[^\da-z]/gi, '');
|
||||||
|
const taskDefStackNameTTL = taskDefStackName + "-ttl";
|
||||||
core.info('Creating build job resources');
|
core.info('Creating build job resources');
|
||||||
const taskDefCloudFormation = fs.readFileSync(`${__dirname}/task-def-formation.yml`, 'utf8');
|
const taskDefCloudFormation = fs.readFileSync(`${__dirname}/task-def-formation.yml`, 'utf8');
|
||||||
yield CF.createStack({
|
yield CF.createStack({
|
||||||
|
|
@ -440,9 +441,10 @@ class AWS {
|
||||||
}
|
}
|
||||||
].concat(secrets),
|
].concat(secrets),
|
||||||
}).promise();
|
}).promise();
|
||||||
|
core.info("Creating build cluster...");
|
||||||
const ttlCloudFormation = fs.readFileSync(`${__dirname}/cloudformation-stack-ttl.yml`, 'utf8');
|
const ttlCloudFormation = fs.readFileSync(`${__dirname}/cloudformation-stack-ttl.yml`, 'utf8');
|
||||||
yield CF.createStack({
|
yield CF.createStack({
|
||||||
StackName: taskDefStackName + "-ttl",
|
StackName: taskDefStackNameTTL,
|
||||||
TemplateBody: ttlCloudFormation,
|
TemplateBody: ttlCloudFormation,
|
||||||
Capabilities: ["CAPABILITY_IAM"],
|
Capabilities: ["CAPABILITY_IAM"],
|
||||||
Parameters: [
|
Parameters: [
|
||||||
|
|
@ -456,6 +458,7 @@ class AWS {
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}).promise();
|
}).promise();
|
||||||
|
core.info("Creating cleanup cluster...");
|
||||||
try {
|
try {
|
||||||
yield CF.waitFor('stackCreateComplete', { StackName: taskDefStackName }).promise();
|
yield CF.waitFor('stackCreateComplete', { StackName: taskDefStackName }).promise();
|
||||||
}
|
}
|
||||||
|
|
@ -530,7 +533,7 @@ class AWS {
|
||||||
ShardId: stream.StreamDescription.Shards[0].ShardId,
|
ShardId: stream.StreamDescription.Shards[0].ShardId,
|
||||||
})
|
})
|
||||||
.promise()).ShardIterator || "";
|
.promise()).ShardIterator || "";
|
||||||
yield CF.waitFor('stackCreateComplete', { StackName: taskDefStackName + "-ttl" }).promise();
|
yield CF.waitFor('stackCreateComplete', { StackName: taskDefStackNameTTL }).promise();
|
||||||
core.info(`Task status is ${yield getTaskStatus()}`);
|
core.info(`Task status is ${yield getTaskStatus()}`);
|
||||||
const logBaseUrl = `https://console.aws.amazon.com/cloudwatch/home?region=${SDK.config.region}#logsV2:log-groups/${taskDefStackName}`;
|
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}`);
|
core.info(`You can also watch the logs at AWS Cloud Watch: ${logBaseUrl}`);
|
||||||
|
|
@ -573,13 +576,13 @@ class AWS {
|
||||||
StackName: taskDefStackName,
|
StackName: taskDefStackName,
|
||||||
}).promise();
|
}).promise();
|
||||||
yield CF.deleteStack({
|
yield CF.deleteStack({
|
||||||
StackName: taskDefStackName + "-ttl",
|
StackName: taskDefStackNameTTL,
|
||||||
}).promise();
|
}).promise();
|
||||||
yield CF.waitFor('stackDeleteComplete', {
|
yield CF.waitFor('stackDeleteComplete', {
|
||||||
StackName: taskDefStackName
|
StackName: taskDefStackName
|
||||||
}).promise();
|
}).promise();
|
||||||
yield CF.waitFor('stackDeleteComplete', {
|
yield CF.waitFor('stackDeleteComplete', {
|
||||||
StackName: taskDefStackName + "-ttl"
|
StackName: taskDefStackNameTTL
|
||||||
}).promise();
|
}).promise();
|
||||||
core.info('Cleanup complete');
|
core.info('Cleanup complete');
|
||||||
});
|
});
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
|
|
@ -219,6 +219,7 @@ class AWS {
|
||||||
const taskDefStackName = `${stackName}-taskDef-${image}-${buildUid}`
|
const taskDefStackName = `${stackName}-taskDef-${image}-${buildUid}`
|
||||||
.toString()
|
.toString()
|
||||||
.replace(/[^\da-z]/gi, '');
|
.replace(/[^\da-z]/gi, '');
|
||||||
|
const taskDefStackNameTTL = taskDefStackName+"-ttl";
|
||||||
core.info('Creating build job resources');
|
core.info('Creating build job resources');
|
||||||
const taskDefCloudFormation = fs.readFileSync(`${__dirname}/task-def-formation.yml`, 'utf8');
|
const taskDefCloudFormation = fs.readFileSync(`${__dirname}/task-def-formation.yml`, 'utf8');
|
||||||
await CF.createStack({
|
await CF.createStack({
|
||||||
|
|
@ -255,10 +256,11 @@ class AWS {
|
||||||
}
|
}
|
||||||
].concat(secrets),
|
].concat(secrets),
|
||||||
}).promise();
|
}).promise();
|
||||||
|
core.info("Creating build cluster...");
|
||||||
|
|
||||||
const ttlCloudFormation = fs.readFileSync(`${__dirname}/cloudformation-stack-ttl.yml`, 'utf8');
|
const ttlCloudFormation = fs.readFileSync(`${__dirname}/cloudformation-stack-ttl.yml`, 'utf8');
|
||||||
await CF.createStack({
|
await CF.createStack({
|
||||||
StackName: taskDefStackName+"-ttl",
|
StackName: taskDefStackNameTTL,
|
||||||
TemplateBody: ttlCloudFormation,
|
TemplateBody: ttlCloudFormation,
|
||||||
Capabilities: [ "CAPABILITY_IAM" ],
|
Capabilities: [ "CAPABILITY_IAM" ],
|
||||||
Parameters: [
|
Parameters: [
|
||||||
|
|
@ -272,6 +274,7 @@ class AWS {
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
}).promise();
|
}).promise();
|
||||||
|
core.info("Creating cleanup cluster...");
|
||||||
|
|
||||||
try{
|
try{
|
||||||
await CF.waitFor('stackCreateComplete', { StackName: taskDefStackName }).promise();
|
await CF.waitFor('stackCreateComplete', { StackName: taskDefStackName }).promise();
|
||||||
|
|
@ -369,7 +372,7 @@ class AWS {
|
||||||
.promise()
|
.promise()
|
||||||
).ShardIterator||"";
|
).ShardIterator||"";
|
||||||
|
|
||||||
await CF.waitFor('stackCreateComplete', { StackName: taskDefStackName+"-ttl" }).promise();
|
await CF.waitFor('stackCreateComplete', { StackName: taskDefStackNameTTL }).promise();
|
||||||
|
|
||||||
core.info(`Task status is ${await getTaskStatus()}`);
|
core.info(`Task status is ${await getTaskStatus()}`);
|
||||||
|
|
||||||
|
|
@ -423,7 +426,7 @@ class AWS {
|
||||||
}).promise();
|
}).promise();
|
||||||
|
|
||||||
await CF.deleteStack({
|
await CF.deleteStack({
|
||||||
StackName: taskDefStackName+"-ttl",
|
StackName: taskDefStackNameTTL,
|
||||||
}).promise();
|
}).promise();
|
||||||
|
|
||||||
await CF.waitFor('stackDeleteComplete', {
|
await CF.waitFor('stackDeleteComplete', {
|
||||||
|
|
@ -431,7 +434,7 @@ class AWS {
|
||||||
}).promise();
|
}).promise();
|
||||||
|
|
||||||
await CF.waitFor('stackDeleteComplete', {
|
await CF.waitFor('stackDeleteComplete', {
|
||||||
StackName: taskDefStackName+"-ttl"
|
StackName: taskDefStackNameTTL
|
||||||
}).promise();
|
}).promise();
|
||||||
|
|
||||||
core.info('Cleanup complete');
|
core.info('Cleanup complete');
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue