@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
- app1 🛡 audit:
106
+ 'app1 🛡 audit | dev ':
107
107
  stage: test
108
108
  image: path/to/docker/jobs-default:the-version
109
109
  variables:
@@ -120,9 +120,6 @@ app1 🛡 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 @@ app1 🛡 audit:
131
128
  - stuck_or_timeout_failure
132
129
  interruptible: true
133
130
  allow_failure: true
134
- app1 👮 lint:
131
+ 'app1 👮 lint | dev ':
135
132
  stage: test
136
133
  image: path/to/docker/jobs-default:the-version
137
134
  variables:
@@ -152,7 +149,7 @@ app1 👮 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 @@ app1 👮 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
- app1 🧪 test:
171
+ 'app1 🧪 test | dev ':
178
172
  stage: test
179
173
  image: path/to/docker/jobs-testing-chrome:the-version
180
174
  variables:
@@ -195,7 +189,7 @@ app1 🧪 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 @@ app1 🧪 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
@@ -293,7 +284,7 @@ app1 🧪 test:
293
284
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
294
285
  - collapseable_section_end "nodeinstall"
295
286
  - collapseable_section_start "yarninstall" "Yarn install"
296
- - yarn install --immutable
287
+ - yarn install --immutable --inline-builds
297
288
  - collapseable_section_end "yarninstall"
298
289
  - yarn build
299
290
  cache:
@@ -348,7 +339,8 @@ app1 🧪 test:
348
339
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app1"
349
340
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
350
341
  - |-
351
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
342
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
343
+ COPY --chown=node:node $APP_DIR .
352
344
  RUN yarn plugin import workspace-tools
353
345
  RUN yarn workspaces focus --production && yarn rebuild"
354
346
  - |-
@@ -526,17 +518,17 @@ app1 🧪 test:
526
518
  - when: on_success
527
519
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
528
520
  needs:
529
- - job: app1 👮 lint
521
+ - job: 'app1 👮 lint | dev '
530
522
  artifacts: false
531
523
  - job: 'app1 🔨 app | dev '
532
524
  artifacts: false
533
525
  - job: 'app1 🔨 docker | dev '
534
526
  artifacts: false
535
- - job: app1 🧪 test
527
+ - job: 'app1 🧪 test | dev '
536
528
  artifacts: false
537
529
  - job: 'app1 🧾 sbom | dev '
538
530
  artifacts: true
539
- - job: app1 🛡 audit
531
+ - job: 'app1 🛡 audit | dev '
540
532
  artifacts: false
541
533
  retry: *a1
542
534
  interruptible: true
@@ -575,6 +567,115 @@ app1 🧪 test:
575
567
  retry: *a1
576
568
  interruptible: true
577
569
  allow_failure: true
570
+ 'app1 🛡 audit | review ':
571
+ stage: test
572
+ image: path/to/docker/jobs-default:the-version
573
+ variables:
574
+ KUBERNETES_CPU_REQUEST: '0.45'
575
+ KUBERNETES_MEMORY_REQUEST: 1Gi
576
+ KUBERNETES_MEMORY_LIMIT: 4Gi
577
+ script:
578
+ - collapseable_section_start "injectvars" "Injecting variables"
579
+ - export APP_PATH="app1"
580
+ - collapseable_section_end "injectvars"
581
+ - cd app1
582
+ - yarn npm audit --environment production
583
+ rules:
584
+ - when: never
585
+ if: $CI_PIPELINE_SOURCE == "trigger"
586
+ - if: $CI_MERGE_REQUEST_ID
587
+ needs: []
588
+ retry: *a1
589
+ interruptible: true
590
+ allow_failure: true
591
+ 'app1 👮 lint | review ':
592
+ stage: test
593
+ image: path/to/docker/jobs-default:the-version
594
+ variables:
595
+ KUBERNETES_CPU_REQUEST: '0.45'
596
+ KUBERNETES_MEMORY_REQUEST: 1Gi
597
+ KUBERNETES_MEMORY_LIMIT: 4Gi
598
+ script:
599
+ - collapseable_section_start "injectvars" "Injecting variables"
600
+ - export APP_PATH="app1"
601
+ - collapseable_section_end "injectvars"
602
+ - collapseable_section_start "nodeinstall" "Ensure node version"
603
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
604
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
605
+ - collapseable_section_end "nodeinstall"
606
+ - cd app1
607
+ - collapseable_section_start "nodeinstall" "Ensure node version"
608
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
609
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
610
+ - collapseable_section_end "nodeinstall"
611
+ - collapseable_section_start "yarninstall" "Yarn install"
612
+ - yarn install --immutable --inline-builds
613
+ - collapseable_section_end "yarninstall"
614
+ - yarn lint
615
+ cache:
616
+ - key: app1-yarn-mr$CI_MERGE_REQUEST_IID
617
+ policy: pull-push
618
+ paths:
619
+ - app1/.yarn
620
+ fallback_keys:
621
+ - app1-yarn
622
+ - key: app1-node-modules-mr$CI_MERGE_REQUEST_IID
623
+ policy: pull-push
624
+ paths:
625
+ - app1/node_modules
626
+ fallback_keys:
627
+ - app1-node-modules
628
+ rules:
629
+ - when: never
630
+ if: $CI_PIPELINE_SOURCE == "trigger"
631
+ - if: $CI_MERGE_REQUEST_ID
632
+ needs: []
633
+ retry: *a1
634
+ interruptible: true
635
+ 'app1 🧪 test | review ':
636
+ stage: test
637
+ image: path/to/docker/jobs-testing-chrome:the-version
638
+ variables:
639
+ KUBERNETES_CPU_REQUEST: '0.45'
640
+ KUBERNETES_MEMORY_REQUEST: 1Gi
641
+ KUBERNETES_MEMORY_LIMIT: 4Gi
642
+ script:
643
+ - collapseable_section_start "injectvars" "Injecting variables"
644
+ - export APP_PATH="app1"
645
+ - collapseable_section_end "injectvars"
646
+ - collapseable_section_start "nodeinstall" "Ensure node version"
647
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
648
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
649
+ - collapseable_section_end "nodeinstall"
650
+ - cd app1
651
+ - collapseable_section_start "nodeinstall" "Ensure node version"
652
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
653
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
654
+ - collapseable_section_end "nodeinstall"
655
+ - collapseable_section_start "yarninstall" "Yarn install"
656
+ - yarn install --immutable --inline-builds
657
+ - collapseable_section_end "yarninstall"
658
+ - yarn test
659
+ cache:
660
+ - key: app1-yarn-mr$CI_MERGE_REQUEST_IID
661
+ policy: pull-push
662
+ paths:
663
+ - app1/.yarn
664
+ fallback_keys:
665
+ - app1-yarn
666
+ - key: app1-node-modules-mr$CI_MERGE_REQUEST_IID
667
+ policy: pull-push
668
+ paths:
669
+ - app1/node_modules
670
+ fallback_keys:
671
+ - app1-node-modules
672
+ rules:
673
+ - when: never
674
+ if: $CI_PIPELINE_SOURCE == "trigger"
675
+ - if: $CI_MERGE_REQUEST_ID
676
+ needs: []
677
+ retry: *a1
678
+ interruptible: true
578
679
  'app1 🔨 app | review ':
