@catladder/pipeline 3.25.0 → 3.27.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.
Files changed (77) hide show
  1. package/dist/build/custom/testJob.js +1 -2
  2. package/dist/build/node/testJob.js +1 -2
  3. package/dist/build/node/yarn.js +3 -2
  4. package/dist/build/rails/test.js +1 -2
  5. package/dist/constants.js +1 -1
  6. package/dist/deploy/types/googleCloudRun.d.ts +1 -1
  7. package/dist/pipeline/agent/createAgentReviewJob.js +1 -0
  8. package/dist/pipeline/agent/shared.d.ts +1 -1
  9. package/dist/pipeline/agent/shared.js +0 -1
  10. package/dist/pipeline/createMainPipeline.js +1 -0
  11. package/dist/pipeline/gitlab/cache.d.ts +9 -0
  12. package/dist/pipeline/gitlab/cache.js +47 -0
  13. package/dist/pipeline/gitlab/createGitlabJobs.js +7 -7
  14. package/dist/tsconfig.tsbuildinfo +1 -1
  15. package/dist/types/jobs.d.ts +2 -3
  16. package/examples/__snapshots__/automatic-releases.test.ts.snap +141 -31
  17. package/examples/__snapshots__/cloud-run-health-check-defaults.test.ts.snap +141 -31
  18. package/examples/__snapshots__/cloud-run-health-check-only-startup.test.ts.snap +141 -31
  19. package/examples/__snapshots__/cloud-run-health-check.test.ts.snap +141 -31
  20. package/examples/__snapshots__/cloud-run-http2.test.ts.snap +141 -31
  21. package/examples/__snapshots__/cloud-run-memory-limit.test.ts.snap +141 -31
  22. package/examples/__snapshots__/cloud-run-meteor-with-worker.test.ts.snap +133 -27
  23. package/examples/__snapshots__/cloud-run-nextjs.test.ts.snap +144 -32
  24. package/examples/__snapshots__/cloud-run-no-cpu-throttling.test.ts.snap +141 -31
  25. package/examples/__snapshots__/cloud-run-no-service.test.ts.snap +141 -31
  26. package/examples/__snapshots__/cloud-run-non-public.test.ts.snap +141 -31
  27. package/examples/__snapshots__/cloud-run-post-stop-job.test.ts.snap +141 -31
  28. package/examples/__snapshots__/cloud-run-service-custom-vpc-connector.test.ts.snap +141 -31
  29. package/examples/__snapshots__/cloud-run-service-custom-vpc.test.ts.snap +141 -31
  30. package/examples/__snapshots__/cloud-run-service-gen2.test.ts.snap +141 -31
  31. package/examples/__snapshots__/cloud-run-service-increase-timout.test.ts.snap +141 -31
  32. package/examples/__snapshots__/cloud-run-service-with-volumes.test.ts.snap +141 -31
  33. package/examples/__snapshots__/cloud-run-storybook.test.ts.snap +21 -11
  34. package/examples/__snapshots__/cloud-run-with-agents.test.ts.snap +144 -32
  35. package/examples/__snapshots__/cloud-run-with-gpu.test.ts.snap +141 -31
  36. package/examples/__snapshots__/cloud-run-with-ngnix.test.ts.snap +141 -31
  37. package/examples/__snapshots__/cloud-run-with-sql-legacy-jobs.test.ts.snap +141 -31
  38. package/examples/__snapshots__/cloud-run-with-sql-multiple-dbs.test.ts.snap +423 -93
  39. package/examples/__snapshots__/cloud-run-with-sql-reuse-db.test.ts.snap +282 -62
  40. package/examples/__snapshots__/cloud-run-with-sql.test.ts.snap +141 -31
  41. package/examples/__snapshots__/cloud-run-with-worker.test.ts.snap +141 -31
  42. package/examples/__snapshots__/custom-build-job-with-tests.test.ts.snap +93 -22
  43. package/examples/__snapshots__/custom-deploy.test.ts.snap +141 -31
  44. package/examples/__snapshots__/custom-envs.test.ts.snap +328 -40
  45. package/examples/__snapshots__/custom-verify-job.test.ts.snap +144 -32
  46. package/examples/__snapshots__/git-submodule.test.ts.snap +141 -31
  47. package/examples/__snapshots__/kubernetes-application-customization.test.ts.snap +141 -31
  48. package/examples/__snapshots__/kubernetes-with-cloud-sql.test.ts.snap +141 -31
  49. package/examples/__snapshots__/kubernetes-with-jobs.test.ts.snap +282 -62
  50. package/examples/__snapshots__/kubernetes-with-mongodb.test.ts.snap +141 -31
  51. package/examples/__snapshots__/local-dot-env.test.ts.snap +141 -31
  52. package/examples/__snapshots__/meteor-kubernetes.test.ts.snap +133 -27
  53. package/examples/__snapshots__/modify-generated-files.test.ts.snap +124 -20
  54. package/examples/__snapshots__/modify-generated-yaml.test.ts.snap +124 -20
  55. package/examples/__snapshots__/multiline-var.test.ts.snap +423 -93
  56. package/examples/__snapshots__/native-app.test.ts.snap +277 -57
  57. package/examples/__snapshots__/node-build-with-custom-image.test.ts.snap +141 -31
  58. package/examples/__snapshots__/node-build-with-docker-additions.test.ts.snap +141 -31
  59. package/examples/__snapshots__/override-secrets.test.ts.snap +141 -31
  60. package/examples/__snapshots__/rails-k8s-with-worker-dockerfile.test.ts.snap +84 -22
  61. package/examples/__snapshots__/rails-k8s-with-worker.test.ts.snap +84 -22
  62. package/examples/__snapshots__/referencing-other-vars.test.ts.snap +423 -93
  63. package/examples/__snapshots__/wait-for-other-deploy.test.ts.snap +260 -52
  64. package/examples/__snapshots__/workspace-api-www-turbo-cache.test.ts.snap +161 -43
  65. package/examples/__snapshots__/workspace-api-www.test.ts.snap +161 -43
  66. package/package.json +1 -1
  67. package/src/build/custom/testJob.ts +0 -1
  68. package/src/build/node/testJob.ts +0 -1
  69. package/src/build/node/yarn.ts +3 -2
  70. package/src/build/rails/test.ts +0 -1
  71. package/src/deploy/types/googleCloudRun.ts +1 -1
  72. package/src/pipeline/agent/createAgentReviewJob.ts +1 -0
  73. package/src/pipeline/agent/shared.ts +2 -2
  74. package/src/pipeline/createMainPipeline.ts +1 -0
  75. package/src/pipeline/gitlab/cache.ts +49 -0
  76. package/src/pipeline/gitlab/createGitlabJobs.ts +7 -9
  77. package/src/types/jobs.ts +2 -3
