skuba 4.1.0 โ†’ 4.2.0-beta.1

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/lib/api/git/commitAllChanges.d.ts +1 -1
  2. package/lib/api/git/commitAllChanges.js +4 -1
  3. package/lib/api/git/commitAllChanges.js.map +1 -1
  4. package/lib/api/git/currentBranch.d.ts +10 -0
  5. package/lib/api/git/currentBranch.js +41 -0
  6. package/lib/api/git/currentBranch.js.map +1 -0
  7. package/lib/api/git/index.d.ts +2 -1
  8. package/lib/api/git/index.js +4 -1
  9. package/lib/api/git/index.js.map +1 -1
  10. package/lib/api/git/log.d.ts +9 -2
  11. package/lib/api/git/log.js +24 -5
  12. package/lib/api/git/log.js.map +1 -1
  13. package/lib/api/git/remote.d.ts +4 -2
  14. package/lib/api/git/remote.js +22 -5
  15. package/lib/api/git/remote.js.map +1 -1
  16. package/lib/api/github/environment.d.ts +0 -4
  17. package/lib/api/github/environment.js +3 -7
  18. package/lib/api/github/environment.js.map +1 -1
  19. package/lib/cli/adapter/eslint.js +15 -0
  20. package/lib/cli/adapter/eslint.js.map +1 -1
  21. package/lib/cli/configure/processing/package.d.ts +1 -0
  22. package/lib/cli/format.js +3 -2
  23. package/lib/cli/format.js.map +1 -1
  24. package/lib/cli/init/git.d.ts +0 -1
  25. package/lib/cli/init/git.js +1 -11
  26. package/lib/cli/init/git.js.map +1 -1
  27. package/lib/cli/init/index.js +7 -3
  28. package/lib/cli/init/index.js.map +1 -1
  29. package/lib/cli/lint/autofix.d.ts +2 -0
  30. package/lib/cli/lint/autofix.js +113 -0
  31. package/lib/cli/lint/autofix.js.map +1 -0
  32. package/lib/cli/lint/external.js +6 -0
  33. package/lib/cli/lint/external.js.map +1 -1
  34. package/lib/cli/node.js +4 -1
  35. package/lib/cli/node.js.map +1 -1
  36. package/lib/utils/env.d.ts +5 -0
  37. package/lib/utils/env.js +9 -0
  38. package/lib/utils/env.js.map +1 -0
  39. package/package.json +7 -7
  40. package/template/base/jest.config.ts +6 -0
  41. package/template/express-rest-api/.buildkite/pipeline.yml +13 -22
  42. package/template/express-rest-api/docker-compose.yml +3 -1
  43. package/template/greeter/.buildkite/pipeline.yml +4 -9
  44. package/template/greeter/docker-compose.yml +3 -1
  45. package/template/koa-rest-api/.buildkite/pipeline.yml +13 -22
  46. package/template/koa-rest-api/docker-compose.yml +3 -1
  47. package/template/koa-rest-api/package.json +1 -1
  48. package/template/lambda-sqs-worker/.buildkite/pipeline.yml +16 -22
  49. package/template/lambda-sqs-worker/docker-compose.yml +3 -1
  50. package/template/lambda-sqs-worker-cdk/.buildkite/pipeline.yml +14 -20
  51. package/template/lambda-sqs-worker-cdk/cdk.json +3 -3
  52. package/template/lambda-sqs-worker-cdk/docker-compose.yml +3 -1
  53. package/template/lambda-sqs-worker-cdk/package.json +1 -1
  54. package/template/oss-npm-package/.github/workflows/release.yml +6 -5
  55. package/template/oss-npm-package/.github/workflows/validate.yml +6 -6
  56. package/template/private-npm-package/.buildkite/pipeline.yml +3 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autofix.js","sourceRoot":"","sources":["../../../src/cli/lint/autofix.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ exports.externalLint = exports.StreamInterceptor = void 0;
27
27
  const stream_1 = __importDefault(require("stream"));
28
28
  const logging_1 = require("../../utils/logging");
29
29
  const annotate_1 = require("./annotate");
30
+ const autofix_1 = require("./autofix");
30
31
  const eslint_1 = require("./eslint");
31
32
  const prettier_1 = require("./prettier");
32
33
  const tsc_1 = require("./tsc");
