@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
@@ -280,7 +271,7 @@ app1 🧪 test:
280
271
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
281
272
  - collapseable_section_end "nodeinstall"
282
273
  - collapseable_section_start "yarninstall" "Yarn install"
283
- - yarn install --immutable
274
+ - yarn install --immutable --inline-builds
284
275
  - collapseable_section_end "yarninstall"
285
276
  - yarn build
286
277
  cache:
@@ -335,7 +326,8 @@ app1 🧪 test:
335
326
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app1"
336
327
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
337
328
  - |-
338
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
329
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
330
+ COPY --chown=node:node $APP_DIR .
339
331
  RUN yarn plugin import workspace-tools
340
332
  RUN yarn workspaces focus --production && yarn rebuild"
341
333
  - |-
@@ -503,17 +495,17 @@ app1 🧪 test:
503
495
  - when: on_success
504
496
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
505
497
  needs:
506
- - job: app1 👮 lint
498
+ - job: 'app1 👮 lint | dev '
507
499
  artifacts: false
508
500
  - job: 'app1 🔨 app | dev '
509
501
  artifacts: false
510
502
  - job: 'app1 🔨 docker | dev '
511
503
  artifacts: false
512
- - job: app1 🧪 test
504
+ - job: 'app1 🧪 test | dev '
513
505
  artifacts: false
514
506
  - job: 'app1 🧾 sbom | dev '
515
507
  artifacts: true
516
- - job: app1 🛡 audit
508
+ - job: 'app1 🛡 audit | dev '
517
509
  artifacts: false
518
510
  retry: *a1
519
511
  interruptible: true
@@ -552,6 +544,115 @@ app1 🧪 test:
552
544
  retry: *a1
553
545
  interruptible: true
554
546
  allow_failure: true
547
+ 'app1 🛡 audit | review ':
548
+ stage: test
549
+ image: path/to/docker/jobs-default:the-version
550
+ variables:
551
+ KUBERNETES_CPU_REQUEST: '0.45'
552
+ KUBERNETES_MEMORY_REQUEST: 1Gi
553
+ KUBERNETES_MEMORY_LIMIT: 4Gi
554
+ script:
555
+ - collapseable_section_start "injectvars" "Injecting variables"
556
+ - export APP_PATH="app1"
557
+ - collapseable_section_end "injectvars"
558
+ - cd app1
559
+ - yarn npm audit --environment production
560
+ rules:
561
+ - when: never
562
+ if: $CI_PIPELINE_SOURCE == "trigger"
563
+ - if: $CI_MERGE_REQUEST_ID
564
+ needs: []
565
+ retry: *a1
566
+ interruptible: true
567
+ allow_failure: true
568
+ 'app1 👮 lint | review ':
569
+ stage: test
570
+ image: path/to/docker/jobs-default:the-version
571
+ variables:
572
+ KUBERNETES_CPU_REQUEST: '0.45'
573
+ KUBERNETES_MEMORY_REQUEST: 1Gi
574
+ KUBERNETES_MEMORY_LIMIT: 4Gi
575
+ script:
576
+ - collapseable_section_start "injectvars" "Injecting variables"
577
+ - export APP_PATH="app1"
578
+ - collapseable_section_end "injectvars"
579
+ - collapseable_section_start "nodeinstall" "Ensure node version"
580
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
581
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
582
+ - collapseable_section_end "nodeinstall"
583
+ - cd app1
584
+ - collapseable_section_start "nodeinstall" "Ensure node version"
585
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
586
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
587
+ - collapseable_section_end "nodeinstall"
588
+ - collapseable_section_start "yarninstall" "Yarn install"
589
+ - yarn install --immutable --inline-builds
590
+ - collapseable_section_end "yarninstall"
591
+ - yarn lint
592
+ cache:
593
+ - key: app1-yarn-mr$CI_MERGE_REQUEST_IID
594
+ policy: pull-push
595
+ paths:
596
+ - app1/.yarn
597
+ fallback_keys:
598
+ - app1-yarn
599
+ - key: app1-node-modules-mr$CI_MERGE_REQUEST_IID
600
+ policy: pull-push
601
+ paths:
602
+ - app1/node_modules
603
+ fallback_keys:
604
+ - app1-node-modules
605
+ rules:
606
+ - when: never
607
+ if: $CI_PIPELINE_SOURCE == "trigger"
608
+ - if: $CI_MERGE_REQUEST_ID
609
+ needs: []
610
+ retry: *a1
611
+ interruptible: true
612
+ 'app1 🧪 test | review ':
613
+ stage: test
614
+ image: path/to/docker/jobs-testing-chrome:the-version
615
+ variables:
616
+ KUBERNETES_CPU_REQUEST: '0.45'
617
+ KUBERNETES_MEMORY_REQUEST: 1Gi
618
+ KUBERNETES_MEMORY_LIMIT: 4Gi
619
+ script:
620
+ - collapseable_section_start "injectvars" "Injecting variables"
621
+ - export APP_PATH="app1"
622
+ - collapseable_section_end "injectvars"
623
+ - collapseable_section_start "nodeinstall" "Ensure node version"
624
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
625
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
626
+ - collapseable_section_end "nodeinstall"
627
+ - cd app1
628
+ - collapseable_section_start "nodeinstall" "Ensure node version"
629
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
630
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
631
+ - collapseable_section_end "nodeinstall"
632
+ - collapseable_section_start "yarninstall" "Yarn install"
633
+ - yarn install --immutable --inline-builds
634
+ - collapseable_section_end "yarninstall"
635
+ - yarn test
636
+ cache:
637
+ - key: app1-yarn-mr$CI_MERGE_REQUEST_IID
638
+ policy: pull-push
639
+ paths:
640
+ - app1/.yarn
641
+ fallback_keys:
642
+ - app1-yarn
643
+ - key: app1-node-modules-mr$CI_MERGE_REQUEST_IID
644
+ policy: pull-push
645
+ paths:
646
+ - app1/node_modules
647
+ fallback_keys:
648
+ - app1-node-modules
649
+ rules:
650
+ - when: never
651
+ if: $CI_PIPELINE_SOURCE == "trigger"
652
+ - if: $CI_MERGE_REQUEST_ID
653
+ needs: []
654
+ retry: *a1
655
+ interruptible: true
555
656
  'app1 🔨 app | review ':
