@brunwig/mup-aws-beanstalk 0.8.7 → 2.0.5

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.
Files changed (56) hide show
  1. package/.babelrc +15 -4
  2. package/.eslintrc.yml +2 -2
  3. package/.yarn/install-state.gz +0 -0
  4. package/docs/getting-started.md +1 -1
  5. package/docs/index.md +22 -6
  6. package/index.js +1 -1
  7. package/lib/assets/Procfile +1 -0
  8. package/lib/assets/health-check.js +9 -1
  9. package/lib/assets/health-check.js.map +1 -1
  10. package/lib/assets/nginx-server.conf +5 -0
  11. package/lib/assets/node.sh +37 -7
  12. package/lib/assets/npm.sh +14 -0
  13. package/lib/assets/prevent-npm.sh +4 -0
  14. package/lib/assets/role-start.sh +61 -0
  15. package/lib/assets/start.sh +1 -1
  16. package/lib/assets/yarn.sh +17 -0
  17. package/lib/aws.js +43 -77
  18. package/lib/aws.js.map +1 -1
  19. package/lib/certificates.js +56 -59
  20. package/lib/certificates.js.map +1 -1
  21. package/lib/command-handlers.js +613 -637
  22. package/lib/command-handlers.js.map +1 -1
  23. package/lib/commands.js +144 -111
  24. package/lib/commands.js.map +1 -1
  25. package/lib/deployment-logs.js +127 -0
  26. package/lib/deployment-logs.js.map +1 -0
  27. package/lib/download.js +11 -18
  28. package/lib/download.js.map +1 -1
  29. package/lib/eb-config.js +246 -242
  30. package/lib/eb-config.js.map +1 -1
  31. package/lib/env-ready.js +87 -88
  32. package/lib/env-ready.js.map +1 -1
  33. package/lib/env-settings.js +13 -14
  34. package/lib/env-settings.js.map +1 -1
  35. package/lib/index.js +111 -81
  36. package/lib/index.js.map +1 -1
  37. package/lib/policies.js +130 -115
  38. package/lib/policies.js.map +1 -1
  39. package/lib/prepare-bundle.js +187 -194
  40. package/lib/prepare-bundle.js.map +1 -1
  41. package/lib/recheck.js +16 -13
  42. package/lib/recheck.js.map +1 -1
  43. package/lib/tsconfig.tsbuildinfo +1 -0
  44. package/lib/types.js +3 -0
  45. package/lib/types.js.map +1 -0
  46. package/lib/upload.js +35 -49
  47. package/lib/upload.js.map +1 -1
  48. package/lib/utils.js +556 -577
  49. package/lib/utils.js.map +1 -1
  50. package/lib/validate.js +61 -59
  51. package/lib/validate.js.map +1 -1
  52. package/lib/versions.js +74 -81
  53. package/lib/versions.js.map +1 -1
  54. package/package.json +60 -26
  55. package/readme.md +2 -1
  56. package/tsconfig.json +41 -0
package/lib/policies.js CHANGED
@@ -1,131 +1,146 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.eventTargetRole = exports.deregisterEventTarget = exports.DeregisterEvent = void 0;
7
- exports.eventTargetRolePolicy = eventTargetRolePolicy;
8
- exports.serviceRole = exports.rolePolicy = exports.passRolePolicy = exports.gracefulShutdownAutomationDocument = void 0;
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.gracefulShutdownAutomationDocument = exports.deregisterEventTarget = exports.DeregisterEvent = exports.passRolePolicy = exports.eventTargetRole = exports.serviceRole = exports.rolePolicy = void 0;
9
4
  exports.trailBucketPolicy = trailBucketPolicy;