@@ -106,6 +107,11 @@ const externalLint = (input) => __awaiter(void 0, void 0, void 0, function* () {
106
107
  logging_1.log.newline();
107
108
  logging_1.log.err(`${tools.join(', ')} found issues that require triage.`);
108
109
  process.exitCode = 1;
110
+ if (eslint.ok && prettier.ok) {
111
+ // If these are fine then the issue lies with tsc, which we can't autofix.
112
+ return;
113
+ }
114
+ yield (0, autofix_1.autofix)(input);
109
115
  });
110
116
  exports.externalLint = externalLint;
111
117
  //# sourceMappingURL=external.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"external.js","sourceRoot":"","sources":["../../../src/cli/lint/external.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"external.js","sourceRoot":"","sources":["../../../src/cli/lint/external.ts"],"names":[],"mappings":"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"}
package/lib/cli/node.js CHANGED
@@ -50,7 +50,10 @@ const node = () => __awaiter(void 0, void 0, void 0, function* () {
50
50
  });
51
51
  // Run a script with plain `node` to support inspector options.
52
52
  // https://github.com/TypeStrong/ts-node#programmatic
53
- return exec('node', ...args.node, '--require', 'dotenv/config', '--require', 'tsconfig-paths/register', '--require', 'ts-node/register/transpile-only', path_1.default.join(__dirname, '..', 'wrapper'), ...args.script);
53
+ return exec('node', ...args.node, '--require', 'dotenv/config', '--require', 'tsconfig-paths/register', '--require', 'ts-node/register/transpile-only',
54
+ // Override dangerously warn-only default on Node.js <15 so that we
55
+ // predictably return a non-zero exit code on an unhandled rejection.
56
+ '--unhandled-rejections=throw', path_1.default.join(__dirname, '..', 'wrapper'), ...args.script);
54
57
  }
55
58
  // REPL with `ts-node` to support import statements.
56
59
  return tsNode