556
657
  stage: build
557
658
  image: path/to/docker/jobs-default:the-version
@@ -615,18 +716,22 @@ app1 🧪 test:
615
716
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
616
717
  - collapseable_section_end "nodeinstall"
617
718
  - collapseable_section_start "yarninstall" "Yarn install"
618
- - yarn install --immutable
719
+ - yarn install --immutable --inline-builds
619
720
  - collapseable_section_end "yarninstall"
620
721
  - yarn build
621
722
  cache:
622
- - key: app1-yarn
723
+ - key: app1-yarn-mr$CI_MERGE_REQUEST_IID
623
724
  policy: pull-push
624
725
  paths:
625
726
  - app1/.yarn
626
- - key: app1-node-modules
727
+ fallback_keys:
728
+ - app1-yarn
729
+ - key: app1-node-modules-mr$CI_MERGE_REQUEST_IID
627
730
  policy: pull-push
628
731
  paths:
629
732
  - app1/node_modules
733
+ fallback_keys:
734
+ - app1-node-modules
630
735
  artifacts:
631
736
  paths:
632
737
  - app1/__build_info.json
@@ -670,7 +775,8 @@ app1 🧪 test:
670
775
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app1"
671
776
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
672
777
  - |-
673
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
778
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
779
+ COPY --chown=node:node $APP_DIR .
674
780
  RUN yarn plugin import workspace-tools
675
781
  RUN yarn workspaces focus --production && yarn rebuild"
676
782
  - |-
@@ -693,10 +799,12 @@ app1 🧪 test:
693
799
  - docker push $DOCKER_CACHE_IMAGE
694
800
  - collapseable_section_end "docker-push"
695
801
  cache:
696
- - key: app1-yarn
802
+ - key: app1-yarn-mr$CI_MERGE_REQUEST_IID
697
803
  policy: pull
698
804
  paths:
699
805
  - app1/.yarn
806
+ fallback_keys:
807
+ - app1-yarn
700
808
  rules:
701
809
  - when: never
702
810
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -841,17 +949,17 @@ app1 🧪 test:
841
949
  - when: on_success
842
950
  if: $CI_MERGE_REQUEST_ID
843
951
  needs:
844
- - job: app1 👮 lint
952
+ - job: 'app1 👮 lint | review '
845
953
  artifacts: false
846
954
  - job: 'app1 🔨 app | review '
847
955
  artifacts: false
848
956
  - job: 'app1 🔨 docker | review '
849
957
  artifacts: false
850
- - job: app1 🧪 test
958
+ - job: 'app1 🧪 test | review '
851
959
  artifacts: false
852
960
  - job: 'app1 🧾 sbom | review '
853
961
  artifacts: true
854
- - job: app1 🛡 audit
962
+ - job: 'app1 🛡 audit | review '
855
963
  artifacts: false
856
964
  retry: *a1
857
965
  interruptible: true
@@ -956,7 +1064,7 @@ app1 🧪 test:
956
1064
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
957
1065
  - collapseable_section_end "nodeinstall"
958
1066
  - collapseable_section_start "yarninstall" "Yarn install"
959
- - yarn install --immutable
1067
+ - yarn install --immutable --inline-builds
960
1068
  - collapseable_section_end "yarninstall"
961
1069
  - yarn build
962
1070
  cache:
@@ -1011,7 +1119,8 @@ app1 🧪 test:
1011
1119
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app1"
1012
1120
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1013
1121
  - |-
1014
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1122
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1123
+ COPY --chown=node:node $APP_DIR .
1015
1124
  RUN yarn plugin import workspace-tools
1016
1125
  RUN yarn workspaces focus --production && yarn rebuild"
1017
1126
  - |-
@@ -1284,7 +1393,7 @@ app1 🧪 test:
1284
1393
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1285
1394
  - collapseable_section_end "nodeinstall"