@@ -103,7 +103,7 @@ before_script:
103
103
  local section_title="\${1}"
104
104
  echo -e "section_end:\`date +%s\`:\${section_title}\\r\\e[0K"
105
105
  }
106
- www 🛡 audit:
106
+ 'www 🛡 audit | dev ':
107
107
  stage: test
108
108
  image: path/to/docker/jobs-default:the-version
109
109
  variables:
@@ -120,9 +120,6 @@ www 🛡 audit:
120
120
  - when: never
121
121
  if: $CI_PIPELINE_SOURCE == "trigger"
122
122
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
123
- - when: never
124
- if: $CI_PIPELINE_SOURCE == "trigger"
125
- - if: $CI_MERGE_REQUEST_ID
126
123
  needs: []
127
124
  retry: &a1
128
125
  max: 2
@@ -131,7 +128,7 @@ www 🛡 audit:
131
128
  - stuck_or_timeout_failure
132
129
  interruptible: true
133
130
  allow_failure: true
134
- www 👮 lint:
131
+ 'www 👮 lint | dev ':
135
132
  stage: test
136
133
  image: path/to/docker/jobs-default:the-version
137
134
  variables:
@@ -152,7 +149,7 @@ www 👮 lint:
152
149
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
153
150
  - collapseable_section_end "nodeinstall"
154
151
  - collapseable_section_start "yarninstall" "Yarn install"
155
- - yarn install --immutable
152
+ - yarn install --immutable --inline-builds
156
153
  - collapseable_section_end "yarninstall"
157
154
  - yarn lint
158
155
  cache:
@@ -168,13 +165,10 @@ www 👮 lint:
168
165
  - when: never
169
166
  if: $CI_PIPELINE_SOURCE == "trigger"
170
167
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
171
- - when: never
172
- if: $CI_PIPELINE_SOURCE == "trigger"
173
- - if: $CI_MERGE_REQUEST_ID
174
168
  needs: []