579
680
  stage: build
580
681
  image: path/to/docker/jobs-default:the-version
@@ -651,18 +752,22 @@ app1 🧪 test:
651
752
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
652
753
  - collapseable_section_end "nodeinstall"
653
754
  - collapseable_section_start "yarninstall" "Yarn install"
654
- - yarn install --immutable
755
+ - yarn install --immutable --inline-builds
655
756
  - collapseable_section_end "yarninstall"
656
757
  - yarn build
657
758
  cache:
658
- - key: app1-yarn
759
+ - key: app1-yarn-mr$CI_MERGE_REQUEST_IID
659
760
  policy: pull-push
660
761
  paths:
661
762
  - app1/.yarn
662
- - key: app1-node-modules
763
+ fallback_keys:
764
+ - app1-yarn
765
+ - key: app1-node-modules-mr$CI_MERGE_REQUEST_IID
663
766
  policy: pull-push
664
767
  paths:
665
768
  - app1/node_modules
769
+ fallback_keys:
770
+ - app1-node-modules
666
771
  artifacts:
667
772
  paths:
668
773
  - app1/__build_info.json
@@ -706,7 +811,8 @@ app1 🧪 test:
706
811
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app1"
707
812
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
708
813
  - |-
709
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
814
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
815
+ COPY --chown=node:node $APP_DIR .
710
816
  RUN yarn plugin import workspace-tools
711
817
  RUN yarn workspaces focus --production && yarn rebuild"
712
818
  - |-
@@ -729,10 +835,12 @@ app1 🧪 test:
729
835
  - docker push $DOCKER_CACHE_IMAGE
730
836
  - collapseable_section_end "docker-push"
731
837
  cache:
732
- - key: app1-yarn
838
+ - key: app1-yarn-mr$CI_MERGE_REQUEST_IID
733
839
  policy: pull
734
840
  paths:
735
841
  - app1/.yarn
842
+ fallback_keys:
843
+ - app1-yarn
736
844
  rules:
737
845
  - when: never
738
846
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -887,17 +995,17 @@ app1 🧪 test:
887
995
  - when: on_success
888
996
  if: $CI_MERGE_REQUEST_ID
889
997
  needs:
890
- - job: app1 👮 lint
998
+ - job: 'app1 👮 lint | review '
891
999
  artifacts: false
892
1000
  - job: 'app1 🔨 app | review '
893
1001
  artifacts: false
894
1002
  - job: 'app1 🔨 docker | review '
895
1003
  artifacts: false
896
- - job: app1 🧪 test
1004
+ - job: 'app1 🧪 test | review '
897
1005
  artifacts: false
898
1006
  - job: 'app1 🧾 sbom | review '
899
1007
  artifacts: true
900
- - job: app1 🛡 audit
1008
+ - job: 'app1 🛡 audit | review '
901
1009
  artifacts: false
902
1010
  retry: *a1
903
1011
  interruptible: true
@@ -1015,7 +1123,7 @@ app1 🧪 test:
1015
1123
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1016
1124
  - collapseable_section_end "nodeinstall"