1286
1395
  - collapseable_section_start "yarninstall" "Yarn install"
1287
- - yarn install --immutable
1396
+ - yarn install --immutable --inline-builds
1288
1397
  - collapseable_section_end "yarninstall"
1289
1398
  - yarn build
1290
1399
  cache:
@@ -1339,7 +1448,8 @@ app1 🧪 test:
1339
1448
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app1"
1340
1449
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1341
1450
  - |-
1342
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1451
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1452
+ COPY --chown=node:node $APP_DIR .
1343
1453
  RUN yarn plugin import workspace-tools
1344
1454
  RUN yarn workspaces focus --production && yarn rebuild"
1345
1455
  - |-
@@ -1549,7 +1659,7 @@ app1 🧪 test:
1549
1659
  retry: *a1
1550
1660
  interruptible: true
1551
1661
  allow_failure: true
1552
- app2 🛡 audit:
1662
+ 'app2 🛡 audit | dev ':
1553
1663
  stage: test
1554
1664
  image: path/to/docker/jobs-default:the-version
1555
1665
  variables:
@@ -1566,14 +1676,11 @@ app2 🛡 audit:
1566
1676
  - when: never
1567
1677
  if: $CI_PIPELINE_SOURCE == "trigger"
1568
1678
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1569
- - when: never
1570
- if: $CI_PIPELINE_SOURCE == "trigger"
1571
- - if: $CI_MERGE_REQUEST_ID
1572
1679
  needs: []
1573
1680
  retry: *a1
1574
1681
  interruptible: true
1575
1682
  allow_failure: true
1576
- app2 👮 lint:
1683
+ 'app2 👮 lint | dev ':
1577
1684
  stage: test
1578
1685
  image: path/to/docker/jobs-default:the-version
1579
1686
  variables:
@@ -1594,7 +1701,7 @@ app2 👮 lint:
1594
1701
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1595
1702
  - collapseable_section_end "nodeinstall"
1596
1703
  - collapseable_section_start "yarninstall" "Yarn install"
1597
- - yarn install --immutable
1704
+ - yarn install --immutable --inline-builds
1598
1705
  - collapseable_section_end "yarninstall"
1599
1706
  - yarn lint
1600
1707
  cache:
@@ -1610,13 +1717,10 @@ app2 👮 lint:
1610
1717
  - when: never
1611
1718
  if: $CI_PIPELINE_SOURCE == "trigger"
1612
1719
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1613
- - when: never
1614
- if: $CI_PIPELINE_SOURCE == "trigger"
1615
- - if: $CI_MERGE_REQUEST_ID
1616
1720
  needs: []
1617
1721
  retry: *a1
1618
1722
  interruptible: true
1619
- app2 🧪 test:
1723
+ 'app2 🧪 test | dev ':
1620
1724
  stage: test
1621
1725
  image: path/to/docker/jobs-testing-chrome:the-version
1622
1726
  variables:
@@ -1637,7 +1741,7 @@ app2 🧪 test:
1637
1741
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1638
1742
  - collapseable_section_end "nodeinstall"
1639
1743
  - collapseable_section_start "yarninstall" "Yarn install"
1640
- - yarn install --immutable
1744
+ - yarn install --immutable --inline-builds
1641
1745
  - collapseable_section_end "yarninstall"
1642
1746
  - yarn test
1643
1747
  cache:
@@ -1653,9 +1757,6 @@ app2 🧪 test:
1653
1757
  - when: never
1654
1758
  if: $CI_PIPELINE_SOURCE == "trigger"
1655
1759
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1656
- - when: never
1657
- if: $CI_PIPELINE_SOURCE == "trigger"
1658
- - if: $CI_MERGE_REQUEST_ID
1659
1760
  needs: []
1660
1761
  retry: *a1
1661
1762
  interruptible: true
@@ -1726,7 +1827,7 @@ app2 🧪 test:
1726
1827
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1727
1828
  - collapseable_section_end "nodeinstall"
1728
1829
  - collapseable_section_start "yarninstall" "Yarn install"
1729
- - yarn install --immutable
1830
+ - yarn install --immutable --inline-builds
1730
1831
  - collapseable_section_end "yarninstall"
1731
1832
  - yarn build
1732
1833
  cache:
@@ -1781,7 +1882,8 @@ app2 🧪 test:
1781
1882
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app2"
1782
1883
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1783
1884
  - |-
1784
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1885
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1886
+ COPY --chown=node:node $APP_DIR .
1785
1887
  RUN yarn plugin import workspace-tools
1786
1888
  RUN yarn workspaces focus --production && yarn rebuild"
1787
1889
  - |-
@@ -1955,17 +2057,17 @@ app2 🧪 test:
1955
2057
  - when: on_success
1956
2058
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1957
2059
  needs:
1958
- - job: app2 👮 lint
2060
+ - job: 'app2 👮 lint | dev '
1959
2061
  artifacts: false
1960
2062
  - job: 'app2 🔨 app | dev '
1961
2063
  artifacts: false