175
169
  retry: *a1
176
170
  interruptible: true
177
- www 🧪 test:
171
+ 'www 🧪 test | dev ':
178
172
  stage: test
179
173
  image: path/to/docker/jobs-testing-chrome:the-version
180
174
  variables:
@@ -195,7 +189,7 @@ www 🧪 test:
195
189
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
196
190
  - collapseable_section_end "nodeinstall"
197
191
  - collapseable_section_start "yarninstall" "Yarn install"
198
- - yarn install --immutable
192
+ - yarn install --immutable --inline-builds
199
193
  - collapseable_section_end "yarninstall"
200
194
  - yarn test
201
195
  cache:
@@ -211,9 +205,6 @@ www 🧪 test:
211
205
  - when: never
212
206
  if: $CI_PIPELINE_SOURCE == "trigger"
213
207
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
214
- - when: never
215
- if: $CI_PIPELINE_SOURCE == "trigger"
216
- - if: $CI_MERGE_REQUEST_ID
217
208
  needs: []
218
209
  retry: *a1
219
210
  interruptible: true
@@ -270,7 +261,7 @@ www 🧪 test:
270
261
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
271
262
  - collapseable_section_end "nodeinstall"
272
263
  - collapseable_section_start "yarninstall" "Yarn install"
273
- - yarn install --immutable
264
+ - yarn install --immutable --inline-builds
274
265
  - collapseable_section_end "yarninstall"
275
266
  - yarn build
276
267
  cache:
@@ -325,7 +316,8 @@ www 🧪 test:
325
316
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/www"
326
317
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
327
318
  - |-
328
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
319
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
320
+ COPY --chown=node:node $APP_DIR .
329
321
  RUN yarn plugin import workspace-tools
330
322
  RUN yarn workspaces focus --production && yarn rebuild"
331
323
  - |-
@@ -478,17 +470,17 @@ www 🧪 test:
478
470
  - when: on_success
479
471
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
480
472
  needs:
481
- - job: www 👮 lint
473
+ - job: 'www 👮 lint | dev '
482
474
  artifacts: false
483
475
  - job: 'www 🔨 app | dev '
484
476
  artifacts: false
485
477
  - job: 'www 🔨 docker | dev '
486
478
  artifacts: false
487
- - job: www 🧪 test
479
+ - job: 'www 🧪 test | dev '
488
480
  artifacts: false
489
481
  - job: 'www 🧾 sbom | dev '
490
482
  artifacts: true
491
- - job: www 🛡 audit
483
+ - job: 'www 🛡 audit | dev '
492
484
  artifacts: false
493
485
  retry: *a1
494
486
  interruptible: true
@@ -582,6 +574,115 @@ www 🧪 test:
582
574
  artifacts: false
583
575
  retry: *a1
584
576
  interruptible: true