1017
1125
  - collapseable_section_start "yarninstall" "Yarn install"
1018
- - yarn install --immutable
1126
+ - yarn install --immutable --inline-builds
1019
1127
  - collapseable_section_end "yarninstall"
1020
1128
  - yarn build
1021
1129
  cache:
@@ -1070,7 +1178,8 @@ app1 🧪 test:
1070
1178
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app1"
1071
1179
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1072
1180
  - |-
1073
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1181
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1182
+ COPY --chown=node:node $APP_DIR .
1074
1183
  RUN yarn plugin import workspace-tools
1075
1184
  RUN yarn workspaces focus --production && yarn rebuild"
1076
1185
  - |-
@@ -1366,7 +1475,7 @@ app1 🧪 test:
1366
1475
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1367
1476
  - collapseable_section_end "nodeinstall"
1368
1477
  - collapseable_section_start "yarninstall" "Yarn install"
1369
- - yarn install --immutable
1478
+ - yarn install --immutable --inline-builds
1370
1479
  - collapseable_section_end "yarninstall"
1371
1480
  - yarn build
1372
1481
  cache:
@@ -1421,7 +1530,8 @@ app1 🧪 test:
1421
1530
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app1"
1422
1531
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1423
1532
  - |-
1424
- 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 .
1425
1535
  RUN yarn plugin import workspace-tools
1426
1536
  RUN yarn workspaces focus --production && yarn rebuild"
1427
1537
  - |-
@@ -1641,7 +1751,7 @@ app1 🧪 test:
1641
1751
  retry: *a1
1642
1752
  interruptible: true
1643
1753
  allow_failure: true
1644
- app2 🛡 audit:
1754
+ 'app2 🛡 audit | dev ':
1645
1755
  stage: test
1646
1756
  image: path/to/docker/jobs-default:the-version
1647
1757
  variables:
@@ -1658,14 +1768,11 @@ app2 🛡 audit:
1658
1768
  - when: never
1659
1769
  if: $CI_PIPELINE_SOURCE == "trigger"
1660
1770
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1661
- - when: never
1662
- if: $CI_PIPELINE_SOURCE == "trigger"
1663
- - if: $CI_MERGE_REQUEST_ID
1664
1771
  needs: []
1665
1772
  retry: *a1
1666
1773
  interruptible: true
1667
1774
  allow_failure: true
1668
- app2 👮 lint:
1775
+ 'app2 👮 lint | dev ':
1669
1776
  stage: test
1670
1777
  image: path/to/docker/jobs-default:the-version
1671
1778
  variables:
@@ -1686,7 +1793,7 @@ app2 👮 lint:
1686
1793
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1687
1794
  - collapseable_section_end "nodeinstall"
1688
1795
  - collapseable_section_start "yarninstall" "Yarn install"
1689
- - yarn install --immutable
1796
+ - yarn install --immutable --inline-builds
1690
1797
  - collapseable_section_end "yarninstall"
1691
1798
  - yarn lint
1692
1799
  cache:
@@ -1702,13 +1809,10 @@ app2 👮 lint:
1702
1809
  - when: never
1703
1810
  if: $CI_PIPELINE_SOURCE == "trigger"
1704
1811
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1705
- - when: never
1706
- if: $CI_PIPELINE_SOURCE == "trigger"
1707
- - if: $CI_MERGE_REQUEST_ID
1708
1812
  needs: []
1709
1813
  retry: *a1
1710
1814
  interruptible: true
1711
- app2 🧪 test:
1815
+ 'app2 🧪 test | dev ':
1712
1816
  stage: test
1713
1817
  image: path/to/docker/jobs-testing-chrome:the-version
1714
1818
  variables:
@@ -1729,7 +1833,7 @@ app2 🧪 test:
1729
1833
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1730
1834
  - collapseable_section_end "nodeinstall"
1731
1835
  - collapseable_section_start "yarninstall" "Yarn install"
1732
- - yarn install --immutable
1836
+ - yarn install --immutable --inline-builds
1733
1837
  - collapseable_section_end "yarninstall"
1734
1838
  - yarn test
1735
1839
  cache:
@@ -1745,9 +1849,6 @@ app2 🧪 test:
1745
1849
  - when: never
1746
1850
  if: $CI_PIPELINE_SOURCE == "trigger"
1747
1851
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1748
- - when: never
1749
- if: $CI_PIPELINE_SOURCE == "trigger"
1750
- - if: $CI_MERGE_REQUEST_ID
1751
1852
  needs: []
1752
1853
  retry: *a1
1753
1854
  interruptible: true
@@ -1837,7 +1938,7 @@ app2 🧪 test:
1837
1938
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1838
1939
  - collapseable_section_end "nodeinstall"
1839
1940
  - collapseable_section_start "yarninstall" "Yarn install"
1840
- - yarn install --immutable
1941
+ - yarn install --immutable --inline-builds
1841
1942
  - collapseable_section_end "yarninstall"
1842
1943
  - yarn build
1843
1944
  cache:
@@ -1892,7 +1993,8 @@ app2 🧪 test:
1892
1993
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app2"
1893
1994
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1894
1995
  - |-