1962
2064
  - job: 'app2 🔨 docker | dev '
1963
2065
  artifacts: false
1964
- - job: app2 🧪 test
2066
+ - job: 'app2 🧪 test | dev '
1965
2067
  artifacts: false
1966
2068
  - job: 'app2 🧾 sbom | dev '
1967
2069
  artifacts: true
1968
- - job: app2 🛡 audit
2070
+ - job: 'app2 🛡 audit | dev '
1969
2071
  artifacts: false
1970
2072
  retry: *a1
1971
2073
  interruptible: true
@@ -2004,6 +2106,115 @@ app2 🧪 test:
2004
2106
  retry: *a1
2005
2107
  interruptible: true
2006
2108
  allow_failure: true
2109
+ 'app2 🛡 audit | review ':
2110
+ stage: test
2111
+ image: path/to/docker/jobs-default:the-version
2112
+ variables:
2113
+ KUBERNETES_CPU_REQUEST: '0.45'
2114
+ KUBERNETES_MEMORY_REQUEST: 1Gi
2115
+ KUBERNETES_MEMORY_LIMIT: 4Gi
2116
+ script:
2117
+ - collapseable_section_start "injectvars" "Injecting variables"
2118
+ - export APP_PATH="app2"
2119
+ - collapseable_section_end "injectvars"
2120
+ - cd app2
2121
+ - yarn npm audit --environment production
2122
+ rules:
2123
+ - when: never
2124
+ if: $CI_PIPELINE_SOURCE == "trigger"
2125
+ - if: $CI_MERGE_REQUEST_ID
2126
+ needs: []
2127
+ retry: *a1
2128
+ interruptible: true
2129
+ allow_failure: true
2130
+ 'app2 👮 lint | review ':
2131
+ stage: test
2132
+ image: path/to/docker/jobs-default:the-version
2133
+ variables:
2134
+ KUBERNETES_CPU_REQUEST: '0.45'
2135
+ KUBERNETES_MEMORY_REQUEST: 1Gi
2136
+ KUBERNETES_MEMORY_LIMIT: 4Gi
2137
+ script:
2138
+ - collapseable_section_start "injectvars" "Injecting variables"
2139
+ - export APP_PATH="app2"
2140
+ - collapseable_section_end "injectvars"
2141
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2142
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2143
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2144
+ - collapseable_section_end "nodeinstall"
2145
+ - cd app2
2146
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2147
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2148
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2149
+ - collapseable_section_end "nodeinstall"
2150
+ - collapseable_section_start "yarninstall" "Yarn install"
2151
+ - yarn install --immutable --inline-builds
2152
+ - collapseable_section_end "yarninstall"
2153
+ - yarn lint
2154
+ cache:
2155
+ - key: app2-yarn-mr$CI_MERGE_REQUEST_IID
2156
+ policy: pull-push
2157
+ paths:
2158
+ - app2/.yarn
2159
+ fallback_keys:
2160
+ - app2-yarn
2161
+ - key: app2-node-modules-mr$CI_MERGE_REQUEST_IID
2162
+ policy: pull-push
2163
+ paths:
2164
+ - app2/node_modules
2165
+ fallback_keys:
2166
+ - app2-node-modules
2167
+ rules:
2168
+ - when: never
2169
+ if: $CI_PIPELINE_SOURCE == "trigger"
2170
+ - if: $CI_MERGE_REQUEST_ID
2171
+ needs: []
2172
+ retry: *a1
2173
+ interruptible: true
2174
+ 'app2 🧪 test | review ':
2175
+ stage: test
2176
+ image: path/to/docker/jobs-testing-chrome:the-version
2177
+ variables:
2178
+ KUBERNETES_CPU_REQUEST: '0.45'
2179
+ KUBERNETES_MEMORY_REQUEST: 1Gi
2180
+ KUBERNETES_MEMORY_LIMIT: 4Gi
2181
+ script:
2182
+ - collapseable_section_start "injectvars" "Injecting variables"
2183
+ - export APP_PATH="app2"
2184
+ - collapseable_section_end "injectvars"
2185
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2186
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2187
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2188
+ - collapseable_section_end "nodeinstall"
2189
+ - cd app2
2190
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2191
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2192
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2193
+ - collapseable_section_end "nodeinstall"
2194
+ - collapseable_section_start "yarninstall" "Yarn install"
2195
+ - yarn install --immutable --inline-builds
2196
+ - collapseable_section_end "yarninstall"
2197
+ - yarn test
2198
+ cache:
2199
+ - key: app2-yarn-mr$CI_MERGE_REQUEST_IID
2200
+ policy: pull-push
2201
+ paths:
2202
+ - app2/.yarn
2203
+ fallback_keys:
2204
+ - app2-yarn
2205
+ - key: app2-node-modules-mr$CI_MERGE_REQUEST_IID
2206
+ policy: pull-push
2207
+ paths:
2208
+ - app2/node_modules
2209
+ fallback_keys:
2210
+ - app2-node-modules
2211
+ rules:
2212
+ - when: never
2213
+ if: $CI_PIPELINE_SOURCE == "trigger"
2214
+ - if: $CI_MERGE_REQUEST_ID
2215
+ needs: []
2216
+ retry: *a1
2217
+ interruptible: true
2007
2218
  'app2 🔨 app | review ':
