@catladder/pipeline 3.19.0 → 3.20.0

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 (70) hide show
  1. package/dist/constants.js +1 -1
  2. package/dist/pipeline/createMainPipeline.js +1 -1
  3. package/dist/pipeline/gitlab/gitlabReleaseJobs.d.ts +2 -1
  4. package/dist/pipeline/gitlab/gitlabReleaseJobs.js +48 -3
  5. package/dist/rules/index.d.ts +1 -3
  6. package/dist/rules/index.js +2 -19
  7. package/dist/tsconfig.tsbuildinfo +1 -1
  8. package/dist/types/config.d.ts +5 -0
  9. package/dist/types/release.d.ts +7 -0
  10. package/dist/types/release.js +5 -0
  11. package/examples/__snapshots__/automatic-releases.test.ts.snap +1484 -0
  12. package/examples/__snapshots__/cloud-run-health-check-defaults.test.ts.snap +0 -2
  13. package/examples/__snapshots__/cloud-run-health-check-only-startup.test.ts.snap +0 -2
  14. package/examples/__snapshots__/cloud-run-health-check.test.ts.snap +0 -2
  15. package/examples/__snapshots__/cloud-run-http2.test.ts.snap +0 -2
  16. package/examples/__snapshots__/cloud-run-llama.test.ts.snap +0 -2
  17. package/examples/__snapshots__/cloud-run-memory-limit.test.ts.snap +0 -2
  18. package/examples/__snapshots__/cloud-run-meteor-with-worker.test.ts.snap +0 -2
  19. package/examples/__snapshots__/cloud-run-nextjs.test.ts.snap +0 -2
  20. package/examples/__snapshots__/cloud-run-no-cpu-throttling.test.ts.snap +0 -2
  21. package/examples/__snapshots__/cloud-run-no-service.test.ts.snap +0 -2
  22. package/examples/__snapshots__/cloud-run-non-public.test.ts.snap +0 -2
  23. package/examples/__snapshots__/cloud-run-post-stop-job.test.ts.snap +0 -2
  24. package/examples/__snapshots__/cloud-run-service-custom-vpc-connector.test.ts.snap +0 -2
  25. package/examples/__snapshots__/cloud-run-service-custom-vpc.test.ts.snap +0 -2
  26. package/examples/__snapshots__/cloud-run-service-gen2.test.ts.snap +0 -2
  27. package/examples/__snapshots__/cloud-run-service-increase-timout.test.ts.snap +0 -2
  28. package/examples/__snapshots__/cloud-run-service-with-volumes.test.ts.snap +0 -2
  29. package/examples/__snapshots__/cloud-run-storybook.test.ts.snap +0 -2
  30. package/examples/__snapshots__/cloud-run-with-agents.test.ts.snap +0 -2
  31. package/examples/__snapshots__/cloud-run-with-gpu.test.ts.snap +0 -2
  32. package/examples/__snapshots__/cloud-run-with-ngnix.test.ts.snap +0 -2
  33. package/examples/__snapshots__/cloud-run-with-sql-legacy-jobs.test.ts.snap +0 -2
  34. package/examples/__snapshots__/cloud-run-with-sql-multiple-dbs.test.ts.snap +0 -2
  35. package/examples/__snapshots__/cloud-run-with-sql-reuse-db.test.ts.snap +0 -2
  36. package/examples/__snapshots__/cloud-run-with-sql.test.ts.snap +0 -2
  37. package/examples/__snapshots__/cloud-run-with-worker.test.ts.snap +0 -2
  38. package/examples/__snapshots__/custom-build-job-with-tests.test.ts.snap +0 -2
  39. package/examples/__snapshots__/custom-build-job.test.ts.snap +0 -2
  40. package/examples/__snapshots__/custom-deploy.test.ts.snap +0 -2
  41. package/examples/__snapshots__/custom-envs.test.ts.snap +0 -2
  42. package/examples/__snapshots__/custom-sbom-java.test.ts.snap +0 -2
  43. package/examples/__snapshots__/custom-verify-job.test.ts.snap +0 -2
  44. package/examples/__snapshots__/git-submodule.test.ts.snap +0 -2
  45. package/examples/__snapshots__/kubernetes-application-customization.test.ts.snap +0 -2
  46. package/examples/__snapshots__/kubernetes-with-cloud-sql.test.ts.snap +0 -2
  47. package/examples/__snapshots__/kubernetes-with-jobs.test.ts.snap +0 -2
  48. package/examples/__snapshots__/kubernetes-with-mongodb.test.ts.snap +0 -2
  49. package/examples/__snapshots__/local-dot-env.test.ts.snap +0 -2
  50. package/examples/__snapshots__/meteor-kubernetes.test.ts.snap +0 -2
  51. package/examples/__snapshots__/modify-generated-files.test.ts.snap +0 -2
  52. package/examples/__snapshots__/multiline-var.test.ts.snap +0 -2
  53. package/examples/__snapshots__/native-app.test.ts.snap +0 -2
  54. package/examples/__snapshots__/node-build-with-custom-image.test.ts.snap +0 -2
  55. package/examples/__snapshots__/node-build-with-docker-additions.test.ts.snap +0 -2
  56. package/examples/__snapshots__/override-secrets.test.ts.snap +0 -2
  57. package/examples/__snapshots__/rails-k8s-with-worker-dockerfile.test.ts.snap +0 -2
  58. package/examples/__snapshots__/rails-k8s-with-worker.test.ts.snap +0 -2
  59. package/examples/__snapshots__/referencing-other-vars.test.ts.snap +0 -2
  60. package/examples/__snapshots__/wait-for-other-deploy.test.ts.snap +0 -2
  61. package/examples/__snapshots__/workspace-api-www-turbo-cache.test.ts.snap +0 -2
  62. package/examples/__snapshots__/workspace-api-www.test.ts.snap +0 -2
  63. package/examples/automatic-releases.test.ts +11 -0
  64. package/examples/automatic-releases.ts +28 -0
  65. package/package.json +1 -1
  66. package/src/pipeline/createMainPipeline.ts +9 -7
  67. package/src/pipeline/gitlab/gitlabReleaseJobs.ts +37 -4
  68. package/src/rules/index.ts +0 -32
  69. package/src/types/config.ts +6 -0
  70. package/src/types/release.ts +7 -0