1895
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1996
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1997
+ COPY --chown=node:node $APP_DIR .
1896
1998
  RUN yarn plugin import workspace-tools
1897
1999
  RUN yarn workspaces focus --production && yarn rebuild"
1898
2000
  - |-
@@ -2080,17 +2182,17 @@ app2 🧪 test:
2080
2182
  - when: on_success
2081
2183
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
2082
2184
  needs:
2083
- - job: app2 👮 lint
2185
+ - job: 'app2 👮 lint | dev '
2084
2186
  artifacts: false
2085
2187
  - job: 'app2 🔨 app | dev '
2086
2188
  artifacts: false
2087
2189
  - job: 'app2 🔨 docker | dev '
2088
2190
  artifacts: false
2089
- - job: app2 🧪 test
2191
+ - job: 'app2 🧪 test | dev '
2090
2192
  artifacts: false
2091
2193
  - job: 'app2 🧾 sbom | dev '
2092
2194
  artifacts: true
2093
- - job: app2 🛡 audit
2195
+ - job: 'app2 🛡 audit | dev '
2094
2196
  artifacts: false
2095
2197
  retry: *a1
2096
2198
  interruptible: true
@@ -2129,6 +2231,115 @@ app2 🧪 test:
2129
2231
  retry: *a1
2130
2232
  interruptible: true
2131
2233
  allow_failure: true
2234
+ 'app2 🛡 audit | review ':
2235
+ stage: test
2236
+ image: path/to/docker/jobs-default:the-version
2237
+ variables:
2238
+ KUBERNETES_CPU_REQUEST: '0.45'
2239
+ KUBERNETES_MEMORY_REQUEST: 1Gi
2240
+ KUBERNETES_MEMORY_LIMIT: 4Gi
2241
+ script:
2242
+ - collapseable_section_start "injectvars" "Injecting variables"
2243
+ - export APP_PATH="app2"
2244
+ - collapseable_section_end "injectvars"
2245
+ - cd app2
2246
+ - yarn npm audit --environment production
2247
+ rules:
2248
+ - when: never
2249
+ if: $CI_PIPELINE_SOURCE == "trigger"
2250
+ - if: $CI_MERGE_REQUEST_ID
2251
+ needs: []
2252
+ retry: *a1
2253
+ interruptible: true
2254
+ allow_failure: true
2255
+ 'app2 👮 lint | review ':
2256
+ stage: test
2257
+ image: path/to/docker/jobs-default:the-version
2258
+ variables:
2259
+ KUBERNETES_CPU_REQUEST: '0.45'
2260
+ KUBERNETES_MEMORY_REQUEST: 1Gi
2261
+ KUBERNETES_MEMORY_LIMIT: 4Gi
2262
+ script:
2263
+ - collapseable_section_start "injectvars" "Injecting variables"
2264
+ - export APP_PATH="app2"
2265
+ - collapseable_section_end "injectvars"
2266
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2267
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2268
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2269
+ - collapseable_section_end "nodeinstall"
2270
+ - cd app2
2271
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2272
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2273
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2274
+ - collapseable_section_end "nodeinstall"
2275
+ - collapseable_section_start "yarninstall" "Yarn install"
2276
+ - yarn install --immutable --inline-builds
2277
+ - collapseable_section_end "yarninstall"
2278
+ - yarn lint
2279
+ cache:
2280
+ - key: app2-yarn-mr$CI_MERGE_REQUEST_IID
2281
+ policy: pull-push
2282
+ paths:
2283
+ - app2/.yarn
2284
+ fallback_keys:
2285
+ - app2-yarn
2286
+ - key: app2-node-modules-mr$CI_MERGE_REQUEST_IID
2287
+ policy: pull-push
2288
+ paths:
2289
+ - app2/node_modules
2290
+ fallback_keys:
2291
+ - app2-node-modules
2292
+ rules:
2293
+ - when: never
2294
+ if: $CI_PIPELINE_SOURCE == "trigger"
2295
+ - if: $CI_MERGE_REQUEST_ID
2296
+ needs: []
2297
+ retry: *a1
2298
+ interruptible: true
2299
+ 'app2 🧪 test | review ':
2300
+ stage: test
2301
+ image: path/to/docker/jobs-testing-chrome:the-version
2302
+ variables:
2303
+ KUBERNETES_CPU_REQUEST: '0.45'
2304
+ KUBERNETES_MEMORY_REQUEST: 1Gi
2305
+ KUBERNETES_MEMORY_LIMIT: 4Gi
2306
+ script:
2307
+ - collapseable_section_start "injectvars" "Injecting variables"
2308
+ - export APP_PATH="app2"
2309
+ - collapseable_section_end "injectvars"
2310
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2311
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2312
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2313
+ - collapseable_section_end "nodeinstall"
2314
+ - cd app2
2315
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2316
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2317
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2318
+ - collapseable_section_end "nodeinstall"
2319
+ - collapseable_section_start "yarninstall" "Yarn install"
2320
+ - yarn install --immutable --inline-builds
2321
+ - collapseable_section_end "yarninstall"
2322
+ - yarn test
2323
+ cache:
2324
+ - key: app2-yarn-mr$CI_MERGE_REQUEST_IID
2325
+ policy: pull-push
2326
+ paths:
2327
+ - app2/.yarn
2328
+ fallback_keys:
2329
+ - app2-yarn
2330
+ - key: app2-node-modules-mr$CI_MERGE_REQUEST_IID
2331
+ policy: pull-push
2332
+ paths:
2333
+ - app2/node_modules
2334
+ fallback_keys:
2335
+ - app2-node-modules
2336
+ rules:
2337
+ - when: never
2338
+ if: $CI_PIPELINE_SOURCE == "trigger"
2339
+ - if: $CI_MERGE_REQUEST_ID
2340
+ needs: []
2341
+ retry: *a1
2342
+ interruptible: true
2132
2343
  'app2 🔨 app | review ':