2008
2219
  stage: build
2009
2220
  image: path/to/docker/jobs-default:the-version
@@ -2071,18 +2282,22 @@ app2 🧪 test:
2071
2282
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2072
2283
  - collapseable_section_end "nodeinstall"
2073
2284
  - collapseable_section_start "yarninstall" "Yarn install"
2074
- - yarn install --immutable
2285
+ - yarn install --immutable --inline-builds
2075
2286
  - collapseable_section_end "yarninstall"
2076
2287
  - yarn build
2077
2288
  cache:
2078
- - key: app2-yarn
2289
+ - key: app2-yarn-mr$CI_MERGE_REQUEST_IID
2079
2290
  policy: pull-push
2080
2291
  paths:
2081
2292
  - app2/.yarn
2082
- - key: app2-node-modules
2293
+ fallback_keys:
2294
+ - app2-yarn
2295
+ - key: app2-node-modules-mr$CI_MERGE_REQUEST_IID
2083
2296
  policy: pull-push
2084
2297
  paths:
2085
2298
  - app2/node_modules
2299
+ fallback_keys:
2300
+ - app2-node-modules
2086
2301
  artifacts:
2087
2302
  paths:
2088
2303
  - app2/__build_info.json
@@ -2126,7 +2341,8 @@ app2 🧪 test:
2126
2341
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app2"
2127
2342
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
2128
2343
  - |-
2129
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
2344
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
2345
+ COPY --chown=node:node $APP_DIR .
2130
2346
  RUN yarn plugin import workspace-tools
2131
2347
  RUN yarn workspaces focus --production && yarn rebuild"
2132
2348
  - |-
@@ -2149,10 +2365,12 @@ app2 🧪 test:
2149
2365
  - docker push $DOCKER_CACHE_IMAGE
2150
2366
  - collapseable_section_end "docker-push"
2151
2367
  cache:
2152
- - key: app2-yarn
2368
+ - key: app2-yarn-mr$CI_MERGE_REQUEST_IID
2153
2369
  policy: pull
2154
2370
  paths:
2155
2371
  - app2/.yarn
2372
+ fallback_keys:
2373
+ - app2-yarn
2156
2374
  rules:
2157
2375
  - when: never
2158
2376
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -2303,17 +2521,17 @@ app2 🧪 test:
2303
2521
  - when: on_success
2304
2522
  if: $CI_MERGE_REQUEST_ID
2305
2523
  needs:
2306
- - job: app2 👮 lint
2524
+ - job: 'app2 👮 lint | review '
2307
2525
  artifacts: false
2308
2526
  - job: 'app2 🔨 app | review '
2309
2527
  artifacts: false
2310
2528
  - job: 'app2 🔨 docker | review '
2311
2529
  artifacts: false
2312
- - job: app2 🧪 test
2530
+ - job: 'app2 🧪 test | review '
2313
2531
  artifacts: false
2314
2532
  - job: 'app2 🧾 sbom | review '
2315
2533
  artifacts: true
2316
- - job: app2 🛡 audit
2534
+ - job: 'app2 🛡 audit | review '
2317
2535
  artifacts: false
2318
2536
  retry: *a1
2319
2537
  interruptible: true
@@ -2422,7 +2640,7 @@ app2 🧪 test:
2422
2640
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2423
2641
  - collapseable_section_end "nodeinstall"
2424
2642
  - collapseable_section_start "yarninstall" "Yarn install"
2425
- - yarn install --immutable
2643
+ - yarn install --immutable --inline-builds
2426
2644
  - collapseable_section_end "yarninstall"
2427
2645
  - yarn build
2428
2646
  cache:
@@ -2477,7 +2695,8 @@ app2 🧪 test:
2477
2695
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app2"
2478
2696
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
2479
2697
  - |-
2480
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
2698
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
2699
+ COPY --chown=node:node $APP_DIR .
2481
2700
  RUN yarn plugin import workspace-tools
2482
2701
  RUN yarn workspaces focus --production && yarn rebuild"
2483
2702
  - |-
@@ -2760,7 +2979,7 @@ app2 🧪 test:
2760
2979
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2761
2980
  - collapseable_section_end "nodeinstall"
2762
2981
  - collapseable_section_start "yarninstall" "Yarn install"
2763
- - yarn install --immutable
2982
+ - yarn install --immutable --inline-builds
2764
2983
  - collapseable_section_end "yarninstall"
2765
2984
  - yarn build
2766
2985
  cache:
@@ -2815,7 +3034,8 @@ app2 🧪 test:
2815
3034
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/caches/app2"
2816
3035
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
2817
3036
  - |-
2818
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
3037
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
3038
+ COPY --chown=node:node $APP_DIR .
2819
3039
  RUN yarn plugin import workspace-tools
2820
3040
  RUN yarn workspaces focus --production && yarn rebuild"
2821
3041
  - |-
