@catladder/pipeline 1.111.5 → 1.112.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.
- package/dist/build/base/createAppBuildJob.d.ts +8 -0
- package/dist/build/base/{createBuildJob.js → createAppBuildJob.js} +3 -3
- package/dist/build/base/index.d.ts +8 -0
- package/dist/build/base/index.js +57 -0
- package/dist/build/custom/buildJob.js +19 -22
- package/dist/build/docker.d.ts +2 -4
- package/dist/build/docker.js +4 -39
- package/dist/build/node/buildJob.js +30 -32
- package/dist/build/node/meteor.js +19 -21
- package/dist/build/rails/build.js +12 -19
- package/dist/build/types.d.ts +4 -3
- package/dist/bundles/catladder-gitlab/index.js +1 -1
- package/dist/constants.js +1 -1
- package/dist/deploy/base/deploy.d.ts +3 -2
- package/dist/deploy/base/deploy.js +9 -4
- package/dist/deploy/base/index.d.ts +10 -3
- package/dist/deploy/base/index.js +37 -16
- package/dist/deploy/base/rollback.d.ts +3 -2
- package/dist/deploy/base/rollback.js +8 -6
- package/dist/deploy/base/stop.d.ts +3 -2
- package/dist/deploy/base/stop.js +8 -6
- package/dist/deploy/cloudRun/deployJob.js +28 -26
- package/dist/deploy/custom/deployJob.js +14 -11
- package/dist/deploy/dockerTag/deployJob.js +15 -5
- package/dist/deploy/kubernetes/deployJob.js +14 -14
- package/dist/deploy/kubernetes/mongodb.d.ts +1 -1
- package/dist/deploy/kubernetes/mongodb.js +8 -7
- package/dist/deploy/types/index.d.ts +1 -1
- package/dist/pipeline/gitlab/createGitlabJobs.d.ts +1 -0
- package/dist/pipeline/gitlab/createGitlabJobs.js +4 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/gitlab-ci-yml.d.ts +769 -0
- package/dist/types/gitlab-ci-yml.js +9 -0
- package/dist/types/gitlab-types.d.ts +12 -82
- package/dist/types/jobs.d.ts +3 -3
- package/package.json +4 -2
- package/scripts/generate-gitlab-ci-types.ts +51 -0
- package/src/build/base/{createBuildJob.ts → createAppBuildJob.ts} +3 -2
- package/src/build/base/index.ts +35 -0
- package/src/build/custom/buildJob.ts +32 -45
- package/src/build/docker.ts +14 -17
- package/src/build/node/buildJob.ts +50 -61
- package/src/build/node/meteor.ts +31 -36
- package/src/build/rails/build.ts +8 -10
- package/src/build/types.ts +4 -8
- package/src/deploy/base/deploy.ts +16 -2
- package/src/deploy/base/index.ts +22 -3
- package/src/deploy/base/rollback.ts +13 -2
- package/src/deploy/base/stop.ts +13 -4
- package/src/deploy/cloudRun/deployJob.ts +13 -15
- package/src/deploy/custom/deployJob.ts +17 -20
- package/src/deploy/dockerTag/deployJob.ts +6 -7
- package/src/deploy/kubernetes/deployJob.ts +17 -23
- package/src/deploy/kubernetes/mongodb.ts +3 -2
- package/src/pipeline/gitlab/createGitlabJobs.ts +3 -0
- package/src/types/gitlab-ci-yml.ts +892 -0
- package/src/types/gitlab-types.ts +49 -83
- package/src/types/jobs.ts +3 -4
- package/dist/build/base/createBuildJob.d.ts +0 -7
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Context } from "../..";
|
|
2
|
+
import type { CatladderJob } from "../../types/jobs";
|
|
3
|
+
export declare type AppBuildJobDefinition = Partial<CatladderJob>;
|
|
4
|
+
export declare const createAppBuildJob: (context: Context, {
|
|
5
|
+
script,
|
|
6
|
+
variables,
|
|
7
|
+
...def
|
|
8
|
+
}: AppBuildJobDefinition) => CatladderJob;
|
|
@@ -50,7 +50,7 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
50
50
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
51
51
|
};
|
|
52
52
|
exports.__esModule = true;
|
|
53
|
-
exports.
|
|
53
|
+
exports.createAppBuildJob = void 0;
|
|
54
54
|
var lodash_1 = require("lodash");
|
|
55
55
|
var path_1 = require("path");
|
|
56
56
|
var __1 = require("../..");
|
|
@@ -59,7 +59,7 @@ var yarn_1 = require("../node/yarn");
|
|
|
59
59
|
var constants_1 = require("./constants");
|
|
60
60
|
var writeBuildInfo_1 = require("./writeBuildInfo");
|
|
61
61
|
var writeDotEnv_1 = require("./writeDotEnv");
|
|
62
|
-
var
|
|
62
|
+
var createAppBuildJob = function (context, _a) {
|
|
63
63
|
var _b, _c, _d, _e;
|
|
64
64
|
var script = _a.script,
|
|
65
65
|
variables = _a.variables,
|
|
@@ -83,4 +83,4 @@ var createBuildJob = function (context, _a) {
|
|
|
83
83
|
}
|
|
84
84
|
}, def);
|
|
85
85
|
};
|
|
86
|
-
exports.
|
|
86
|
+
exports.createAppBuildJob = createAppBuildJob;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { Context } from "../../types/context";
|
|
2
|
+
import type { CatladderJob } from "../../types/jobs";
|
|
3
|
+
import type { DockerBuildJobDefinition } from "../docker";
|
|
4
|
+
import type { AppBuildJobDefinition } from "./createAppBuildJob";
|
|
5
|
+
export declare const createBuildJobs: (context: Context, definitions: {
|
|
6
|
+
appBuild?: AppBuildJobDefinition;
|
|
7
|
+
dockerBuild: DockerBuildJobDefinition;
|
|
8
|
+
}) => CatladderJob[];
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
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
|
+
var __read = this && this.__read || function (o, n) {
|
|
14
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
15
|
+
if (!m) return o;
|
|
16
|
+
var i = m.call(o),
|
|
17
|
+
r,
|
|
18
|
+
ar = [],
|
|
19
|
+
e;
|
|
20
|
+
try {
|
|
21
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
22
|
+
} catch (error) {
|
|
23
|
+
e = {
|
|
24
|
+
error: error
|
|
25
|
+
};
|
|
26
|
+
} finally {
|
|
27
|
+
try {
|
|
28
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
29
|
+
} finally {
|
|
30
|
+
if (e) throw e.error;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return ar;
|
|
34
|
+
};
|
|
35
|
+
var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
36
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
37
|
+
if (ar || !(i in from)) {
|
|
38
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
39
|
+
ar[i] = from[i];
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
43
|
+
};
|
|
44
|
+
exports.__esModule = true;
|
|
45
|
+
exports.createBuildJobs = void 0;
|
|
46
|
+
var sbom_1 = require("../../deploy/sbom");
|
|
47
|
+
var docker_1 = require("../docker");
|
|
48
|
+
var sbom_2 = require("../sbom");
|
|
49
|
+
var constants_1 = require("./constants");
|
|
50
|
+
var createAppBuildJob_1 = require("./createAppBuildJob");
|
|
51
|
+
var createBuildJobs = function (context, definitions) {
|
|
52
|
+
var _a;
|
|
53
|
+
return __spreadArray(__spreadArray(__spreadArray([], __read(definitions.appBuild ? [(0, createAppBuildJob_1.createAppBuildJob)(context, definitions.appBuild)] : []), false), __read((0, docker_1.requiresDockerBuild)(context) ? [(0, docker_1.createDockerBuildJobBase)(context, __assign(__assign({}, definitions.dockerBuild), {
|
|
54
|
+
needs: __spreadArray(__spreadArray([], __read((_a = definitions.dockerBuild.needs) !== null && _a !== void 0 ? _a : []), false), __read(definitions.appBuild ? [constants_1.APP_BUILD_JOB_NAME] : []), false)
|
|
55
|
+
}))] : []), false), __read((0, sbom_1.sbomDeactivated)(context) ? [] : [(0, sbom_2.createSbomBuildJob)(context)]), false);
|
|
56
|
+
};
|
|
57
|
+
exports.createBuildJobs = createBuildJobs;
|
|
@@ -45,12 +45,9 @@ exports.__esModule = true;
|
|
|
45
45
|
exports.createCustomBuildJobs = void 0;
|
|
46
46
|
var path_1 = require("path");
|
|
47
47
|
var utils_1 = require("../../utils");
|
|
48
|
-
var constants_1 = require("../base/constants");
|
|
49
|
-
var createBuildJob_1 = require("../base/createBuildJob");
|
|
50
48
|
var docker_1 = require("../docker");
|
|
51
49
|
var types_1 = require("../types");
|
|
52
|
-
var
|
|
53
|
-
var sbom_2 = require("../../deploy/sbom");
|
|
50
|
+
var base_1 = require("../base");
|
|
54
51
|
var RUNNER_BUILD_VARIABLES = {
|
|
55
52
|
KUBERNETES_CPU_REQUEST: "0.5",
|
|
56
53
|
KUBERNETES_CPU_LIMIT: "2",
|
|
@@ -63,24 +60,24 @@ var createCustomBuildJobs = function (context) {
|
|
|
63
60
|
if (!(0, types_1.isOfBuildType)(buildConfig, "custom")) {
|
|
64
61
|
throw new Error("deploy config is not custom");
|
|
65
62
|
}
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
63
|
+
return (0, base_1.createBuildJobs)(context, {
|
|
64
|
+
appBuild: buildConfig.buildCommand !== null ? {
|
|
65
|
+
image: buildConfig.jobImage,
|
|
66
|
+
variables: __assign({}, RUNNER_BUILD_VARIABLES),
|
|
67
|
+
cache: buildConfig.jobCache,
|
|
68
|
+
services: buildConfig.jobServices,
|
|
69
|
+
script: __spreadArray([], __read((_a = (0, utils_1.ensureArray)(buildConfig.buildCommand)) !== null && _a !== void 0 ? _a : []), false),
|
|
70
|
+
artifacts: {
|
|
71
|
+
paths: __spreadArray([(0, path_1.join)(context.componentConfig.dir, "__build_info.json"), (0, path_1.join)(context.componentConfig.dir, "dist")], __read((_c = (_b = buildConfig.artifactsPaths) === null || _b === void 0 ? void 0 : _b.map(function (path) {
|
|
72
|
+
return (0, path_1.join)(context.componentConfig.dir, path);
|
|
73
|
+
})) !== null && _c !== void 0 ? _c : []), false),
|
|
74
|
+
expire_in: "1 day"
|
|
75
|
+
}
|
|
76
|
+
} : undefined,
|
|
77
|
+
dockerBuild: {
|
|
78
|
+
script: (0, docker_1.getDockerBuildDefaultScript)(((_d = buildConfig.docker) === null || _d === void 0 ? void 0 : _d.type) === "nginx" ? "ensureNginxDockerfile" : ""),
|
|
79
|
+
variables: {}
|
|
77
80
|
}
|
|
78
|
-
})
|
|
79
|
-
return __spreadArray(__spreadArray(__spreadArray([], __read(appBuildJob ? [appBuildJob] : []), false), __read((0, docker_1.requiresDockerBuild)(context) ? [(0, docker_1.createDockerBuildJobDefault)(context, {
|
|
80
|
-
script: [((_d = buildConfig.docker) === null || _d === void 0 ? void 0 : _d.type) === "nginx" ? "ensureNginxDockerfile" : "" // e.g. custom,
|
|
81
|
-
].filter(Boolean),
|
|
82
|
-
variables: {},
|
|
83
|
-
needs: appBuildJob ? [constants_1.APP_BUILD_JOB_NAME] : []
|
|
84
|
-
})] : []), false), __read((0, sbom_2.sbomDeactivated)(context) ? [] : [(0, sbom_1.createSbomBuildJob)(context)]), false);
|
|
81
|
+
});
|
|
85
82
|
};
|
|
86
83
|
exports.createCustomBuildJobs = createCustomBuildJobs;
|
package/dist/build/docker.d.ts
CHANGED
|
@@ -50,12 +50,10 @@ export declare const getDockerJobBaseProps: (context: Context) => {
|
|
|
50
50
|
DOCKER_BUILDKIT: string;
|
|
51
51
|
};
|
|
52
52
|
};
|
|
53
|
+
export declare type DockerBuildJobDefinition = Partial<CatladderJob>;
|
|
53
54
|
export declare const createDockerBuildJobBase: (context: Context, {
|
|
54
55
|
script,
|
|
55
56
|
...def
|
|
56
57
|
}: Partial<CatladderJob>) => CatladderJob;
|
|
57
58
|
export declare const gitlabDockerLogin = "docker login --username gitlab-ci-token --password $CI_JOB_TOKEN $CI_REGISTRY";
|
|
58
|
-
export declare const
|
|
59
|
-
script,
|
|
60
|
-
...def
|
|
61
|
-
}: Partial<CatladderJob>) => CatladderJob;
|
|
59
|
+
export declare const getDockerBuildDefaultScript: (ensureDockerFileScript?: string | undefined) => (string | undefined)[];
|
package/dist/build/docker.js
CHANGED
|
@@ -18,39 +18,8 @@ var __rest = this && this.__rest || function (s, e) {
|
|
|
18
18
|
}
|
|
19
19
|
return t;
|
|
20
20
|
};
|
|
21
|
-
var __read = this && this.__read || function (o, n) {
|
|
22
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
23
|
-
if (!m) return o;
|
|
24
|
-
var i = m.call(o),
|
|
25
|
-
r,
|
|
26
|
-
ar = [],
|
|
27
|
-
e;
|
|
28
|
-
try {
|
|
29
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
30
|
-
} catch (error) {
|
|
31
|
-
e = {
|
|
32
|
-
error: error
|
|
33
|
-
};
|
|
34
|
-
} finally {
|
|
35
|
-
try {
|
|
36
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
37
|
-
} finally {
|
|
38
|
-
if (e) throw e.error;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return ar;
|
|
42
|
-
};
|
|
43
|
-
var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
44
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
45
|
-
if (ar || !(i in from)) {
|
|
46
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
47
|
-
ar[i] = from[i];
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
51
|
-
};
|
|
52
21
|
exports.__esModule = true;
|
|
53
|
-
exports.
|
|
22
|
+
exports.getDockerBuildDefaultScript = exports.gitlabDockerLogin = exports.createDockerBuildJobBase = exports.getDockerJobBaseProps = exports.DOCKER_BUILD_JOB_NAME = exports.getDockerBuildVariables = exports.requiresDockerBuild = exports.getDockerImageVariables = void 0;
|
|
54
23
|
var lodash_1 = require("lodash");
|
|
55
24
|
var deploy_1 = require("../deploy");
|
|
56
25
|
var runner_1 = require("../runner");
|
|
@@ -124,11 +93,7 @@ var createDockerBuildJobBase = function (context, _a) {
|
|
|
124
93
|
};
|
|
125
94
|
exports.createDockerBuildJobBase = createDockerBuildJobBase;
|
|
126
95
|
exports.gitlabDockerLogin = "docker login --username gitlab-ci-token --password $CI_JOB_TOKEN $CI_REGISTRY";
|
|
127
|
-
var
|
|
128
|
-
|
|
129
|
-
def = __rest(_a, ["script"]);
|
|
130
|
-
return (0, exports.createDockerBuildJobBase)(context, __assign({
|
|
131
|
-
script: __spreadArray(__spreadArray([], __read(script || []), false), [exports.gitlabDockerLogin, "docker version", "docker build --network host --cache-from $DOCKER_CACHE_IMAGE --tag $DOCKER_IMAGE:$DOCKER_IMAGE_TAG -f $APP_DIR/Dockerfile . --build-arg BUILDKIT_INLINE_CACHE=1", "docker push $DOCKER_IMAGE:$DOCKER_IMAGE_TAG", "docker tag $DOCKER_IMAGE:$DOCKER_IMAGE_TAG $DOCKER_CACHE_IMAGE", "docker push $DOCKER_CACHE_IMAGE"], false)
|
|
132
|
-
}, def));
|
|
96
|
+
var getDockerBuildDefaultScript = function (ensureDockerFileScript) {
|
|
97
|
+
return [ensureDockerFileScript, exports.gitlabDockerLogin, "docker version", "docker build --network host --cache-from $DOCKER_CACHE_IMAGE --tag $DOCKER_IMAGE:$DOCKER_IMAGE_TAG -f $APP_DIR/Dockerfile . --build-arg BUILDKIT_INLINE_CACHE=1", "docker push $DOCKER_IMAGE:$DOCKER_IMAGE_TAG", "docker tag $DOCKER_IMAGE:$DOCKER_IMAGE_TAG $DOCKER_CACHE_IMAGE", "docker push $DOCKER_CACHE_IMAGE"].filter(Boolean);
|
|
133
98
|
};
|
|
134
|
-
exports.
|
|
99
|
+
exports.getDockerBuildDefaultScript = getDockerBuildDefaultScript;
|
|
@@ -43,18 +43,15 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
|
43
43
|
};
|
|
44
44
|
exports.__esModule = true;
|
|
45
45
|
exports.createNodeBuildJobs = void 0;
|
|
46
|
+
var path_1 = require("path");
|
|
47
|
+
var runner_1 = require("../../runner");
|
|
46
48
|
var utils_1 = require("../../utils");
|
|
47
|
-
var
|
|
48
|
-
var createBuildJob_1 = require("../base/createBuildJob");
|
|
49
|
+
var base_1 = require("../base");
|
|
49
50
|
var docker_1 = require("../docker");
|
|
50
|
-
var path_1 = require("path");
|
|
51
51
|
var types_1 = require("../types");
|
|
52
52
|
var cache_1 = require("./cache");
|
|
53
|
-
var
|
|
53
|
+
var constants_1 = require("./constants");
|
|
54
54
|
var yarn_1 = require("./yarn");
|
|
55
|
-
var runner_1 = require("../../runner");
|
|
56
|
-
var sbom_1 = require("../sbom");
|
|
57
|
-
var sbom_2 = require("../../deploy/sbom");
|
|
58
55
|
var createNodeBuildJobs = function (context) {
|
|
59
56
|
var _a, _b, _c, _d, _e, _f, _g;
|
|
60
57
|
var buildConfig = context.componentConfig.build;
|
|
@@ -63,30 +60,31 @@ var createNodeBuildJobs = function (context) {
|
|
|
63
60
|
}
|
|
64
61
|
var defaultImage = (0, runner_1.getRunnerImage)("jobs-default");
|
|
65
62
|
var yarnInstall = (0, yarn_1.getYarnInstall)(context);
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
63
|
+
return (0, base_1.createBuildJobs)(context, {
|
|
64
|
+
appBuild: buildConfig.buildCommand !== null ? {
|
|
65
|
+
image: (_a = buildConfig.jobImage) !== null && _a !== void 0 ? _a : defaultImage,
|
|
66
|
+
variables: __assign({}, constants_1.NODE_RUNNER_BUILD_VARIABLES),
|
|
67
|
+
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
|
+
script: __spreadArray(__spreadArray([], __read(yarnInstall), false), __read((_c = (0, utils_1.ensureArray)(buildConfig.buildCommand)) !== null && _c !== void 0 ? _c : []), false),
|
|
69
|
+
artifacts: {
|
|
70
|
+
paths: __spreadArray([(0, path_1.join)(context.componentConfig.dir, "__build_info.json"), (0, path_1.join)(context.componentConfig.dir, "dist"), (0, path_1.join)(context.componentConfig.dir, ".next")], __read((_e = (_d = buildConfig.artifactsPaths) === null || _d === void 0 ? void 0 : _d.map(function (path) {
|
|
71
|
+
return (0, path_1.join)(context.componentConfig.dir, path);
|
|
72
|
+
})) !== null && _e !== void 0 ? _e : []), false),
|
|
73
|
+
expire_in: "1 day"
|
|
74
|
+
},
|
|
75
|
+
jobTags: buildConfig.jobTags
|
|
76
|
+
} : undefined,
|
|
77
|
+
dockerBuild: {
|
|
78
|
+
script: (0, docker_1.getDockerBuildDefaultScript)(buildConfig.type === "node-static" || buildConfig.type === "storybook" ? "ensureNginxDockerfile" : "ensureNodeDockerfile"),
|
|
79
|
+
cache: __spreadArray([], __read((0, cache_1.getYarnCache)(context, "pull")), false),
|
|
80
|
+
variables: {
|
|
81
|
+
// only required for non static
|
|
82
|
+
DOCKER_COPY_AND_INSTALL_APP: (0, yarn_1.getDockerAppCopyAndBuildScript)(context),
|
|
83
|
+
DOCKER_COPY_WORKSPACE_FILES: (_g = (_f = context.packageManagerInfo) === null || _f === void 0 ? void 0 : _f.pathsToCopyInDocker.map(function (dir) {
|
|
84
|
+
return "COPY --chown=node:node ".concat(dir, " /app/").concat(dir);
|
|
85
|
+
})) === null || _g === void 0 ? void 0 : _g.join("\n")
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
});
|
|
91
89
|
};
|
|
92
90
|
exports.createNodeBuildJobs = createNodeBuildJobs;
|
|
@@ -35,14 +35,11 @@ exports.__esModule = true;
|
|
|
35
35
|
exports.createMeteorBuildJobs = void 0;
|
|
36
36
|
var path_1 = require("path");
|
|
37
37
|
var runner_1 = require("../../runner");
|
|
38
|
-
var
|
|
39
|
-
var createBuildJob_1 = require("../base/createBuildJob");
|
|
38
|
+
var base_1 = require("../base");
|
|
40
39
|
var docker_1 = require("../docker");
|
|
41
40
|
var types_1 = require("../types");
|
|
42
41
|
var cache_1 = require("./cache");
|
|
43
42
|
var yarn_1 = require("./yarn");
|
|
44
|
-
var sbom_1 = require("../../deploy/sbom");
|
|
45
|
-
var sbom_2 = require("../sbom");
|
|
46
43
|
var getMeteorCache = function (context) {
|
|
47
44
|
return [{
|
|
48
45
|
key: context.componentName + "meteor-build-cache",
|
|
@@ -56,23 +53,24 @@ var createMeteorBuildJobs = function (context) {
|
|
|
56
53
|
throw new Error("deploy config is not meteor");
|
|
57
54
|
}
|
|
58
55
|
var yarnInstall = (0, yarn_1.getYarnInstall)(context);
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
56
|
+
return (0, base_1.createBuildJobs)(context, {
|
|
57
|
+
appBuild: buildConfig.buildCommand !== null ? {
|
|
58
|
+
cache: __spreadArray(__spreadArray([], __read((0, cache_1.getNodeCache)(context)), false), __read(getMeteorCache(context)), false),
|
|
59
|
+
image: (0, runner_1.getRunnerImage)("jobs-meteor"),
|
|
60
|
+
variables: {
|
|
61
|
+
METEOR_DISABLE_OPTIMISTIC_CACHING: "1"
|
|
62
|
+
},
|
|
63
|
+
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
|
+
artifacts: {
|
|
65
|
+
paths: [context.componentConfig.dir + "/__build_info.json", context.componentConfig.dir + "/dist"]
|
|
66
|
+
}
|
|
67
|
+
} : undefined,
|
|
68
|
+
dockerBuild: {
|
|
69
|
+
script: (0, docker_1.getDockerBuildDefaultScript)("ensureMeteorDockerfile"),
|
|
70
|
+
variables: {
|
|
71
|
+
METEOR_INSTALL_SCRIPTS: buildConfig.installScripts ? "true" : ""
|
|
72
|
+
}
|
|
68
73
|
}
|
|
69
|
-
})
|
|
70
|
-
return __spreadArray(__spreadArray(__spreadArray([], __read(appBuildJob ? [appBuildJob] : []), false), [(0, docker_1.createDockerBuildJobDefault)(context, {
|
|
71
|
-
script: ["ensureMeteorDockerfile"],
|
|
72
|
-
variables: {
|
|
73
|
-
METEOR_INSTALL_SCRIPTS: buildConfig.installScripts ? "true" : ""
|
|
74
|
-
},
|
|
75
|
-
needs: appBuildJob ? [constants_1.APP_BUILD_JOB_NAME] : []
|
|
76
|
-
})], false), __read((0, sbom_1.sbomDeactivated)(context) ? [] : [(0, sbom_2.createSbomBuildJob)(context)]), false);
|
|
74
|
+
});
|
|
77
75
|
};
|
|
78
76
|
exports.createMeteorBuildJobs = createMeteorBuildJobs;
|
|
@@ -32,21 +32,11 @@ var __read = this && this.__read || function (o, n) {
|
|
|
32
32
|
}
|
|
33
33
|
return ar;
|
|
34
34
|
};
|
|
35
|
-
var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
|
|
36
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
37
|
-
if (ar || !(i in from)) {
|
|
38
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
39
|
-
ar[i] = from[i];
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
43
|
-
};
|
|
44
35
|
exports.__esModule = true;
|
|
45
36
|
exports.createRailsBuildJobs = void 0;
|
|
46
|
-
var
|
|
37
|
+
var base_1 = require("../base");
|
|
47
38
|
var docker_1 = require("../docker");
|
|
48
|
-
var
|
|
49
|
-
var sbom_2 = require("../sbom");
|
|
39
|
+
var types_1 = require("../types");
|
|
50
40
|
var createRailsBuildJobs = function (context) {
|
|
51
41
|
var _a, _b, _c;
|
|
52
42
|
var buildConfig = context.componentConfig.build;
|
|
@@ -61,12 +51,15 @@ var createRailsBuildJobs = function (context) {
|
|
|
61
51
|
v = _b[1];
|
|
62
52
|
return "--env '".concat(k).concat(v ? "=".concat(v) : "", "'");
|
|
63
53
|
}).join(" ");
|
|
64
|
-
return
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
54
|
+
return (0, base_1.createBuildJobs)(context, {
|
|
55
|
+
appBuild: undefined,
|
|
56
|
+
dockerBuild: {
|
|
57
|
+
variables: __assign(__assign({}, context.environment.jobOnlyVars.build.envVars), context.componentConfig.build.extraVars),
|
|
58
|
+
// custom script
|
|
59
|
+
script: [docker_1.gitlabDockerLogin, "docker pull $DOCKER_CACHE_IMAGE || true", "wget --output-document=- https://github.com/buildpacks/pack/releases/download/v".concat(cnbConf === null || cnbConf === void 0 ? void 0 : cnbConf.packVersion, "/pack-v").concat(cnbConf === null || cnbConf === void 0 ? void 0 : cnbConf.packVersion, "-linux.tgz | tar -zx --directory /usr/local/bin pack"), "chmod +x /usr/local/bin/pack",
|
|
60
|
+
// replace private git ssh gem sources with https to make bundler with credentials via env var work
|
|
61
|
+
"sed --in-place 's|git@\\([^:]*\\):|https://\\1/|g' Gemfile Gemfile.lock", "pack build \"$DOCKER_IMAGE:$DOCKER_IMAGE_TAG\" --builder '".concat(cnbConf === null || cnbConf === void 0 ? void 0 : cnbConf.image, "' --publish --cache-image \"$DOCKER_CACHE_IMAGE\" ").concat(packEnvArgs, " ").concat((_c = (_b = cnbConf === null || cnbConf === void 0 ? void 0 : cnbConf.packExtraArgs) === null || _b === void 0 ? void 0 : _b.join(" ")) !== null && _c !== void 0 ? _c : "")]
|
|
62
|
+
}
|
|
63
|
+
});
|
|
71
64
|
};
|
|
72
65
|
exports.createRailsBuildJobs = createRailsBuildJobs;
|
package/dist/build/types.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import type { Artifacts, EnvVars, GitlabJobImage
|
|
1
|
+
import type { Artifacts, EnvVars, GitlabJobImage } from "../types";
|
|
2
|
+
import type { Services } from "../types/gitlab-ci-yml";
|
|
2
3
|
import type { CatladderJob } from "../types/jobs";
|
|
3
4
|
export declare type BuildConfigArtifactsReports = {
|
|
4
5
|
/**
|
|
@@ -137,9 +138,9 @@ export declare type BuildConfigCustom = Omit<BuildConfigBase, "lint" | "test" |
|
|
|
137
138
|
type: "custom";
|
|
138
139
|
jobImage: GitlabJobImage;
|
|
139
140
|
/**
|
|
140
|
-
* {@link
|
|
141
|
+
* {@link Services}s used in lint, test, audit, and build jobs.
|
|
141
142
|
*/
|
|
142
|
-
jobServices?:
|
|
143
|
+
jobServices?: Services;
|
|
143
144
|
docker: BuildConfigCustomDocker;
|
|
144
145
|
/**
|
|
145
146
|
* custom lint, disabled when not set
|