@@ -1 +1 @@
1
- {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/cli/node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AAExB,wDAA+B;AAC/B,gDAAkC;AAElC,wCAA6C;AAC7C,wCAA2C;AAC3C,oDAA+C;AAExC,MAAM,IAAI,GAAG,GAAS,EAAE;IAC7B,MAAM,IAAI,GAAG,IAAA,mBAAY,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjD,MAAM,aAAa,GAAG,MAAM,IAAA,kBAAO,GAAE,CAAC;IAEtC,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,MAAM,IAAI,GAAG,IAAA,iBAAU,EAAC;YACtB,GAAG,EAAE;gBACH,mBAAmB,EAAE,IAAI,CAAC,UAAU;gBACpC,YAAY,EAAE,MAAM,CAAC,IAAA,qBAAQ,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC;aACtE;SACF,CAAC,CAAC;QAEH,+DAA+D;QAC/D,qDAAqD;QACrD,OAAO,IAAI,CACT,MAAM,EACN,GAAG,IAAI,CAAC,IAAI,EACZ,WAAW,EACX,eAAe,EACf,WAAW,EACX,yBAAyB,EACzB,WAAW,EACX,iCAAiC,EACjC,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,EACrC,GAAG,IAAI,CAAC,MAAM,CACf,CAAC;KACH;IAED,oDAAoD;IACpD,OAAO,MAAM;SACV,UAAU,CAAC;QACV,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC;YACvB,OAAO,EAAE,CAAC,eAAe,EAAE,yBAAyB,CAAC;YACrD,aAAa,EAAE,IAAI;SACpB,CAAC;KACH,CAAC;SACD,KAAK,EAAE,CAAC;AACb,CAAC,CAAA,CAAC;AAtCW,QAAA,IAAI,QAsCf"}
1
+ {"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/cli/node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAwB;AAExB,wDAA+B;AAC/B,gDAAkC;AAElC,wCAA6C;AAC7C,wCAA2C;AAC3C,oDAA+C;AAExC,MAAM,IAAI,GAAG,GAAS,EAAE;IAC7B,MAAM,IAAI,GAAG,IAAA,mBAAY,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjD,MAAM,aAAa,GAAG,MAAM,IAAA,kBAAO,GAAE,CAAC;IAEtC,IAAI,IAAI,CAAC,UAAU,EAAE;QACnB,MAAM,IAAI,GAAG,IAAA,iBAAU,EAAC;YACtB,GAAG,EAAE;gBACH,mBAAmB,EAAE,IAAI,CAAC,UAAU;gBACpC,YAAY,EAAE,MAAM,CAAC,IAAA,qBAAQ,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC;aACtE;SACF,CAAC,CAAC;QAEH,+DAA+D;QAC/D,qDAAqD;QACrD,OAAO,IAAI,CACT,MAAM,EACN,GAAG,IAAI,CAAC,IAAI,EACZ,WAAW,EACX,eAAe,EACf,WAAW,EACX,yBAAyB,EACzB,WAAW,EACX,iCAAiC;QACjC,mEAAmE;QACnE,qEAAqE;QACrE,8BAA8B,EAC9B,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,EACrC,GAAG,IAAI,CAAC,MAAM,CACf,CAAC;KACH;IAED,oDAAoD;IACpD,OAAO,MAAM;SACV,UAAU,CAAC;QACV,OAAO,EAAE,MAAM,CAAC,QAAQ,CAAC;YACvB,OAAO,EAAE,CAAC,eAAe,EAAE,yBAAyB,CAAC;YACrD,aAAa,EAAE,IAAI;SACpB,CAAC;KACH,CAAC;SACD,KAAK,EAAE,CAAC;AACb,CAAC,CAAA,CAAC;AAzCW,QAAA,IAAI,QAyCf"}
@@ -0,0 +1,5 @@
1
+ /// <reference types="node" />
2
+ /**
3
+ * Whether the code is executing in a CI environment.
4
+ */
5
+ export declare const isCiEnv: (env?: NodeJS.ProcessEnv) => boolean;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isCiEnv = void 0;
4
+ /**
5
+ * Whether the code is executing in a CI environment.
6
+ */
7
+ const isCiEnv = (env = process.env) => Boolean(env.BUILDKITE || env.CI || env.GITHUB_ACTIONS);
8
+ exports.isCiEnv = isCiEnv;
9
+ //# sourceMappingURL=env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../src/utils/env.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACI,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,EAAW,EAAE,CACpD,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,cAAc,CAAC,CAAC;AAD5C,QAAA,OAAO,WACqC"}
package/package.json CHANGED
@@ -16,7 +16,7 @@
16
16
  "ejs": "^3.1.6",
17
17
  "enquirer": "^2.3.6",
18
18
  "eslint": "^7.27.0",
19
- "eslint-config-skuba": "1.0.14",
19
+ "eslint-config-skuba": "1.0.15",
20
20
  "execa": "^5.0.0",
21
21
  "fdir": "^5.0.0",
22
22
  "fs-extra": "^10.0.0",
@@ -28,11 +28,11 @@
28
28
  "jest": "^27.4.5",
29
29
  "latest-version": "^5.1.0",
30
30
  "lodash.mergewith": "^4.6.2",
31
- "normalize-package-data": "^3.0.0",
31
+ "normalize-package-data": "^4.0.0",
32
32
  "npm-run-path": "^4.0.1",
33
33
  "npm-which": "^3.0.1",
34
34
  "picomatch": "^2.2.2",
35
- "prettier": "~2.5.0",
35
+ "prettier": "~2.6.0",
36
36
  "read-pkg-up": "^7.0.1",
37
37
  "runtypes": "^6.0.0",
38
38
  "semantic-release": "^19.0.0",
@@ -48,7 +48,7 @@
48
48
  },
49
49
  "description": "SEEK development toolkit for backend applications and packages",
50
50
  "devDependencies": {
51
- "@changesets/cli": "2.20.0",
51
+ "@changesets/cli": "2.21.1",
52
52
  "@changesets/get-github-info": "0.5.0",
53
53
  "@jest/reporters": "27.5.1",
54
54
  "@types/ejs": "3.1.0",
@@ -60,13 +60,13 @@
60
60
  "@types/npm-which": "3.0.1",
61
61
  "@types/picomatch": "2.3.0",
62
62
  "@types/supertest": "2.0.11",
63
- "express": "4.17.2",
63
+ "express": "4.17.3",
64
64
  "jsonfile": "6.1.0",
65
65
  "koa": "2.13.4",
66
66
  "memfs": "3.4.1",
67
67
  "semver": "7.3.5",
68
68
  "supertest": "6.2.2",
69
- "type-fest": "2.11.2"
69
+ "type-fest": "2.12.0"
70
70
  },