577
+ 'www 🛡 audit | review ':
578
+ stage: test
579
+ image: path/to/docker/jobs-default:the-version
580
+ variables:
581
+ KUBERNETES_CPU_REQUEST: '0.45'
582
+ KUBERNETES_MEMORY_REQUEST: 1Gi
583
+ KUBERNETES_MEMORY_LIMIT: 4Gi
584
+ script:
585
+ - collapseable_section_start "injectvars" "Injecting variables"
586
+ - export APP_PATH="www"
587
+ - collapseable_section_end "injectvars"
588
+ - cd www
589
+ - yarn npm audit --environment production
590
+ rules:
591
+ - when: never
592
+ if: $CI_PIPELINE_SOURCE == "trigger"
593
+ - if: $CI_MERGE_REQUEST_ID
594
+ needs: []
595
+ retry: *a1
596
+ interruptible: true
597
+ allow_failure: true
598
+ 'www 👮 lint | review ':
599
+ stage: test
600
+ image: path/to/docker/jobs-default:the-version
601
+ variables:
602
+ KUBERNETES_CPU_REQUEST: '0.45'
603
+ KUBERNETES_MEMORY_REQUEST: 1Gi
604
+ KUBERNETES_MEMORY_LIMIT: 4Gi
605
+ script:
606
+ - collapseable_section_start "injectvars" "Injecting variables"
607
+ - export APP_PATH="www"
608
+ - collapseable_section_end "injectvars"
609
+ - collapseable_section_start "nodeinstall" "Ensure node version"
610
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
611
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
612
+ - collapseable_section_end "nodeinstall"
613
+ - cd www
614
+ - collapseable_section_start "nodeinstall" "Ensure node version"
615
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
616
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
617
+ - collapseable_section_end "nodeinstall"
618
+ - collapseable_section_start "yarninstall" "Yarn install"
619
+ - yarn install --immutable --inline-builds
620
+ - collapseable_section_end "yarninstall"
621
+ - yarn lint
622
+ cache:
623
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
624
+ policy: pull-push
625
+ paths:
626
+ - www/.yarn
627
+ fallback_keys:
628
+ - www-yarn
629
+ - key: www-node-modules-mr$CI_MERGE_REQUEST_IID
630
+ policy: pull-push
631
+ paths:
632
+ - www/node_modules
633
+ fallback_keys:
634
+ - www-node-modules
635
+ rules:
636
+ - when: never
637
+ if: $CI_PIPELINE_SOURCE == "trigger"
638
+ - if: $CI_MERGE_REQUEST_ID
639
+ needs: []
640
+ retry: *a1
641
+ interruptible: true
642
+ 'www 🧪 test | review ':
643
+ stage: test
644
+ image: path/to/docker/jobs-testing-chrome:the-version
645
+ variables:
646
+ KUBERNETES_CPU_REQUEST: '0.45'
647
+ KUBERNETES_MEMORY_REQUEST: 1Gi
648
+ KUBERNETES_MEMORY_LIMIT: 4Gi
649
+ script:
650
+ - collapseable_section_start "injectvars" "Injecting variables"
651
+ - export APP_PATH="www"
652
+ - collapseable_section_end "injectvars"
653
+ - collapseable_section_start "nodeinstall" "Ensure node version"
654
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
655
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
656
+ - collapseable_section_end "nodeinstall"
657
+ - cd www
658
+ - collapseable_section_start "nodeinstall" "Ensure node version"
659
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
660
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
661
+ - collapseable_section_end "nodeinstall"
662
+ - collapseable_section_start "yarninstall" "Yarn install"
663
+ - yarn install --immutable --inline-builds
664
+ - collapseable_section_end "yarninstall"
665
+ - yarn test
666
+ cache:
667
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
668
+ policy: pull-push
669
+ paths:
670
+ - www/.yarn
671
+ fallback_keys:
672
+ - www-yarn
673
+ - key: www-node-modules-mr$CI_MERGE_REQUEST_IID
674
+ policy: pull-push
675
+ paths:
676
+ - www/node_modules
677
+ fallback_keys:
678
+ - www-node-modules
679
+ rules:
680
+ - when: never
681
+ if: $CI_PIPELINE_SOURCE == "trigger"
682
+ - if: $CI_MERGE_REQUEST_ID
683
+ needs: []
684
+ retry: *a1
685
+ interruptible: true
585
686
  'www 🔨 app | review ':
586
687
  stage: build
587
688
  image: path/to/docker/jobs-default:the-version
@@ -635,18 +736,22 @@ www 🧪 test:
635
736
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
636
737
  - collapseable_section_end "nodeinstall"
637
738
  - collapseable_section_start "yarninstall" "Yarn install"
638
- - yarn install --immutable
739
+ - yarn install --immutable --inline-builds
639
740
  - collapseable_section_end "yarninstall"
640
741
  - yarn build
641
742
  cache:
642
- - key: www-yarn
743
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
643
744
  policy: pull-push
644
745
  paths:
645
746
  - www/.yarn
646
- - key: www-node-modules
747
+ fallback_keys:
748
+ - www-yarn
749
+ - key: www-node-modules-mr$CI_MERGE_REQUEST_IID
647
750
  policy: pull-push
648
751
  paths:
649
752
  - www/node_modules
753
+ fallback_keys:
754
+ - www-node-modules
650
755
  artifacts:
651
756
  paths:
652
757
  - www/__build_info.json
@@ -690,7 +795,8 @@ www 🧪 test:
690
795
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/www"
691
796
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
692
797
  - |-
693
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
798
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
799
+ COPY --chown=node:node $APP_DIR .
694
800
  RUN yarn plugin import workspace-tools
695
801
  RUN yarn workspaces focus --production && yarn rebuild"
696
802
  - |-
@@ -713,10 +819,12 @@ www 🧪 test:
713
819
  - docker push $DOCKER_CACHE_IMAGE