package/dist/constants.js CHANGED
@@ -4,5 +4,5 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.DOCKER_REGISTRY = exports.PIPELINE_IMAGE_TAG = void 0;
7
- exports.PIPELINE_IMAGE_TAG = "v3-19-0-e9e1c92b" || "latest";
7
+ exports.PIPELINE_IMAGE_TAG = "v3-20-0-f84d9d38" || "latest";
8
8
  exports.DOCKER_REGISTRY = "git.panter.ch:5001/catladder/catladder" || "git.panter.ch:5001/catladder/catladder";
@@ -254,7 +254,7 @@ var createMainPipeline = function (pipelineType, config) {
254
254
  }, {});
255
255
  return [2 /*return*/, (0, createGitlabPipeline_1.createGitlabPipelineWithDefaults)({
256
256
  stages: __spreadArray(__spreadArray([], __read(stages), false), ["release"], false),
257
- jobs: __assign(__assign({}, allJobs), Object.fromEntries(Object.entries((0, gitlabReleaseJobs_1.getGitlabReleaseJobs)()).map(function (_a) {
257
+ jobs: __assign(__assign({}, allJobs), Object.fromEntries(Object.entries((0, gitlabReleaseJobs_1.getGitlabReleaseJobs)(config)).map(function (_a) {
258
258
  var _b = __read(_a, 2),
259
259
  name = _b[0],
260
260
  gitlabJob = _b[1];
@@ -1,4 +1,5 @@
1
- export declare const getGitlabReleaseJobs: () => {
1
+ import type { Config } from "../../types/config";
2
+ export declare const getGitlabReleaseJobs: (config: Config) => {
2
3
  "create release": {
3
4
  stage: string;
4
5
  image: string;
@@ -1,5 +1,36 @@
1
1
  "use strict";
2
2
 
3
+ var __read = this && this.__read || function (o, n) {
4
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
5
+ if (!m) return o;
6
+ var i = m.call(o),
7
+ r,
8
+ ar = [],
9
+ e;
10
+ try {
11
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
12
+ } catch (error) {
13
+ e = {
14
+ error: error
15
+ };
16
+ } finally {
17
+ try {
18
+ if (r && !r.done && (m = i["return"])) m.call(i);
19
+ } finally {
20
+ if (e) throw e.error;
21
+ }
22
+ }
23
+ return ar;
24
+ };
25
+ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
26
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
27
+ if (ar || !(i in from)) {
28
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
29
+ ar[i] = from[i];
30
+ }
31
+ }
32
+ return to.concat(ar || Array.prototype.slice.call(from));
33
+ };
3
34
  Object.defineProperty(exports, "__esModule", {
4
35
  value: true
5
36
  });
@@ -7,19 +38,33 @@ exports.getGitlabReleaseJobs = void 0;
7
38
  var rules_1 = require("../../rules");
8
39
  var runner_1 = require("../../runner");
9
40
  var EXPIRED_TOKEN_HELP = "echo '👉 The project access token might be invald - run `project-renew-token` in catladder CLI to fix.'";
10
- var getGitlabReleaseJobs = function () {
41
+ var baseReleaseRules = [rules_1.RULE_NEVER_ON_RELEASE_COMMIT, rules_1.RULE_NEVER_ON_AGENT_TRIGGER, rules_1.RULE_NEVER_ON_SCHEDULE];
42
+ var getGitlabReleaseJobs = function (config) {
11
43
  var _a;
44
+ var _b;
12
45
  return _a = {}, _a["create release"] = {
13
46
  stage: "release",
14
47
  image: (0, runner_1.getRunnerImage)("semantic-release"),
15
48
  script: ["semanticRelease", EXPIRED_TOKEN_HELP],
16
- rules: rules_1.RULES_RELEASE
49
+ rules: __spreadArray(__spreadArray([], __read(baseReleaseRules), false), [{
50
+ if: rules_1.RULE_CONDITION_MAIN_BRANCH,
51
+ when: ((_b = config.releases) === null || _b === void 0 ? void 0 : _b.when) === "auto" ? "on_success" : "manual"
52
+ }, {
53
+ if: rules_1.RULE_CONDITION_HOTFIX_BRANCH,
54
+ when: "manual"
55
+ }], false)
17
56
  }, _a["⚠️ force create release"] = {
18
57
  stage: "release",
19
58
  image: (0, runner_1.getRunnerImage)("semantic-release"),
20
59
  script: ["semanticRelease", EXPIRED_TOKEN_HELP],
21
60
  needs: [],
22
- rules: rules_1.RULES_MANUAL_RELEASE
61
+ rules: __spreadArray(__spreadArray([], __read(baseReleaseRules), false), [{
62
+ if: rules_1.RULE_CONDITION_MAIN_BRANCH,
63
+ when: "manual"
64
+ }, {
65
+ if: rules_1.RULE_CONDITION_HOTFIX_BRANCH,
66
+ when: "manual"
67
+ }], false)
23
68
  }, _a;
24
69
  };
25
70
  exports.getGitlabReleaseJobs = getGitlabReleaseJobs;
@@ -9,6 +9,4 @@ export declare const RULE_NEVER_ON_AGENT_TRIGGER: GitlabRule;
9
9
  export declare const RULE_NEVER_ON_SCHEDULE: GitlabRule;
10
10
  export declare const RULE_IS_MERGE_REQUEST: GitlabRule;
11
11
  export declare const RULE_IS_TAGGED_RELEASE: GitlabRule;
12
- export declare const RULE_CONDITION_HOTFIX_BRANCH = "$CI_COMMIT_BRANCH =~ /^[0-9]+.([0-9]+|x).x$/";
13
- export declare const RULES_RELEASE: GitlabRule[];
14
- export declare const RULES_MANUAL_RELEASE: GitlabRule[];
12
+ export declare const RULE_CONDITION_HOTFIX_BRANCH = "$CI_COMMIT_BRANCH =~ /^[0-9]+.([0-9]+|x).x$/";
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.RULES_MANUAL_RELEASE = exports.RULES_RELEASE = exports.RULE_CONDITION_HOTFIX_BRANCH = exports.RULE_IS_TAGGED_RELEASE = exports.RULE_IS_MERGE_REQUEST = exports.RULE_NEVER_ON_SCHEDULE = exports.RULE_NEVER_ON_AGENT_TRIGGER = exports.RULE_NEVER_ON_RELEASE_COMMIT = exports.RULE_IS_MAIN_BRANCH_AND_NOT_RELEASE_COMMIT = exports.RULE_IS_MAIN_BRANCH = exports.RULE_CONDITION_NOT_RELEASE_COMMIT = exports.RULE_CONDITION_RELEASE_COMMIT = exports.RULE_CONDITION_MAIN_BRANCH = void 0;
6
+ exports.RULE_CONDITION_HOTFIX_BRANCH = exports.RULE_IS_TAGGED_RELEASE = exports.RULE_IS_MERGE_REQUEST = exports.RULE_NEVER_ON_SCHEDULE = exports.RULE_NEVER_ON_AGENT_TRIGGER = exports.RULE_NEVER_ON_RELEASE_COMMIT = exports.RULE_IS_MAIN_BRANCH_AND_NOT_RELEASE_COMMIT = exports.RULE_IS_MAIN_BRANCH = exports.RULE_CONDITION_NOT_RELEASE_COMMIT = exports.RULE_CONDITION_RELEASE_COMMIT = exports.RULE_CONDITION_MAIN_BRANCH = void 0;
7
7
  exports.RULE_CONDITION_MAIN_BRANCH = "$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH";
8
8
  exports.RULE_CONDITION_RELEASE_COMMIT = "$CI_COMMIT_MESSAGE =~ /^chore\\(release\\).*/";
9
9
  exports.RULE_CONDITION_NOT_RELEASE_COMMIT = "$CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/";
@@ -32,21 +32,4 @@ exports.RULE_IS_MERGE_REQUEST = {
32
32
  exports.RULE_IS_TAGGED_RELEASE = {
33
33
  if: "$CI_COMMIT_TAG"
34
34
  };
35
- exports.RULE_CONDITION_HOTFIX_BRANCH = "$CI_COMMIT_BRANCH =~ /^[0-9]+.([0-9]+|x).x$/";
36
- exports.RULES_RELEASE = [exports.RULE_NEVER_ON_RELEASE_COMMIT, exports.RULE_NEVER_ON_AGENT_TRIGGER, exports.RULE_NEVER_ON_SCHEDULE, {
37
- if: exports.RULE_CONDITION_MAIN_BRANCH + ' && $AUTO_RELEASE == "true"',
38
- when: "on_success"
39
- }, {
40
- if: exports.RULE_CONDITION_MAIN_BRANCH,
41
- when: "manual"
42
- }, {
43
- if: exports.RULE_CONDITION_HOTFIX_BRANCH,
44
- when: "manual"
45
- }];
46
- exports.RULES_MANUAL_RELEASE = [exports.RULE_NEVER_ON_RELEASE_COMMIT, exports.RULE_NEVER_ON_AGENT_TRIGGER, exports.RULE_NEVER_ON_SCHEDULE, {
47
- if: exports.RULE_CONDITION_MAIN_BRANCH,
48
- when: "manual"
49
- }, {
50
- if: exports.RULE_CONDITION_HOTFIX_BRANCH,
51
- when: "manual"
52
- }];
35
+ exports.RULE_CONDITION_HOTFIX_BRANCH = "$CI_COMMIT_BRANCH =~ /^[0-9]+.([0-9]+|x).x$/";