71
71
  "engines": {
72
72
  "node": ">=14.18"
@@ -124,5 +124,5 @@
124
124
  "version": "4.0.0"
125
125
  },
126
126
  "types": "./lib/index.d.ts",
127
- "version": "4.1.0"
127
+ "version": "4.2.0-beta.1"
128
128
  }
@@ -10,6 +10,12 @@ export default Jest.mergePreset({
10
10
  statements: 0,
11
11
  },
12
12
  },
13
+ globals: {
14
+ 'ts-jest': {
15
+ // seek-oss/skuba#626
16
+ isolatedModules: true,
17
+ },
18
+ },
13
19
  setupFiles: ['<rootDir>/jest.setup.ts'],
14
20
  testPathIgnorePatterns: ['/test\\.ts'],
15
21
  });
@@ -1,13 +1,7 @@
1
- configs:
2
- environments:
3
- - &dev
4
- agents:
5
- queue: <%- devBuildkiteQueueName %>
6
-
7
- - &prod
8
- agents:
9
- queue: <%- prodBuildkiteQueueName %>
1
+ agents:
2
+ queue: <%- prodBuildkiteQueueName %>
10
3
 
4
+ configs:
11
5
  plugins:
12
6
  - &aws-sm
13
7
  seek-oss/aws-sm#v2.3.1:
@@ -36,8 +30,7 @@ configs:
36
30
  permit_on_passed: true
37
31
 
38
32
  steps:
39
- - <<: *prod
40
- label: ๐Ÿง–โ€โ™€๏ธ Warm Prod
33
+ - label: ๐Ÿง–โ€โ™€๏ธ Warm Prod
41
34
  command: ':'
42
35
  key: warm-prod
43
36
  plugins:
@@ -45,8 +38,7 @@ steps:
45
38
  - *private-npm
46
39
  - *docker-ecr-cache
47
40
 
48
- - <<: *prod
49
- label: ๐Ÿงช Test & Lint
41
+ - label: ๐Ÿงช Test & Lint
50
42
  commands:
51
43
  - echo '+++ yarn test:ci'
52
44
  - yarn test:ci
@@ -62,14 +54,13 @@ steps:
62
54
  - docker-compose#v3.9.0:
63
55
  run: app
64
56
 
65
- - <<: *prod
66
- label: ๐Ÿ“ฆ Build & Package
57
+ - label: ๐Ÿ“ฆ Build & Package
67
58
  depends_on: warm-prod
68
59
  plugins:
69
60
  - *aws-sm
70
61
  - *private-npm
71
62
  - *docker-ecr-cache
72
- - seek-jobs/gantry#v1.6.1:
63
+ - seek-jobs/gantry#v1.6.2:
73
64
  command: build
74
65
  file: gantry.build.yml
75
66
  region: <%- region %>
@@ -79,13 +70,14 @@ steps:
79
70
  - block: ๐Ÿ™‹๐Ÿปโ€โ™€๏ธ Deploy Dev
80
71
  branches: '!${BUILDKITE_PIPELINE_DEFAULT_BRANCH}'
81
72
 
82
- - <<: *dev
83
- <<: *deploy
73
+ - <<: *deploy
74
+ agents:
75
+ queue: <%- devBuildkiteQueueName %>
84
76
  label: ๐Ÿคž Deploy Dev
85
77
  concurrency_group: <%- teamName %>/deploy/gantry/<%- devGantryEnvironmentName %>
86
78
  key: deploy-dev
87
79
  plugins:
88
- - seek-jobs/gantry#v1.6.1:
80
+ - seek-jobs/gantry#v1.6.2:
89
81
  command: apply
90
82
  environment: <%- devGantryEnvironmentName %>
91
83
  file: gantry.apply.yml
@@ -94,14 +86,13 @@ steps:
94
86
  - .gantry/common.yml
95
87
  - .gantry/dev.yml
96
88
 
97
- - <<: *prod
98
- <<: *deploy
89
+ - <<: *deploy
99
90
  label: ๐Ÿš€ Deploy Prod
100
91
  branches: ${BUILDKITE_PIPELINE_DEFAULT_BRANCH}
101
92
  concurrency_group: <%- teamName %>/deploy/gantry/<%- prodGantryEnvironmentName %>
102
93
  depends_on: deploy-dev
103
94
  plugins:
104
- - seek-jobs/gantry#v1.6.1:
95
+ - seek-jobs/gantry#v1.6.2:
105
96
  command: apply
