@catladder/pipeline 1.144.1 โ 1.145.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.
- package/dist/bash/BashExpression.d.ts +40 -0
- package/dist/bash/BashExpression.js +124 -0
- package/dist/bash/bashExpressionPerPipelineType.d.ts +6 -0
- package/dist/bash/bashExpressionPerPipelineType.js +11 -0
- package/dist/bash/bashYaml.d.ts +10 -0
- package/dist/bash/bashYaml.js +46 -0
- package/dist/bash/getInjectVarsScript.d.ts +2 -0
- package/dist/bash/getInjectVarsScript.js +45 -0
- package/dist/bash/replaceAsync.d.ts +2 -0
- package/dist/{pipeline/commitInfo/getCommitInfo.js โ bash/replaceAsync.js} +49 -21
- package/dist/build/base/__tests__/createArtifactsConfig.test.js +3 -1
- package/dist/build/base/constants.js +3 -1
- package/dist/build/base/createAppBuildJob.d.ts +2 -1
- package/dist/build/base/createAppBuildJob.js +10 -6
- package/dist/build/base/createArtifactsConfig.d.ts +1 -1
- package/dist/build/base/createArtifactsConfig.js +3 -1
- package/dist/build/base/index.js +3 -1
- package/dist/build/base/writeBuildInfo.js +4 -3
- package/dist/build/base/writeDotEnv.js +12 -3
- package/dist/build/custom/__tests__/testJob.test.js +3 -1
- package/dist/build/custom/buildJob.js +4 -12
- package/dist/build/custom/index.js +3 -1
- package/dist/build/custom/testJob.d.ts +1 -1
- package/dist/build/custom/testJob.js +18 -14
- package/dist/build/docker.d.ts +5 -31
- package/dist/build/docker.js +16 -9
- package/dist/build/index.d.ts +1 -1
- package/dist/build/index.js +13 -7
- package/dist/build/node/buildJob.js +4 -12
- package/dist/build/node/cache.js +6 -3
- package/dist/build/node/constants.js +3 -1
- package/dist/build/node/index.js +3 -1
- package/dist/build/node/meteor.js +5 -2
- package/dist/build/node/testJob.js +18 -14
- package/dist/build/node/yarn.d.ts +3 -2
- package/dist/build/node/yarn.js +6 -3
- package/dist/build/rails/build.js +3 -1
- package/dist/build/rails/index.js +3 -1
- package/dist/build/rails/test.js +15 -11
- package/dist/build/sbom.js +3 -1
- package/dist/build/types.d.ts +24 -18
- package/dist/build/types.js +3 -1
- package/dist/bundles/catladder-gitlab/index.js +3 -3
- package/dist/catladder-gitlab.js +10 -54
- package/dist/config/__tests__/configruedEnvs.test.js +3 -1
- package/dist/config/configruedEnvs.js +3 -1
- package/dist/config/index.js +13 -7
- package/dist/config/readConfig.js +6 -5
- package/dist/constants.js +5 -3
- package/dist/context/__tests__/resolveReferences.test.js +40 -8
- package/dist/context/getBuildInfoVariables.d.ts +7 -0
- package/dist/context/getBuildInfoVariables.js +29 -0
- package/dist/context/getEnvConfig.js +3 -1
- package/dist/context/getEnvType.js +3 -1
- package/dist/context/getEnvironment.d.ts +3 -3
- package/dist/context/getEnvironment.js +10 -14
- package/dist/context/getEnvironmentContext.d.ts +7 -3
- package/dist/context/getEnvironmentContext.js +21 -11
- package/dist/context/getEnvironmentVariables.d.ts +26 -5
- package/dist/context/getEnvironmentVariables.js +41 -25
- package/dist/context/getLabels.js +4 -2
- package/dist/context/getReviewSlug.d.ts +4 -0
- package/dist/context/getReviewSlug.js +22 -0
- package/dist/context/index.d.ts +12 -3
- package/dist/context/index.js +21 -15
- package/dist/context/resolveReferences.d.ts +3 -1
- package/dist/context/resolveReferences.js +53 -21
- package/dist/context/transformJobOnlyVars.d.ts +5 -2
- package/dist/context/transformJobOnlyVars.js +4 -2
- package/dist/context/utils/envVars.d.ts +1 -1
- package/dist/context/utils/envVars.js +5 -2
- package/dist/defaults/index.js +3 -1
- package/dist/deploy/base/deploy.d.ts +1 -1
- package/dist/deploy/base/deploy.js +12 -11
- package/dist/deploy/base/index.js +3 -1
- package/dist/deploy/base/rollback.d.ts +1 -1
- package/dist/deploy/base/rollback.js +13 -9
- package/dist/deploy/base/stop.d.ts +1 -1
- package/dist/deploy/base/stop.js +16 -11
- package/dist/deploy/base/types.d.ts +1 -1
- package/dist/deploy/base/types.js +3 -1
- package/dist/deploy/base/variables.js +3 -1
- package/dist/deploy/cloudRun/artifactsRegistry.d.ts +2 -1
- package/dist/deploy/cloudRun/artifactsRegistry.js +6 -4
- package/dist/deploy/cloudRun/cleanup.js +3 -1
- package/dist/deploy/cloudRun/cloudRunRevisions.js +3 -1
- package/dist/deploy/cloudRun/createJobs/cloudRunJobs.js +8 -5
- package/dist/deploy/cloudRun/createJobs/cloudRunServices.d.ts +2 -2
- package/dist/deploy/cloudRun/createJobs/cloudRunServices.js +6 -3
- package/dist/deploy/cloudRun/createJobs/common.d.ts +3 -3
- package/dist/deploy/cloudRun/createJobs/common.js +3 -1
- package/dist/deploy/cloudRun/createJobs/constants.d.ts +1 -0
- package/dist/deploy/cloudRun/createJobs/constants.js +7 -0
- package/dist/deploy/cloudRun/createJobs/getCloudRunDeployScripts.js +9 -2
- package/dist/deploy/cloudRun/createJobs/getCloudRunStopScripts.js +3 -1
- package/dist/deploy/cloudRun/createJobs/index.js +25 -8
- package/dist/deploy/cloudRun/createJobs/volumes.js +3 -1
- package/dist/deploy/cloudRun/index.js +5 -3
- package/dist/deploy/cloudRun/utils/createArgsString.d.ts +2 -1
- package/dist/deploy/cloudRun/utils/createArgsString.js +3 -1
- package/dist/deploy/cloudRun/utils/database.js +13 -13
- package/dist/deploy/cloudRun/utils/gcloudServiceAccountLoginCommands.js +3 -1
- package/dist/deploy/cloudRun/utils/getServiceName.d.ts +1 -1
- package/dist/deploy/cloudRun/utils/getServiceName.js +3 -1
- package/dist/deploy/cloudRun/utils/jobName.d.ts +2 -1
- package/dist/deploy/cloudRun/utils/jobName.js +4 -2
- package/dist/deploy/cloudRun/utils/removeFirstLinesFromCommandOutput.js +3 -1
- package/dist/deploy/cloudSql/utils.d.ts +2 -1
- package/dist/deploy/cloudSql/utils.js +7 -2
- package/dist/deploy/custom/deployJob.js +3 -1
- package/dist/deploy/custom/index.js +3 -1
- package/dist/deploy/dockerTag/deployJob.js +3 -1
- package/dist/deploy/dockerTag/index.js +3 -1
- package/dist/deploy/index.d.ts +4 -3
- package/dist/deploy/index.js +13 -7
- package/dist/deploy/kubernetes/additionalSecretKeys.js +3 -1
- package/dist/deploy/kubernetes/cloudSql/index.d.ts +3 -2
- package/dist/deploy/kubernetes/cloudSql/index.js +6 -4
- package/dist/deploy/kubernetes/deployJob.js +22 -15
- package/dist/deploy/kubernetes/index.js +51 -14
- package/dist/deploy/kubernetes/kubeEnv.d.ts +3 -2
- package/dist/deploy/kubernetes/kubeEnv.js +7 -4
- package/dist/deploy/kubernetes/kubeValues.d.ts +2 -2
- package/dist/deploy/kubernetes/kubeValues.js +3 -2
- package/dist/deploy/kubernetes/mongodb.js +3 -1
- package/dist/deploy/kubernetes/processSecretsAsFiles.d.ts +2 -1
- package/dist/deploy/kubernetes/processSecretsAsFiles.js +3 -1
- package/dist/deploy/sbom.js +3 -1
- package/dist/deploy/types/base.d.ts +8 -2
- package/dist/deploy/types/base.js +3 -1
- package/dist/deploy/types/custom.d.ts +1 -1
- package/dist/deploy/types/custom.js +3 -1
- package/dist/deploy/types/dockerTag.d.ts +1 -1
- package/dist/deploy/types/dockerTag.js +3 -1
- package/dist/deploy/types/googleCloudRun.d.ts +19 -18
- package/dist/deploy/types/googleCloudRun.js +3 -1
- package/dist/deploy/types/index.d.ts +6 -6
- package/dist/deploy/types/index.js +13 -7
- package/dist/deploy/types/kubernetes.d.ts +22 -22
- package/dist/deploy/types/kubernetes.js +3 -1
- package/dist/deploy/utils.js +3 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +16 -9
- package/dist/packageInfos.d.ts +2 -0
- package/dist/packageInfos.js +14 -0
- package/dist/pipeline/createAllJobs.d.ts +13 -5
- package/dist/pipeline/createAllJobs.js +21 -10
- package/dist/pipeline/createChildPipeline.d.ts +1 -1
- package/dist/pipeline/createChildPipeline.js +24 -7
- package/dist/pipeline/createJobsForComponent.d.ts +3 -3
- package/dist/pipeline/createJobsForComponent.js +19 -18
- package/dist/pipeline/createMainPipeline.d.ts +3 -0
- package/dist/pipeline/createMainPipeline.js +248 -0
- package/dist/pipeline/generatePipelineFiles.d.ts +2 -0
- package/dist/pipeline/generatePipelineFiles.js +178 -0
- package/dist/pipeline/getPipelineStages.js +3 -1
- package/dist/pipeline/gitlab/createGitlabJobs.d.ts +15 -5
- package/dist/pipeline/gitlab/createGitlabJobs.js +98 -25
- package/dist/pipeline/gitlab/createGitlabPipeline.d.ts +7 -2
- package/dist/pipeline/gitlab/createGitlabPipeline.js +34 -17
- package/dist/pipeline/gitlab/getPipelineTriggerForGitlabChildPipeline.d.ts +1 -0
- package/dist/pipeline/gitlab/getPipelineTriggerForGitlabChildPipeline.js +29 -0
- package/dist/pipeline/gitlab/gitlabReleaseJobs.d.ts +33 -0
- package/dist/pipeline/gitlab/gitlabReleaseJobs.js +24 -0
- package/dist/pipeline/index.d.ts +3 -1
- package/dist/pipeline/index.js +16 -8
- package/dist/pipeline/packageManager.js +4 -2
- package/dist/pipeline/yarn/yarnUtils.js +6 -4
- package/dist/rules/index.d.ts +4 -1
- package/dist/rules/index.js +25 -18
- package/dist/runner/index.d.ts +1 -1
- package/dist/runner/index.js +3 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/config.d.ts +18 -15
- package/dist/types/config.js +5 -2
- package/dist/types/context.d.ts +37 -32
- package/dist/types/context.js +3 -1
- package/dist/types/environmentContext.d.ts +11 -7
- package/dist/types/environmentContext.js +3 -1
- package/dist/types/gitlab-ci-yml.d.ts +30 -30
- package/dist/types/gitlab-ci-yml.js +3 -2
- package/dist/types/gitlab-types.d.ts +4 -6
- package/dist/types/gitlab-types.js +3 -1
- package/dist/types/index.js +13 -7
- package/dist/types/jobs.d.ts +23 -6
- package/dist/types/jobs.js +3 -1
- package/dist/types/pipeline.d.ts +4 -3
- package/dist/types/pipeline.js +3 -1
- package/dist/types/utils.d.ts +1 -1
- package/dist/types/utils.js +3 -1
- package/dist/utils/gitlab.js +3 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.js +3 -1
- package/dist/utils/writeFiles.d.ts +7 -0
- package/dist/{pipeline/commitInfo/getBuildId.js โ utils/writeFiles.js} +39 -22
- package/examples/__snapshots__/cloud-run-memory-limit.ts.snap +480 -384
- package/examples/__snapshots__/cloud-run-meteor-with-worker.ts.snap +462 -366
- package/examples/__snapshots__/cloud-run-no-cpu-throttling.ts.snap +480 -384
- package/examples/__snapshots__/cloud-run-no-service.ts.snap +501 -393
- package/examples/__snapshots__/cloud-run-non-public.ts.snap +480 -384
- package/examples/__snapshots__/cloud-run-post-stop-job.ts.snap +489 -392
- package/examples/__snapshots__/cloud-run-service-gen2.ts.snap +480 -384
- package/examples/__snapshots__/cloud-run-service-with-volumes.ts.snap +501 -401
- package/examples/__snapshots__/cloud-run-with-sql-reuse-db.ts.snap +1155 -915
- package/examples/__snapshots__/cloud-run-with-sql.ts.snap +1116 -888
- package/examples/__snapshots__/cloud-run-with-worker.ts.snap +482 -386
- package/examples/__snapshots__/custom-build-job-with-tests.ts.snap +452 -356
- package/examples/__snapshots__/custom-build-job.ts.snap +434 -350
- package/examples/__snapshots__/custom-deploy.ts.snap +319 -223
- package/examples/__snapshots__/custom-envs.ts.snap +123 -81
- package/examples/__snapshots__/custom-sbom-java.ts.snap +434 -350
- package/examples/__snapshots__/kubernetes-application-customization.ts.snap +846 -969
- package/examples/__snapshots__/kubernetes-with-cloud-sql-legacy.ts.snap +886 -957
- package/examples/__snapshots__/kubernetes-with-cloud-sql.ts.snap +894 -969
- package/examples/__snapshots__/kubernetes-with-jobs.ts.snap +1626 -1728
- package/examples/__snapshots__/kubernetes-with-mongodb.ts.snap +974 -1137
- package/examples/__snapshots__/local-dot-env.ts.snap +480 -384
- package/examples/__snapshots__/meteor-kubernetes.ts.snap +906 -1069
- package/examples/__snapshots__/multiline-var.ts.snap +4500 -0
- package/examples/__snapshots__/native-app.ts.snap +706 -578
- package/examples/__snapshots__/node-build-with-custom-image.ts.snap +480 -384
- package/examples/__snapshots__/node-build-with-docker-additions.ts.snap +488 -384
- package/examples/__snapshots__/rails-k8s-with-worker.ts.snap +1656 -1942
- package/examples/__snapshots__/wait-for-other-deploy.ts.snap +287 -231
- package/examples/custom-deploy.ts +7 -7
- package/examples/multiline-var.ts +64 -0
- package/package.json +5 -8
- package/src/bash/BashExpression.ts +81 -0
- package/src/bash/bashExpressionPerPipelineType.ts +16 -0
- package/src/bash/bashYaml.ts +46 -0
- package/src/bash/getInjectVarsScript.ts +12 -0
- package/src/bash/replaceAsync.ts +50 -0
- package/src/build/base/createAppBuildJob.ts +6 -2
- package/src/build/base/writeBuildInfo.ts +1 -1
- package/src/build/base/writeDotEnv.ts +6 -1
- package/src/build/custom/buildJob.ts +2 -4
- package/src/build/custom/testJob.ts +3 -2
- package/src/build/docker.ts +15 -7
- package/src/build/node/buildJob.ts +1 -3
- package/src/build/node/testJob.ts +3 -2
- package/src/build/node/yarn.ts +9 -4
- package/src/build/rails/test.ts +2 -1
- package/src/build/types.ts +8 -1
- package/src/catladder-gitlab.ts +8 -55
- package/src/config/readConfig.ts +2 -3
- package/src/constants.ts +5 -2
- package/src/context/__tests__/resolveReferences.test.ts +11 -6
- package/src/context/getBuildInfoVariables.ts +40 -0
- package/src/context/getEnvironment.ts +7 -30
- package/src/context/getEnvironmentContext.ts +25 -29
- package/src/context/getEnvironmentVariables.ts +61 -36
- package/src/context/getReviewSlug.ts +27 -0
- package/src/context/index.ts +24 -23
- package/src/context/resolveReferences.ts +28 -8
- package/src/context/transformJobOnlyVars.ts +5 -2
- package/src/context/utils/envVars.ts +2 -1
- package/src/deploy/base/deploy.ts +20 -18
- package/src/deploy/base/rollback.ts +8 -10
- package/src/deploy/base/stop.ts +8 -9
- package/src/deploy/cloudRun/artifactsRegistry.ts +9 -4
- package/src/deploy/cloudRun/createJobs/cloudRunJobs.ts +12 -7
- package/src/deploy/cloudRun/createJobs/cloudRunServices.ts +3 -2
- package/src/deploy/cloudRun/createJobs/constants.ts +1 -0
- package/src/deploy/cloudRun/createJobs/getCloudRunDeployScripts.ts +20 -2
- package/src/deploy/cloudRun/createJobs/index.ts +17 -8
- package/src/deploy/cloudRun/index.ts +14 -6
- package/src/deploy/cloudRun/utils/createArgsString.ts +2 -1
- package/src/deploy/cloudRun/utils/database.ts +2 -2
- package/src/deploy/cloudRun/utils/jobName.ts +7 -2
- package/src/deploy/cloudSql/utils.ts +12 -9
- package/src/deploy/index.ts +2 -1
- package/src/deploy/kubernetes/cloudSql/index.ts +3 -2
- package/src/deploy/kubernetes/deployJob.ts +24 -10
- package/src/deploy/kubernetes/index.ts +15 -8
- package/src/deploy/kubernetes/kubeEnv.ts +8 -6
- package/src/deploy/kubernetes/kubeValues.ts +0 -1
- package/src/deploy/kubernetes/processSecretsAsFiles.ts +2 -1
- package/src/deploy/types/base.ts +6 -0
- package/src/deploy/types/googleCloudRun.ts +2 -0
- package/src/index.ts +2 -1
- package/src/packageInfos.ts +10 -0
- package/src/pipeline/createAllJobs.ts +24 -10
- package/src/pipeline/createChildPipeline.ts +19 -8
- package/src/pipeline/createJobsForComponent.ts +14 -22
- package/src/pipeline/createMainPipeline.ts +88 -0
- package/src/pipeline/generatePipelineFiles.ts +29 -0
- package/src/pipeline/gitlab/createGitlabJobs.ts +174 -51
- package/src/pipeline/gitlab/createGitlabPipeline.ts +16 -14
- package/src/pipeline/gitlab/getPipelineTriggerForGitlabChildPipeline.ts +46 -0
- package/src/pipeline/gitlab/gitlabReleaseJobs.ts +20 -0
- package/src/pipeline/index.ts +2 -0
- package/src/rules/index.ts +15 -9
- package/src/types/config.ts +11 -2
- package/src/types/context.ts +39 -26
- package/src/types/environmentContext.ts +12 -6
- package/src/types/gitlab-ci-yml.ts +0 -1
- package/src/types/gitlab-types.ts +5 -4
- package/src/types/jobs.ts +28 -3
- package/src/types/pipeline.ts +4 -0
- package/src/utils/writeFiles.ts +40 -0
- package/dist/deploy/cloudRun/createJobs/variables.d.ts +0 -5
- package/dist/deploy/cloudRun/createJobs/variables.js +0 -19
- package/dist/pipeline/commitInfo/getBuildId.d.ts +0 -6
- package/dist/pipeline/commitInfo/getCommitInfo.d.ts +0 -2
- package/src/deploy/cloudRun/createJobs/variables.ts +0 -21
- package/src/pipeline/commitInfo/getBuildId.ts +0 -17
- package/src/pipeline/commitInfo/getCommitInfo.ts +0 -15
|
@@ -41,7 +41,9 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
41
41
|
}
|
|
42
42
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
43
43
|
};
|
|
44
|
-
exports
|
|
44
|
+
Object.defineProperty(exports, "__esModule", {
|
|
45
|
+
value: true
|
|
46
|
+
});
|
|
45
47
|
exports.createCustomTestJobs = void 0;
|
|
46
48
|
var utils_1 = require("../../utils");
|
|
47
49
|
var types_1 = require("../types");
|
|
@@ -52,9 +54,10 @@ var RUNNER_CUSTOM_TEST_VARIABLES = {
|
|
|
52
54
|
KUBERNETES_MEMORY_LIMIT: "4Gi"
|
|
53
55
|
};
|
|
54
56
|
var createCustomTestJobs = function (context) {
|
|
55
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u
|
|
57
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u;
|
|
56
58
|
// don't run tests after release
|
|
57
|
-
|
|
59
|
+
// TODO: this will be replaced by using rules
|
|
60
|
+
if (context.trigger === "taggedRelease") {
|
|
58
61
|
return [];
|
|
59
62
|
}
|
|
60
63
|
var buildConfig = context.componentConfig.build;
|
|
@@ -62,9 +65,10 @@ var createCustomTestJobs = function (context) {
|
|
|
62
65
|
throw new Error("deploy config is not custom");
|
|
63
66
|
}
|
|
64
67
|
var base = {
|
|
65
|
-
variables: __assign(__assign(
|
|
68
|
+
variables: __assign(__assign({
|
|
66
69
|
APP_PATH: context.componentConfig.dir
|
|
67
|
-
},
|
|
70
|
+
}, context.environment.jobOnlyVars.build.envVars), (_a = buildConfig.extraVars) !== null && _a !== void 0 ? _a : {}),
|
|
71
|
+
runnerVariables: RUNNER_CUSTOM_TEST_VARIABLES,
|
|
68
72
|
services: buildConfig.jobServices,
|
|
69
73
|
cache: buildConfig.jobCache,
|
|
70
74
|
stage: "test",
|
|
@@ -74,23 +78,23 @@ var createCustomTestJobs = function (context) {
|
|
|
74
78
|
var auditJob = buildConfig.audit ? __assign(__assign(__assign({
|
|
75
79
|
name: "๐ก audit"
|
|
76
80
|
}, base), {
|
|
77
|
-
image: (
|
|
81
|
+
image: (_c = (_b = buildConfig.audit) === null || _b === void 0 ? void 0 : _b.jobImage) !== null && _c !== void 0 ? _c : buildConfig.jobImage,
|
|
78
82
|
cache: undefined,
|
|
79
|
-
script: __spreadArray([], __read((
|
|
83
|
+
script: __spreadArray([], __read((_e = (0, utils_1.ensureArray)((_d = buildConfig.audit) === null || _d === void 0 ? void 0 : _d.command)) !== null && _e !== void 0 ? _e : []), false),
|
|
80
84
|
allow_failure: true
|
|
81
|
-
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (
|
|
85
|
+
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (_f = buildConfig.audit) === null || _f === void 0 ? void 0 : _f.artifactsReports, (_g = buildConfig.audit) === null || _g === void 0 ? void 0 : _g.artifacts)) : null;
|
|
82
86
|
var lintJob = buildConfig.lint ? __assign(__assign(__assign({
|
|
83
87
|
name: "๐ฎ lint"
|
|
84
88
|
}, base), {
|
|
85
|
-
image: (
|
|
86
|
-
script: __spreadArray([], __read((
|
|
87
|
-
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (
|
|
89
|
+
image: (_j = (_h = buildConfig.lint) === null || _h === void 0 ? void 0 : _h.jobImage) !== null && _j !== void 0 ? _j : buildConfig.jobImage,
|
|
90
|
+
script: __spreadArray([], __read((_l = (0, utils_1.ensureArray)((_k = buildConfig.lint) === null || _k === void 0 ? void 0 : _k.command)) !== null && _l !== void 0 ? _l : []), false)
|
|
91
|
+
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (_m = buildConfig.lint) === null || _m === void 0 ? void 0 : _m.artifactsReports, (_o = buildConfig.lint) === null || _o === void 0 ? void 0 : _o.artifacts)) : null;
|
|
88
92
|
var testJob = buildConfig.test ? __assign(__assign(__assign({
|
|
89
93
|
name: "๐งช test"
|
|
90
94
|
}, base), {
|
|
91
|
-
image: (
|
|
92
|
-
script: __spreadArray([], __read((
|
|
93
|
-
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (
|
|
95
|
+
image: (_q = (_p = buildConfig.test) === null || _p === void 0 ? void 0 : _p.jobImage) !== null && _q !== void 0 ? _q : buildConfig.jobImage,
|
|
96
|
+
script: __spreadArray([], __read((_s = (0, utils_1.ensureArray)((_r = buildConfig.test) === null || _r === void 0 ? void 0 : _r.command)) !== null && _s !== void 0 ? _s : []), false)
|
|
97
|
+
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (_t = buildConfig.test) === null || _t === void 0 ? void 0 : _t.artifactsReports, (_u = buildConfig.test) === null || _u === void 0 ? void 0 : _u.artifacts)) : null;
|
|
94
98
|
return [auditJob, lintJob, testJob].filter(utils_1.notNil);
|
|
95
99
|
};
|
|
96
100
|
exports.createCustomTestJobs = createCustomTestJobs;
|
package/dist/build/docker.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import type { CatladderJob } from "../types/jobs";
|
|
|
3
3
|
export declare const getDockerImageVariables: (context: Context) => {
|
|
4
4
|
DOCKER_IMAGE_TAG: string;
|
|
5
5
|
DOCKER_REGISTRY: string;
|
|
6
|
-
DOCKER_IMAGE:
|
|
6
|
+
DOCKER_IMAGE: import("../bash/BashExpression").StringOrBashExpression;
|
|
7
7
|
DOCKER_CACHE_IMAGE: string;
|
|
8
8
|
} | {
|
|
9
9
|
DOCKER_IMAGE_TAG: string;
|
|
@@ -23,56 +23,30 @@ export declare const requiresDockerBuild: ({
|
|
|
23
23
|
export declare const getDockerBuildVariables: (context: Context) => {
|
|
24
24
|
DOCKER_IMAGE_TAG: string;
|
|
25
25
|
DOCKER_REGISTRY: string;
|
|
26
|
-
DOCKER_IMAGE:
|
|
26
|
+
DOCKER_IMAGE: import("../bash/BashExpression").StringOrBashExpression;
|
|
27
27
|
DOCKER_CACHE_IMAGE: string;
|
|
28
|
-
DOCKER_HOST: string;
|
|
29
|
-
DOCKER_TLS_CERTDIR: string;
|
|
30
|
-
DOCKER_DRIVER: string;
|
|
31
|
-
DOCKER_BUILDKIT: string;
|
|
32
28
|
DOCKERFILE_ADDITIONS: string | undefined;
|
|
33
29
|
DOCKERFILE_ADDITIONS_END: string | undefined;
|
|
34
30
|
APP_DIR: string;
|
|
35
31
|
DOCKER_DIR: string;
|
|
36
|
-
KUBERNETES_CPU_REQUEST: string;
|
|
37
|
-
KUBERNETES_MEMORY_REQUEST: string;
|
|
38
|
-
KUBERNETES_MEMORY_LIMIT: string;
|
|
39
32
|
} | {
|
|
40
33
|
DOCKER_IMAGE_TAG: string;
|
|
41
34
|
DOCKER_REGISTRY: string;
|
|
42
35
|
DOCKER_CACHE_IMAGE: string;
|
|
43
36
|
DOCKER_IMAGE_NAME: string;
|
|
44
37
|
DOCKER_IMAGE: string;
|
|
45
|
-
DOCKER_HOST: string;
|
|
46
|
-
DOCKER_TLS_CERTDIR: string;
|
|
47
|
-
DOCKER_DRIVER: string;
|
|
48
|
-
DOCKER_BUILDKIT: string;
|
|
49
38
|
DOCKERFILE_ADDITIONS: string | undefined;
|
|
50
39
|
DOCKERFILE_ADDITIONS_END: string | undefined;
|
|
51
40
|
APP_DIR: string;
|
|
52
41
|
DOCKER_DIR: string;
|
|
53
|
-
KUBERNETES_CPU_REQUEST: string;
|
|
54
|
-
KUBERNETES_MEMORY_REQUEST: string;
|
|
55
|
-
KUBERNETES_MEMORY_LIMIT: string;
|
|
56
42
|
};
|
|
57
43
|
export declare const DOCKER_BUILD_JOB_NAME = "\uD83D\uDD28 docker";
|
|
58
|
-
export declare const getDockerJobBaseProps: (context: Context) =>
|
|
59
|
-
|
|
60
|
-
services: {
|
|
61
|
-
name: string;
|
|
62
|
-
command: string[];
|
|
63
|
-
}[];
|
|
64
|
-
variables: {
|
|
65
|
-
DOCKER_HOST: string;
|
|
66
|
-
DOCKER_TLS_CERTDIR: string;
|
|
67
|
-
DOCKER_DRIVER: string;
|
|
68
|
-
DOCKER_BUILDKIT: string;
|
|
69
|
-
};
|
|
70
|
-
};
|
|
71
|
-
export declare type DockerBuildJobDefinition = Partial<CatladderJob>;
|
|
44
|
+
export declare const getDockerJobBaseProps: (context: Context) => Pick<CatladderJob, "image" | "services" | "variables" | "runnerVariables">;
|
|
45
|
+
export type DockerBuildJobDefinition = Partial<CatladderJob>;
|
|
72
46
|
export declare const createDockerBuildJobBase: (context: Context, {
|
|
73
47
|
script,
|
|
74
48
|
...def
|
|
75
49
|
}: Partial<CatladderJob>) => CatladderJob;
|
|
76
50
|
export declare const gitlabDockerLogin: (context: Context) => string[];
|
|
77
|
-
export declare const getDockerBuildDefaultScript: (context: Context, ensureDockerFileScript?: string
|
|
51
|
+
export declare const getDockerBuildDefaultScript: (context: Context, ensureDockerFileScript?: string) => (string | undefined)[];
|
|
78
52
|
export declare const hasDockerfile: (context: Context) => boolean;
|
package/dist/build/docker.js
CHANGED
|
@@ -54,7 +54,9 @@ var __importDefault = this && this.__importDefault || function (mod) {
|
|
|
54
54
|
"default": mod
|
|
55
55
|
};
|
|
56
56
|
};
|
|
57
|
-
exports
|
|
57
|
+
Object.defineProperty(exports, "__esModule", {
|
|
58
|
+
value: true
|
|
59
|
+
});
|
|
58
60
|
exports.hasDockerfile = exports.getDockerBuildDefaultScript = exports.gitlabDockerLogin = exports.createDockerBuildJobBase = exports.getDockerJobBaseProps = exports.DOCKER_BUILD_JOB_NAME = exports.getDockerBuildVariables = exports.requiresDockerBuild = exports.getDockerImageVariables = void 0;
|
|
59
61
|
var lodash_1 = require("lodash");
|
|
60
62
|
var deploy_1 = require("../deploy");
|
|
@@ -64,7 +66,7 @@ var path_1 = __importDefault(require("path"));
|
|
|
64
66
|
var gitlab_1 = require("../utils/gitlab");
|
|
65
67
|
var artifactsRegistry_1 = require("../deploy/cloudRun/artifactsRegistry");
|
|
66
68
|
var gcloudServiceAccountLoginCommands_1 = require("../deploy/cloudRun/utils/gcloudServiceAccountLoginCommands");
|
|
67
|
-
var
|
|
69
|
+
var DOCKER_BUILD_RUNNER_REQUESTS = {
|
|
68
70
|
KUBERNETES_CPU_REQUEST: "0.5",
|
|
69
71
|
KUBERNETES_MEMORY_REQUEST: "1Gi",
|
|
70
72
|
KUBERNETES_MEMORY_LIMIT: "2Gi"
|
|
@@ -95,22 +97,24 @@ var requiresDockerBuild = function (_a) {
|
|
|
95
97
|
return (0, deploy_1.isOfDeployType)(deploy, "kubernetes", "google-cloudrun", "dockerTag") || (0, deploy_1.isOfDeployType)(deploy, "custom") && deploy.requiresDocker;
|
|
96
98
|
};
|
|
97
99
|
exports.requiresDockerBuild = requiresDockerBuild;
|
|
98
|
-
|
|
100
|
+
// those need to be runner variables
|
|
101
|
+
var getDockerBuildRunnerVariables = function () {
|
|
99
102
|
return {
|
|
100
103
|
DOCKER_HOST: "tcp://0.0.0.0:2375",
|
|
101
104
|
DOCKER_TLS_CERTDIR: "",
|
|
102
105
|
DOCKER_DRIVER: "overlay2",
|
|
103
|
-
DOCKER_BUILDKIT: "1"
|
|
106
|
+
DOCKER_BUILDKIT: "1" // see https://docs.docker.com/develop/develop-images/build_enhancements/
|
|
104
107
|
};
|
|
105
108
|
};
|
|
109
|
+
|
|
106
110
|
var getDockerBuildVariables = function (context) {
|
|
107
111
|
var _a, _b, _c, _d;
|
|
108
|
-
return __assign(
|
|
112
|
+
return __assign({
|
|
109
113
|
DOCKERFILE_ADDITIONS: (_b = (_a = context.componentConfig.build.docker) === null || _a === void 0 ? void 0 : _a.additionsBegin) === null || _b === void 0 ? void 0 : _b.join("\n"),
|
|
110
114
|
DOCKERFILE_ADDITIONS_END: (_d = (_c = context.componentConfig.build.docker) === null || _c === void 0 ? void 0 : _c.additionsEnd) === null || _d === void 0 ? void 0 : _d.join("\n"),
|
|
111
115
|
APP_DIR: context.componentConfig.dir,
|
|
112
116
|
DOCKER_DIR: "."
|
|
113
|
-
}
|
|
117
|
+
}, (0, exports.getDockerImageVariables)(context));
|
|
114
118
|
};
|
|
115
119
|
exports.getDockerBuildVariables = getDockerBuildVariables;
|
|
116
120
|
exports.DOCKER_BUILD_JOB_NAME = "๐จ docker";
|
|
@@ -119,9 +123,11 @@ var getDockerJobBaseProps = function (context) {
|
|
|
119
123
|
image: (0, runner_1.getRunnerImage)("docker-build"),
|
|
120
124
|
services: [{
|
|
121
125
|
name: "docker:24.0.6-dind",
|
|
126
|
+
// see see https://gitlab.com/gitlab-org/gitlab-runner/-/issues/27300#note_466755332
|
|
122
127
|
command: ["--tls=false"]
|
|
123
128
|
}],
|
|
124
|
-
variables:
|
|
129
|
+
variables: {},
|
|
130
|
+
runnerVariables: getDockerBuildRunnerVariables()
|
|
125
131
|
};
|
|
126
132
|
};
|
|
127
133
|
exports.getDockerJobBaseProps = getDockerJobBaseProps;
|
|
@@ -135,7 +141,8 @@ var createDockerBuildJobBase = function (context, _a) {
|
|
|
135
141
|
}, (0, exports.getDockerJobBaseProps)(context)), {
|
|
136
142
|
script: script || []
|
|
137
143
|
}), {
|
|
138
|
-
variables: (0, exports.getDockerBuildVariables)(context)
|
|
144
|
+
variables: (0, exports.getDockerBuildVariables)(context),
|
|
145
|
+
runnerVariables: __assign(__assign({}, DOCKER_BUILD_RUNNER_REQUESTS), getDockerBuildRunnerVariables())
|
|
139
146
|
}, def);
|
|
140
147
|
};
|
|
141
148
|
exports.createDockerBuildJobBase = createDockerBuildJobBase;
|
|
@@ -149,6 +156,6 @@ var getDockerBuildDefaultScript = function (context, ensureDockerFileScript) {
|
|
|
149
156
|
};
|
|
150
157
|
exports.getDockerBuildDefaultScript = getDockerBuildDefaultScript;
|
|
151
158
|
var hasDockerfile = function (context) {
|
|
152
|
-
return (0, fs_1.existsSync)(path_1
|
|
159
|
+
return (0, fs_1.existsSync)(path_1.default.join(context.componentConfig.dir, "Dockerfile"));
|
|
153
160
|
};
|
|
154
161
|
exports.hasDockerfile = hasDockerfile;
|
package/dist/build/index.d.ts
CHANGED
|
@@ -4,7 +4,7 @@ import type { CatladderJob } from "../types/jobs";
|
|
|
4
4
|
import type { BuildConfig, BuildConfigType } from "./types";
|
|
5
5
|
export * from "./types";
|
|
6
6
|
export * from "./node";
|
|
7
|
-
export
|
|
7
|
+
export type BuildTypes = { [type in BuildConfigType]: {
|
|
8
8
|
jobs: (context: Context) => CatladderJob[];
|
|
9
9
|
defaults: (envContext: EnvironmentContext<BuildConfigType, any>) => Partial<Extract<BuildConfig, {
|
|
10
10
|
type: type;
|
package/dist/build/index.js
CHANGED
|
@@ -2,12 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
|
|
4
4
|
if (k2 === undefined) k2 = k;
|
|
5
|
-
Object.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
5
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
6
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
7
|
+
desc = {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: function () {
|
|
10
|
+
return m[k];
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
11
15
|
} : function (o, m, k, k2) {
|
|
12
16
|
if (k2 === undefined) k2 = k;
|
|
13
17
|
o[k2] = m[k];
|
|
@@ -15,7 +19,9 @@ var __createBinding = this && this.__createBinding || (Object.create ? function
|
|
|
15
19
|
var __exportStar = this && this.__exportStar || function (m, exports) {
|
|
16
20
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
17
21
|
};
|
|
18
|
-
exports
|
|
22
|
+
Object.defineProperty(exports, "__esModule", {
|
|
23
|
+
value: true
|
|
24
|
+
});
|
|
19
25
|
exports.BUILD_TYPES = void 0;
|
|
20
26
|
var custom_1 = require("./custom");
|
|
21
27
|
var node_1 = require("./node");
|
|
@@ -1,15 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var __assign = this && this.__assign || function () {
|
|
4
|
-
__assign = Object.assign || function (t) {
|
|
5
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
6
|
-
s = arguments[i];
|
|
7
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
3
|
var __read = this && this.__read || function (o, n) {
|
|
14
4
|
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
15
5
|
if (!m) return o;
|
|
@@ -41,7 +31,9 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
41
31
|
}
|
|
42
32
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
43
33
|
};
|
|
44
|
-
exports
|
|
34
|
+
Object.defineProperty(exports, "__esModule", {
|
|
35
|
+
value: true
|
|
36
|
+
});
|
|
45
37
|
exports.createNodeBuildJobs = void 0;
|
|
46
38
|
var path_1 = require("path");
|
|
47
39
|
var runner_1 = require("../../runner");
|
|
@@ -63,7 +55,7 @@ var createNodeBuildJobs = function (context) {
|
|
|
63
55
|
return (0, base_1.createBuildJobs)(context, {
|
|
64
56
|
appBuild: buildConfig.buildCommand !== null ? {
|
|
65
57
|
image: (_a = buildConfig.jobImage) !== null && _a !== void 0 ? _a : defaultImage,
|
|
66
|
-
|
|
58
|
+
runnerVariables: constants_1.NODE_RUNNER_BUILD_VARIABLES,
|
|
67
59
|
cache: __spreadArray(__spreadArray(__spreadArray([], __read((_b = (0, utils_1.ensureArray)(buildConfig.jobCache)) !== null && _b !== void 0 ? _b : []), false), __read((0, cache_1.getNodeCache)(context)), false), __read((0, cache_1.getNextCache)(context)), false),
|
|
68
60
|
script: __spreadArray(__spreadArray([], __read(yarnInstall), false), __read((_c = (0, utils_1.ensureArray)(buildConfig.buildCommand)) !== null && _c !== void 0 ? _c : []), false),
|
|
69
61
|
artifacts: {
|
package/dist/build/node/cache.js
CHANGED
|
@@ -36,7 +36,9 @@ var __importDefault = this && this.__importDefault || function (mod) {
|
|
|
36
36
|
"default": mod
|
|
37
37
|
};
|
|
38
38
|
};
|
|
39
|
-
exports
|
|
39
|
+
Object.defineProperty(exports, "__esModule", {
|
|
40
|
+
value: true
|
|
41
|
+
});
|
|
40
42
|
exports.getNextCache = exports.getNodeCache = exports.getNodeModulesCache = exports.getYarnCache = void 0;
|
|
41
43
|
var path_1 = require("path");
|
|
42
44
|
var slugify_1 = __importDefault(require("slugify"));
|
|
@@ -52,7 +54,7 @@ var getYarnCache = function (context, policy) {
|
|
|
52
54
|
policy: policy,
|
|
53
55
|
paths: [".yarn"]
|
|
54
56
|
} : {
|
|
55
|
-
key: (0, slugify_1
|
|
57
|
+
key: (0, slugify_1.default)(context.componentConfig.dir) + "-yarn",
|
|
56
58
|
policy: policy,
|
|
57
59
|
paths: [(0, path_1.join)(context.componentConfig.dir, ".yarn")]
|
|
58
60
|
}];
|
|
@@ -68,7 +70,8 @@ var getNodeModulesCache = function (context, policy) {
|
|
|
68
70
|
// It would slow down all pipelines whenever one adds a new dependency as it will need to download all node_modules again.
|
|
69
71
|
return [{
|
|
70
72
|
// if component is in a shared workspace, use workspace cache. use individual cache else
|
|
71
|
-
key: componentIsInWorkspace ? "node-modules-workspace" : (0, slugify_1
|
|
73
|
+
key: componentIsInWorkspace ? "node-modules-workspace" : (0, slugify_1.default)(context.componentConfig.dir) + "-node-modules",
|
|
74
|
+
// we use the dirname, not the component name, because in certain cases we have two apps in the same directory and want to share the cache, e.g. when having storybook in the same package.json
|
|
72
75
|
policy: policy,
|
|
73
76
|
paths: __spreadArray([], __read(componentIsInWorkspace ? (0, lodash_1.uniq)(__spreadArray(["node_modules"], __read((_c = (_b = context.packageManagerInfo) === null || _b === void 0 ? void 0 : _b.workspaces.map(function (w) {
|
|
74
77
|
return (0, path_1.join)(w.location, "node_modules");
|
package/dist/build/node/index.js
CHANGED
|
@@ -31,7 +31,9 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
31
31
|
}
|
|
32
32
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
33
33
|
};
|
|
34
|
-
exports
|
|
34
|
+
Object.defineProperty(exports, "__esModule", {
|
|
35
|
+
value: true
|
|
36
|
+
});
|
|
35
37
|
exports.createMeteorJobs = exports.createStorybookJobs = exports.createNodeJobs = void 0;
|
|
36
38
|
var buildJob_1 = require("./buildJob");
|
|
37
39
|
var meteor_1 = require("./meteor");
|
|
@@ -31,7 +31,9 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
31
31
|
}
|
|
32
32
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
33
33
|
};
|
|
34
|
-
exports
|
|
34
|
+
Object.defineProperty(exports, "__esModule", {
|
|
35
|
+
value: true
|
|
36
|
+
});
|
|
35
37
|
exports.createMeteorBuildJobs = void 0;
|
|
36
38
|
var path_1 = require("path");
|
|
37
39
|
var runner_1 = require("../../runner");
|
|
@@ -58,8 +60,9 @@ var createMeteorBuildJobs = function (context) {
|
|
|
58
60
|
cache: __spreadArray(__spreadArray([], __read((0, cache_1.getNodeCache)(context)), false), __read(getMeteorCache(context)), false),
|
|
59
61
|
image: (0, runner_1.getRunnerImage)("jobs-meteor"),
|
|
60
62
|
variables: {
|
|
61
|
-
METEOR_DISABLE_OPTIMISTIC_CACHING: "1"
|
|
63
|
+
METEOR_DISABLE_OPTIMISTIC_CACHING: "1" // see https://forums.meteor.com/t/veeery-long-building-time-inside-docker-container/58673/17?u=macrozone
|
|
62
64
|
},
|
|
65
|
+
|
|
63
66
|
script: __spreadArray(__spreadArray([], __read(yarnInstall), false), ['echo "add healthcheck package"', "meteor add panter:healthroute --allow-superuser", "meteor add qualia:prod-shell --allow-superuser", 'TOOL_NODE_FLAGS="--max_old_space_size=3584 --min_semi_space_size=8 --max_semi_space_size=256 --optimize_for_size" meteor build ./dist --architecture os.linux.x86_64 --allow-superuser --server-only --directory', "cp ./__build_info.json ./dist/bundle/programs/server"], false),
|
|
64
67
|
artifacts: {
|
|
65
68
|
paths: [context.componentConfig.dir + "/__build_info.json", context.componentConfig.dir + "/dist"]
|
|
@@ -41,7 +41,9 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
41
41
|
}
|
|
42
42
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
43
43
|
};
|
|
44
|
-
exports
|
|
44
|
+
Object.defineProperty(exports, "__esModule", {
|
|
45
|
+
value: true
|
|
46
|
+
});
|
|
45
47
|
exports.createNodeTestJobs = void 0;
|
|
46
48
|
var runner_1 = require("../../runner");
|
|
47
49
|
var utils_1 = require("../../utils");
|
|
@@ -50,17 +52,19 @@ var constants_1 = require("./constants");
|
|
|
50
52
|
var yarn_1 = require("./yarn");
|
|
51
53
|
var createArtifactsConfig_1 = require("../base/createArtifactsConfig");
|
|
52
54
|
var createNodeTestJobs = function (context) {
|
|
53
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v
|
|
55
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v;
|
|
54
56
|
// don't run tests after release
|
|
55
|
-
|
|
57
|
+
// TODO: this will be replaced by using rules
|
|
58
|
+
if (context.trigger === "taggedRelease") {
|
|
56
59
|
return [];
|
|
57
60
|
}
|
|
58
61
|
var buildConfig = context.componentConfig.build;
|
|
59
62
|
var defaultImage = (0, runner_1.getRunnerImage)("jobs-default");
|
|
60
63
|
var base = {
|
|
61
|
-
variables: __assign(__assign(
|
|
64
|
+
variables: __assign(__assign({
|
|
62
65
|
APP_PATH: context.componentConfig.dir
|
|
63
|
-
},
|
|
66
|
+
}, context.environment.jobOnlyVars.build.envVars), (_a = buildConfig.extraVars) !== null && _a !== void 0 ? _a : {}),
|
|
67
|
+
runnerVariables: constants_1.NODE_RUNNER_BUILD_VARIABLES,
|
|
64
68
|
stage: "test",
|
|
65
69
|
needs: [],
|
|
66
70
|
envMode: "none"
|
|
@@ -69,26 +73,26 @@ var createNodeTestJobs = function (context) {
|
|
|
69
73
|
var auditJob = buildConfig.audit !== false ? __assign(__assign(__assign({
|
|
70
74
|
name: "๐ก audit"
|
|
71
75
|
}, base), {
|
|
72
|
-
image: (
|
|
76
|
+
image: (_c = (_b = buildConfig.audit) === null || _b === void 0 ? void 0 : _b.jobImage) !== null && _c !== void 0 ? _c : defaultImage,
|
|
73
77
|
cache: undefined,
|
|
74
|
-
script: __spreadArray(["cd ".concat(context.componentConfig.dir)], __read((
|
|
78
|
+
script: __spreadArray(["cd ".concat(context.componentConfig.dir)], __read((_e = (0, utils_1.ensureArray)((_d = buildConfig.audit) === null || _d === void 0 ? void 0 : _d.command)) !== null && _e !== void 0 ? _e : [((_f = context.packageManagerInfo) === null || _f === void 0 ? void 0 : _f.isClassic) ? "yarn audit" : "yarn npm audit --environment production" // yarn 2
|
|
75
79
|
]), false),
|
|
76
80
|
allow_failure: true
|
|
77
|
-
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (
|
|
81
|
+
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (_g = buildConfig.audit) === null || _g === void 0 ? void 0 : _g.artifactsReports, (_h = buildConfig.audit) === null || _h === void 0 ? void 0 : _h.artifacts)) : null;
|
|
78
82
|
var lintJob = buildConfig.lint !== false ? __assign(__assign(__assign({
|
|
79
83
|
name: "๐ฎ lint"
|
|
80
84
|
}, base), {
|
|
81
|
-
image: (
|
|
85
|
+
image: (_k = (_j = buildConfig.lint) === null || _j === void 0 ? void 0 : _j.jobImage) !== null && _k !== void 0 ? _k : defaultImage,
|
|
82
86
|
cache: (0, cache_1.getNodeCache)(context),
|
|
83
|
-
script: __spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read((0, yarn_1.ensureNodeVersion)(context)), false), ["cd ".concat(context.componentConfig.dir)], false), __read(yarnInstall), false), __read((
|
|
84
|
-
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (
|
|
87
|
+
script: __spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read((0, yarn_1.ensureNodeVersion)(context)), false), ["cd ".concat(context.componentConfig.dir)], false), __read(yarnInstall), false), __read((_m = (0, utils_1.ensureArray)((_l = buildConfig.lint) === null || _l === void 0 ? void 0 : _l.command)) !== null && _m !== void 0 ? _m : ["yarn lint"]), false)
|
|
88
|
+
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (_o = buildConfig.lint) === null || _o === void 0 ? void 0 : _o.artifactsReports, (_p = buildConfig.lint) === null || _p === void 0 ? void 0 : _p.artifacts)) : null;
|
|
85
89
|
var testJob = buildConfig.test !== false ? __assign(__assign(__assign({
|
|
86
90
|
name: "๐งช test"
|
|
87
91
|
}, base), {
|
|
88
|
-
image: (
|
|
92
|
+
image: (_r = (_q = buildConfig.test) === null || _q === void 0 ? void 0 : _q.jobImage) !== null && _r !== void 0 ? _r : (0, runner_1.getRunnerImage)("jobs-testing-chrome"),
|
|
89
93
|
cache: (0, cache_1.getNodeCache)(context),
|
|
90
|
-
script: __spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read((0, yarn_1.ensureNodeVersion)(context)), false), ["cd ".concat(context.componentConfig.dir)], false), __read(yarnInstall), false), __read((
|
|
91
|
-
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (
|
|
94
|
+
script: __spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read((0, yarn_1.ensureNodeVersion)(context)), false), ["cd ".concat(context.componentConfig.dir)], false), __read(yarnInstall), false), __read((_t = (0, utils_1.ensureArray)((_s = buildConfig.test) === null || _s === void 0 ? void 0 : _s.command)) !== null && _t !== void 0 ? _t : ["yarn test"]), false)
|
|
95
|
+
}), (0, createArtifactsConfig_1.createArtifactsConfig)(context.componentConfig.dir, (_u = buildConfig.test) === null || _u === void 0 ? void 0 : _u.artifactsReports, (_v = buildConfig.test) === null || _v === void 0 ? void 0 : _v.artifacts)) : null;
|
|
92
96
|
return [auditJob, lintJob, testJob].filter(utils_1.notNil);
|
|
93
97
|
};
|
|
94
98
|
exports.createNodeTestJobs = createNodeTestJobs;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { BashExpression } from "../../bash/BashExpression";
|
|
1
2
|
import type { Context } from "../../types";
|
|
2
3
|
export declare const ensureNodeVersion: (context: Context) => string[];
|
|
3
4
|
export declare const getYarnInstall: (context: Context, options?: {
|
|
4
5
|
noCustomPostInstall: boolean;
|
|
5
|
-
}
|
|
6
|
-
export declare const getDockerAppCopyAndBuildScript: (context: Context) =>
|
|
6
|
+
}) => string[];
|
|
7
|
+
export declare const getDockerAppCopyAndBuildScript: (context: Context) => BashExpression;
|
package/dist/build/node/yarn.js
CHANGED
|
@@ -31,8 +31,11 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
31
31
|
}
|
|
32
32
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
33
33
|
};
|
|
34
|
-
exports
|
|
34
|
+
Object.defineProperty(exports, "__esModule", {
|
|
35
|
+
value: true
|
|
36
|
+
});
|
|
35
37
|
exports.getDockerAppCopyAndBuildScript = exports.getYarnInstall = exports.ensureNodeVersion = void 0;
|
|
38
|
+
var BashExpression_1 = require("../../bash/BashExpression");
|
|
36
39
|
var utils_1 = require("../../utils");
|
|
37
40
|
var gitlab_1 = require("../../utils/gitlab");
|
|
38
41
|
var YARN_INSTALL_CLASSIC = "yarn install --frozen-lockfile";
|
|
@@ -59,7 +62,7 @@ var DOCKER_COPY_FILES = "COPY --chown=node:node $APP_DIR .";
|
|
|
59
62
|
var getDockerAppCopyAndBuildScript = function (context) {
|
|
60
63
|
var _a;
|
|
61
64
|
if ((_a = context.packageManagerInfo) === null || _a === void 0 ? void 0 : _a.isClassic) {
|
|
62
|
-
return "\nRUN ".concat(YARN_INSTALL_CLASSIC, " --production --ignore-scripts\n").concat(DOCKER_COPY_FILES, "\nRUN ").concat(YARN_INSTALL_CLASSIC, " --production \n ").trim();
|
|
65
|
+
return new BashExpression_1.BashExpression("\nRUN ".concat(YARN_INSTALL_CLASSIC, " --production --ignore-scripts\n").concat(DOCKER_COPY_FILES, "\nRUN ").concat(YARN_INSTALL_CLASSIC, " --production \n ").trim());
|
|
63
66
|
}
|
|
64
67
|
// yarn >= 4 ships with build in plugins, see https://github.com/yarnpkg/berry/pull/4253
|
|
65
68
|
// trying to import those fail on this version
|
|
@@ -70,6 +73,6 @@ var getDockerAppCopyAndBuildScript = function (context) {
|
|
|
70
73
|
var maybeAddWorkspaceToolsCommand = doesNotShipWithBuiltInPlugins ? "RUN yarn plugin import workspace-tools" : "";
|
|
71
74
|
// copy first everything and then install
|
|
72
75
|
// rebuild first does not work as it will run postinstall and that might require files in the app
|
|
73
|
-
return "\n".concat(DOCKER_COPY_FILES, "\n").concat(maybeAddWorkspaceToolsCommand, "\nRUN ").concat(YARN_BERRY_PROD_REBUILD, "\n\n ").trim();
|
|
76
|
+
return new BashExpression_1.BashExpression("\n".concat(DOCKER_COPY_FILES, "\n").concat(maybeAddWorkspaceToolsCommand, "\nRUN ").concat(YARN_BERRY_PROD_REBUILD, "\n\n ").trim());
|
|
74
77
|
};
|
|
75
78
|
exports.getDockerAppCopyAndBuildScript = getDockerAppCopyAndBuildScript;
|
|
@@ -41,7 +41,9 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
41
41
|
}
|
|
42
42
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
43
43
|
};
|
|
44
|
-
exports
|
|
44
|
+
Object.defineProperty(exports, "__esModule", {
|
|
45
|
+
value: true
|
|
46
|
+
});
|
|
45
47
|
exports.createRailsBuildJobs = void 0;
|
|
46
48
|
var base_1 = require("../base");
|
|
47
49
|
var docker_1 = require("../docker");
|
|
@@ -31,7 +31,9 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
31
31
|
}
|
|
32
32
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
33
33
|
};
|
|
34
|
-
exports
|
|
34
|
+
Object.defineProperty(exports, "__esModule", {
|
|
35
|
+
value: true
|
|
36
|
+
});
|
|
35
37
|
exports.createRailsJobs = void 0;
|
|
36
38
|
var build_1 = require("./build");
|
|
37
39
|
var test_1 = require("./test");
|
package/dist/build/rails/test.js
CHANGED
|
@@ -41,18 +41,21 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
41
41
|
}
|
|
42
42
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
43
43
|
};
|
|
44
|
-
exports
|
|
44
|
+
Object.defineProperty(exports, "__esModule", {
|
|
45
|
+
value: true
|
|
46
|
+
});
|
|
45
47
|
exports.createRailsTestJobs = void 0;
|
|
46
48
|
var utils_1 = require("../../utils");
|
|
47
49
|
var createRailsTestJobs = function (context) {
|
|
48
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r
|
|
50
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
|
|
49
51
|
// don't run tests after release
|
|
50
|
-
|
|
52
|
+
// TODO: this will be replaced by using rules
|
|
53
|
+
if (context.trigger === "taggedRelease") {
|
|
51
54
|
return [];
|
|
52
55
|
}
|
|
53
56
|
var buildConfig = context.componentConfig.build;
|
|
54
57
|
var base = {
|
|
55
|
-
variables: __assign(__assign({}, context.environment.jobOnlyVars.build.envVars), (
|
|
58
|
+
variables: __assign(__assign({}, context.environment.jobOnlyVars.build.envVars), (_a = buildConfig.extraVars) !== null && _a !== void 0 ? _a : {}),
|
|
56
59
|
stage: "test",
|
|
57
60
|
needs: [],
|
|
58
61
|
envMode: "none"
|
|
@@ -63,31 +66,32 @@ var createRailsTestJobs = function (context) {
|
|
|
63
66
|
var bundlerCache = {
|
|
64
67
|
key: {
|
|
65
68
|
files: ["Gemfile.lock"],
|
|
66
|
-
prefix: "$CI_JOB_IMAGE"
|
|
69
|
+
prefix: "$CI_JOB_IMAGE" // a changed image might have different OS libraries which no longer work with the cached gems
|
|
67
70
|
},
|
|
71
|
+
|
|
68
72
|
paths: [bundlerCacheDir]
|
|
69
73
|
};
|
|
70
74
|
var auditJob = buildConfig.audit !== false ? __assign(__assign({
|
|
71
75
|
name: "๐ก audit"
|
|
72
76
|
}, base), {
|
|
73
77
|
cache: undefined,
|
|
74
|
-
image: (
|
|
75
|
-
script: __spreadArray(["cd ".concat(context.componentConfig.dir)], __read((
|
|
78
|
+
image: (_d = (_c = (_b = buildConfig.audit) === null || _b === void 0 ? void 0 : _b.jobImage) !== null && _c !== void 0 ? _c : buildConfig.jobImage) !== null && _d !== void 0 ? _d : defaultImage,
|
|
79
|
+
script: __spreadArray(["cd ".concat(context.componentConfig.dir)], __read((_f = (0, utils_1.ensureArray)((_e = buildConfig.audit) === null || _e === void 0 ? void 0 : _e.command)) !== null && _f !== void 0 ? _f : ["gem install bundler-audit", "bundle audit check"]), false),
|
|
76
80
|
allow_failure: true
|
|
77
81
|
}) : null;
|
|
78
82
|
var lintJob = buildConfig.lint !== false ? __assign(__assign({
|
|
79
83
|
name: "๐ฎ lint"
|
|
80
84
|
}, base), {
|
|
81
85
|
cache: bundlerCache,
|
|
82
|
-
image: (
|
|
83
|
-
script: __spreadArray(__spreadArray(["cd ".concat(context.componentConfig.dir)], __read(bundlerInstall), false), __read((
|
|
86
|
+
image: (_j = (_h = (_g = buildConfig.lint) === null || _g === void 0 ? void 0 : _g.jobImage) !== null && _h !== void 0 ? _h : buildConfig.jobImage) !== null && _j !== void 0 ? _j : defaultImage,
|
|
87
|
+
script: __spreadArray(__spreadArray(["cd ".concat(context.componentConfig.dir)], __read(bundlerInstall), false), __read((_l = (0, utils_1.ensureArray)((_k = buildConfig.lint) === null || _k === void 0 ? void 0 : _k.command)) !== null && _l !== void 0 ? _l : ["bundle exec rubocop"]), false)
|
|
84
88
|
}) : null;
|
|
85
89
|
var testJob = buildConfig.test !== false ? __assign(__assign({
|
|
86
90
|
name: "๐งช test"
|
|
87
91
|
}, base), {
|
|
88
92
|
cache: bundlerCache,
|
|
89
|
-
image: (
|
|
90
|
-
script: __spreadArray(__spreadArray(["cd ".concat(context.componentConfig.dir)], __read(bundlerInstall), false), __read((
|
|
93
|
+
image: (_p = (_o = (_m = buildConfig.test) === null || _m === void 0 ? void 0 : _m.jobImage) !== null && _o !== void 0 ? _o : buildConfig.jobImage) !== null && _p !== void 0 ? _p : defaultImage,
|
|
94
|
+
script: __spreadArray(__spreadArray(["cd ".concat(context.componentConfig.dir)], __read(bundlerInstall), false), __read((_r = (0, utils_1.ensureArray)((_q = buildConfig.test) === null || _q === void 0 ? void 0 : _q.command)) !== null && _r !== void 0 ? _r : ["bundle exec rspec"]), false)
|
|
91
95
|
}) : null;
|
|
92
96
|
return [auditJob, lintJob, testJob].filter(utils_1.notNil);
|
|
93
97
|
};
|
package/dist/build/sbom.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
exports
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
4
6
|
exports.createSbomBuildJob = exports.SBOM_FILE = exports.SBOM_BUILD_JOB_NAME = void 0;
|
|
5
7
|
var utils_1 = require("../utils");
|
|
6
8
|
exports.SBOM_BUILD_JOB_NAME = "๐งพ sbom";
|