@@ -3031,7 +3251,7 @@ app2 🧪 test:
3031
3251
  retry: *a1
3032
3252
  interruptible: true
3033
3253
  allow_failure: true
3034
- app3 🛡 audit:
3254
+ 'app3 🛡 audit | dev ':
3035
3255
  stage: test
3036
3256
  image: path/to/docker/jobs-default:the-version
3037
3257
  variables:
@@ -3048,14 +3268,11 @@ app3 🛡 audit:
3048
3268
  - when: never
3049
3269
  if: $CI_PIPELINE_SOURCE == "trigger"
3050
3270
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3051
- - when: never
3052
- if: $CI_PIPELINE_SOURCE == "trigger"
3053
- - if: $CI_MERGE_REQUEST_ID
3054
3271
  needs: []
3055
3272
  retry: *a1
3056
3273
  interruptible: true
3057
3274
  allow_failure: true
3058
- app3 👮 lint:
3275
+ 'app3 👮 lint | dev ':
3059
3276
  stage: test
3060
3277
  image: path/to/docker/jobs-default:the-version
3061
3278
  variables:
@@ -3076,7 +3293,7 @@ app3 👮 lint:
3076
3293
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3077
3294
  - collapseable_section_end "nodeinstall"
3078
3295
  - collapseable_section_start "yarninstall" "Yarn install"
3079
- - yarn install --immutable
3296
+ - yarn install --immutable --inline-builds
3080
3297
  - collapseable_section_end "yarninstall"
3081
3298
  - yarn lint
3082
3299
  cache:
@@ -3092,13 +3309,10 @@ app3 👮 lint:
3092
3309
  - when: never
3093
3310
  if: $CI_PIPELINE_SOURCE == "trigger"
3094
3311
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3095
- - when: never
3096
- if: $CI_PIPELINE_SOURCE == "trigger"
3097
- - if: $CI_MERGE_REQUEST_ID
3098
3312
  needs: []
3099
3313
  retry: *a1
3100
3314
  interruptible: true
3101
- app3 🧪 test:
3315
+ 'app3 🧪 test | dev ':
3102
3316
  stage: test
3103
3317
  image: path/to/docker/jobs-testing-chrome:the-version
3104
3318
  variables:
@@ -3119,7 +3333,7 @@ app3 🧪 test:
3119
3333
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3120
3334
  - collapseable_section_end "nodeinstall"
3121
3335
  - collapseable_section_start "yarninstall" "Yarn install"
3122
- - yarn install --immutable
3336
+ - yarn install --immutable --inline-builds
3123
3337
  - collapseable_section_end "yarninstall"
3124
3338
  - yarn test
3125
3339
  cache:
@@ -3135,9 +3349,6 @@ app3 🧪 test:
3135
3349
  - when: never
3136
3350
  if: $CI_PIPELINE_SOURCE == "trigger"
3137
3351
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3138
- - when: never
3139
- if: $CI_PIPELINE_SOURCE == "trigger"
3140
- - if: $CI_MERGE_REQUEST_ID
3141
3352
  needs: []
3142
3353
  retry: *a1
3143
3354
  interruptible: true
@@ -3202,7 +3413,7 @@ app3 🧪 test:
3202
3413
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3203
3414
  - collapseable_section_end "nodeinstall"
3204
3415
  - collapseable_section_start "yarninstall" "Yarn install"
3205
- - yarn install --immutable
3416
+ - yarn install --immutable --inline-builds
3206
3417
  - collapseable_section_end "yarninstall"
3207
3418
  - yarn build
3208
3419
  cache:
@@ -3258,7 +3469,8 @@ app3 🧪 test:
3258
3469
  - export DOCKER_IMAGE="$CI_REGISTRY_IMAGE/$DOCKER_IMAGE_NAME"
3259
3470
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
3260
3471
  - |-
3261
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
3472
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
3473
+ COPY --chown=node:node $APP_DIR .
3262
3474
  RUN yarn plugin import workspace-tools
3263
3475
  RUN yarn workspaces focus --production && yarn rebuild"
3264
3476
  - |-
@@ -3441,17 +3653,17 @@ app3 🧪 test:
3441
3653
  - when: on_success
3442
3654
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3443
3655
  needs:
3444
- - job: app3 👮 lint
3656
+ - job: 'app3 👮 lint | dev '
3445
3657
  artifacts: false
3446
3658
  - job: 'app3 🔨 app | dev '
3447
3659
  artifacts: false
3448
3660
  - job: 'app3 🔨 docker | dev '
3449
3661
  artifacts: false
3450
- - job: app3 🧪 test
3662
+ - job: 'app3 🧪 test | dev '
3451
3663
  artifacts: false
3452
3664
  - job: 'app3 🧾 sbom | dev '
3453
3665
  artifacts: true
3454
- - job: app3 🛡 audit
3666
+ - job: 'app3 🛡 audit | dev '
3455
3667
  artifacts: false
3456
3668
  retry: *a1
3457
3669
  interruptible: true
@@ -3566,6 +3778,115 @@ app3 🧪 test:
3566
3778
  retry: *a1