106
97
  environment: <%- prodGantryEnvironmentName %>
107
98
  file: gantry.apply.yml
@@ -3,11 +3,13 @@ version: '3.7'
3
3
  services:
4
4
  app:
5
5
  environment:
6
- # Enable Buildkite + GitHub annotation support.
6
+ # Enable Buildkite + GitHub integrations.
7
7
  - BUILDKITE
8
8
  - BUILDKITE_AGENT_ACCESS_TOKEN
9
+ - BUILDKITE_BRANCH
9
10
  - BUILDKITE_BUILD_NUMBER
10
11
  - BUILDKITE_JOB_ID
12
+ - BUILDKITE_PIPELINE_DEFAULT_BRANCH
11
13
  - BUILDKITE_STEP_ID
12
14
  - GITHUB_API_TOKEN
13
15
  image: ${BUILDKITE_PLUGIN_DOCKER_IMAGE:-''}
@@ -1,11 +1,7 @@
1
- configs:
2
- environments:
3
- - &prod
4
- agents:
5
- queue: <%- prodBuildkiteQueueName %>
6
- env:
7
- ENVIRONMENT: prod
1
+ agents:
2
+ queue: <%- prodBuildkiteQueueName %>
8
3
 
4
+ configs:
9
5
  plugins:
10
6
  - &aws-sm
11
7
  seek-oss/aws-sm#v2.3.1:
@@ -24,8 +20,7 @@ configs:
24
20
  env: NPM_READ_TOKEN
25
21
 
26
22
  steps:
27
- - <<: *prod
28
- label: ๐Ÿงช Test & Lint
23
+ - label: ๐Ÿงช Test & Lint
29
24
  commands:
30
25
  - echo '+++ yarn test:ci'
31
26
  - yarn test:ci
@@ -3,11 +3,13 @@ version: '3.7'
3
3
  services:
4
4
  app:
5
5
  environment:
6
- # Enable Buildkite + GitHub annotation support.
6
+ # Enable Buildkite + GitHub integrations.
7
7
  - BUILDKITE
8
8
  - BUILDKITE_AGENT_ACCESS_TOKEN
9
+ - BUILDKITE_BRANCH
9
10
  - BUILDKITE_BUILD_NUMBER
10
11
  - BUILDKITE_JOB_ID
12
+ - BUILDKITE_PIPELINE_DEFAULT_BRANCH
11
13
  - BUILDKITE_STEP_ID
12
14
  - GITHUB_API_TOKEN
13
15
  image: ${BUILDKITE_PLUGIN_DOCKER_IMAGE:-''}
@@ -1,13 +1,7 @@
1
- configs:
2
- environments:
3
- - &dev
4
- agents:
5
- queue: <%- devBuildkiteQueueName %>
6
-
7
- - &prod
8
- agents:
9
- queue: <%- prodBuildkiteQueueName %>
1
+ agents:
2
+ queue: <%- prodBuildkiteQueueName %>
10
3
 
4
+ configs:
11
5
  plugins:
12
6
  - &aws-sm
13
7
  seek-oss/aws-sm#v2.3.1:
@@ -36,8 +30,7 @@ configs:
36
30
  permit_on_passed: true
37
31
 
38
32
  steps:
39
- - <<: *prod
40
- label: ๐Ÿง–โ€โ™€๏ธ Warm Prod
33
+ - label: ๐Ÿง–โ€โ™€๏ธ Warm Prod
41
34
  command: ':'
42
35
  key: warm-prod
43
36
  plugins:
@@ -45,8 +38,7 @@ steps:
45
38
  - *private-npm
46
39
  - *docker-ecr-cache
47
40
 
48
- - <<: *prod
49
- label: ๐Ÿงช Test & Lint
41
+ - label: ๐Ÿงช Test & Lint
50
42
  commands:
51
43
  - echo '+++ yarn test:ci'
52
44
  - yarn test:ci
@@ -62,14 +54,13 @@ steps:
62
54
  - docker-compose#v3.9.0:
63
55
  run: app
64
56
 
65
- - <<: *prod
66
- label: ๐Ÿ“ฆ Build & Package
57
+ - label: ๐Ÿ“ฆ Build & Package
67
58
  depends_on: warm-prod
68
59
  plugins:
69
60
  - *aws-sm
70
61
  - *private-npm
71
62
  - *docker-ecr-cache