714
820
  - collapseable_section_end "docker-push"
715
821
  cache:
716
- - key: www-yarn
822
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
717
823
  policy: pull
718
824
  paths:
719
825
  - www/.yarn
826
+ fallback_keys:
827
+ - www-yarn
720
828
  rules:
721
829
  - when: never
722
830
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -846,17 +954,17 @@ www 🧪 test:
846
954
  - when: on_success
847
955
  if: $CI_MERGE_REQUEST_ID
848
956
  needs:
849
- - job: www 👮 lint
957
+ - job: 'www 👮 lint | review '
850
958
  artifacts: false
851
959
  - job: 'www 🔨 app | review '
852
960
  artifacts: false
853
961
  - job: 'www 🔨 docker | review '
854
962
  artifacts: false
855
- - job: www 🧪 test
963
+ - job: 'www 🧪 test | review '
856
964
  artifacts: false
857
965
  - job: 'www 🧾 sbom | review '
858
966
  artifacts: true
859
- - job: www 🛡 audit
967
+ - job: 'www 🛡 audit | review '
860
968
  artifacts: false
861
969
  retry: *a1
862
970
  interruptible: true
@@ -925,12 +1033,14 @@ www 🧪 test:
925
1033
  - echo "custom job for env 'review'"
926
1034
  - CYPRESS_BASE_URL=$CI_ENVIRONMENT_URL yarn cypress:run:ci
927
1035
  cache:
928
- key: cypress
1036
+ key: cypress-mr$CI_MERGE_REQUEST_IID
929
1037
  policy: pull-push
930
1038
  paths:
931
1039
  - .yarn/cache
932
1040
  - node_modules/
933
1041
  - cache/cypress
1042
+ fallback_keys:
1043
+ - cypress
934
1044
  environment:
935
1045
  name: review/$CI_COMMIT_REF_NAME/www
936
1046
  action: access
@@ -1006,7 +1116,7 @@ www 🧪 test:
1006
1116
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1007
1117
  - collapseable_section_end "nodeinstall"
1008
1118
  - collapseable_section_start "yarninstall" "Yarn install"
1009
- - yarn install --immutable
1119
+ - yarn install --immutable --inline-builds
1010
1120
  - collapseable_section_end "yarninstall"
1011
1121
  - yarn build
1012
1122
  cache:
@@ -1061,7 +1171,8 @@ www 🧪 test:
1061
1171
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/www"
1062
1172
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1063
1173
  - |-
1064
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1174
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1175
+ COPY --chown=node:node $APP_DIR .
1065
1176
  RUN yarn plugin import workspace-tools
1066
1177
  RUN yarn workspaces focus --production && yarn rebuild"
1067
1178
  - |-
@@ -1364,7 +1475,7 @@ www 🧪 test:
1364
1475
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1365
1476
  - collapseable_section_end "nodeinstall"
1366
1477
  - collapseable_section_start "yarninstall" "Yarn install"
1367
- - yarn install --immutable
1478
+ - yarn install --immutable --inline-builds
1368
1479
  - collapseable_section_end "yarninstall"
1369
1480
  - yarn build
1370
1481
  cache:
@@ -1419,7 +1530,8 @@ www 🧪 test:
1419
1530
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/www"
1420
1531
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1421
1532
  - |-
1422
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1533
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1534
+ COPY --chown=node:node $APP_DIR .
1423
1535
  RUN yarn plugin import workspace-tools
1424
1536
  RUN yarn workspaces focus --production && yarn rebuild"
1425
1537
  - |-
@@ -104,7 +104,7 @@ before_script:
104
104
  local section_title="\${1}"
105
105
  echo -e "section_end:\`date +%s\`:\${section_title}\\r\\e[0K"
106
106
  }
107
- app 🛡 audit:
107
+ 'app 🛡 audit | dev ':
108
108
  stage: test
109
109
  image: path/to/docker/jobs-default:the-version
110
110
  variables:
@@ -121,9 +121,6 @@ app 🛡 audit:
121
121
  - when: never
122
122
  if: $CI_PIPELINE_SOURCE == "trigger"
123
123
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
124
- - when: never
125
- if: $CI_PIPELINE_SOURCE == "trigger"
126
- - if: $CI_MERGE_REQUEST_ID
127
124
  needs: []
128
125
  retry: &a1
129
126
  max: 2
