UNPKG

@catladder/pipeline

Version:

Panter workflow for cloud CI/CD and DevOps

81 lines (80 loc) 3.23 kB
"use strict"; var __read = this && this.__read || function (o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error: error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; var __spreadArray = this && this.__spreadArray || function (to, from, pack) { if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { if (ar || !(i in from)) { if (!ar) ar = Array.prototype.slice.call(from, 0, i); ar[i] = from[i]; } } return to.concat(ar || Array.prototype.slice.call(from)); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.createNodeDockerJobDefinition = exports.createNodeBuildJobDefinition = exports.createNodeBuildJobs = void 0; var context_1 = require("../../types/context"); var base_1 = require("../base"); var createBuildJobDefinition_1 = require("../base/createBuildJobDefinition"); var docker_1 = require("../docker"); var cache_1 = require("./cache"); var yarn_1 = require("./yarn"); var createNodeBuildJobs = function (context) { if (context.type === "workspace") { return (0, base_1.createWorkspaceBuildJobs)(context, { appBuild: (0, exports.createNodeBuildJobDefinition)(context) }); } return (0, base_1.createComponentBuildJobs)(context, { appBuild: (0, context_1.componentContextIsStandaloneBuild)(context) ? (0, exports.createNodeBuildJobDefinition)(context) : undefined, dockerBuild: (0, exports.createNodeDockerJobDefinition)(context) }); }; exports.createNodeBuildJobs = createNodeBuildJobs; var createNodeBuildJobDefinition = function (context) { var buildConfig = context.build.config; var yarnInstall = (0, yarn_1.getYarnInstall)(context); return (0, createBuildJobDefinition_1.createBuildJobDefinition)(context, buildConfig, { prescript: yarnInstall, cache: (0, cache_1.getNodeCache)(context) }); }; exports.createNodeBuildJobDefinition = createNodeBuildJobDefinition; var createNodeDockerJobDefinition = function (context) { var _a, _b; // get the default docker built-in type based on the build type var dockerDefaultBuiltIn = context.build.buildType === "node-static" || context.build.buildType === "storybook" ? "nginx" : "node"; return { script: (0, docker_1.getDockerBuildScriptWithBuiltInDockerFile)(context, dockerDefaultBuiltIn), cache: __spreadArray([], __read((0, cache_1.getYarnCache)(context, "pull")), false), variables: { // only required for non static DOCKER_COPY_AND_INSTALL_APP: (0, yarn_1.getDockerAppCopyAndBuildScript)(context), DOCKER_COPY_WORKSPACE_FILES: (_b = (_a = context.packageManagerInfo) === null || _a === void 0 ? void 0 : _a.pathsToCopyInDocker.map(function (dir) { return "COPY --chown=node:node ".concat(dir, " /app/").concat(dir); })) === null || _b === void 0 ? void 0 : _b.join("\n") } }; }; exports.createNodeDockerJobDefinition = createNodeDockerJobDefinition;