3567
3779
  interruptible: true
3568
3780
  allow_failure: true
3781
+ 'app3 🛡 audit | review ':
3782
+ stage: test
3783
+ image: path/to/docker/jobs-default:the-version
3784
+ variables:
3785
+ KUBERNETES_CPU_REQUEST: '0.45'
3786
+ KUBERNETES_MEMORY_REQUEST: 1Gi
3787
+ KUBERNETES_MEMORY_LIMIT: 4Gi
3788
+ script:
3789
+ - collapseable_section_start "injectvars" "Injecting variables"
3790
+ - export APP_PATH="kube"
3791
+ - collapseable_section_end "injectvars"
3792
+ - cd kube
3793
+ - yarn npm audit --environment production
3794
+ rules:
3795
+ - when: never
3796
+ if: $CI_PIPELINE_SOURCE == "trigger"
3797
+ - if: $CI_MERGE_REQUEST_ID
3798
+ needs: []
3799
+ retry: *a1
3800
+ interruptible: true
3801
+ allow_failure: true
3802
+ 'app3 👮 lint | review ':
3803
+ stage: test
3804
+ image: path/to/docker/jobs-default:the-version
3805
+ variables:
3806
+ KUBERNETES_CPU_REQUEST: '0.45'
3807
+ KUBERNETES_MEMORY_REQUEST: 1Gi
3808
+ KUBERNETES_MEMORY_LIMIT: 4Gi
3809
+ script:
3810
+ - collapseable_section_start "injectvars" "Injecting variables"
3811
+ - export APP_PATH="kube"
3812
+ - collapseable_section_end "injectvars"
3813
+ - collapseable_section_start "nodeinstall" "Ensure node version"
3814
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
3815
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3816
+ - collapseable_section_end "nodeinstall"
3817
+ - cd kube
3818
+ - collapseable_section_start "nodeinstall" "Ensure node version"
3819
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
3820
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3821
+ - collapseable_section_end "nodeinstall"
3822
+ - collapseable_section_start "yarninstall" "Yarn install"
3823
+ - yarn install --immutable --inline-builds
3824
+ - collapseable_section_end "yarninstall"
3825
+ - yarn lint
3826
+ cache:
3827
+ - key: kube-yarn-mr$CI_MERGE_REQUEST_IID
3828
+ policy: pull-push
3829
+ paths:
3830
+ - kube/.yarn
3831
+ fallback_keys:
3832
+ - kube-yarn
3833
+ - key: kube-node-modules-mr$CI_MERGE_REQUEST_IID
3834
+ policy: pull-push
3835
+ paths:
3836
+ - kube/node_modules
3837
+ fallback_keys:
3838
+ - kube-node-modules
3839
+ rules:
3840
+ - when: never
3841
+ if: $CI_PIPELINE_SOURCE == "trigger"
3842
+ - if: $CI_MERGE_REQUEST_ID
3843
+ needs: []
3844
+ retry: *a1
3845
+ interruptible: true
3846
+ 'app3 🧪 test | review ':
3847
+ stage: test
3848
+ image: path/to/docker/jobs-testing-chrome:the-version
3849
+ variables:
3850
+ KUBERNETES_CPU_REQUEST: '0.45'
3851
+ KUBERNETES_MEMORY_REQUEST: 1Gi
3852
+ KUBERNETES_MEMORY_LIMIT: 4Gi
3853
+ script:
3854
+ - collapseable_section_start "injectvars" "Injecting variables"
3855
+ - export APP_PATH="kube"
3856
+ - collapseable_section_end "injectvars"
3857
+ - collapseable_section_start "nodeinstall" "Ensure node version"
3858
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
3859
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3860
+ - collapseable_section_end "nodeinstall"
3861
+ - cd kube
3862
+ - collapseable_section_start "nodeinstall" "Ensure node version"
3863
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
3864
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3865
+ - collapseable_section_end "nodeinstall"
3866
+ - collapseable_section_start "yarninstall" "Yarn install"
3867
+ - yarn install --immutable --inline-builds
3868
+ - collapseable_section_end "yarninstall"
3869
+ - yarn test
3870
+ cache:
3871
+ - key: kube-yarn-mr$CI_MERGE_REQUEST_IID
3872
+ policy: pull-push
3873
+ paths:
3874
+ - kube/.yarn
3875
+ fallback_keys:
3876
+ - kube-yarn
3877
+ - key: kube-node-modules-mr$CI_MERGE_REQUEST_IID
3878
+ policy: pull-push
3879
+ paths:
3880
+ - kube/node_modules
3881
+ fallback_keys:
3882
+ - kube-node-modules
3883
+ rules:
3884
+ - when: never
3885
+ if: $CI_PIPELINE_SOURCE == "trigger"
3886
+ - if: $CI_MERGE_REQUEST_ID
3887
+ needs: []
3888
+ retry: *a1
3889
+ interruptible: true
3569
3890
  'app3 🔨 app | review ':
3570
3891
  stage: build
3571
3892
  image: path/to/docker/jobs-default:the-version
