@brunwig/mup-aws-beanstalk 0.8.6 → 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.
Files changed (57) 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 +14 -0
  11. package/lib/assets/nginx.conf +6 -0
  12. package/lib/assets/node.sh +37 -7
  13. package/lib/assets/npm.sh +14 -0
  14. package/lib/assets/prevent-npm.sh +4 -0
  15. package/lib/assets/role-start.sh +61 -0
  16. package/lib/assets/start.sh +1 -1
  17. package/lib/assets/yarn.sh +17 -0
  18. package/lib/aws.js +43 -77
  19. package/lib/aws.js.map +1 -1
  20. package/lib/certificates.js +56 -53
  21. package/lib/certificates.js.map +1 -1
  22. package/lib/command-handlers.js +615 -634
  23. package/lib/command-handlers.js.map +1 -1
  24. package/lib/commands.js +144 -106
  25. package/lib/commands.js.map +1 -1
  26. package/lib/deployment-logs.js +127 -0
  27. package/lib/deployment-logs.js.map +1 -0
  28. package/lib/download.js +11 -18
  29. package/lib/download.js.map +1 -1
  30. package/lib/eb-config.js +246 -242
  31. package/lib/eb-config.js.map +1 -1
  32. package/lib/env-ready.js +87 -88
  33. package/lib/env-ready.js.map +1 -1
  34. package/lib/env-settings.js +13 -14
  35. package/lib/env-settings.js.map +1 -1
  36. package/lib/index.js +111 -81
  37. package/lib/index.js.map +1 -1
  38. package/lib/policies.js +130 -115
  39. package/lib/policies.js.map +1 -1
  40. package/lib/prepare-bundle.js +187 -194
  41. package/lib/prepare-bundle.js.map +1 -1
  42. package/lib/recheck.js +16 -13
  43. package/lib/recheck.js.map +1 -1
  44. package/lib/tsconfig.tsbuildinfo +1 -0
  45. package/lib/types.js +3 -0
  46. package/lib/types.js.map +1 -0
  47. package/lib/upload.js +35 -49
  48. package/lib/upload.js.map +1 -1
  49. package/lib/utils.js +561 -529
  50. package/lib/utils.js.map +1 -1
  51. package/lib/validate.js +61 -59
  52. package/lib/validate.js.map +1 -1
  53. package/lib/versions.js +74 -81
  54. package/lib/versions.js.map +1 -1
  55. package/package.json +60 -26
  56. package/readme.md +2 -1
  57. package/tsconfig.json +41 -0
@@ -1,57 +1,60 @@
1
1
  "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = ensureSSLConfigured;