@@ -132,7 +129,7 @@ app 🛡 audit:
132
129
  - stuck_or_timeout_failure
133
130
  interruptible: true
134
131
  allow_failure: true
135
- app 👮 lint:
132
+ 'app 👮 lint | dev ':
136
133
  stage: test
137
134
  image: path/to/docker/jobs-default:the-version
138
135
  variables:
@@ -153,7 +150,7 @@ app 👮 lint:
153
150
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
154
151
  - collapseable_section_end "nodeinstall"
155
152
  - collapseable_section_start "yarninstall" "Yarn install"
156
- - yarn install --immutable
153
+ - yarn install --immutable --inline-builds
157
154
  - collapseable_section_end "yarninstall"
158
155
  - yarn lint
159
156
  cache:
@@ -169,13 +166,10 @@ app 👮 lint:
169
166
  - when: never
170
167
  if: $CI_PIPELINE_SOURCE == "trigger"
171
168
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
172
- - when: never
173
- if: $CI_PIPELINE_SOURCE == "trigger"
174
- - if: $CI_MERGE_REQUEST_ID
175
169
  needs: []
176
170
  retry: *a1
177
171
  interruptible: true
178
- app 🧪 test:
172
+ 'app 🧪 test | dev ':
179
173
  stage: test
180
174
  image: path/to/docker/jobs-testing-chrome:the-version
181
175
  variables:
@@ -196,7 +190,7 @@ app 🧪 test:
196
190
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
197
191
  - collapseable_section_end "nodeinstall"
198
192
  - collapseable_section_start "yarninstall" "Yarn install"
199
- - yarn install --immutable
193
+ - yarn install --immutable --inline-builds
200
194
  - collapseable_section_end "yarninstall"
201
195
  - yarn test
202
196
  cache:
@@ -212,9 +206,6 @@ app 🧪 test:
212
206
  - when: never
213
207
  if: $CI_PIPELINE_SOURCE == "trigger"
214
208
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
215
- - when: never
216
- if: $CI_PIPELINE_SOURCE == "trigger"
217
- - if: $CI_MERGE_REQUEST_ID
218
209
  needs: []
219
210
  retry: *a1
220
211
  interruptible: true
@@ -271,7 +262,7 @@ app 🧪 test:
271
262
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
272
263
  - collapseable_section_end "nodeinstall"
273
264
  - collapseable_section_start "yarninstall" "Yarn install"
274
- - yarn install --immutable
265
+ - yarn install --immutable --inline-builds
275
266
  - collapseable_section_end "yarninstall"
276
267
  - yarn build
277
268
  cache:
@@ -326,7 +317,8 @@ app 🧪 test:
326
317
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/my-project-id/catladder-deploy/pan-test-app/caches/app"
327
318
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
328
319
  - |-
329
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
320
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
321
+ COPY --chown=node:node $APP_DIR .
330
322
  RUN yarn plugin import workspace-tools
331
323
  RUN yarn workspaces focus --production && yarn rebuild"
332
324
  - |-
@@ -479,17 +471,17 @@ app 🧪 test:
479
471
  - when: on_success
480
472
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
481
473
  needs:
482
- - job: app 👮 lint
474
+ - job: 'app 👮 lint | dev '
483
475
  artifacts: false
484
476
  - job: 'app 🔨 app | dev '
485
477
  artifacts: false
486
478
  - job: 'app 🔨 docker | dev '
487
479
  artifacts: false
488
- - job: app 🧪 test
480
+ - job: 'app 🧪 test | dev '
489
481
  artifacts: false
490
482
  - job: 'app 🧾 sbom | dev '
491
483
  artifacts: true
492
- - job: app 🛡 audit
484
+ - job: 'app 🛡 audit | dev '
493
485
  artifacts: false
494
486
  retry: *a1
495
487
  interruptible: true
@@ -528,6 +520,115 @@ app 🧪 test:
528
520
  retry: *a1
529
521
  interruptible: true
530
522
  allow_failure: true