@@ -3627,18 +3948,22 @@ app3 🧪 test:
3627
3948
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3628
3949
  - collapseable_section_end "nodeinstall"
3629
3950
  - collapseable_section_start "yarninstall" "Yarn install"
3630
- - yarn install --immutable
3951
+ - yarn install --immutable --inline-builds
3631
3952
  - collapseable_section_end "yarninstall"
3632
3953
  - yarn build
3633
3954
  cache:
3634
- - key: kube-yarn
3955
+ - key: kube-yarn-mr$CI_MERGE_REQUEST_IID
3635
3956
  policy: pull-push
3636
3957
  paths:
3637
3958
  - kube/.yarn
3638
- - key: kube-node-modules
3959
+ fallback_keys:
3960
+ - kube-yarn
3961
+ - key: kube-node-modules-mr$CI_MERGE_REQUEST_IID
3639
3962
  policy: pull-push
3640
3963
  paths:
3641
3964
  - kube/node_modules
3965
+ fallback_keys:
3966
+ - kube-node-modules
3642
3967
  artifacts:
3643
3968
  paths:
3644
3969
  - kube/__build_info.json
@@ -3683,7 +4008,8 @@ app3 🧪 test:
3683
4008
  - export DOCKER_IMAGE="$CI_REGISTRY_IMAGE/$DOCKER_IMAGE_NAME"
3684
4009
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
3685
4010
  - |-
3686
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
4011
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
4012
+ COPY --chown=node:node $APP_DIR .
3687
4013
  RUN yarn plugin import workspace-tools
3688
4014
  RUN yarn workspaces focus --production && yarn rebuild"
3689
4015
  - |-
@@ -3705,10 +4031,12 @@ app3 🧪 test:
3705
4031
  - docker push $DOCKER_CACHE_IMAGE
3706
4032
  - collapseable_section_end "docker-push"
3707
4033
  cache:
3708
- - key: kube-yarn
4034
+ - key: kube-yarn-mr$CI_MERGE_REQUEST_IID
3709
4035
  policy: pull
3710
4036
  paths:
3711
4037
  - kube/.yarn
4038
+ fallback_keys:
4039
+ - kube-yarn
3712
4040
  rules:
3713
4041
  - when: never
3714
4042
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -3867,17 +4195,17 @@ app3 🧪 test:
3867
4195
  - when: on_success
3868
4196
  if: $CI_MERGE_REQUEST_ID
3869
4197
  needs:
3870
- - job: app3 👮 lint
4198
+ - job: 'app3 👮 lint | review '
3871
4199
  artifacts: false
3872
4200
  - job: 'app3 🔨 app | review '
3873
4201
  artifacts: false
3874
4202
  - job: 'app3 🔨 docker | review '
3875
4203
  artifacts: false
3876
- - job: app3 🧪 test
4204
+ - job: 'app3 🧪 test | review '
3877
4205
  artifacts: false
3878
4206
  - job: 'app3 🧾 sbom | review '
3879
4207
  artifacts: true
3880
- - job: app3 🛡 audit
4208
+ - job: 'app3 🛡 audit | review '
3881
4209
  artifacts: false
3882
4210
  retry: *a1
3883
4211
  interruptible: true
@@ -4053,7 +4381,7 @@ app3 🧪 test:
4053
4381
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
4054
4382
  - collapseable_section_end "nodeinstall"
4055
4383
  - collapseable_section_start "yarninstall" "Yarn install"
4056
- - yarn install --immutable
4384
+ - yarn install --immutable --inline-builds
4057
4385
  - collapseable_section_end "yarninstall"
4058
4386
  - yarn build
4059
4387
  cache:
@@ -4109,7 +4437,8 @@ app3 🧪 test:
4109
4437
  - export DOCKER_IMAGE="$CI_REGISTRY_IMAGE/$DOCKER_IMAGE_NAME"
4110
4438
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
4111
4439
  - |-
4112
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
4440
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
4441
+ COPY --chown=node:node $APP_DIR .
4113
4442
  RUN yarn plugin import workspace-tools
4114
4443
  RUN yarn workspaces focus --production && yarn rebuild"
4115
4444
  - |-
@@ -4471,7 +4800,7 @@ app3 🧪 test:
4471
4800
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
4472
4801
  - collapseable_section_end "nodeinstall"
4473
4802
  - collapseable_section_start "yarninstall" "Yarn install"
4474
- - yarn install --immutable
4803
+ - yarn install --immutable --inline-builds
4475
4804
  - collapseable_section_end "yarninstall"
4476
4805
  - yarn build
4477
4806
  cache:
@@ -4527,7 +4856,8 @@ app3 🧪 test:
4527
4856
  - export DOCKER_IMAGE="$CI_REGISTRY_IMAGE/$DOCKER_IMAGE_NAME"
4528
4857
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
4529
4858
  - |-
4530
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
4859
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
4860
+ COPY --chown=node:node $APP_DIR .
4531
4861
  RUN yarn plugin import workspace-tools
4532
4862
  RUN yarn workspaces focus --production && yarn rebuild"
4533
4863
  - |-