72
- - seek-jobs/gantry#v1.6.1:
63
+ - seek-jobs/gantry#v1.6.2:
73
64
  command: build
74
65
  file: gantry.build.yml
75
66
  region: <%- region %>
@@ -79,13 +70,14 @@ steps:
79
70
  - block: ๐Ÿ™‹๐Ÿปโ€โ™€๏ธ Deploy Dev
80
71
  branches: '!${BUILDKITE_PIPELINE_DEFAULT_BRANCH}'
81
72
 
82
- - <<: *dev
83
- <<: *deploy
73
+ - <<: *deploy
74
+ agents:
75
+ queue: <%- devBuildkiteQueueName %>
84
76
  label: ๐Ÿคž Deploy Dev
85
77
  concurrency_group: <%- teamName %>/deploy/gantry/<%- devGantryEnvironmentName %>
86
78
  key: deploy-dev
87
79
  plugins:
88
- - seek-jobs/gantry#v1.6.1:
80
+ - seek-jobs/gantry#v1.6.2:
89
81
  command: apply
90
82
  environment: <%- devGantryEnvironmentName %>
91
83
  file: gantry.apply.yml
@@ -94,14 +86,13 @@ steps:
94
86
  - .gantry/common.yml
95
87
  - .gantry/dev.yml
96
88
 
97
- - <<: *prod
98
- <<: *deploy
89
+ - <<: *deploy
99
90
  label: ๐Ÿš€ Deploy Prod
100
91
  branches: ${BUILDKITE_PIPELINE_DEFAULT_BRANCH}
101
92
  concurrency_group: <%- teamName %>/deploy/gantry/<%- prodGantryEnvironmentName %>
102
93
  depends_on: deploy-dev
103
94
  plugins:
104
- - seek-jobs/gantry#v1.6.1:
95
+ - seek-jobs/gantry#v1.6.2:
105
96
  command: apply
106
97
  environment: <%- prodGantryEnvironmentName %>
107
98
  file: gantry.apply.yml
@@ -3,11 +3,13 @@ version: '3.7'
3
3
  services:
4
4
  app:
5
5
  environment:
6
- # Enable Buildkite + GitHub annotation support.
6
+ # Enable Buildkite + GitHub integrations.
7
7
  - BUILDKITE
8
8
  - BUILDKITE_AGENT_ACCESS_TOKEN
9
+ - BUILDKITE_BRANCH
9
10
  - BUILDKITE_BUILD_NUMBER
10
11
  - BUILDKITE_JOB_ID
12
+ - BUILDKITE_PIPELINE_DEFAULT_BRANCH
11
13
  - BUILDKITE_STEP_ID
12
14
  - GITHUB_API_TOKEN
13
15
  image: ${BUILDKITE_PLUGIN_DOCKER_IMAGE:-''}
@@ -3,7 +3,7 @@
3
3
  "@koa/router": "^10.1.1",
4
4
  "@opentelemetry/api": "^1.0.4",
5
5
  "@opentelemetry/exporter-collector-grpc": "^0.25.0",
6
- "@opentelemetry/instrumentation-aws-sdk": "^0.5.0",
6
+ "@opentelemetry/instrumentation-aws-sdk": "^0.6.0",
7
7
  "@opentelemetry/instrumentation-http": "^0.27.0",
8
8
  "@opentelemetry/sdk-node": "^0.27.0",
9
9
  "@seek/logger": "^5.0.1",
@@ -1,20 +1,7 @@
1
- env:
2
- VERSION: ${BUILDKITE_COMMIT:0:7}.${BUILDKITE_BUILD_NUMBER}
1
+ agents:
2
+ queue: <%- prodBuildkiteQueueName %>
3
3
 
4
4
  configs:
5
- environments:
6
- - &dev
7
- agents:
8
- queue: <%- devBuildkiteQueueName %>
9
- env:
10
- ENVIRONMENT: dev
11
-
12
- - &prod
13
- agents:
14
- queue: <%- prodBuildkiteQueueName %>
15
- env:
16
- ENVIRONMENT: prod
17
-
18
5
  plugins:
19
6
  - &aws-sm
20
7
  seek-oss/aws-sm#v2.3.1:
@@ -55,9 +42,11 @@ configs:
55
42
  # Always follow up with a proper revert or fix in Git history.
56
43
  permit_on_passed: true
57
44
 