2133
2344
  stage: build
2134
2345
  image: path/to/docker/jobs-default:the-version
@@ -2215,18 +2426,22 @@ app2 🧪 test:
2215
2426
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2216
2427
  - collapseable_section_end "nodeinstall"
2217
2428
  - collapseable_section_start "yarninstall" "Yarn install"
2218
- - yarn install --immutable
2429
+ - yarn install --immutable --inline-builds
2219
2430
  - collapseable_section_end "yarninstall"
2220
2431
  - yarn build
2221
2432
  cache:
2222
- - key: app2-yarn
2433
+ - key: app2-yarn-mr$CI_MERGE_REQUEST_IID
2223
2434
  policy: pull-push
2224
2435
  paths:
2225
2436
  - app2/.yarn
2226
- - key: app2-node-modules
2437
+ fallback_keys:
2438
+ - app2-yarn
2439
+ - key: app2-node-modules-mr$CI_MERGE_REQUEST_IID
2227
2440
  policy: pull-push
2228
2441
  paths:
2229
2442
  - app2/node_modules
2443
+ fallback_keys:
2444
+ - app2-node-modules
2230
2445
  artifacts:
2231
2446
  paths:
2232
2447
  - app2/__build_info.json
@@ -2270,7 +2485,8 @@ app2 🧪 test:
2270
2485
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app2"
2271
2486
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
2272
2487
  - |-
2273
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
2488
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
2489
+ COPY --chown=node:node $APP_DIR .
2274
2490
  RUN yarn plugin import workspace-tools
2275
2491
  RUN yarn workspaces focus --production && yarn rebuild"
2276
2492
  - |-
@@ -2293,10 +2509,12 @@ app2 🧪 test:
2293
2509
  - docker push $DOCKER_CACHE_IMAGE
2294
2510
  - collapseable_section_end "docker-push"
2295
2511
  cache:
2296
- - key: app2-yarn
2512
+ - key: app2-yarn-mr$CI_MERGE_REQUEST_IID
2297
2513
  policy: pull
2298
2514
  paths:
2299
2515
  - app2/.yarn
2516
+ fallback_keys:
2517
+ - app2-yarn
2300
2518
  rules:
2301
2519
  - when: never
2302
2520
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -2461,17 +2679,17 @@ app2 🧪 test:
2461
2679
  - when: on_success
2462
2680
  if: $CI_MERGE_REQUEST_ID
2463
2681
  needs:
2464
- - job: app2 👮 lint
2682
+ - job: 'app2 👮 lint | review '
2465
2683
  artifacts: false
2466
2684
  - job: 'app2 🔨 app | review '
2467
2685
  artifacts: false
2468
2686
  - job: 'app2 🔨 docker | review '
2469
2687
  artifacts: false
2470
- - job: app2 🧪 test
2688
+ - job: 'app2 🧪 test | review '
2471
2689
  artifacts: false
2472
2690
  - job: 'app2 🧾 sbom | review '
2473
2691
  artifacts: true
2474
- - job: app2 🛡 audit
2692
+ - job: 'app2 🛡 audit | review '
2475
2693
  artifacts: false
2476
2694
  retry: *a1
2477
2695
  interruptible: true
@@ -2599,7 +2817,7 @@ app2 🧪 test:
2599
2817
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2600
2818
  - collapseable_section_end "nodeinstall"
2601
2819
  - collapseable_section_start "yarninstall" "Yarn install"
2602
- - yarn install --immutable
2820
+ - yarn install --immutable --inline-builds
2603
2821
  - collapseable_section_end "yarninstall"
2604
2822
  - yarn build
2605
2823
  cache:
@@ -2654,7 +2872,8 @@ app2 🧪 test:
2654
2872
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app2"
2655
2873
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
2656
2874
  - |-
2657
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
2875
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
2876
+ COPY --chown=node:node $APP_DIR .
2658
2877
  RUN yarn plugin import workspace-tools
2659
2878
  RUN yarn workspaces focus --production && yarn rebuild"
2660
2879
  - |-
@@ -2970,7 +3189,7 @@ app2 🧪 test:
2970
3189
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2971
3190
  - collapseable_section_end "nodeinstall"
2972
3191
  - collapseable_section_start "yarninstall" "Yarn install"
2973
- - yarn install --immutable
3192
+ - yarn install --immutable --inline-builds
2974
3193
  - collapseable_section_end "yarninstall"
2975
3194
  - yarn build
2976
3195
  cache:
