@catladder/pipeline 3.27.0 → 3.29.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/node/yarn.d.ts +2 -1
- package/dist/build/node/yarn.js +6 -2
- package/dist/build/types.d.ts +11 -0
- package/dist/constants.js +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/examples/__snapshots__/automatic-releases.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-health-check-defaults.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-health-check-only-startup.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-health-check.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-http2.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-memory-limit.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-nextjs.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-no-cpu-throttling.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-no-service.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-non-public.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-post-stop-job.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-service-custom-vpc-connector.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-service-custom-vpc.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-service-gen2.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-service-increase-timout.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-service-with-volumes.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-storybook.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-with-agents.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-with-gpu.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-with-ngnix.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-with-sql-legacy-jobs.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-with-sql-multiple-dbs.test.ts.snap +24 -12
- package/examples/__snapshots__/cloud-run-with-sql-reuse-db.test.ts.snap +16 -8
- package/examples/__snapshots__/cloud-run-with-sql.test.ts.snap +8 -4
- package/examples/__snapshots__/cloud-run-with-worker.test.ts.snap +8 -4
- package/examples/__snapshots__/custom-deploy.test.ts.snap +8 -4
- package/examples/__snapshots__/custom-verify-job.test.ts.snap +8 -4
- package/examples/__snapshots__/git-submodule.test.ts.snap +8 -4
- package/examples/__snapshots__/kubernetes-application-customization.test.ts.snap +8 -4
- package/examples/__snapshots__/kubernetes-with-cloud-sql.test.ts.snap +8 -4
- package/examples/__snapshots__/kubernetes-with-jobs.test.ts.snap +16 -8
- package/examples/__snapshots__/kubernetes-with-mongodb.test.ts.snap +8 -4
- package/examples/__snapshots__/local-dot-env.test.ts.snap +8 -4
- package/examples/__snapshots__/multiline-var.test.ts.snap +24 -12
- package/examples/__snapshots__/native-app.test.ts.snap +8 -4
- package/examples/__snapshots__/node-build-with-custom-image.test.ts.snap +8 -4
- package/examples/__snapshots__/node-build-with-docker-additions.test.ts.snap +8 -4
- package/examples/__snapshots__/override-secrets.test.ts.snap +8 -4
- package/examples/__snapshots__/referencing-other-vars.test.ts.snap +24 -12
- package/examples/__snapshots__/workspace-api-www-turbo-cache.test.ts.snap +16 -8
- package/examples/__snapshots__/workspace-api-www.test.ts.snap +8 -8
- package/examples/workspace-api-www.ts +3 -0
- package/package.json +1 -1
- package/src/build/node/yarn.ts +22 -3
- package/src/build/types.ts +11 -0
|
@@ -727,7 +727,8 @@ before_script:
|
|
|
727
727
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
728
728
|
COPY --chown=node:node $APP_DIR .
|
|
729
729
|
RUN yarn plugin import workspace-tools
|
|
730
|
-
RUN yarn workspaces focus --production
|
|
730
|
+
RUN yarn workspaces focus --production
|
|
731
|
+
RUN yarn rebuild"
|
|
731
732
|
- |-
|
|
732
733
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node api/package.json /app/api/package.json
|
|
733
734
|
COPY --chown=node:node api/yarn.lock /app/api/yarn.lock
|
|
@@ -954,7 +955,8 @@ before_script:
|
|
|
954
955
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
955
956
|
COPY --chown=node:node $APP_DIR .
|
|
956
957
|
RUN yarn plugin import workspace-tools
|
|
957
|
-
RUN yarn workspaces focus --production
|
|
958
|
+
RUN yarn workspaces focus --production
|
|
959
|
+
RUN yarn rebuild"
|
|
958
960
|
- |-
|
|
959
961
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node api/package.json /app/api/package.json
|
|
960
962
|
COPY --chown=node:node api/yarn.lock /app/api/yarn.lock
|
|
@@ -1189,7 +1191,8 @@ before_script:
|
|
|
1189
1191
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
1190
1192
|
COPY --chown=node:node $APP_DIR .
|
|
1191
1193
|
RUN yarn plugin import workspace-tools
|
|
1192
|
-
RUN yarn workspaces focus --production
|
|
1194
|
+
RUN yarn workspaces focus --production
|
|
1195
|
+
RUN yarn rebuild"
|
|
1193
1196
|
- |-
|
|
1194
1197
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node api/package.json /app/api/package.json
|
|
1195
1198
|
COPY --chown=node:node api/yarn.lock /app/api/yarn.lock
|
|
@@ -1409,7 +1412,8 @@ before_script:
|
|
|
1409
1412
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
1410
1413
|
COPY --chown=node:node $APP_DIR .
|
|
1411
1414
|
RUN yarn plugin import workspace-tools
|
|
1412
|
-
RUN yarn workspaces focus --production
|
|
1415
|
+
RUN yarn workspaces focus --production
|
|
1416
|
+
RUN yarn rebuild"
|
|
1413
1417
|
- |-
|
|
1414
1418
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node api/package.json /app/api/package.json
|
|
1415
1419
|
COPY --chown=node:node api/yarn.lock /app/api/yarn.lock
|
|
@@ -1629,7 +1633,8 @@ before_script:
|
|
|
1629
1633
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
1630
1634
|
COPY --chown=node:node $APP_DIR .
|
|
1631
1635
|
RUN yarn plugin import workspace-tools
|
|
1632
|
-
RUN yarn workspaces focus --production
|
|
1636
|
+
RUN yarn workspaces focus --production
|
|
1637
|
+
RUN yarn rebuild"
|
|
1633
1638
|
- |-
|
|
1634
1639
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node www/package.json /app/www/package.json
|
|
1635
1640
|
COPY --chown=node:node www/yarn.lock /app/www/yarn.lock
|
|
@@ -1859,7 +1864,8 @@ before_script:
|
|
|
1859
1864
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
1860
1865
|
COPY --chown=node:node $APP_DIR .
|
|
1861
1866
|
RUN yarn plugin import workspace-tools
|
|
1862
|
-
RUN yarn workspaces focus --production
|
|
1867
|
+
RUN yarn workspaces focus --production
|
|
1868
|
+
RUN yarn rebuild"
|
|
1863
1869
|
- |-
|
|
1864
1870
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node www/package.json /app/www/package.json
|
|
1865
1871
|
COPY --chown=node:node www/yarn.lock /app/www/yarn.lock
|
|
@@ -2097,7 +2103,8 @@ before_script:
|
|
|
2097
2103
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
2098
2104
|
COPY --chown=node:node $APP_DIR .
|
|
2099
2105
|
RUN yarn plugin import workspace-tools
|
|
2100
|
-
RUN yarn workspaces focus --production
|
|
2106
|
+
RUN yarn workspaces focus --production
|
|
2107
|
+
RUN yarn rebuild"
|
|
2101
2108
|
- |-
|
|
2102
2109
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node www/package.json /app/www/package.json
|
|
2103
2110
|
COPY --chown=node:node www/yarn.lock /app/www/yarn.lock
|
|
@@ -2320,7 +2327,8 @@ before_script:
|
|
|
2320
2327
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
2321
2328
|
COPY --chown=node:node $APP_DIR .
|
|
2322
2329
|
RUN yarn plugin import workspace-tools
|
|
2323
|
-
RUN yarn workspaces focus --production
|
|
2330
|
+
RUN yarn workspaces focus --production
|
|
2331
|
+
RUN yarn rebuild"
|
|
2324
2332
|
- |-
|
|
2325
2333
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node www/package.json /app/www/package.json
|
|
2326
2334
|
COPY --chown=node:node www/yarn.lock /app/www/yarn.lock
|
|
@@ -719,7 +719,7 @@ before_script:
|
|
|
719
719
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
720
720
|
COPY --chown=node:node $APP_DIR .
|
|
721
721
|
RUN yarn plugin import workspace-tools
|
|
722
|
-
RUN yarn workspaces focus --production
|
|
722
|
+
RUN yarn workspaces focus --production"
|
|
723
723
|
- |-
|
|
724
724
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node api/package.json /app/api/package.json
|
|
725
725
|
COPY --chown=node:node api/yarn.lock /app/api/yarn.lock
|
|
@@ -946,7 +946,7 @@ before_script:
|
|
|
946
946
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
947
947
|
COPY --chown=node:node $APP_DIR .
|
|
948
948
|
RUN yarn plugin import workspace-tools
|
|
949
|
-
RUN yarn workspaces focus --production
|
|
949
|
+
RUN yarn workspaces focus --production"
|
|
950
950
|
- |-
|
|
951
951
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node api/package.json /app/api/package.json
|
|
952
952
|
COPY --chown=node:node api/yarn.lock /app/api/yarn.lock
|
|
@@ -1181,7 +1181,7 @@ before_script:
|
|
|
1181
1181
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
1182
1182
|
COPY --chown=node:node $APP_DIR .
|
|
1183
1183
|
RUN yarn plugin import workspace-tools
|
|
1184
|
-
RUN yarn workspaces focus --production
|
|
1184
|
+
RUN yarn workspaces focus --production"
|
|
1185
1185
|
- |-
|
|
1186
1186
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node api/package.json /app/api/package.json
|
|
1187
1187
|
COPY --chown=node:node api/yarn.lock /app/api/yarn.lock
|
|
@@ -1401,7 +1401,7 @@ before_script:
|
|
|
1401
1401
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
1402
1402
|
COPY --chown=node:node $APP_DIR .
|
|
1403
1403
|
RUN yarn plugin import workspace-tools
|
|
1404
|
-
RUN yarn workspaces focus --production
|
|
1404
|
+
RUN yarn workspaces focus --production"
|
|
1405
1405
|
- |-
|
|
1406
1406
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node api/package.json /app/api/package.json
|
|
1407
1407
|
COPY --chown=node:node api/yarn.lock /app/api/yarn.lock
|
|
@@ -1621,7 +1621,7 @@ before_script:
|
|
|
1621
1621
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
1622
1622
|
COPY --chown=node:node $APP_DIR .
|
|
1623
1623
|
RUN yarn plugin import workspace-tools
|
|
1624
|
-
RUN yarn workspaces focus --production
|
|
1624
|
+
RUN yarn workspaces focus --production"
|
|
1625
1625
|
- |-
|
|
1626
1626
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node www/package.json /app/www/package.json
|
|
1627
1627
|
COPY --chown=node:node www/yarn.lock /app/www/yarn.lock
|
|
@@ -1851,7 +1851,7 @@ before_script:
|
|
|
1851
1851
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
1852
1852
|
COPY --chown=node:node $APP_DIR .
|
|
1853
1853
|
RUN yarn plugin import workspace-tools
|
|
1854
|
-
RUN yarn workspaces focus --production
|
|
1854
|
+
RUN yarn workspaces focus --production"
|
|
1855
1855
|
- |-
|
|
1856
1856
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node www/package.json /app/www/package.json
|
|
1857
1857
|
COPY --chown=node:node www/yarn.lock /app/www/yarn.lock
|
|
@@ -2089,7 +2089,7 @@ before_script:
|
|
|
2089
2089
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
2090
2090
|
COPY --chown=node:node $APP_DIR .
|
|
2091
2091
|
RUN yarn plugin import workspace-tools
|
|
2092
|
-
RUN yarn workspaces focus --production
|
|
2092
|
+
RUN yarn workspaces focus --production"
|
|
2093
2093
|
- |-
|
|
2094
2094
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node www/package.json /app/www/package.json
|
|
2095
2095
|
COPY --chown=node:node www/yarn.lock /app/www/yarn.lock
|
|
@@ -2312,7 +2312,7 @@ before_script:
|
|
|
2312
2312
|
export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
2313
2313
|
COPY --chown=node:node $APP_DIR .
|
|
2314
2314
|
RUN yarn plugin import workspace-tools
|
|
2315
|
-
RUN yarn workspaces focus --production
|
|
2315
|
+
RUN yarn workspaces focus --production"
|
|
2316
2316
|
- |-
|
|
2317
2317
|
export DOCKER_COPY_WORKSPACE_FILES="COPY --chown=node:node www/package.json /app/www/package.json
|
|
2318
2318
|
COPY --chown=node:node www/yarn.lock /app/www/yarn.lock
|
package/package.json
CHANGED
package/src/build/node/yarn.ts
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { BashExpression } from "../../bash/BashExpression";
|
|
2
|
+
import type { ComponentContextWithBuild } from "../../types";
|
|
2
3
|
import { type Context } from "../../types";
|
|
3
4
|
import { ensureArray } from "../../utils";
|
|
4
5
|
import { collapseableSection } from "../../utils/gitlab";
|
|
5
6
|
|
|
6
7
|
const YARN_INSTALL_CLASSIC = `yarn install --frozen-lockfile`;
|
|
7
8
|
|
|
9
|
+
const YARN_BERRY_PROD_INSTALL = `yarn workspaces focus --production`;
|
|
8
10
|
// FIXME: check why and when rebuild is needed
|
|
9
|
-
const YARN_BERRY_PROD_REBUILD = `yarn
|
|
11
|
+
const YARN_BERRY_PROD_REBUILD = `yarn rebuild`;
|
|
10
12
|
|
|
11
13
|
const getYarnInstallCommand = (context: Context) => {
|
|
12
14
|
if (context.packageManagerInfo.isClassic) {
|
|
@@ -54,7 +56,9 @@ export const getYarnInstall = (
|
|
|
54
56
|
|
|
55
57
|
const DOCKER_COPY_FILES = `COPY --chown=node:node $APP_DIR .`;
|
|
56
58
|
|
|
57
|
-
export const getDockerAppCopyAndBuildScript = (
|
|
59
|
+
export const getDockerAppCopyAndBuildScript = (
|
|
60
|
+
context: ComponentContextWithBuild,
|
|
61
|
+
) => {
|
|
58
62
|
if (context.packageManagerInfo.isClassic) {
|
|
59
63
|
return new BashExpression(
|
|
60
64
|
`
|
|
@@ -65,6 +69,20 @@ RUN ${YARN_INSTALL_CLASSIC} --production
|
|
|
65
69
|
);
|
|
66
70
|
}
|
|
67
71
|
|
|
72
|
+
const yarnRebuildEnabledDefault =
|
|
73
|
+
context.build.type === "fromWorkspace"
|
|
74
|
+
? (context.build.workspaceBuildConfig.dockerDefaults
|
|
75
|
+
?.yarnRebuildEnabled ?? true)
|
|
76
|
+
: true;
|
|
77
|
+
|
|
78
|
+
const yarnRebuildEnabled =
|
|
79
|
+
"docker" in context.build.config &&
|
|
80
|
+
context.build.config.docker &&
|
|
81
|
+
"yarnRebuildEnabled" in context.build.config.docker
|
|
82
|
+
? (context.build.config.docker.yarnRebuildEnabled ??
|
|
83
|
+
yarnRebuildEnabledDefault)
|
|
84
|
+
: yarnRebuildEnabledDefault;
|
|
85
|
+
|
|
68
86
|
// yarn >= 4 ships with build in plugins, see https://github.com/yarnpkg/berry/pull/4253
|
|
69
87
|
// trying to import those fail on this version
|
|
70
88
|
const doesNotShipWithBuiltInPlugins = ["2", "3"].some((v) =>
|
|
@@ -81,7 +99,8 @@ RUN ${YARN_INSTALL_CLASSIC} --production
|
|
|
81
99
|
ENV YARN_ENABLE_INLINE_BUILDS=1
|
|
82
100
|
${DOCKER_COPY_FILES}
|
|
83
101
|
${maybeAddWorkspaceToolsCommand}
|
|
84
|
-
RUN ${
|
|
102
|
+
RUN ${YARN_BERRY_PROD_INSTALL}
|
|
103
|
+
${yarnRebuildEnabled ? `RUN ${YARN_BERRY_PROD_REBUILD}` : ""}
|
|
85
104
|
|
|
86
105
|
`.trim(),
|
|
87
106
|
);
|
package/src/build/types.ts
CHANGED
|
@@ -204,6 +204,12 @@ type BuildConfigDockerWithAdditions = {
|
|
|
204
204
|
|
|
205
205
|
type BuildConfigDockerBuiltInNode = {
|
|
206
206
|
type: "node";
|
|
207
|
+
/**
|
|
208
|
+
* whether to run yarn rebuild after yarn install. Defaults to true.
|
|
209
|
+
*
|
|
210
|
+
* Future versions of catladder will default to false.
|
|
211
|
+
*/
|
|
212
|
+
yarnRebuildEnabled?: boolean;
|
|
207
213
|
} & BuildConfigDockerWithAdditions;
|
|
208
214
|
|
|
209
215
|
type BuildConfigDockerBuiltInMeteor = {
|
|
@@ -419,6 +425,11 @@ export type WorkspaceBuildConfigBase = {
|
|
|
419
425
|
export type WorkspaceBuildConfigNode = {
|
|
420
426
|
type: "node";
|
|
421
427
|
buildCommand?: string | string[];
|
|
428
|
+
/**
|
|
429
|
+
* set docker config defaults for the node build type.
|
|
430
|
+
* Currently not all options are supported.
|
|
431
|
+
*/
|
|
432
|
+
dockerDefaults?: Pick<BuildConfigDockerBuiltInNode, "yarnRebuildEnabled">;
|
|
422
433
|
} & WorkspaceBuildConfigBase;
|
|
423
434
|
|
|
424
435
|
export type WorkspaceBuildConfig = WorkspaceBuildConfigNode;
|