7
- var _aws = require("./aws");
8
- var _utils = require("./utils");
9
- var _ebConfig = require("./eb-config");
10
- var _envReady = require("./env-ready");
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ensureSSLConfigured = ensureSSLConfigured;
4
+ const aws_1 = require("./aws");
5
+ const utils_1 = require("./utils");
6
+ const eb_config_1 = require("./eb-config");
7
+ const env_ready_1 = require("./env-ready");
11
8
  async function ensureSSLConfigured(config, certificateArn) {
12
- const {
13
- app,
14
- environment
15
- } = (0, _utils.names)(config);
16
- const ebConfig = [{
17
- Namespace: 'aws:elbv2:listener:443',
18
- OptionName: 'SSLCertificateArns',
19
- Value: certificateArn
20
- }, {
21
- Namespace: 'aws:elbv2:listener:443',
22
- OptionName: 'DefaultProcess',
23
- Value: 'default'
24
- }, {
25
- Namespace: 'aws:elbv2:listener:443',
26
- OptionName: 'ListenerEnabled',
27
- Value: 'true'
28
- }, {
29
- Namespace: 'aws:elbv2:listener:443',
30
- OptionName: 'Protocol',
31
- Value: 'HTTPS'
32
- }];
33
- const domains = config.app.sslDomains;
34
-
35
- // we use domains to decide if we need to do something about SSL
36
- if (!domains || domains.length === 0) {
37
- return;
38
- }
39
- const {
40
- ConfigurationSettings
41
- } = await _aws.beanstalk.describeConfigurationSettings({
42
- EnvironmentName: environment,
43
- ApplicationName: app
44
- }).promise();
45
- const current = ConfigurationSettings[0].OptionSettings.reduce(_ebConfig.convertToObject, {});
46
- const desired = ebConfig.reduce(_ebConfig.convertToObject, {});
47
- const needToUpdate = Object.keys(desired).find(key => !current[key] || current[key].Value !== desired[key].Value);
48
- if (!needToUpdate) {
49
- return;
50
- }
51
- await _aws.beanstalk.updateEnvironment({
52
- EnvironmentName: environment,
53
- OptionSettings: ebConfig
54
- }).promise();
55
- await (0, _envReady.waitForEnvReady)(config, true);
9
+ const { app, environment } = (0, utils_1.names)(config);
10
+ const ebConfig = [{
11
+ Namespace: 'aws:elbv2:listener:443',
12
+ OptionName: 'SSLCertificateArns',
13
+ Value: certificateArn
14
+ }, {
15
+ Namespace: 'aws:elbv2:listener:443',
16
+ OptionName: 'DefaultProcess',
17
+ Value: 'default'
18
+ }, {
19
+ Namespace: 'aws:elbv2:listener:443',
20
+ OptionName: 'ListenerEnabled',
21
+ Value: 'true'
22
+ }, {
23
+ Namespace: 'aws:elbv2:listener:443',
24
+ OptionName: 'Protocol',
25
+ Value: 'HTTPS'
26
+ },
27
+ // Force SSLv3
28
+ {
29
+ Namespace: 'aws:elbv2:listener:443',
30
+ OptionName: 'SSLPolicy',
31
+ Value: 'ELBSecurityPolicy-TLS13-1-2-2021-06'
32
+ }
33
+ ];
34
+ const domains = config.app.sslDomains;
35
+ // we use domains to decide if we need to do something about SSL
36
+ if (!domains || domains.length === 0) {
37
+ return;
38
+ }
39
+ const { ConfigurationSettings } = await aws_1.beanstalk
40
+ .describeConfigurationSettings({
41
+ EnvironmentName: environment,
42
+ ApplicationName: app,
43
+ });
44
+ console.log("--->", "ensureSSLConfigured", ConfigurationSettings);
45
+ const firstConfig = ConfigurationSettings === null || ConfigurationSettings === void 0 ? void 0 : ConfigurationSettings[0];
46
+ const current = firstConfig.OptionSettings.reduce(eb_config_1.convertToObject, {});
47
+ const desired = ebConfig.reduce(eb_config_1.convertToObject, {});
48
+ const needToUpdate = Object.keys(desired).find((key) => !current[key] || current[key].Value !== desired[key].Value);
49
+ if (!needToUpdate) {
50
+ return;
51
+ }
52
+ console.log("--->", "ensureSSLConfigured updateEnvironment", environment, ebConfig);
53
+ await aws_1.beanstalk
54
+ .updateEnvironment({
55
+ EnvironmentName: environment,
56
+ OptionSettings: ebConfig,
57
+ });
58
+ await (0, env_ready_1.waitForEnvReady)(config, true);
56
59
  }
