@goldstack/utils-terraform-aws 0.4.17 → 0.4.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/tfState.d.ts +6 -0
- package/dist/src/tfState.d.ts.map +1 -1
- package/dist/src/tfState.js +95 -34
- package/dist/src/tfState.js.map +1 -1
- package/dist/src/utilsTerraformAws.d.ts.map +1 -1
- package/dist/src/utilsTerraformAws.js +39 -0
- package/dist/src/utilsTerraformAws.js.map +1 -1
- package/package.json +4 -3
package/dist/src/tfState.d.ts
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
import { AwsCredentialIdentity } from '@aws-sdk/types';
|
|
2
|
+
export declare const deleteState: (params: {
|
|
3
|
+
credentials: AwsCredentialIdentity;
|
|
4
|
+
dynamoDBTableName: string;
|
|
5
|
+
bucketName: string;
|
|
6
|
+
awsRegion: string;
|
|
7
|
+
}) => Promise<void>;
|
|
2
8
|
export declare const createState: (params: {
|
|
3
9
|
credentials: AwsCredentialIdentity;
|
|
4
10
|
dynamoDBTableName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tfState.d.ts","sourceRoot":"","sources":["../../src/tfState.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tfState.d.ts","sourceRoot":"","sources":["../../src/tfState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AA4IvD,eAAO,MAAM,WAAW,WAAkB;IACxC,WAAW,EAAE,qBAAqB,CAAC;IACnC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,KAAG,QAAQ,IAAI,CAiBf,CAAC;AAEF,eAAO,MAAM,WAAW,WAAkB;IACxC,WAAW,EAAE,qBAAqB,CAAC;IACnC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,KAAG,QAAQ,IAAI,CAWf,CAAC"}
|
package/dist/src/tfState.js
CHANGED
|
@@ -1,62 +1,123 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createState = void 0;
|
|
7
|
-
const
|
|
3
|
+
exports.createState = exports.deleteState = void 0;
|
|
4
|
+
const client_s3_1 = require("@aws-sdk/client-s3");
|
|
5
|
+
const client_dynamodb_1 = require("@aws-sdk/client-dynamodb");
|
|
8
6
|
const assertDynamoDBTable = async (params) => {
|
|
9
7
|
// defining a table as required by Terraform https://www.terraform.io/docs/language/settings/backends/s3.html#dynamodb_table
|
|
10
|
-
const tableDef = {
|
|
11
|
-
AttributeDefinitions: [
|
|
12
|
-
{
|
|
13
|
-
AttributeName: 'LockID',
|
|
14
|
-
AttributeType: 'S',
|
|
15
|
-
},
|
|
16
|
-
],
|
|
17
|
-
KeySchema: [
|
|
18
|
-
{
|
|
19
|
-
AttributeName: 'LockID',
|
|
20
|
-
KeyType: 'HASH',
|
|
21
|
-
},
|
|
22
|
-
],
|
|
23
|
-
TableName: params.tableName,
|
|
24
|
-
BillingMode: 'PAY_PER_REQUEST',
|
|
25
|
-
};
|
|
26
8
|
try {
|
|
27
|
-
await params.dynamoDB.
|
|
9
|
+
await params.dynamoDB.send(new client_dynamodb_1.CreateTableCommand({
|
|
10
|
+
AttributeDefinitions: [
|
|
11
|
+
{
|
|
12
|
+
AttributeName: 'LockID',
|
|
13
|
+
AttributeType: 'S',
|
|
14
|
+
},
|
|
15
|
+
],
|
|
16
|
+
KeySchema: [
|
|
17
|
+
{
|
|
18
|
+
AttributeName: 'LockID',
|
|
19
|
+
KeyType: 'HASH',
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
TableName: params.tableName,
|
|
23
|
+
BillingMode: 'PAY_PER_REQUEST',
|
|
24
|
+
}));
|
|
28
25
|
}
|
|
29
26
|
catch (e) {
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
if (error && error.code !== 'ResourceInUseException') {
|
|
33
|
-
throw new Error(error.message);
|
|
27
|
+
if (!(e instanceof client_dynamodb_1.ResourceInUseException)) {
|
|
28
|
+
throw new Error(e.message);
|
|
34
29
|
}
|
|
35
30
|
}
|
|
36
31
|
};
|
|
32
|
+
const deleteDynamoDBTable = async (params) => {
|
|
33
|
+
try {
|
|
34
|
+
await params.dynamoDB.send(new client_dynamodb_1.DeleteTableCommand({
|
|
35
|
+
TableName: params.tableName,
|
|
36
|
+
}));
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
throw e;
|
|
40
|
+
}
|
|
41
|
+
};
|
|
37
42
|
const assertS3Bucket = async (params) => {
|
|
38
43
|
const bucketParams = {
|
|
39
44
|
Bucket: params.bucketName,
|
|
40
45
|
};
|
|
41
46
|
try {
|
|
42
47
|
console.log('Accessing/creating bucket for Terraform state', bucketParams.Bucket);
|
|
43
|
-
await params.s3.
|
|
48
|
+
await params.s3.send(new client_s3_1.CreateBucketCommand(bucketParams));
|
|
44
49
|
}
|
|
45
|
-
catch (
|
|
50
|
+
catch (e) {
|
|
46
51
|
// if bucket already exists, ignore error
|
|
47
|
-
if (
|
|
48
|
-
console.error('Cannot create bucket ', params.bucketName, ' error code',
|
|
49
|
-
throw new Error('Cannot create S3 state bucket: ' +
|
|
52
|
+
if (!(e instanceof client_s3_1.BucketAlreadyOwnedByYou)) {
|
|
53
|
+
console.error('Cannot create bucket ', params.bucketName, ' error code', e.code);
|
|
54
|
+
throw new Error('Cannot create S3 state bucket: ' + e.message);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
const deleteAllObjectsFromBucket = async (s3, bucketName) => {
|
|
59
|
+
let continuationToken = undefined;
|
|
60
|
+
do {
|
|
61
|
+
// List objects in the bucket
|
|
62
|
+
const listResponse = await s3.send(new client_s3_1.ListObjectsV2Command({
|
|
63
|
+
Bucket: bucketName,
|
|
64
|
+
ContinuationToken: continuationToken,
|
|
65
|
+
}));
|
|
66
|
+
// Check if there are any objects to delete
|
|
67
|
+
if (listResponse.Contents && listResponse.Contents.length > 0) {
|
|
68
|
+
// Delete listed objects
|
|
69
|
+
const deleteParams = {
|
|
70
|
+
Bucket: bucketName,
|
|
71
|
+
Delete: {
|
|
72
|
+
Objects: listResponse.Contents.map((object) => ({ Key: object.Key })),
|
|
73
|
+
},
|
|
74
|
+
};
|
|
75
|
+
await s3.send(new client_s3_1.DeleteObjectsCommand(deleteParams));
|
|
50
76
|
}
|
|
77
|
+
// Check if more objects are to be listed (pagination)
|
|
78
|
+
continuationToken = listResponse.NextContinuationToken;
|
|
79
|
+
} while (continuationToken);
|
|
80
|
+
};
|
|
81
|
+
const deleteS3Bucket = async (params) => {
|
|
82
|
+
try {
|
|
83
|
+
// First, delete all objects from the bucket
|
|
84
|
+
await deleteAllObjectsFromBucket(params.s3, params.bucketName);
|
|
85
|
+
// Then, delete the empty bucket
|
|
86
|
+
await params.s3.send(new client_s3_1.DeleteBucketCommand({ Bucket: params.bucketName }));
|
|
87
|
+
}
|
|
88
|
+
catch (e) {
|
|
89
|
+
throw e; // Rethrow the error to handle it in the calling code if necessary
|
|
51
90
|
}
|
|
52
91
|
};
|
|
92
|
+
const deleteState = async (params) => {
|
|
93
|
+
const dynamoDB = new client_dynamodb_1.DynamoDBClient({
|
|
94
|
+
region: params.awsRegion,
|
|
95
|
+
credentials: params.credentials,
|
|
96
|
+
});
|
|
97
|
+
await deleteDynamoDBTable({
|
|
98
|
+
dynamoDB,
|
|
99
|
+
tableName: params.dynamoDBTableName,
|
|
100
|
+
});
|
|
101
|
+
const s3 = new client_s3_1.S3Client({
|
|
102
|
+
region: params.awsRegion,
|
|
103
|
+
credentials: params.credentials,
|
|
104
|
+
});
|
|
105
|
+
await deleteS3Bucket({
|
|
106
|
+
s3,
|
|
107
|
+
bucketName: params.bucketName,
|
|
108
|
+
});
|
|
109
|
+
};
|
|
110
|
+
exports.deleteState = deleteState;
|
|
53
111
|
const createState = async (params) => {
|
|
54
|
-
const dynamoDB = new
|
|
55
|
-
apiVersion: '2012-08-10',
|
|
112
|
+
const dynamoDB = new client_dynamodb_1.DynamoDBClient({
|
|
56
113
|
region: params.awsRegion,
|
|
114
|
+
credentials: params.credentials,
|
|
57
115
|
});
|
|
58
116
|
await assertDynamoDBTable({ dynamoDB, tableName: params.dynamoDBTableName });
|
|
59
|
-
const s3 = new
|
|
117
|
+
const s3 = new client_s3_1.S3Client({
|
|
118
|
+
region: params.awsRegion,
|
|
119
|
+
credentials: params.credentials,
|
|
120
|
+
});
|
|
60
121
|
await assertS3Bucket({ s3, bucketName: params.bucketName });
|
|
61
122
|
};
|
|
62
123
|
exports.createState = createState;
|
package/dist/src/tfState.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tfState.js","sourceRoot":"","sources":["../../src/tfState.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tfState.js","sourceRoot":"","sources":["../../src/tfState.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utilsTerraformAws.d.ts","sourceRoot":"","sources":["../../src/utilsTerraformAws.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,iBAAiB,EAGlB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"utilsTerraformAws.d.ts","sourceRoot":"","sources":["../../src/utilsTerraformAws.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,iBAAiB,EAGlB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EACjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAoBvD,qBAAa,gBAAiB,YAAW,aAAa;IACpD,IAAI,EAAE,qBAAqB,CAAC;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,iBAAiB,CAAC;IAErC,yBAAyB,QAAO,MAAM,CAOpC;IAEF,eAAe,QAAO,IAAI,CAKxB;IAEF,mBAAmB,eACL,mBAAmB,KAC9B,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAmCnB;gBAGA,WAAW,EAAE,qBAAqB,EAClC,SAAS,EAAE,iBAAiB,EAC5B,MAAM,EAAE,MAAM;CAMjB;AAwBD,eAAO,MAAM,eAAe,SACpB,MAAM,EAAE,YACJ,gBAAgB,KACzB,QAAQ,IAAI,CA6Dd,CAAC"}
|
|
@@ -8,6 +8,8 @@ const infra_aws_1 = require("@goldstack/infra-aws");
|
|
|
8
8
|
const utils_terraform_1 = require("@goldstack/utils-terraform");
|
|
9
9
|
const tfState_1 = require("./tfState");
|
|
10
10
|
const crypto_1 = __importDefault(require("crypto"));
|
|
11
|
+
const child_process_1 = require("child_process");
|
|
12
|
+
const os_1 = __importDefault(require("os"));
|
|
11
13
|
const getRemoteStateConfig = (config, userName) => {
|
|
12
14
|
const userConfig = config.remoteState.filter((u) => u.user === userName);
|
|
13
15
|
if (userConfig.length === 0) {
|
|
@@ -56,6 +58,25 @@ class AWSCloudProvider {
|
|
|
56
58
|
}
|
|
57
59
|
}
|
|
58
60
|
exports.AWSCloudProvider = AWSCloudProvider;
|
|
61
|
+
const prompt = (message) => {
|
|
62
|
+
process.stdout.write(message);
|
|
63
|
+
let cmd;
|
|
64
|
+
let args;
|
|
65
|
+
if (os_1.default.platform() == 'win32') {
|
|
66
|
+
cmd = 'cmd';
|
|
67
|
+
args = ['/V:ON', '/C', 'set /p response= && echo !response!'];
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
cmd = 'bash';
|
|
71
|
+
args = ['-c', 'read response; echo "$response"'];
|
|
72
|
+
}
|
|
73
|
+
const opts = {
|
|
74
|
+
stdio: ['inherit', 'pipe', 'inherit'],
|
|
75
|
+
shell: false,
|
|
76
|
+
encoding: 'utf-8',
|
|
77
|
+
};
|
|
78
|
+
return (0, child_process_1.spawnSync)(cmd, args, opts).stdout.toString().trim();
|
|
79
|
+
};
|
|
59
80
|
const terraformAwsCli = async (args, options) => {
|
|
60
81
|
const deploymentName = args[1];
|
|
61
82
|
const deployment = (0, infra_aws_1.readDeploymentFromPackageConfig)(deploymentName);
|
|
@@ -72,6 +93,24 @@ const terraformAwsCli = async (args, options) => {
|
|
|
72
93
|
remoteStateConfig.terraformStateDynamoDBTable = `goldstack-tfstate-${projectHash}-lock`;
|
|
73
94
|
(0, infra_aws_1.writeTerraformConfig)(awsTerraformConfig);
|
|
74
95
|
}
|
|
96
|
+
const [operation] = args;
|
|
97
|
+
if (operation === 'destroy-state') {
|
|
98
|
+
const ciConfirmed = args.find((str) => str === '-y');
|
|
99
|
+
if (!ciConfirmed) {
|
|
100
|
+
const value = prompt('Are you sure to destroy your remote deployment state? If yes, please type `y` and enter.\n' +
|
|
101
|
+
'Otherwise, press enter.\nYour Input: ');
|
|
102
|
+
if (value !== 'y') {
|
|
103
|
+
new Error('Prompt not confirmed with `y`');
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
await (0, tfState_1.deleteState)({
|
|
107
|
+
bucketName: remoteStateConfig.terraformStateBucket,
|
|
108
|
+
dynamoDBTableName: remoteStateConfig.terraformStateDynamoDBTable,
|
|
109
|
+
credentials,
|
|
110
|
+
awsRegion: deployment.awsRegion,
|
|
111
|
+
});
|
|
112
|
+
return;
|
|
113
|
+
}
|
|
75
114
|
await (0, tfState_1.createState)({
|
|
76
115
|
bucketName: remoteStateConfig.terraformStateBucket,
|
|
77
116
|
dynamoDBTableName: remoteStateConfig.terraformStateDynamoDBTable,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utilsTerraformAws.js","sourceRoot":"","sources":["../../src/utilsTerraformAws.ts"],"names":[],"mappings":";;;;;;AAAA,oDAS8B;AAC9B,gEAKoC;AAEpC,
|
|
1
|
+
{"version":3,"file":"utilsTerraformAws.js","sourceRoot":"","sources":["../../src/utilsTerraformAws.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@goldstack/utils-terraform-aws",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.19",
|
|
4
4
|
"description": "Easily deploy Terraform IaC with npm package scripts",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"goldstack",
|
|
@@ -36,14 +36,15 @@
|
|
|
36
36
|
"version:apply:force": "yarn version $@ && yarn version apply"
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
+
"@aws-sdk/client-dynamodb": "3.485.0",
|
|
40
|
+
"@aws-sdk/client-s3": "3.485.0",
|
|
39
41
|
"@aws-sdk/types": "^3.485.0",
|
|
40
42
|
"@goldstack/infra-aws": "0.4.15",
|
|
41
43
|
"@goldstack/utils-config": "0.4.9",
|
|
42
44
|
"@goldstack/utils-log": "0.3.9",
|
|
43
45
|
"@goldstack/utils-package": "0.4.9",
|
|
44
46
|
"@goldstack/utils-sh": "0.5.9",
|
|
45
|
-
"@goldstack/utils-terraform": "0.4.
|
|
46
|
-
"aws-sdk": "2.1525.0"
|
|
47
|
+
"@goldstack/utils-terraform": "0.4.17"
|
|
47
48
|
},
|
|
48
49
|
"devDependencies": {
|
|
49
50
|
"@goldstack/utils-git": "0.2.9",
|