@catladder/cli
Version:
Panter cli tool for cloud CI/CD and DevOps
24 lines (23 loc) • 1.33 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createBuildJobDefinition = void 0;
const runner_1 = require("../../runner");
const utils_1 = require("../../utils");
const getAllCacheConfigsFromConfig_1 = require("../cache/getAllCacheConfigsFromConfig");
const constants_1 = require("../node/constants");
const createBuildJobDefinition = (context, buildConfig, customize = {}) => {
var _a, _b, _c, _d;
if (buildConfig.buildCommand === null || buildConfig.buildCommand === false) return undefined;
const defaultImage = (0, runner_1.getRunnerImage)("jobs-default");
return {
image: (_a = buildConfig.jobImage) !== null && _a !== void 0 ? _a : defaultImage,
runnerVariables: constants_1.NODE_RUNNER_BUILD_VARIABLES,
cache: [...((_b = customize.cache) !== null && _b !== void 0 ? _b : []), ...(0, getAllCacheConfigsFromConfig_1.getAllCacheConfigsFromConfig)(context, buildConfig)],
services: "jobServices" in buildConfig ? buildConfig.jobServices : undefined,
script: [...((_c = customize.prescript) !== null && _c !== void 0 ? _c : []), ...(0, utils_1.ensureArray)(buildConfig.buildCommand), ...((_d = customize.postscript) !== null && _d !== void 0 ? _d : [])],
jobTags: buildConfig.jobTags
};
};
exports.createBuildJobDefinition = createBuildJobDefinition;