@brunwig/mup-aws-beanstalk 0.8.7 → 2.0.3
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/.babelrc +15 -4
- package/.eslintrc.yml +2 -2
- package/.yarn/install-state.gz +0 -0
- package/docs/getting-started.md +1 -1
- package/docs/index.md +22 -6
- package/index.js +1 -1
- package/lib/assets/Procfile +1 -0
- package/lib/assets/health-check.js +9 -1
- package/lib/assets/health-check.js.map +1 -1
- package/lib/assets/nginx-server.conf +14 -0
- package/lib/assets/node.sh +37 -7
- package/lib/assets/npm.sh +14 -0
- package/lib/assets/prevent-npm.sh +4 -0
- package/lib/assets/role-start.sh +61 -0
- package/lib/assets/start.sh +1 -1
- package/lib/assets/yarn.sh +17 -0
- package/lib/aws.js +43 -77
- package/lib/aws.js.map +1 -1
- package/lib/certificates.js +56 -59
- package/lib/certificates.js.map +1 -1
- package/lib/command-handlers.js +613 -637
- package/lib/command-handlers.js.map +1 -1
- package/lib/commands.js +144 -111
- package/lib/commands.js.map +1 -1
- package/lib/deployment-logs.js +127 -0
- package/lib/deployment-logs.js.map +1 -0
- package/lib/download.js +11 -18
- package/lib/download.js.map +1 -1
- package/lib/eb-config.js +246 -242
- package/lib/eb-config.js.map +1 -1
- package/lib/env-ready.js +87 -88
- package/lib/env-ready.js.map +1 -1
- package/lib/env-settings.js +13 -14
- package/lib/env-settings.js.map +1 -1
- package/lib/index.js +111 -81
- package/lib/index.js.map +1 -1
- package/lib/policies.js +130 -115
- package/lib/policies.js.map +1 -1
- package/lib/prepare-bundle.js +187 -194
- package/lib/prepare-bundle.js.map +1 -1
- package/lib/recheck.js +16 -13
- package/lib/recheck.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -0
- package/lib/types.js +3 -0
- package/lib/types.js.map +1 -0
- package/lib/upload.js +35 -49
- package/lib/upload.js.map +1 -1
- package/lib/utils.js +556 -577
- package/lib/utils.js.map +1 -1
- package/lib/validate.js +61 -59
- package/lib/validate.js.map +1 -1
- package/lib/versions.js +74 -81
- package/lib/versions.js.map +1 -1
- package/package.json +60 -26
- package/readme.md +2 -1
- package/tsconfig.json +41 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deployment-logs.js","sourceRoot":"","sources":["../src/deployment-logs.ts"],"names":[],"mappings":"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"}
|
package/lib/download.js
CHANGED
|
@@ -1,23 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.default = downloadEnvFile;
|
|
7
|
-
|
|
8
|
-
function downloadEnvFile(bucket, version) {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
Key: `env/${version}.txt`
|
|
4
|
+
const aws_1 = require("./aws");
|
|
5
|
+
async function downloadEnvFile(bucket, version) {
|
|
6
|
+
const result = await aws_1.s3.getObject({
|
|
7
|
+
Bucket: bucket,
|
|
8
|
+
Key: `env/${version}.txt`
|
|
13
9
|
});
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
resolve(result);
|
|
20
|
-
});
|
|
21
|
-
});
|
|
10
|
+
const bodyStream = result.Body;
|
|
11
|
+
if (!bodyStream) {
|
|
12
|
+
throw new Error('No body in response');
|
|
13
|
+
}
|
|
14
|
+
return bodyStream.transformToString();
|
|
22
15
|
}
|
|
23
16
|
//# sourceMappingURL=download.js.map
|
package/lib/download.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"download.js","
|
|
1
|
+
{"version":3,"file":"download.js","sourceRoot":"","sources":["../src/download.ts"],"names":[],"mappings":";;AAEA,kCAaC;AAfD,+BAA2B;AAEZ,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,OAAe;IAC3E,MAAM,MAAM,GAAG,MAAM,QAAE,CAAC,SAAS,CAAC;QAChC,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,OAAO,OAAO,MAAM;KAC1B,CAAC,CAAC;IAEH,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC;IAE/B,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACzC,CAAC;IAED,OAAO,UAAU,CAAC,iBAAiB,EAAE,CAAC;AACxC,CAAC"}
|
package/lib/eb-config.js
CHANGED
|
@@ -1,263 +1,267 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
});
|
|
6
|
-
exports.convertToObject = convertToObject;
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
6
|
exports.createDesiredConfig = createDesiredConfig;
|
|
8
|
-
exports.
|
|
7
|
+
exports.scalingConfigChanged = scalingConfigChanged;
|
|
8
|
+
exports.scalingConfig = scalingConfig;
|
|
9
|
+
exports.convertToObject = convertToObject;
|
|
9
10
|
exports.mergeConfigs = mergeConfigs;
|
|
11
|
+
exports.diffConfig = diffConfig;
|
|
10
12
|
exports.prepareUpdateEnvironment = prepareUpdateEnvironment;
|
|
11
|
-
exports.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
var _versions = require("./versions");
|
|
20
|
-
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
21
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
22
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
23
|
-
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
24
|
-
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
25
|
-
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
13
|
+
exports.getEnvTierConfig = getEnvTierConfig;
|
|
14
|
+
const lodash_1 = require("lodash");
|
|
15
|
+
const aws_1 = require("./aws");
|
|
16
|
+
const download_1 = __importDefault(require("./download"));
|
|
17
|
+
const env_settings_1 = require("./env-settings");
|
|
18
|
+
const upload_1 = require("./upload");
|
|
19
|
+
const utils_1 = require("./utils");
|
|
20
|
+
const versions_1 = require("./versions");
|
|
26
21
|
function createDesiredConfig(mupConfig, settings, longEnvVarsVersion) {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
return config;
|
|
22
|
+
const { env, instanceType, streamLogs, customBeanstalkConfig = [] } = mupConfig.app;
|
|
23
|
+
const { instanceProfile, serviceRole } = (0, utils_1.names)(mupConfig);
|
|
24
|
+
const config = {
|
|
25
|
+
OptionSettings: [{
|
|
26
|
+
Namespace: 'aws:autoscaling:trigger',
|
|
27
|
+
OptionName: 'MeasureName',
|
|
28
|
+
Value: 'CPUUtilization'
|
|
29
|
+
}, {
|
|
30
|
+
Namespace: 'aws:autoscaling:trigger',
|
|
31
|
+
OptionName: 'Statistic',
|
|
32
|
+
Value: 'Average'
|
|
33
|
+
}, {
|
|
34
|
+
Namespace: 'aws:autoscaling:trigger',
|
|
35
|
+
OptionName: 'Unit',
|
|
36
|
+
Value: 'Percent'
|
|
37
|
+
}, {
|
|
38
|
+
Namespace: 'aws:autoscaling:trigger',
|
|
39
|
+
OptionName: 'UpperThreshold',
|
|
40
|
+
Value: '75'
|
|
41
|
+
}, {
|
|
42
|
+
Namespace: 'aws:autoscaling:trigger',
|
|
43
|
+
OptionName: 'LowerThreshold',
|
|
44
|
+
Value: '35'
|
|
45
|
+
}, {
|
|
46
|
+
Namespace: 'aws:autoscaling:launchconfiguration',
|
|
47
|
+
OptionName: 'InstanceType',
|
|
48
|
+
Value: instanceType
|
|
49
|
+
}, {
|
|
50
|
+
Namespace: 'aws:autoscaling:launchconfiguration',
|
|
51
|
+
OptionName: 'IamInstanceProfile',
|
|
52
|
+
Value: instanceProfile
|
|
53
|
+
}, {
|
|
54
|
+
Namespace: 'aws:autoscaling:launchconfiguration',
|
|
55
|
+
OptionName: 'DisableIMDSv1',
|
|
56
|
+
Value: 'true'
|
|
57
|
+
}, {
|
|
58
|
+
Namespace: 'aws:elasticbeanstalk:environment:process:default',
|
|
59
|
+
OptionName: 'HealthyThresholdCount',
|
|
60
|
+
Value: '2'
|
|
61
|
+
}, {
|
|
62
|
+
Namespace: 'aws:elasticbeanstalk:environment:process:default',
|
|
63
|
+
OptionName: 'HealthCheckPath',
|
|
64
|
+
Value: '/aws-health-check-3984729847289743128904723'
|
|
65
|
+
}, {
|
|
66
|
+
Namespace: 'aws:elasticbeanstalk:environment',
|
|
67
|
+
OptionName: 'EnvironmentType',
|
|
68
|
+
Value: 'LoadBalanced'
|
|
69
|
+
}, {
|
|
70
|
+
Namespace: 'aws:elasticbeanstalk:environment',
|
|
71
|
+
OptionName: 'LoadBalancerType',
|
|
72
|
+
Value: 'application'
|
|
73
|
+
}, {
|
|
74
|
+
Namespace: 'aws:elasticbeanstalk:command',
|
|
75
|
+
OptionName: 'DeploymentPolicy',
|
|
76
|
+
Value: 'RollingWithAdditionalBatch'
|
|
77
|
+
}, {
|
|
78
|
+
Namespace: 'aws:elasticbeanstalk:command',
|
|
79
|
+
OptionName: 'BatchSizeType',
|
|
80
|
+
Value: 'Percentage'
|
|
81
|
+
}, {
|
|
82
|
+
Namespace: 'aws:elasticbeanstalk:command',
|
|
83
|
+
OptionName: 'BatchSize',
|
|
84
|
+
Value: '30'
|
|
85
|
+
}, {
|
|
86
|
+
Namespace: 'aws:autoscaling:updatepolicy:rollingupdate',
|
|
87
|
+
OptionName: 'RollingUpdateEnabled',
|
|
88
|
+
Value: 'true'
|
|
89
|
+
}, {
|
|
90
|
+
Namespace: 'aws:autoscaling:updatepolicy:rollingupdate',
|
|
91
|
+
OptionName: 'RollingUpdateType',
|
|
92
|
+
Value: 'Health'
|
|
93
|
+
}, {
|
|
94
|
+
Namespace: 'aws:elasticbeanstalk:environment',
|
|
95
|
+
OptionName: 'ServiceRole',
|
|
96
|
+
Value: serviceRole
|
|
97
|
+
}, {
|
|
98
|
+
Namespace: 'aws:elasticbeanstalk:healthreporting:system',
|
|
99
|
+
OptionName: 'SystemType',
|
|
100
|
+
Value: 'enhanced'
|
|
101
|
+
}, {
|
|
102
|
+
Namespace: 'aws:elasticbeanstalk:environment:process:default',
|
|
103
|
+
OptionName: 'StickinessEnabled',
|
|
104
|
+
Value: 'true'
|
|
105
|
+
}, {
|
|
106
|
+
Namespace: 'aws:elasticbeanstalk:environment:process:default',
|
|
107
|
+
OptionName: 'DeregistrationDelay',
|
|
108
|
+
Value: '75'
|
|
109
|
+
}]
|
|
110
|
+
};
|
|
111
|
+
if (streamLogs) {
|
|
112
|
+
config.OptionSettings.push({
|
|
113
|
+
Namespace: 'aws:elasticbeanstalk:cloudwatch:logs',
|
|
114
|
+
OptionName: 'StreamLogs',
|
|
115
|
+
Value: 'true'
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
const settingsString = JSON.stringify(settings);
|
|
119
|
+
if (longEnvVarsVersion) {
|
|
120
|
+
config.OptionSettings.push({
|
|
121
|
+
Namespace: 'aws:elasticbeanstalk:application:environment',
|
|
122
|
+
OptionName: 'MUP_ENV_FILE_VERSION',
|
|
123
|
+
Value: longEnvVarsVersion.toString()
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
env.METEOR_SETTINGS_ENCODED = encodeURIComponent(settingsString);
|
|
128
|
+
Object.keys(env).forEach((envName) => {
|
|
129
|
+
const value = env[envName];
|
|
130
|
+
config.OptionSettings.push({
|
|
131
|
+
Namespace: 'aws:elasticbeanstalk:application:environment',
|
|
132
|
+
OptionName: envName,
|
|
133
|
+
Value: value.toString()
|
|
134
|
+
});
|
|
135
|
+
});
|
|
136
|
+
}
|
|
137
|
+
const customOptions = customBeanstalkConfig.map(option => ({
|
|
138
|
+
Namespace: option.namespace,
|
|
139
|
+
...((option === null || option === void 0 ? void 0 : option.resource) && { ResourceName: option.resource }),
|
|
140
|
+
OptionName: option.option,
|
|
141
|
+
Value: option.value
|
|
142
|
+
}));
|
|
143
|
+
config.OptionSettings = mergeConfigs(config.OptionSettings, customOptions);
|
|
144
|
+
return config;
|
|
151
145
|
}
|
|
152
146
|
function scalingConfigChanged(currentConfig, mupConfig) {
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
return currentMinInstances !== minInstances.toString() || currentMaxInstances !== maxInstances.toString();
|
|
147
|
+
const { minInstances, maxInstances } = mupConfig.app;
|
|
148
|
+
let currentMinInstances = "0";
|
|
149
|
+
let currentMaxInstances = "0";
|
|
150
|
+
currentConfig.forEach((item) => {
|
|
151
|
+
if (item.Namespace === 'aws:autoscaling:asg') {
|
|
152
|
+
if (item.OptionName === 'MinSize') {
|
|
153
|
+
currentMinInstances = item.Value;
|
|
154
|
+
}
|
|
155
|
+
else if (item.OptionName === 'MaxSize') {
|
|
156
|
+
currentMaxInstances = item.Value;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
return currentMinInstances !== minInstances.toString() ||
|
|
161
|
+
currentMaxInstances !== maxInstances.toString();
|
|
169
162
|
}
|
|
170
|
-
function scalingConfig({
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
}
|
|
184
|
-
};
|
|
163
|
+
function scalingConfig({ minInstances, maxInstances }) {
|
|
164
|
+
return {
|
|
165
|
+
OptionSettings: [
|
|
166
|
+
{
|
|
167
|
+
Namespace: 'aws:autoscaling:asg',
|
|
168
|
+
OptionName: 'MinSize',
|
|
169
|
+
Value: minInstances.toString()
|
|
170
|
+
}, {
|
|
171
|
+
Namespace: 'aws:autoscaling:asg',
|
|
172
|
+
OptionName: 'MaxSize',
|
|
173
|
+
Value: maxInstances.toString()
|
|
174
|
+
}
|
|
175
|
+
]
|
|
176
|
+
};
|
|
185
177
|
}
|
|
186
178
|
function convertToObject(result, option) {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
179
|
+
if (!option) {
|
|
180
|
+
return result;
|
|
181
|
+
}
|
|
182
|
+
// result[`${option.Namespace!}-${option.OptionName!}`] = option as EBConfigElement;
|
|
183
|
+
const resourceKey = option.ResourceName ? `-${option.ResourceName}` : '';
|
|
184
|
+
// const key = [`${option.Namespace}-${option.OptionName}${resourceKey}`];
|
|
185
|
+
const key = `${option.Namespace}-${option.OptionName}${resourceKey}`;
|
|
186
|
+
result[key] = option;
|
|
187
|
+
// console.log("convertToObj -->", result[key], resourceKey, key);
|
|
188
|
+
return result;
|
|
191
189
|
}
|
|
192
190
|
function mergeConfigs(config1, config2) {
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
191
|
+
const configDict = config1.reduce(convertToObject, {});
|
|
192
|
+
config2.forEach((option) => {
|
|
193
|
+
const resourceKey = option.ResourceName ? `-${option.ResourceName}` : '';
|
|
194
|
+
//const key = [`${option.Namespace}-${option.OptionName}${resourceKey}`];
|
|
195
|
+
const key = `${option.Namespace}-${option.OptionName}${resourceKey}`;
|
|
196
|
+
configDict[key] = option;
|
|
197
|
+
// console.log("mergeConfigs -->", configDict[key], resourceKey, key);
|
|
198
|
+
});
|
|
199
|
+
return Object.values(configDict);
|
|
200
200
|
}
|
|
201
201
|
function diffConfig(current, desired) {
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
202
|
+
const currentConfigDict = current.reduce(convertToObject, {});
|
|
203
|
+
const desiredConfigDict = desired.reduce(convertToObject, {});
|
|
204
|
+
const toRemove = (0, lodash_1.difference)(Object.keys(currentConfigDict), Object.keys(desiredConfigDict))
|
|
205
|
+
.filter(key => key.indexOf('aws:elasticbeanstalk:application:environment-') === 0)
|
|
206
|
+
.map((key) => {
|
|
207
|
+
const option = currentConfigDict[key];
|
|
208
|
+
return {
|
|
209
|
+
Namespace: option.Namespace,
|
|
210
|
+
OptionName: option.OptionName
|
|
211
|
+
};
|
|
212
|
+
});
|
|
213
|
+
const toUpdate = Object.keys(desiredConfigDict).filter((key) => {
|
|
214
|
+
if (key in currentConfigDict && currentConfigDict[key].Value === desiredConfigDict[key].Value) {
|
|
215
|
+
return false;
|
|
216
|
+
}
|
|
217
|
+
return true;
|
|
218
|
+
}).map(key => desiredConfigDict[key]);
|
|
206
219
|
return {
|
|
207
|
-
|
|
208
|
-
|
|
220
|
+
toRemove,
|
|
221
|
+
toUpdate
|
|
209
222
|
};
|
|
210
|
-
});
|
|
211
|
-
const toUpdate = Object.keys(desired).filter(key => {
|
|
212
|
-
if (key in current && current[key].Value === desired[key].Value) {
|
|
213
|
-
return false;
|
|
214
|
-
}
|
|
215
|
-
return true;
|
|
216
|
-
}).map(key => desired[key]);
|
|
217
|
-
return {
|
|
218
|
-
toRemove,
|
|
219
|
-
toUpdate
|
|
220
|
-
};
|
|
221
223
|
}
|
|
222
224
|
async function prepareUpdateEnvironment(api) {
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
envSettingsChanged = currentSettings !== desiredSettings;
|
|
246
|
-
if (envSettingsChanged) {
|
|
247
|
-
nextEnvVersion = currentEnvVersion + 1;
|
|
248
|
-
await (0, _upload.uploadEnvFile)(bucket, nextEnvVersion, desiredSettings);
|
|
249
|
-
} else {
|
|
250
|
-
nextEnvVersion = currentEnvVersion;
|
|
225
|
+
const config = api.getConfig();
|
|
226
|
+
const { app, environment, bucket } = (0, utils_1.names)(config);
|
|
227
|
+
const { ConfigurationSettings } = await aws_1.beanstalk.describeConfigurationSettings({
|
|
228
|
+
EnvironmentName: environment,
|
|
229
|
+
ApplicationName: app
|
|
230
|
+
});
|
|
231
|
+
const { longEnvVars } = config.app;
|
|
232
|
+
let nextEnvVersion = 0;
|
|
233
|
+
let envSettingsChanged;
|
|
234
|
+
let desiredSettings;
|
|
235
|
+
if (longEnvVars) {
|
|
236
|
+
const currentEnvVersion = await (0, versions_1.largestEnvVersion)(api);
|
|
237
|
+
const currentSettings = await (0, download_1.default)(bucket, currentEnvVersion);
|
|
238
|
+
desiredSettings = (0, env_settings_1.createEnvFile)(config.app.env, api.getSettings());
|
|
239
|
+
envSettingsChanged = currentSettings !== desiredSettings;
|
|
240
|
+
if (envSettingsChanged) {
|
|
241
|
+
nextEnvVersion = currentEnvVersion + 1;
|
|
242
|
+
await (0, upload_1.uploadEnvFile)(bucket, nextEnvVersion, desiredSettings);
|
|
243
|
+
}
|
|
244
|
+
else {
|
|
245
|
+
nextEnvVersion = currentEnvVersion;
|
|
246
|
+
}
|
|
251
247
|
}
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
248
|
+
const desiredEbConfig = createDesiredConfig(api.getConfig(), api.getSettings(), nextEnvVersion);
|
|
249
|
+
const { toRemove, toUpdate } = diffConfig(ConfigurationSettings[0].OptionSettings, desiredEbConfig.OptionSettings);
|
|
250
|
+
return {
|
|
251
|
+
toRemove,
|
|
252
|
+
toUpdate
|
|
253
|
+
};
|
|
254
|
+
}
|
|
255
|
+
function getEnvTierConfig(envType) {
|
|
256
|
+
if (envType === 'webserver') {
|
|
257
|
+
return {
|
|
258
|
+
Name: "WebServer",
|
|
259
|
+
Type: "Standard"
|
|
260
|
+
};
|
|
261
|
+
}
|
|
262
|
+
return {
|
|
263
|
+
Name: "Worker",
|
|
264
|
+
Type: "SQS/HTTP"
|
|
265
|
+
};
|
|
262
266
|
}
|
|
263
267
|
//# sourceMappingURL=eb-config.js.map
|
package/lib/eb-config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eb-config.js","names":["_lodash","require","_aws","_download","_interopRequireDefault","_envSettings","_upload","_utils","_versions","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","createDesiredConfig","mupConfig","settings","longEnvVarsVersion","env","instanceType","customBeanstalkConfig","app","instanceProfile","serviceRole","names","config","OptionSettings","Namespace","OptionName","Value","settingsString","JSON","stringify","toString","METEOR_SETTINGS_ENCODED","encodeURIComponent","envName","customOptions","map","option","namespace","resource","ResourceName","mergeConfigs","scalingConfigChanged","currentConfig","minInstances","maxInstances","currentMinInstances","currentMaxInstances","item","scalingConfig","convertToObject","result","resourceKey","key","config1","config2","reduce","values","diffConfig","current","desired","toRemove","difference","indexOf","toUpdate","prepareUpdateEnvironment","api","getConfig","environment","bucket","ConfigurationSettings","beanstalk","describeConfigurationSettings","EnvironmentName","ApplicationName","promise","longEnvVars","nextEnvVersion","envSettingsChanged","desiredSettings","currentEnvVersion","largestEnvVersion","currentSettings","downloadEnvFile","createEnvFile","getSettings","uploadEnvFile","desiredEbConfig"],"sources":["../src/eb-config.js"],"sourcesContent":["import { difference } from 'lodash';\nimport { beanstalk } from './aws';\nimport downloadEnvFile from './download';\nimport { createEnvFile } from './env-settings';\nimport { uploadEnvFile } from './upload';\nimport { names } from './utils';\nimport { largestEnvVersion } from './versions';\n\nexport function createDesiredConfig(mupConfig, settings, longEnvVarsVersion) {\n const {\n env,\n instanceType,\n customBeanstalkConfig = []\n } = mupConfig.app;\n const {\n instanceProfile,\n serviceRole\n } = names(mupConfig);\n\n const config = {\n OptionSettings: [{\n Namespace: 'aws:autoscaling:trigger',\n OptionName: 'MeasureName',\n Value: 'CPUUtilization'\n }, {\n Namespace: 'aws:autoscaling:trigger',\n OptionName: 'Statistic',\n Value: 'Average'\n }, {\n Namespace: 'aws:autoscaling:trigger',\n OptionName: 'Unit',\n Value: 'Percent'\n }, {\n Namespace: 'aws:autoscaling:trigger',\n OptionName: 'UpperThreshold',\n Value: '75'\n }, {\n Namespace: 'aws:autoscaling:trigger',\n OptionName: 'LowerThreshold',\n Value: '35'\n }, {\n Namespace: 'aws:autoscaling:launchconfiguration',\n OptionName: 'InstanceType',\n Value: instanceType\n }, {\n Namespace: 'aws:autoscaling:launchconfiguration',\n OptionName: 'IamInstanceProfile',\n Value: instanceProfile\n }, {\n Namespace: 'aws:autoscaling:launchconfiguration',\n OptionName: 'DisableIMDSv1',\n Value: 'true'\n }, {\n Namespace: 'aws:elasticbeanstalk:environment:process:default',\n OptionName: 'HealthyThresholdCount',\n Value: '2'\n }, {\n Namespace: 'aws:elasticbeanstalk:environment:process:default',\n OptionName: 'HealthCheckPath',\n Value: '/aws-health-check-3984729847289743128904723'\n }, {\n Namespace: 'aws:elasticbeanstalk:environment',\n OptionName: 'EnvironmentType',\n Value: 'LoadBalanced'\n }, {\n Namespace: 'aws:elasticbeanstalk:environment',\n OptionName: 'LoadBalancerType',\n Value: 'application'\n }, {\n Namespace: 'aws:elasticbeanstalk:command',\n OptionName: 'DeploymentPolicy',\n Value: 'RollingWithAdditionalBatch'\n }, {\n Namespace: 'aws:elasticbeanstalk:command',\n OptionName: 'BatchSizeType',\n Value: 'Percentage'\n }, {\n Namespace: 'aws:elasticbeanstalk:command',\n OptionName: 'BatchSize',\n Value: '30'\n }, {\n Namespace: 'aws:autoscaling:updatepolicy:rollingupdate',\n OptionName: 'RollingUpdateEnabled',\n Value: 'true'\n }, {\n Namespace: 'aws:autoscaling:updatepolicy:rollingupdate',\n OptionName: 'RollingUpdateType',\n Value: 'Health'\n }, {\n Namespace: 'aws:elasticbeanstalk:environment',\n OptionName: 'ServiceRole',\n Value: serviceRole\n }, {\n Namespace: 'aws:elasticbeanstalk:healthreporting:system',\n OptionName: 'SystemType',\n Value: 'enhanced'\n }, {\n Namespace: 'aws:elasticbeanstalk:environment:process:default',\n OptionName: 'StickinessEnabled',\n Value: 'true'\n }, {\n Namespace: 'aws:elasticbeanstalk:environment:process:default',\n OptionName: 'DeregistrationDelay',\n Value: '75'\n }]\n };\n\n const settingsString = JSON.stringify(settings);\n\n if (longEnvVarsVersion) {\n config.OptionSettings.push({\n Namespace: 'aws:elasticbeanstalk:application:environment',\n OptionName: 'MUP_ENV_FILE_VERSION',\n Value: longEnvVarsVersion.toString()\n });\n } else {\n env.METEOR_SETTINGS_ENCODED = encodeURIComponent(settingsString);\n\n Object.keys(env).forEach((envName) => {\n const value = env[envName];\n\n config.OptionSettings.push({\n Namespace: 'aws:elasticbeanstalk:application:environment',\n OptionName: envName,\n Value: value.toString()\n });\n });\n }\n\n const customOptions = customBeanstalkConfig.map(option => ({\n Namespace: option.namespace,\n ...(option?.resource && { ResourceName: option.resource }),\n OptionName: option.option,\n Value: option.value\n }));\n\n config.OptionSettings = mergeConfigs(config.OptionSettings, customOptions);\n return config;\n}\n\nexport function scalingConfigChanged(currentConfig, mupConfig) {\n const {\n minInstances,\n maxInstances\n } = mupConfig.app;\n\n let currentMinInstances = 0;\n let currentMaxInstances = 0;\n\n currentConfig.forEach((item) => {\n if (item.Namespace === 'aws:autoscaling:asg') {\n if (item.OptionName === 'MinSize') {\n currentMinInstances = item.Value;\n } else if (item.OptionName === 'MaxSize') {\n currentMaxInstances = item.Value;\n }\n }\n });\n\n return currentMinInstances !== minInstances.toString() ||\n currentMaxInstances !== maxInstances.toString();\n}\n\nexport function scalingConfig({ minInstances, maxInstances }) {\n return {\n OptionSettings: [\n {\n Namespace: 'aws:autoscaling:asg',\n OptionName: 'MinSize',\n Value: minInstances.toString()\n }, {\n Namespace: 'aws:autoscaling:asg',\n OptionName: 'MaxSize',\n Value: maxInstances.toString()\n }\n ]\n };\n}\n\nexport function convertToObject(result, option) {\n const resourceKey = option.ResourceName ? `-${option.ResourceName}` : '';\n const key = [`${option.Namespace}-${option.OptionName}${resourceKey}`];\n result[key] = option;\n\n return result;\n}\n\nexport function mergeConfigs(config1, config2) {\n config1 = config1.reduce(convertToObject, {});\n\n config2.forEach((option) => {\n const resourceKey = option.ResourceName ? `-${option.ResourceName}` : '';\n const key = [`${option.Namespace}-${option.OptionName}${resourceKey}`];\n config1[key] = option;\n });\n\n return Object.values(config1);\n}\n\nexport function diffConfig(current, desired) {\n current = current.reduce(convertToObject, {});\n\n desired = desired.reduce(convertToObject, {});\n\n const toRemove = difference(Object.keys(current), Object.keys(desired))\n .filter(key => key.indexOf('aws:elasticbeanstalk:application:environment-') === 0)\n .map((key) => {\n const option = current[key];\n return {\n Namespace: option.Namespace,\n OptionName: option.OptionName\n };\n });\n\n const toUpdate = Object.keys(desired).filter((key) => {\n if (key in current && current[key].Value === desired[key].Value) {\n return false;\n }\n\n return true;\n }).map(key => desired[key]);\n\n return {\n toRemove,\n toUpdate\n };\n}\n\nexport async function prepareUpdateEnvironment(api) {\n const config = api.getConfig();\n const {\n app,\n environment,\n bucket\n } = names(config);\n const {\n ConfigurationSettings\n } = await beanstalk.describeConfigurationSettings({\n EnvironmentName: environment,\n ApplicationName: app\n }).promise();\n const { longEnvVars } = config.app;\n let nextEnvVersion = 0;\n let envSettingsChanged;\n let desiredSettings;\n\n if (longEnvVars) {\n const currentEnvVersion = await largestEnvVersion(api);\n const currentSettings = await downloadEnvFile(bucket, currentEnvVersion);\n desiredSettings = createEnvFile(config.app.env, api.getSettings());\n envSettingsChanged = currentSettings !== desiredSettings;\n if (envSettingsChanged) {\n nextEnvVersion = currentEnvVersion + 1;\n await uploadEnvFile(bucket, nextEnvVersion, desiredSettings);\n } else {\n nextEnvVersion = currentEnvVersion;\n }\n }\n const desiredEbConfig = createDesiredConfig(\n api.getConfig(),\n api.getSettings(),\n nextEnvVersion\n );\n const {\n toRemove,\n toUpdate\n } = diffConfig(\n ConfigurationSettings[0].OptionSettings,\n desiredEbConfig.OptionSettings\n );\n\n return {\n toRemove,\n toUpdate\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"eb-config.js","sourceRoot":"","sources":["../src/eb-config.ts"],"names":[],"mappings":"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"}
|