57
60
  //# sourceMappingURL=certificates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"certificates.js","names":["_aws","require","_utils","_ebConfig","_envReady","ensureSSLConfigured","config","certificateArn","app","environment","names","ebConfig","Namespace","OptionName","Value","domains","sslDomains","length","ConfigurationSettings","beanstalk","describeConfigurationSettings","EnvironmentName","ApplicationName","promise","current","OptionSettings","reduce","convertToObject","desired","needToUpdate","Object","keys","find","key","updateEnvironment","waitForEnvReady"],"sources":["../src/certificates.js"],"sourcesContent":["import { beanstalk } from './aws';\nimport { names } from './utils';\nimport { convertToObject } from './eb-config';\nimport { waitForEnvReady } from './env-ready';\n\nexport default async function ensureSSLConfigured(config, certificateArn) {\n const {\n app,\n environment\n } = names(config);\n\n const ebConfig = [{\n Namespace: 'aws:elbv2:listener:443',\n OptionName: 'SSLCertificateArns',\n Value: certificateArn\n }, {\n Namespace: 'aws:elbv2:listener:443',\n OptionName: 'DefaultProcess',\n Value: 'default'\n }, {\n Namespace: 'aws:elbv2:listener:443',\n OptionName: 'ListenerEnabled',\n Value: 'true'\n }, {\n Namespace: 'aws:elbv2:listener:443',\n OptionName: 'Protocol',\n Value: 'HTTPS'\n }];\n\n const domains = config.app.sslDomains;\n\n // we use domains to decide if we need to do something about SSL\n if (!domains || domains.length === 0) {\n return;\n }\n\n const { ConfigurationSettings } = await beanstalk\n .describeConfigurationSettings({\n EnvironmentName: environment,\n ApplicationName: app,\n })\n .promise();\n\n const current = ConfigurationSettings[0].OptionSettings.reduce(\n convertToObject,\n {}\n );\n const desired = ebConfig.reduce(convertToObject, {});\n\n const needToUpdate = Object.keys(desired).find(\n (key) => !current[key] || current[key].Value !== desired[key].Value\n );\n\n if (!needToUpdate) {\n return;\n }\n\n await beanstalk\n .updateEnvironment({\n EnvironmentName: environment,\n OptionSettings: ebConfig,\n })\n .promise();\n await waitForEnvReady(config, true);\n}\n"],"mappings":";;;;;;AAAA,IAAAA,IAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AAEe,eAAeI,mBAAmBA,CAACC,MAAM,EAAEC,cAAc,EAAE;EACxE,MAAM;IACJC,GAAG;IACHC;EACF,CAAC,GAAG,IAAAC,YAAK,EAACJ,MAAM,CAAC;EAEjB,MAAMK,QAAQ,GAAG,CAAC;IAChBC,SAAS,EAAE,wBAAwB;IACnCC,UAAU,EAAE,oBAAoB;IAChCC,KAAK,EAAEP;EACT,CAAC,EAAE;IACDK,SAAS,EAAE,wBAAwB;IACnCC,UAAU,EAAE,gBAAgB;IAC5BC,KAAK,EAAE;EACT,CAAC,EAAE;IACDF,SAAS,EAAE,wBAAwB;IACnCC,UAAU,EAAE,iBAAiB;IAC7BC,KAAK,EAAE;EACT,CAAC,EAAE;IACDF,SAAS,EAAE,wBAAwB;IACnCC,UAAU,EAAE,UAAU;IACtBC,KAAK,EAAE;EACT,CAAC,CAAC;EAEF,MAAMC,OAAO,GAAGT,MAAM,CAACE,GAAG,CAACQ,UAAU;;EAErC;EACA,IAAI,CAACD,OAAO,IAAIA,OAAO,CAACE,MAAM,KAAK,CAAC,EAAE;IACpC;EACF;EAEA,MAAM;IAAEC;EAAsB,CAAC,GAAG,MAAMC,cAAS,CAC9CC,6BAA6B,CAAC;IAC7BC,eAAe,EAAEZ,WAAW;IAC5Ba,eAAe,EAAEd;EACnB,CAAC,CAAC,CACDe,OAAO,CAAC,CAAC;EAEZ,MAAMC,OAAO,GAAGN,qBAAqB,CAAC,CAAC,CAAC,CAACO,cAAc,CAACC,MAAM,CAC5DC,yBAAe,EACf,CAAC,CACH,CAAC;EACD,MAAMC,OAAO,GAAGjB,QAAQ,CAACe,MAAM,CAACC,yBAAe,EAAE,CAAC,CAAC,CAAC;EAEpD,MAAME,YAAY,GAAGC,MAAM,CAACC,IAAI,CAACH,OAAO,CAAC,CAACI,IAAI,CAC3CC,GAAG,IAAK,CAACT,OAAO,CAACS,GAAG,CAAC,IAAIT,OAAO,CAACS,GAAG,CAAC,CAACnB,KAAK,KAAKc,OAAO,CAACK,GAAG,CAAC,CAACnB,KAChE,CAAC;EAED,IAAI,CAACe,YAAY,EAAE;IACjB;EACF;EAEA,MAAMV,cAAS,CACZe,iBAAiB,CAAC;IACjBb,eAAe,EAAEZ,WAAW;IAC5BgB,cAAc,EAAEd;EAClB,CAAC,CAAC,CACDY,OAAO,CAAC,CAAC;EACZ,MAAM,IAAAY,yBAAe,EAAC7B,MAAM,EAAE,IAAI,CAAC;AACrC","ignoreList":[]}