5
+ exports.eventTargetRolePolicy = eventTargetRolePolicy;
10
6
  function trailBucketPolicy(accountId, bucketName) {
11
- const policy = {
12
- Version: '2012-10-17',
13
- Statement: [{
14
- Sid: 'AWSCloudTrailAclCheck20150319',
15
- Effect: 'Allow',
16
- Principal: {
17
- Service: 'cloudtrail.amazonaws.com'
18
- },
19
- Action: 's3:GetBucketAcl',
20
- Resource: `arn:aws:s3:::${bucketName}`
21
- }, {
22
- Sid: 'AWSCloudTrailWrite20150319',
23
- Effect: 'Allow',
24
- Principal: {
25
- Service: 'cloudtrail.amazonaws.com'
26
- },
27
- Action: 's3:PutObject',
28
- Resource: `arn:aws:s3:::${bucketName}/AWSLogs/${accountId}/*`,
29
- Condition: {
30
- StringEquals: {
31
- 's3:x-amz-acl': 'bucket-owner-full-control'
32
- }
33
- }
34
- }]
35
- };
36
- return JSON.stringify(policy);
7
+ const policy = {
8
+ Version: '2012-10-17',
9
+ Statement: [{
10
+ Sid: 'AWSCloudTrailAclCheck20150319',
11
+ Effect: 'Allow',
12
+ Principal: {
13
+ Service: 'cloudtrail.amazonaws.com'
14
+ },
15
+ Action: 's3:GetBucketAcl',
16
+ Resource: `arn:aws:s3:::${bucketName}`
17
+ },
18
+ {
19
+ Sid: 'AWSCloudTrailWrite20150319',
20
+ Effect: 'Allow',
21
+ Principal: {
22
+ Service: 'cloudtrail.amazonaws.com'
23
+ },
24
+ Action: 's3:PutObject',
25
+ Resource: `arn:aws:s3:::${bucketName}/AWSLogs/${accountId}/*`,
26
+ Condition: {
27
+ StringEquals: {
28
+ 's3:x-amz-acl': 'bucket-owner-full-control'
29
+ }
30
+ }
31
+ }
32
+ ]
33
+ };
34
+ return JSON.stringify(policy);
37
35
  }
38
- const rolePolicy = exports.rolePolicy = '{ "Version": "2008-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }';
39
- const serviceRole = exports.serviceRole = '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "elasticbeanstalk.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "elasticbeanstalk" } } } ] }';
40
- const eventTargetRole = exports.eventTargetRole = '{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Effect": "Allow", "Principal": { "Service": [ "ssm.amazonaws.com", "ec2.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }';
36
+ exports.rolePolicy = '{ "Version": "2008-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ec2.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }';
37
+ exports.serviceRole = '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "elasticbeanstalk.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "elasticbeanstalk" } } } ] }';
38
+ exports.eventTargetRole = '{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "events.amazonaws.com" }, "Action": "sts:AssumeRole" }, { "Effect": "Allow", "Principal": { "Service": [ "ssm.amazonaws.com", "ec2.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }';
41
39
  const passRolePolicy = (accountId, role) => {
42
- const policy = {
43
- Version: '2012-10-17',
44
- Statement: [{
45
- Effect: 'Allow',
46
- Action: 'iam:PassRole',
47
- Resource: `arn:aws:iam::${accountId}:role/${role}`
48
- }]
49
- };
50
- return JSON.stringify(policy);
40
+ const policy = {
41
+ Version: '2012-10-17',
42
+ Statement: [
43
+ {
44
+ Effect: 'Allow',
45
+ Action: 'iam:PassRole',
46
+ Resource: `arn:aws:iam::${accountId}:role/${role}`
47
+ }
48
+ ]
49
+ };
50
+ return JSON.stringify(policy);
51
51
  };
52
52
  exports.passRolePolicy = passRolePolicy;
53
53
  function eventTargetRolePolicy(accountId, env, region) {
54
- const policy = {
55
- Version: '2012-10-17',
56
- Statement: [{
57
- Action: 'ssm:SendCommand',
58
- Effect: 'Allow',
59
- Resource: `arn:aws:ec2:${region}:${accountId}:instance/*`,
60
- Condition: {
61
- StringLike: {
62
- 'ssm:resourceTag/elasticbeanstalk:environment-name': [env]
63
- }
64
- }
65
- }, {
66
- Action: 'ssm:SendCommand',
67
- Effect: 'Allow',
68
- Resource: `arn:aws:ssm:${region}:*:document/AWS-RunShellScript`
69
- }, {
70
- Action: ['ssm:StartAutomationExecution', 'ssm:DescribeInstanceInformation', 'ssm:ListCommands', 'ssm:ListCommandInvocations'],
71
- Effect: 'Allow',
72
- Resource: ['*']
73
- }]
74
- };
75
- return JSON.stringify(policy);
54
+ const policy = {
55
+ Version: '2012-10-17',
56
+ Statement: [
57
+ {
58
+ Action: 'ssm:SendCommand',
59
+ Effect: 'Allow',
60
+ Resource: `arn:aws:ec2:${region}:${accountId}:instance/*`,
61
+ Condition: {
62
+ StringLike: {
63
+ 'ssm:resourceTag/elasticbeanstalk:environment-name': [
64
+ env
65
+ ]
66
+ }
67
+ }
68
+ },
69
+ {
70
+ Action: 'ssm:SendCommand',
71
+ Effect: 'Allow',
72
+ Resource: `arn:aws:ssm:${region}:*:document/AWS-RunShellScript`
73
+ },
74
+ {
75
+ Action: [
76
+ 'ssm:StartAutomationExecution',
77
+ 'ssm:DescribeInstanceInformation',
78
+ 'ssm:ListCommands',
79
+ 'ssm:ListCommandInvocations'
80
+ ],
81
+ Effect: 'Allow',
82
+ Resource: [
83
+ '*'
84
+ ]
85
+ }
86
+ ]
87
+ };
88
+ return JSON.stringify(policy);
76
89
  }