45
+ env:
46
+ VERSION: ${BUILDKITE_COMMIT:0:7}.${BUILDKITE_BUILD_NUMBER}
47
+
58
48
  steps:
59
- - <<: *prod
60
- label: ๐Ÿงช Test, Lint & Build
49
+ - label: ๐Ÿงช Test, Lint & Build
61
50
  artifact_paths: lib/**/*
62
51
  commands:
63
52
  - echo '+++ yarn test:ci'
@@ -75,7 +64,8 @@ steps:
75
64
  - docker-compose#v3.9.0:
76
65
  run: app
77
66
 
78
- - <<: *dev
67
+ - agents:
68
+ queue: <%- devBuildkiteQueueName %>
79
69
  branches: '!renovate/*'
80
70
  label: ๐Ÿง–โ€โ™€๏ธ Warm Dev
81
71
  command: ':'
@@ -88,15 +78,19 @@ steps:
88
78
  - block: ๐Ÿ™‹๐Ÿปโ€โ™€๏ธ Deploy Dev
89
79
  branches: '!${BUILDKITE_PIPELINE_DEFAULT_BRANCH}'
90
80
 
91
- - <<: *dev
92
- <<: *deploy
81
+ - <<: *deploy
82
+ agents:
83
+ queue: <%- devBuildkiteQueueName %>
84
+ env:
85
+ ENVIRONMENT: dev
93
86
  concurrency_group: <%- repoName %>/deploy/dev
94
87
  label: ๐Ÿคž Deploy Dev
95
88
 
96
89
  - wait
97
90
 
98
- - <<: *prod
99
- <<: *deploy
91
+ - <<: *deploy
92
+ env:
93
+ ENVIRONMENT: prod
100
94
  branches: ${BUILDKITE_PIPELINE_DEFAULT_BRANCH}
101
95
  concurrency_group: <%- repoName %>/deploy/prod
102
96
  label: ๐Ÿš€ Deploy Prod
@@ -3,11 +3,13 @@ version: '3.7'
3
3
  services:
4
4
  app:
5
5
  environment:
6
- # Enable Buildkite + GitHub annotation support.
6
+ # Enable Buildkite + GitHub integrations.
7
7
  - BUILDKITE
8
8
  - BUILDKITE_AGENT_ACCESS_TOKEN
9
+ - BUILDKITE_BRANCH
9
10
  - BUILDKITE_BUILD_NUMBER
10
11
  - BUILDKITE_JOB_ID
12
+ - BUILDKITE_PIPELINE_DEFAULT_BRANCH
11
13
  - BUILDKITE_STEP_ID
12
14
  - GITHUB_API_TOKEN
13
15
  # Tag AWS resources with the commit hash.
@@ -1,17 +1,7 @@
1
- configs:
2
- environments:
3
- - &dev
4
- agents:
5
- queue: <%- devBuildkiteQueueName %>
6
- env:
7
- ENVIRONMENT: dev
8
-
9
- - &prod
10
- agents:
11
- queue: <%- prodBuildkiteQueueName %>
12
- env:
13
- ENVIRONMENT: prod
1
+ agents:
2
+ queue: <%- prodBuildkiteQueueName %>
14
3
 
4
+ configs:
15
5
  plugins:
16
6
  - &aws-sm
17
7
  seek-oss/aws-sm#v2.3.1:
@@ -52,8 +42,7 @@ configs:
52
42
  permit_on_passed: true
53
43
 
54
44
  steps:
55
- - <<: *prod
56
- label: ๐Ÿงช Test, Lint & Build
45
+ - label: ๐Ÿงช Test, Lint & Build
57
46
  artifact_paths: lib/**/*
58
47
  commands:
59
48
  - echo '+++ yarn test:ci'
@@ -71,7 +60,8 @@ steps:
71
60
  - docker-compose#v3.9.0:
72
61
  run: app
73
62
 
74
- - <<: *dev
63
+ - agents:
64
+ queue: <%- devBuildkiteQueueName %>
75
65
  branches: '!renovate/*'
76
66
  label: ๐Ÿง–โ€โ™€๏ธ Warm Dev
77
67
  command: ':'
@@ -84,14 +74,18 @@ steps:
84
74
  - block: ๐Ÿ™‹๐Ÿปโ€โ™€๏ธ Deploy Dev