1
+ {"version":3,"file":"certificates.js","sourceRoot":"","sources":["../src/certificates.ts"],"names":[],"mappings":";;AAMA,kDAsEC;AA5ED,+BAAkC;AAClC,mCAAgC;AAChC,2CAA8C;AAC9C,2CAA8C;AAGvC,KAAK,UAAU,mBAAmB,CACvC,MAAiB,EACjB,cAAuB;IAEvB,MAAM,EACJ,GAAG,EACH,WAAW,EACZ,GAAG,IAAA,aAAK,EAAC,MAAM,CAAC,CAAC;IAElB,MAAM,QAAQ,GAAG,CAAC;YAChB,SAAS,EAAE,wBAAwB;YACnC,UAAU,EAAE,oBAAoB;YAChC,KAAK,EAAE,cAAc;SACtB,EAAE;YACD,SAAS,EAAE,wBAAwB;YACnC,UAAU,EAAE,gBAAgB;YAC5B,KAAK,EAAE,SAAS;SACjB,EAAE;YACD,SAAS,EAAE,wBAAwB;YACnC,UAAU,EAAE,iBAAiB;YAC7B,KAAK,EAAE,MAAM;SACd,EAAE;YACD,SAAS,EAAE,wBAAwB;YACnC,UAAU,EAAE,UAAU;YACtB,KAAK,EAAE,OAAO;SACf;QACD,cAAc;QACd;YACE,SAAS,EAAE,wBAAwB;YACnC,UAAU,EAAE,WAAW;YACvB,KAAK,EAAE,qCAAqC;SAC7C;KACA,CAAC;IAEF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC;IAEtC,gEAAgE;IAChE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO;IACT,CAAC;IACD,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,eAAS;SAChD,6BAA6B,CAAC;QAC7B,eAAe,EAAE,WAAW;QAC5B,eAAe,EAAE,GAAG;KACrB,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,qBAAqB,EAAE,qBAAqB,CAAC,CAAA;IAEjE,MAAM,WAAW,GAAG,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAG,CAAC,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,WAAY,CAAC,cAAe,CAAC,MAAM,CACjD,2BAAe,EACf,EAAwB,CACzB,CAAC;IAEF,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,2BAAe,EAAE,EAAE,CAAC,CAAC;IAErD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAC5C,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CACpE,CAAC;IAEF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,uCAAuC,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAA;IAEnF,MAAM,eAAS;SACZ,iBAAiB,CAAC;QACjB,eAAe,EAAE,WAAW;QAC5B,cAAc,EAAE,QAAQ;KACzB,CAAC,CAAC;IACL,MAAM,IAAA,2BAAe,EAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC"}