77
- const DeregisterEvent = exports.DeregisterEvent = '{ "source": [ "aws.elasticloadbalancing" ], "detail-type": [ "AWS API Call via CloudTrail" ], "detail": { "eventSource": [ "elasticloadbalancing.amazonaws.com" ], "eventName": [ "DeregisterTargets" ] } }';
90
+ exports.DeregisterEvent = '{ "source": [ "aws.elasticloadbalancing" ], "detail-type": [ "AWS API Call via CloudTrail" ], "detail": { "eventSource": [ "elasticloadbalancing.amazonaws.com" ], "eventName": [ "DeregisterTargets" ] } }';
78
91
  const deregisterEventTarget = (envName, role, accountId, region) => ({
79
- Id: `mup-target-${envName}`,
80
- Arn: `arn:aws:ssm:${region}:${accountId}:automation-definition/mup-graceful-shutdown:$LATEST`,
81
- RoleArn: `arn:aws:iam::${accountId}:role/${role}`,
82
- InputTransformer: {
83
- InputPathsMap: {
84
- instance: '$.detail.requestParameters.targets[0].id'
85
- },
86
- InputTemplate: `{"InstanceId":[<instance>], "AutomationAssumeRole": ["arn:aws:iam::${accountId}:role/${role}"], "ServiceRole": ["arn:aws:iam::${accountId}:role/${role}"], "Commands": ["cd /mup_graceful_shutdown || exit 1", "ls", "PATH='/mup_graceful_shutdown'", <instance>]}`
87
- }
92
+ Id: `mup-target-${envName}`,
93
+ Arn: `arn:aws:ssm:${region}:${accountId}:automation-definition/mup-graceful-shutdown:$LATEST`,
94
+ RoleArn: `arn:aws:iam::${accountId}:role/${role}`,
95
+ InputTransformer: {
96
+ InputPathsMap: {
97
+ instance: '$.detail.requestParameters.targets[0].id'
98
+ },
99
+ InputTemplate: `{"InstanceId":[<instance>], "AutomationAssumeRole": ["arn:aws:iam::${accountId}:role/${role}"], "ServiceRole": ["arn:aws:iam::${accountId}:role/${role}"], "Commands": ["cd /mup_graceful_shutdown || exit 1", "ls", "PATH='/mup_graceful_shutdown'", <instance>]}`
100
+ }
88
101
  });
89
102
  exports.deregisterEventTarget = deregisterEventTarget;