@@ -3025,7 +3244,8 @@ app2 🧪 test:
3025
3244
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app2"
3026
3245
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
3027
3246
  - |-
3028
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
3247
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
3248
+ COPY --chown=node:node $APP_DIR .
3029
3249
  RUN yarn plugin import workspace-tools
3030
3250
  RUN yarn workspaces focus --production && yarn rebuild"
3031
3251
  - |-
@@ -3255,7 +3475,7 @@ app2 🧪 test:
3255
3475
  retry: *a1
3256
3476
  interruptible: true
3257
3477
  allow_failure: true
3258
- kube 🛡 audit:
3478
+ 'kube 🛡 audit | dev ':
3259
3479
  stage: test
3260
3480
  image: path/to/docker/jobs-default:the-version
3261
3481
  variables:
@@ -3272,14 +3492,11 @@ kube 🛡 audit:
3272
3492
  - when: never
3273
3493
  if: $CI_PIPELINE_SOURCE == "trigger"
3274
3494
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3275
- - when: never
3276
- if: $CI_PIPELINE_SOURCE == "trigger"
3277
- - if: $CI_MERGE_REQUEST_ID
3278
3495
  needs: []
3279
3496
  retry: *a1
3280
3497
  interruptible: true
3281
3498
  allow_failure: true
3282
- kube 👮 lint:
3499
+ 'kube 👮 lint | dev ':
3283
3500
  stage: test
3284
3501
  image: path/to/docker/jobs-default:the-version
3285
3502
  variables:
@@ -3300,7 +3517,7 @@ kube 👮 lint:
3300
3517
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3301
3518
  - collapseable_section_end "nodeinstall"
3302
3519
  - collapseable_section_start "yarninstall" "Yarn install"
3303
- - yarn install --immutable
3520
+ - yarn install --immutable --inline-builds
3304
3521
  - collapseable_section_end "yarninstall"
3305
3522
  - yarn lint
3306
3523
  cache:
@@ -3316,13 +3533,10 @@ kube 👮 lint:
3316
3533
  - when: never
3317
3534
  if: $CI_PIPELINE_SOURCE == "trigger"
3318
3535
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3319
- - when: never
3320
- if: $CI_PIPELINE_SOURCE == "trigger"
3321
- - if: $CI_MERGE_REQUEST_ID
3322
3536
  needs: []
3323
3537
  retry: *a1
3324
3538
  interruptible: true
3325
- kube 🧪 test:
3539
+ 'kube 🧪 test | dev ':
3326
3540
  stage: test
3327
3541
  image: path/to/docker/jobs-testing-chrome:the-version
3328
3542
  variables:
@@ -3343,7 +3557,7 @@ kube 🧪 test:
3343
3557
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3344
3558
  - collapseable_section_end "nodeinstall"
3345
3559
  - collapseable_section_start "yarninstall" "Yarn install"
3346
- - yarn install --immutable
3560
+ - yarn install --immutable --inline-builds
3347
3561
  - collapseable_section_end "yarninstall"
3348
3562
  - yarn test
3349
3563
  cache:
@@ -3359,9 +3573,6 @@ kube 🧪 test:
3359
3573
  - when: never
3360
3574
  if: $CI_PIPELINE_SOURCE == "trigger"
3361
3575
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3362
- - when: never
3363
- if: $CI_PIPELINE_SOURCE == "trigger"
3364
- - if: $CI_MERGE_REQUEST_ID
3365
3576
  needs: []
3366
3577
  retry: *a1
3367
3578
  interruptible: true
@@ -3486,7 +3697,7 @@ kube 🧪 test:
3486
3697
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3487
3698
  - collapseable_section_end "nodeinstall"
3488
3699
  - collapseable_section_start "yarninstall" "Yarn install"
3489
- - yarn install --immutable
3700
+ - yarn install --immutable --inline-builds
3490
3701
  - collapseable_section_end "yarninstall"
3491
3702
  - yarn build
3492
3703
  cache:
@@ -3542,7 +3753,8 @@ kube 🧪 test:
3542
3753
  - export DOCKER_IMAGE="$CI_REGISTRY_IMAGE/$DOCKER_IMAGE_NAME"
3543
3754
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
3544
3755
  - |-
3545
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
3756
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
3757
+ COPY --chown=node:node $APP_DIR .
3546
3758
  RUN yarn plugin import workspace-tools
3547
3759
  RUN yarn workspaces focus --production && yarn rebuild"
3548
3760
  - |-
@@ -3782,17 +3994,17 @@ kube 🧪 test:
3782
3994
  - when: on_success
3783
3995
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3784
3996
  needs:
3785
- - job: kube 👮 lint
3997
+ - job: 'kube 👮 lint | dev '
3786
3998
  artifacts: false
3787
3999
  - job: 'kube 🔨 app | dev '
3788
4000
  artifacts: false
3789
4001
  - job: 'kube 🔨 docker | dev '
3790
4002
  artifacts: false
3791
- - job: kube 🧪 test
4003
+ - job: 'kube 🧪 test | dev '
3792
4004
  artifacts: false
3793
4005
  - job: 'kube 🧾 sbom | dev '
3794
4006
  artifacts: true