85
75
  branches: '!${BUILDKITE_PIPELINE_DEFAULT_BRANCH}'
86
76
 
87
- - <<: *dev
88
- <<: *deploy
77
+ - <<: *deploy
78
+ agents:
79
+ queue: <%- devBuildkiteQueueName %>
80
+ env:
81
+ ENVIRONMENT: dev
89
82
  label: ๐Ÿคž Deploy Dev
90
83
  concurrency_group: '<%- repoName %>/deploy/dev'
91
84
  key: deploy-dev
92
85
 
93
- - <<: *prod
94
- <<: *deploy
86
+ - <<: *deploy
87
+ env:
88
+ ENVIRONMENT: prod
95
89
  label: ๐Ÿš€ Deploy Prod
96
90
  branches: ${BUILDKITE_PIPELINE_DEFAULT_BRANCH}
97
91
  concurrency_group: '<%- repoName %>/deploy/prod'
@@ -19,7 +19,7 @@
19
19
  "SOMETHING": "prod"
20
20
  }
21
21
  }
22
- },
23
- "progress": "events"
24
- }
22
+ }
23
+ },
24
+ "progress": "events"
25
25
  }
@@ -3,11 +3,13 @@ version: '3.7'
3
3
  services:
4
4
  app:
5
5
  environment:
6
- # Enable Buildkite + GitHub annotation support.
6
+ # Enable Buildkite + GitHub integrations.
7
7
  - BUILDKITE
8
8
  - BUILDKITE_AGENT_ACCESS_TOKEN
9
+ - BUILDKITE_BRANCH
9
10
  - BUILDKITE_BUILD_NUMBER
10
11
  - BUILDKITE_JOB_ID
12
+ - BUILDKITE_PIPELINE_DEFAULT_BRANCH
11
13
  - BUILDKITE_STEP_ID
12
14
  - GITHUB_API_TOKEN
13
15
  # Tag AWS resources with the commit hash.
@@ -15,7 +15,7 @@
15
15
  "private": true,
16
16
  "scripts": {
17
17
  "build": "skuba build",
18
- "deploy": "cdk deploy appStack --require-approval never --context stage=${ENVIRONMENT} --progress events",
18
+ "deploy": "cdk deploy appStack --require-approval never --context stage=${ENVIRONMENT}",
19
19
  "format": "skuba format",
20
20
  "lint": "skuba lint",
21
21
  "package": "yarn install --ignore-optional --ignore-scripts --modules-folder ./lib/node_modules --non-interactive --offline --production",
@@ -6,21 +6,22 @@ on:
6
6
  - beta
7
7
  - master
8
8
 
9
+ permissions: {}
10
+
9
11
  jobs:
10
12
  release:
11
13
  name: Publish & Deploy
14
+ permissions:
15
+ contents: write
12
16
  runs-on: ubuntu-latest
13
- env:
14
- CI: true
15
17
  steps:
16
18
  - name: Check out repo
17
- uses: actions/checkout@master
19
+ uses: actions/checkout@v3
18
20
  with:
19
21
  fetch-depth: 0
20
- lfs: true
21
22
 
22
23
  - name: Set up Node.js 16.x
23
- uses: actions/setup-node@master
24
+ uses: actions/setup-node@v2
24
25
  with:
25
26
  node-version: 16.x
26
27
 
@@ -4,20 +4,20 @@ on:
4
4
  - pull_request
5
5
  - push
6
6
 
7
+ permissions: {}
8
+
7
9
  jobs:
8
10
  validate:
9
11
  name: Lint & Test
12
+ permissions:
13
+ checks: write
10
14
  runs-on: ubuntu-latest
11
- env:
12
- CI: true
13
15
  steps:
14
16
  - name: Check out repo
15
- uses: actions/checkout@master
16
- with:
17
- lfs: true
17
+ uses: actions/checkout@v3
18
18
 
19
19
  - name: Set up Node.js 16.x
20
- uses: actions/setup-node@master
20
+ uses: actions/setup-node@v2
21
21
  with:
22
22
  node-version: 16.x
23
23
 
@@ -1,4 +1,5 @@
1
+ agents:
2
+ queue: artefacts:npm
3
+
1
4
  steps:
2
5
  - command: aws s3 cp s3://seek-npm-package-buildkite-pipeline/pipeline-latest.sh - | bash | buildkite-agent pipeline upload
3
- agents:
4
- queue: artefacts:npm