90
103
  const gracefulShutdownAutomationDocument = () => {
91
- const document = {
92
- description: 'Automation document for mup-aws-beanstalk graceful shutdown',
93
- schemaVersion: '0.3',
94
- assumeRole: '{{ AutomationAssumeRole }}',
95
- parameters: {
96
- InstanceId: {
97
- type: 'StringList',
98
- description: '(Required) EC2 Instance(s) to run the command on'
99
- },
100
- AutomationAssumeRole: {
101
- type: 'String',
102
- description: '(Optional) The ARN of the role that allows Automation to perform the actions on your behalf.',
103
- default: ''
104
- },
105
- Commands: {
106
- type: 'StringList',
107
- description: 'Commands to run'
108
- },
109
- ServiceRole: {
110
- type: 'String',
111
- description: 'The ARN of the role for runCommand'
112
- }
113
- },
114
- mainSteps: [{
115
- name: 'runCommand',
116
- action: 'aws:runCommand',
117
- timeoutSeconds: 10,
118
- inputs: {
119
- DocumentName: 'AWS-RunShellScript',
120
- InstanceIds: '{{ InstanceId }}',
121
- ServiceRoleArn: '{{ ServiceRole }}',
122
- Parameters: {
123
- commands: '{{ Commands }}'
124
- }
125
- }
126
- }]
127
- };
128
- return JSON.stringify(document);
104
+ const document = {
105
+ description: 'Automation document for mup-aws-beanstalk graceful shutdown',
106
+ schemaVersion: '0.3',
107
+ assumeRole: '{{ AutomationAssumeRole }}',
108
+ parameters: {
109
+ InstanceId: {
110
+ type: 'StringList',
111
+ description: '(Required) EC2 Instance(s) to run the command on'
112
+ },
113
+ AutomationAssumeRole: {
114
+ type: 'String',
115
+ description: '(Optional) The ARN of the role that allows Automation to perform the actions on your behalf.',
116
+ default: ''
117
+ },
118
+ Commands: {
119
+ type: 'StringList',
120
+ description: 'Commands to run'
121
+ },
122
+ ServiceRole: {
123
+ type: 'String',
124
+ description: 'The ARN of the role for runCommand'
125
+ }
126
+ },
127
+ mainSteps: [
128
+ {
129
+ name: 'runCommand',
130
+ action: 'aws:runCommand',
131
+ timeoutSeconds: 10,
132
+ inputs: {
133
+ DocumentName: 'AWS-RunShellScript',
134
+ InstanceIds: '{{ InstanceId }}',
135
+ ServiceRoleArn: '{{ ServiceRole }}',
136
+ Parameters: {
137
+ commands: '{{ Commands }}'
138
+ }
139
+ }
140
+ }
141
+ ]
142
+ };
143
+ return JSON.stringify(document);
129
144
  };
130
145
  exports.gracefulShutdownAutomationDocument = gracefulShutdownAutomationDocument;