523
+ 'app 🛡 audit | review ':
524
+ stage: test
525
+ image: path/to/docker/jobs-default:the-version
526
+ variables:
527
+ KUBERNETES_CPU_REQUEST: '0.45'
528
+ KUBERNETES_MEMORY_REQUEST: 1Gi
529
+ KUBERNETES_MEMORY_LIMIT: 4Gi
530
+ script:
531
+ - collapseable_section_start "injectvars" "Injecting variables"
532
+ - export APP_PATH="app"
533
+ - collapseable_section_end "injectvars"
534
+ - cd app
535
+ - yarn npm audit --environment production
536
+ rules:
537
+ - when: never
538
+ if: $CI_PIPELINE_SOURCE == "trigger"
539
+ - if: $CI_MERGE_REQUEST_ID
540
+ needs: []
541
+ retry: *a1
542
+ interruptible: true
543
+ allow_failure: true
544
+ 'app 👮 lint | review ':
545
+ stage: test
546
+ image: path/to/docker/jobs-default:the-version
547
+ variables:
548
+ KUBERNETES_CPU_REQUEST: '0.45'
549
+ KUBERNETES_MEMORY_REQUEST: 1Gi
550
+ KUBERNETES_MEMORY_LIMIT: 4Gi
551
+ script:
552
+ - collapseable_section_start "injectvars" "Injecting variables"
553
+ - export APP_PATH="app"
554
+ - collapseable_section_end "injectvars"
555
+ - collapseable_section_start "nodeinstall" "Ensure node version"
556
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
557
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
558
+ - collapseable_section_end "nodeinstall"
559
+ - cd app
560
+ - collapseable_section_start "nodeinstall" "Ensure node version"
561
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
562
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
563
+ - collapseable_section_end "nodeinstall"
564
+ - collapseable_section_start "yarninstall" "Yarn install"
565
+ - yarn install --immutable --inline-builds
566
+ - collapseable_section_end "yarninstall"
567
+ - yarn lint
568
+ cache:
569
+ - key: app-yarn-mr$CI_MERGE_REQUEST_IID
570
+ policy: pull-push
571
+ paths:
572
+ - app/.yarn
573
+ fallback_keys:
574
+ - app-yarn
575
+ - key: app-node-modules-mr$CI_MERGE_REQUEST_IID
576
+ policy: pull-push
577
+ paths:
578
+ - app/node_modules
579
+ fallback_keys:
580
+ - app-node-modules
581
+ rules:
582
+ - when: never
583
+ if: $CI_PIPELINE_SOURCE == "trigger"
584
+ - if: $CI_MERGE_REQUEST_ID
585
+ needs: []
586
+ retry: *a1
587
+ interruptible: true
588
+ 'app 🧪 test | review ':
589
+ stage: test
590
+ image: path/to/docker/jobs-testing-chrome:the-version
591
+ variables:
592
+ KUBERNETES_CPU_REQUEST: '0.45'
593
+ KUBERNETES_MEMORY_REQUEST: 1Gi
594
+ KUBERNETES_MEMORY_LIMIT: 4Gi
595
+ script:
596
+ - collapseable_section_start "injectvars" "Injecting variables"
597
+ - export APP_PATH="app"
598
+ - collapseable_section_end "injectvars"
599
+ - collapseable_section_start "nodeinstall" "Ensure node version"
600
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
601
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
602
+ - collapseable_section_end "nodeinstall"
603
+ - cd app
604
+ - collapseable_section_start "nodeinstall" "Ensure node version"
605
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
606
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
607
+ - collapseable_section_end "nodeinstall"
608
+ - collapseable_section_start "yarninstall" "Yarn install"
609
+ - yarn install --immutable --inline-builds
610
+ - collapseable_section_end "yarninstall"
611
+ - yarn test
612
+ cache:
613
+ - key: app-yarn-mr$CI_MERGE_REQUEST_IID
614
+ policy: pull-push
615
+ paths:
616
+ - app/.yarn
617
+ fallback_keys:
618
+ - app-yarn
619
+ - key: app-node-modules-mr$CI_MERGE_REQUEST_IID
620
+ policy: pull-push
621
+ paths:
622
+ - app/node_modules
623
+ fallback_keys:
624
+ - app-node-modules
625
+ rules:
626
+ - when: never
627
+ if: $CI_PIPELINE_SOURCE == "trigger"
628
+ - if: $CI_MERGE_REQUEST_ID
629
+ needs: []
630
+ retry: *a1
631
+ interruptible: true
531
632
  'app 🔨 app | review ':
532
633
  stage: build
533
634
  image: path/to/docker/jobs-default:the-version
@@ -581,18 +682,22 @@ app 🧪 test:
581
682
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
582
683
  - collapseable_section_end "nodeinstall"