3795
- - job: kube 🛡 audit
4007
+ - job: 'kube 🛡 audit | dev '
3796
4008
  artifacts: false
3797
4009
  retry: *a1
3798
4010
  interruptible: true
@@ -3969,6 +4181,115 @@ kube 🧪 test:
3969
4181
  retry: *a1
3970
4182
  interruptible: true
3971
4183
  allow_failure: true
4184
+ 'kube 🛡 audit | review ':
4185
+ stage: test
4186
+ image: path/to/docker/jobs-default:the-version
4187
+ variables:
4188
+ KUBERNETES_CPU_REQUEST: '0.45'
4189
+ KUBERNETES_MEMORY_REQUEST: 1Gi
4190
+ KUBERNETES_MEMORY_LIMIT: 4Gi
4191
+ script:
4192
+ - collapseable_section_start "injectvars" "Injecting variables"
4193
+ - export APP_PATH="kube"
4194
+ - collapseable_section_end "injectvars"
4195
+ - cd kube
4196
+ - yarn npm audit --environment production
4197
+ rules:
4198
+ - when: never
4199
+ if: $CI_PIPELINE_SOURCE == "trigger"
4200
+ - if: $CI_MERGE_REQUEST_ID
4201
+ needs: []
4202
+ retry: *a1
4203
+ interruptible: true
4204
+ allow_failure: true
4205
+ 'kube 👮 lint | review ':
4206
+ stage: test
4207
+ image: path/to/docker/jobs-default:the-version
4208
+ variables:
4209
+ KUBERNETES_CPU_REQUEST: '0.45'
4210
+ KUBERNETES_MEMORY_REQUEST: 1Gi
4211
+ KUBERNETES_MEMORY_LIMIT: 4Gi
4212
+ script:
4213
+ - collapseable_section_start "injectvars" "Injecting variables"
4214
+ - export APP_PATH="kube"
4215
+ - collapseable_section_end "injectvars"
4216
+ - collapseable_section_start "nodeinstall" "Ensure node version"
4217
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
4218
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
4219
+ - collapseable_section_end "nodeinstall"
4220
+ - cd kube
4221
+ - collapseable_section_start "nodeinstall" "Ensure node version"
4222
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
4223
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
4224
+ - collapseable_section_end "nodeinstall"
4225
+ - collapseable_section_start "yarninstall" "Yarn install"
4226
+ - yarn install --immutable --inline-builds
4227
+ - collapseable_section_end "yarninstall"
4228
+ - yarn lint
4229
+ cache:
4230
+ - key: kube-yarn-mr$CI_MERGE_REQUEST_IID
4231
+ policy: pull-push
4232
+ paths:
4233
+ - kube/.yarn
4234
+ fallback_keys:
4235
+ - kube-yarn
4236
+ - key: kube-node-modules-mr$CI_MERGE_REQUEST_IID
4237
+ policy: pull-push
4238
+ paths:
4239
+ - kube/node_modules
4240
+ fallback_keys:
4241
+ - kube-node-modules
4242
+ rules:
4243
+ - when: never
4244
+ if: $CI_PIPELINE_SOURCE == "trigger"
4245
+ - if: $CI_MERGE_REQUEST_ID
4246
+ needs: []
4247
+ retry: *a1
4248
+ interruptible: true
4249
+ 'kube 🧪 test | review ':
4250
+ stage: test
4251
+ image: path/to/docker/jobs-testing-chrome:the-version
4252
+ variables:
4253
+ KUBERNETES_CPU_REQUEST: '0.45'
4254
+ KUBERNETES_MEMORY_REQUEST: 1Gi
4255
+ KUBERNETES_MEMORY_LIMIT: 4Gi
4256
+ script:
4257
+ - collapseable_section_start "injectvars" "Injecting variables"
4258
+ - export APP_PATH="kube"
4259
+ - collapseable_section_end "injectvars"
4260
+ - collapseable_section_start "nodeinstall" "Ensure node version"
4261
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
4262
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
4263
+ - collapseable_section_end "nodeinstall"
4264
+ - cd kube
4265
+ - collapseable_section_start "nodeinstall" "Ensure node version"
4266
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
4267
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
4268
+ - collapseable_section_end "nodeinstall"
4269
+ - collapseable_section_start "yarninstall" "Yarn install"
4270
+ - yarn install --immutable --inline-builds
4271
+ - collapseable_section_end "yarninstall"
4272
+ - yarn test
4273
+ cache:
4274
+ - key: kube-yarn-mr$CI_MERGE_REQUEST_IID
4275
+ policy: pull-push
4276
+ paths:
4277
+ - kube/.yarn
4278
+ fallback_keys:
4279
+ - kube-yarn
4280
+ - key: kube-node-modules-mr$CI_MERGE_REQUEST_IID
4281
+ policy: pull-push
4282
+ paths:
4283
+ - kube/node_modules
4284
+ fallback_keys:
4285
+ - kube-node-modules
4286
+ rules:
4287
+ - when: never
4288
+ if: $CI_PIPELINE_SOURCE == "trigger"
4289
+ - if: $CI_MERGE_REQUEST_ID
4290
+ needs: []
4291
+ retry: *a1
4292
+ interruptible: true
3972
4293
  'kube 🔨 app | review ':