131
146
  //# sourceMappingURL=policies.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"policies.js","names":["trailBucketPolicy","accountId","bucketName","policy","Version","Statement","Sid","Effect","Principal","Service","Action","Resource","Condition","StringEquals","JSON","stringify","rolePolicy","exports","serviceRole","eventTargetRole","passRolePolicy","role","eventTargetRolePolicy","env","region","StringLike","DeregisterEvent","deregisterEventTarget","envName","Id","Arn","RoleArn","InputTransformer","InputPathsMap","instance","InputTemplate","gracefulShutdownAutomationDocument","document","description","schemaVersion","assumeRole","parameters","InstanceId","type","AutomationAssumeRole","default","Commands","ServiceRole","mainSteps","name","action","timeoutSeconds","inputs","DocumentName","InstanceIds","ServiceRoleArn","Parameters","commands"],"sources":["../src/policies.js"],"sourcesContent":["export function trailBucketPolicy(accountId, bucketName) {\n const policy = {\n Version: '2012-10-17',\n Statement: [{\n Sid: 'AWSCloudTrailAclCheck20150319',\n Effect: 'Allow',\n Principal: {\n Service: 'cloudtrail.amazonaws.com'\n },\n Action: 's3:GetBucketAcl',\n Resource: `arn:aws:s3:::${bucketName}`\n },\n {\n Sid: 'AWSCloudTrailWrite20150319',\n Effect: 'Allow',\n Principal: {\n Service: 'cloudtrail.amazonaws.com'\n },\n Action: 's3:PutObject',\n Resource: `arn:aws:s3:::${bucketName}/AWSLogs/${accountId}/*`,\n Condition: {\n StringEquals: {\n 's3:x-amz-acl': 'bucket-owner-full-control'\n }\n }\n }\n ]\n };\n\n return JSON.stringify(policy);\n}\n\nexport const rolePolicy = '{ \"Version\": \"2008-10-17\", \"Statement\": [ { \"Effect\": \"Allow\", \"Principal\": { \"Service\": \"ec2.amazonaws.com\" }, \"Action\": \"sts:AssumeRole\" } ] }';\nexport const serviceRole = '{ \"Version\": \"2012-10-17\", \"Statement\": [ { \"Effect\": \"Allow\", \"Principal\": { \"Service\": \"elasticbeanstalk.amazonaws.com\" }, \"Action\": \"sts:AssumeRole\", \"Condition\": { \"StringEquals\": { \"sts:ExternalId\": \"elasticbeanstalk\" } } } ] }';\nexport const eventTargetRole = '{ \"Version\": \"2012-10-17\", \"Statement\": [{ \"Effect\": \"Allow\", \"Principal\": { \"Service\": \"events.amazonaws.com\" }, \"Action\": \"sts:AssumeRole\" }, { \"Effect\": \"Allow\", \"Principal\": { \"Service\": [ \"ssm.amazonaws.com\", \"ec2.amazonaws.com\" ] }, \"Action\": \"sts:AssumeRole\" } ] }';\nexport const passRolePolicy = (accountId, role) => {\n const policy = {\n Version: '2012-10-17',\n Statement: [\n {\n Effect: 'Allow',\n Action: 'iam:PassRole',\n Resource: `arn:aws:iam::${accountId}:role/${role}`\n }\n ]\n };\n\n return JSON.stringify(policy);\n};\n\nexport function eventTargetRolePolicy(accountId, env, region) {\n const policy = {\n Version: '2012-10-17',\n Statement: [\n {\n Action: 'ssm:SendCommand',\n Effect: 'Allow',\n Resource: `arn:aws:ec2:${region}:${accountId}:instance/*`,\n Condition: {\n StringLike: {\n 'ssm:resourceTag/elasticbeanstalk:environment-name': [\n env\n ]\n }\n }\n },\n {\n Action: 'ssm:SendCommand',\n Effect: 'Allow',\n Resource: `arn:aws:ssm:${region}:*:document/AWS-RunShellScript`\n },\n {\n Action: [\n 'ssm:StartAutomationExecution',\n 'ssm:DescribeInstanceInformation',\n 'ssm:ListCommands',\n 'ssm:ListCommandInvocations'\n ],\n Effect: 'Allow',\n Resource: [\n '*'\n ]\n }\n ]\n };\n\n return JSON.stringify(policy);\n}\n\nexport const DeregisterEvent = '{ \"source\": [ \"aws.elasticloadbalancing\" ], \"detail-type\": [ \"AWS API Call via CloudTrail\" ], \"detail\": { \"eventSource\": [ \"elasticloadbalancing.amazonaws.com\" ], \"eventName\": [ \"DeregisterTargets\" ] } }';\n\nexport const deregisterEventTarget = (envName, role, accountId, region) => ({\n Id: `mup-target-${envName}`,\n Arn: `arn:aws:ssm:${region}:${accountId}:automation-definition/mup-graceful-shutdown:$LATEST`,\n RoleArn: `arn:aws:iam::${accountId}:role/${role}`,\n InputTransformer: {\n InputPathsMap: {\n instance: '$.detail.requestParameters.targets[0].id'\n },\n InputTemplate: `{\"InstanceId\":[<instance>], \"AutomationAssumeRole\": [\"arn:aws:iam::${accountId}:role/${role}\"], \"ServiceRole\": [\"arn:aws:iam::${accountId}:role/${role}\"], \"Commands\": [\"cd /mup_graceful_shutdown || exit 1\", \"ls\", \"PATH='/mup_graceful_shutdown'\", <instance>]}`\n }\n});\n\nexport const gracefulShutdownAutomationDocument = () => {\n const document = {\n description: 'Automation document for mup-aws-beanstalk graceful shutdown',\n schemaVersion: '0.3',\n assumeRole: '{{ AutomationAssumeRole }}',\n parameters: {\n InstanceId: {\n type: 'StringList',\n description: '(Required) EC2 Instance(s) to run the command on'\n },\n AutomationAssumeRole: {\n type: 'String',\n description: '(Optional) The ARN of the role that allows Automation to perform the actions on your behalf.',\n default: ''\n },\n Commands: {\n type: 'StringList',\n description: 'Commands to run'\n },\n ServiceRole: {\n type: 'String',\n description: 'The ARN of the role for runCommand'\n }\n },\n mainSteps: [\n {\n name: 'runCommand',\n action: 'aws:runCommand',\n timeoutSeconds: 10,\n inputs: {\n DocumentName: 'AWS-RunShellScript',\n InstanceIds: '{{ InstanceId }}',\n ServiceRoleArn: '{{ ServiceRole }}',\n Parameters: {\n commands: '{{ Commands }}'\n }\n }\n }\n ]\n };\n\n return JSON.stringify(document);\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"policies.js","sourceRoot":"","sources":["../src/policies.ts"],"names":[],"mappings":"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"}