583
684
  - collapseable_section_start "yarninstall" "Yarn install"
584
- - yarn install --immutable
685
+ - yarn install --immutable --inline-builds
585
686
  - collapseable_section_end "yarninstall"
586
687
  - yarn build
587
688
  cache:
588
- - key: app-yarn
689
+ - key: app-yarn-mr$CI_MERGE_REQUEST_IID
589
690
  policy: pull-push
590
691
  paths:
591
692
  - app/.yarn
592
- - key: app-node-modules
693
+ fallback_keys:
694
+ - app-yarn
695
+ - key: app-node-modules-mr$CI_MERGE_REQUEST_IID
593
696
  policy: pull-push
594
697
  paths:
595
698
  - app/node_modules
699
+ fallback_keys:
700
+ - app-node-modules
596
701
  artifacts:
597
702
  paths:
598
703
  - app/__build_info.json
@@ -636,7 +741,8 @@ app 🧪 test:
636
741
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/my-project-id/catladder-deploy/pan-test-app/caches/app"
637
742
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
638
743
  - |-
639
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
744
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
745
+ COPY --chown=node:node $APP_DIR .
640
746
  RUN yarn plugin import workspace-tools
641
747
  RUN yarn workspaces focus --production && yarn rebuild"
642
748
  - |-
@@ -659,10 +765,12 @@ app 🧪 test:
659
765
  - docker push $DOCKER_CACHE_IMAGE
660
766
  - collapseable_section_end "docker-push"
661
767
  cache:
662
- - key: app-yarn
768
+ - key: app-yarn-mr$CI_MERGE_REQUEST_IID
663
769
  policy: pull
664
770
  paths:
665
771
  - app/.yarn
772
+ fallback_keys:
773
+ - app-yarn
666
774
  rules:
667
775
  - when: never
668
776
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -792,17 +900,17 @@ app 🧪 test:
792
900
  - when: on_success
793
901
  if: $CI_MERGE_REQUEST_ID
794
902
  needs:
795
- - job: app 👮 lint
903
+ - job: 'app 👮 lint | review '
796
904
  artifacts: false
797
905
  - job: 'app 🔨 app | review '
798
906
  artifacts: false
799
907
  - job: 'app 🔨 docker | review '
800
908
  artifacts: false
801
- - job: app 🧪 test
909
+ - job: 'app 🧪 test | review '
802
910
  artifacts: false
803
911
  - job: 'app 🧾 sbom | review '
804
912
  artifacts: true
805
- - job: app 🛡 audit
913
+ - job: 'app 🛡 audit | review '
806
914
  artifacts: false
807
915
  retry: *a1
808
916
  interruptible: true
@@ -897,7 +1005,7 @@ app 🧪 test:
897
1005
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
898
1006
  - collapseable_section_end "nodeinstall"
899
1007
  - collapseable_section_start "yarninstall" "Yarn install"
900
- - yarn install --immutable
1008
+ - yarn install --immutable --inline-builds
901
1009
  - collapseable_section_end "yarninstall"
902
1010
  - yarn build
903
1011
  cache:
@@ -952,7 +1060,8 @@ app 🧪 test:
952
1060
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/my-project-id/catladder-deploy/pan-test-app/caches/app"
953
1061
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
954
1062
  - |-
955
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1063
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1064
+ COPY --chown=node:node $APP_DIR .
956
1065
  RUN yarn plugin import workspace-tools
957
1066
  RUN yarn workspaces focus --production && yarn rebuild"
958
1067
  - |-
@@ -1200,7 +1309,7 @@ app 🧪 test:
1200
1309
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1201
1310
  - collapseable_section_end "nodeinstall"
1202
1311
  - collapseable_section_start "yarninstall" "Yarn install"
1203
- - yarn install --immutable
1312
+ - yarn install --immutable --inline-builds
1204
1313
  - collapseable_section_end "yarninstall"
1205
1314
  - yarn build
1206
1315
  cache:
@@ -1255,7 +1364,8 @@ app 🧪 test:
1255
1364
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/my-project-id/catladder-deploy/pan-test-app/caches/app"
1256
1365
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1257
1366
  - |-
1258
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1367
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1368
+ COPY --chown=node:node $APP_DIR .
1259
1369
  RUN yarn plugin import workspace-tools
1260
1370
  RUN yarn workspaces focus --production && yarn rebuild"
1261
1371
  - |-