3973
4294
  stage: build
3974
4295
  image: path/to/docker/jobs-default:the-version
@@ -4090,18 +4411,22 @@ kube 🧪 test:
4090
4411
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
4091
4412
  - collapseable_section_end "nodeinstall"
4092
4413
  - collapseable_section_start "yarninstall" "Yarn install"
4093
- - yarn install --immutable
4414
+ - yarn install --immutable --inline-builds
4094
4415
  - collapseable_section_end "yarninstall"
4095
4416
  - yarn build
4096
4417
  cache:
4097
- - key: kube-yarn
4418
+ - key: kube-yarn-mr$CI_MERGE_REQUEST_IID
4098
4419
  policy: pull-push
4099
4420
  paths:
4100
4421
  - kube/.yarn
4101
- - key: kube-node-modules
4422
+ fallback_keys:
4423
+ - kube-yarn
4424
+ - key: kube-node-modules-mr$CI_MERGE_REQUEST_IID
4102
4425
  policy: pull-push
4103
4426
  paths:
4104
4427
  - kube/node_modules
4428
+ fallback_keys:
4429
+ - kube-node-modules
4105
4430
  artifacts:
4106
4431
  paths:
4107
4432
  - kube/__build_info.json
@@ -4146,7 +4471,8 @@ kube 🧪 test:
4146
4471
  - export DOCKER_IMAGE="$CI_REGISTRY_IMAGE/$DOCKER_IMAGE_NAME"
4147
4472
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
4148
4473
  - |-
4149
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
4474
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
4475
+ COPY --chown=node:node $APP_DIR .
4150
4476
  RUN yarn plugin import workspace-tools
4151
4477
  RUN yarn workspaces focus --production && yarn rebuild"
4152
4478
  - |-
@@ -4168,10 +4494,12 @@ kube 🧪 test:
4168
4494
  - docker push $DOCKER_CACHE_IMAGE
4169
4495
  - collapseable_section_end "docker-push"
4170
4496
  cache:
4171
- - key: kube-yarn
4497
+ - key: kube-yarn-mr$CI_MERGE_REQUEST_IID
4172
4498
  policy: pull
4173
4499
  paths:
4174
4500
  - kube/.yarn
4501
+ fallback_keys:
4502
+ - kube-yarn
4175
4503
  rules:
4176
4504
  - when: never
4177
4505
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -4387,17 +4715,17 @@ kube 🧪 test:
4387
4715
  - when: on_success
4388
4716
  if: $CI_MERGE_REQUEST_ID
4389
4717
  needs:
4390
- - job: kube 👮 lint
4718
+ - job: 'kube 👮 lint | review '
4391
4719
  artifacts: false
4392
4720
  - job: 'kube 🔨 app | review '
4393
4721
  artifacts: false
4394
4722
  - job: 'kube 🔨 docker | review '
4395
4723
  artifacts: false
4396
- - job: kube 🧪 test
4724
+ - job: 'kube 🧪 test | review '
4397
4725
  artifacts: false
4398
4726
  - job: 'kube 🧾 sbom | review '
4399
4727
  artifacts: true
4400
- - job: kube 🛡 audit
4728
+ - job: 'kube 🛡 audit | review '
4401
4729
  artifacts: false
4402
4730
  retry: *a1
4403
4731
  interruptible: true
@@ -4695,7 +5023,7 @@ kube 🧪 test:
4695
5023
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
4696
5024
  - collapseable_section_end "nodeinstall"
4697
5025
  - collapseable_section_start "yarninstall" "Yarn install"
4698
- - yarn install --immutable
5026
+ - yarn install --immutable --inline-builds
4699
5027
  - collapseable_section_end "yarninstall"
4700
5028
  - yarn build
4701
5029
  cache:
@@ -4751,7 +5079,8 @@ kube 🧪 test:
4751
5079
  - export DOCKER_IMAGE="$CI_REGISTRY_IMAGE/$DOCKER_IMAGE_NAME"
4752
5080
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
4753
5081
  - |-
4754
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
5082
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
5083
+ COPY --chown=node:node $APP_DIR .
4755
5084
  RUN yarn plugin import workspace-tools
4756
5085
  RUN yarn workspaces focus --production && yarn rebuild"
4757
5086
  - |-
@@ -5292,7 +5621,7 @@ kube 🧪 test:
5292
5621
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
5293
5622
  - collapseable_section_end "nodeinstall"
5294
5623
  - collapseable_section_start "yarninstall" "Yarn install"
5295
- - yarn install --immutable
5624
+ - yarn install --immutable --inline-builds
5296
5625
  - collapseable_section_end "yarninstall"
5297
5626
  - yarn build
5298
5627
  cache:
@@ -5348,7 +5677,8 @@ kube 🧪 test:
5348
5677
  - export DOCKER_IMAGE="$CI_REGISTRY_IMAGE/$DOCKER_IMAGE_NAME"
5349
5678
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
5350
5679
  - |-
5351
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
5680
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
5681
+ COPY --chown=node:node $APP_DIR .
5352
5682
  RUN yarn plugin import workspace-tools
5353
5683
  RUN yarn workspaces focus --production && yarn rebuild"
5354
5684
  - |-