@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:
@@ -329,7 +320,8 @@ www 🧪 test:
329
320
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/google-project-id/catladder-deploy/pan-agent-example-app/caches/www"
330
321
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
331
322
  - |-
332
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
323
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
324
+ COPY --chown=node:node $APP_DIR .
333
325
  RUN yarn plugin import workspace-tools
334
326
  RUN yarn workspaces focus --production && yarn rebuild"
335
327
  - |-
@@ -482,17 +474,17 @@ www 🧪 test:
482
474
  - when: on_success
483
475
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
484
476
  needs:
485
- - job: www 👮 lint
477
+ - job: 'www 👮 lint | dev '
486
478
  artifacts: false
487
479
  - job: 'www 🔨 app | dev '
488
480
  artifacts: false
489
481
  - job: 'www 🔨 docker | dev '
490
482
  artifacts: false
491
- - job: www 🧪 test
483
+ - job: 'www 🧪 test | dev '
492
484
  artifacts: false
493
485
  - job: 'www 🧾 sbom | dev '
494
486
  artifacts: true
495
- - job: www 🛡 audit
487
+ - job: 'www 🛡 audit | dev '
496
488
  artifacts: false
497
489
  retry: *a1
498
490
  interruptible: true
@@ -531,6 +523,115 @@ www 🧪 test:
531
523
  retry: *a1
532
524
  interruptible: true
533
525
  allow_failure: true
526
+ 'www 🛡 audit | review ':
527
+ stage: test
528
+ image: path/to/docker/jobs-default:the-version
529
+ variables:
530
+ KUBERNETES_CPU_REQUEST: '0.45'
531
+ KUBERNETES_MEMORY_REQUEST: 1Gi
532
+ KUBERNETES_MEMORY_LIMIT: 4Gi
533
+ script:
534
+ - collapseable_section_start "injectvars" "Injecting variables"
535
+ - export APP_PATH="www"
536
+ - collapseable_section_end "injectvars"
537
+ - cd www
538
+ - yarn npm audit --environment production
539
+ rules:
540
+ - when: never
541
+ if: $CI_PIPELINE_SOURCE == "trigger"
542
+ - if: $CI_MERGE_REQUEST_ID
543
+ needs: []
544
+ retry: *a1
545
+ interruptible: true
546
+ allow_failure: true
547
+ 'www 👮 lint | 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="www"
557
+ - collapseable_section_end "injectvars"
558
+ - collapseable_section_start "nodeinstall" "Ensure node version"
559
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
560
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
561
+ - collapseable_section_end "nodeinstall"
562
+ - cd www
563
+ - collapseable_section_start "nodeinstall" "Ensure node version"
564
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
565
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
566
+ - collapseable_section_end "nodeinstall"
567
+ - collapseable_section_start "yarninstall" "Yarn install"
568
+ - yarn install --immutable --inline-builds
569
+ - collapseable_section_end "yarninstall"
570
+ - yarn lint
571
+ cache:
572
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
573
+ policy: pull-push
574
+ paths:
575
+ - www/.yarn
576
+ fallback_keys:
577
+ - www-yarn
578
+ - key: www-node-modules-mr$CI_MERGE_REQUEST_IID
579
+ policy: pull-push
580
+ paths:
581
+ - www/node_modules
582
+ fallback_keys:
583
+ - www-node-modules
584
+ rules:
585
+ - when: never
586
+ if: $CI_PIPELINE_SOURCE == "trigger"
587
+ - if: $CI_MERGE_REQUEST_ID
588
+ needs: []
589
+ retry: *a1
590
+ interruptible: true
591
+ 'www 🧪 test | review ':
592
+ stage: test
593
+ image: path/to/docker/jobs-testing-chrome: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="www"
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 www
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 test
615
+ cache:
616
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
617
+ policy: pull-push
618
+ paths:
619
+ - www/.yarn
620
+ fallback_keys:
621
+ - www-yarn
622
+ - key: www-node-modules-mr$CI_MERGE_REQUEST_IID
623
+ policy: pull-push
624
+ paths:
625
+ - www/node_modules
626
+ fallback_keys:
627
+ - www-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
534
635
  'www 🔨 app | review ':
535
636
  stage: build
536
637
  image: path/to/docker/jobs-default:the-version
@@ -584,22 +685,28 @@ www 🧪 test:
584
685
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
585
686
  - collapseable_section_end "nodeinstall"
586
687
  - collapseable_section_start "yarninstall" "Yarn install"
587
- - yarn install --immutable
688
+ - yarn install --immutable --inline-builds
588
689
  - collapseable_section_end "yarninstall"
589
690
  - yarn build
590
691
  cache:
591
- - key: www-yarn
692
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
592
693
  policy: pull-push
593
694
  paths:
594
695
  - www/.yarn
595
- - key: www-node-modules
696
+ fallback_keys:
697
+ - www-yarn
698
+ - key: www-node-modules-mr$CI_MERGE_REQUEST_IID
596
699
  policy: pull-push
597
700
  paths:
598
701
  - www/node_modules
599
- - key: www-default
702
+ fallback_keys:
703
+ - www-node-modules
704
+ - key: www-default-mr$CI_MERGE_REQUEST_IID
600
705
  policy: pull-push
601
706
  paths:
602
707
  - www/.next/cache
708
+ fallback_keys:
709
+ - www-default
603
710
  artifacts:
604
711
  paths:
605
712
  - www/__build_info.json
@@ -643,7 +750,8 @@ www 🧪 test:
643
750
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/google-project-id/catladder-deploy/pan-agent-example-app/caches/www"
644
751
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
645
752
  - |-
646
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
753
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
754
+ COPY --chown=node:node $APP_DIR .
647
755
  RUN yarn plugin import workspace-tools
648
756
  RUN yarn workspaces focus --production && yarn rebuild"
649
757
  - |-
@@ -666,10 +774,12 @@ www 🧪 test:
666
774
  - docker push $DOCKER_CACHE_IMAGE
667
775
  - collapseable_section_end "docker-push"
668
776
  cache:
669
- - key: www-yarn
777
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
670
778
  policy: pull
671
779
  paths:
672
780
  - www/.yarn
781
+ fallback_keys:
782
+ - www-yarn
673
783
  rules:
674
784
  - when: never
675
785
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -799,17 +909,17 @@ www 🧪 test:
799
909
  - when: on_success
800
910
  if: $CI_MERGE_REQUEST_ID
801
911
  needs:
802
- - job: www 👮 lint
912
+ - job: 'www 👮 lint | review '
803
913
  artifacts: false
804
914
  - job: 'www 🔨 app | review '
805
915
  artifacts: false
806
916
  - job: 'www 🔨 docker | review '
807
917
  artifacts: false
808
- - job: www 🧪 test
918
+ - job: 'www 🧪 test | review '
809
919
  artifacts: false
810
920
  - job: 'www 🧾 sbom | review '
811
921
  artifacts: true
812
- - job: www 🛡 audit
922
+ - job: 'www 🛡 audit | review '
813
923
  artifacts: false
814
924
  retry: *a1
815
925
  interruptible: true
@@ -904,7 +1014,7 @@ www 🧪 test:
904
1014
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
905
1015
  - collapseable_section_end "nodeinstall"
906
1016
  - collapseable_section_start "yarninstall" "Yarn install"
907
- - yarn install --immutable
1017
+ - yarn install --immutable --inline-builds
908
1018
  - collapseable_section_end "yarninstall"
909
1019
  - yarn build
910
1020
  cache:
@@ -963,7 +1073,8 @@ www 🧪 test:
963
1073
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/google-project-id/catladder-deploy/pan-agent-example-app/caches/www"
964
1074
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
965
1075
  - |-
966
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1076
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1077
+ COPY --chown=node:node $APP_DIR .
967
1078
  RUN yarn plugin import workspace-tools
968
1079
  RUN yarn workspaces focus --production && yarn rebuild"
969
1080
  - |-
@@ -1211,7 +1322,7 @@ www 🧪 test:
1211
1322
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1212
1323
  - collapseable_section_end "nodeinstall"
1213
1324
  - collapseable_section_start "yarninstall" "Yarn install"
1214
- - yarn install --immutable
1325
+ - yarn install --immutable --inline-builds
1215
1326
  - collapseable_section_end "yarninstall"
1216
1327
  - yarn build
1217
1328
  cache:
@@ -1270,7 +1381,8 @@ www 🧪 test:
1270
1381
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/google-project-id/catladder-deploy/pan-agent-example-app/caches/www"
1271
1382
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1272
1383
  - |-
1273
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1384
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1385
+ COPY --chown=node:node $APP_DIR .
1274
1386
  RUN yarn plugin import workspace-tools
1275
1387
  RUN yarn workspaces focus --production && yarn rebuild"
1276
1388
  - |-
@@ -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
- api 🛡 audit:
106
+ 'api 🛡 audit | dev ':
107
107
  stage: test
108
108
  image: path/to/docker/jobs-default:the-version
109
109
  variables:
@@ -120,9 +120,6 @@ api 🛡 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 @@ api 🛡 audit:
131
128
  - stuck_or_timeout_failure
132
129
  interruptible: true
133
130
  allow_failure: true
134
- api 👮 lint:
131
+ 'api 👮 lint | dev ':
135
132
  stage: test
136
133
  image: path/to/docker/jobs-default:the-version
137
134
  variables:
@@ -152,7 +149,7 @@ api 👮 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 @@ api 👮 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
- api 🧪 test:
171
+ 'api 🧪 test | dev ':
178
172
  stage: test
179
173
  image: path/to/docker/jobs-testing-chrome:the-version
180
174
  variables:
@@ -195,7 +189,7 @@ api 🧪 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 @@ api 🧪 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 @@ api 🧪 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 @@ api 🧪 test:
325
316
  - export DOCKER_CACHE_IMAGE="europe-west4-docker.pkg.dev/google-project-id/catladder-deploy/pan-test-app/caches/api"
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 @@ api 🧪 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: api 👮 lint
473
+ - job: 'api 👮 lint | dev '
482
474
  artifacts: false
483
475
  - job: 'api 🔨 app | dev '
484
476
  artifacts: false
485
477
  - job: 'api 🔨 docker | dev '
486
478
  artifacts: false
487
- - job: api 🧪 test
479
+ - job: 'api 🧪 test | dev '
488
480
  artifacts: false
489
481
  - job: 'api 🧾 sbom | dev '
490
482
  artifacts: true
491
- - job: api 🛡 audit
483
+ - job: 'api 🛡 audit | dev '
492
484
  artifacts: false
493
485
  retry: *a1
494
486
  interruptible: true
@@ -527,6 +519,115 @@ api 🧪 test:
527
519
  retry: *a1
528
520
  interruptible: true
529
521
  allow_failure: true
522
+ 'api 🛡 audit | review ':
523
+ stage: test
524
+ image: path/to/docker/jobs-default:the-version
525
+ variables:
526
+ KUBERNETES_CPU_REQUEST: '0.45'
527
+ KUBERNETES_MEMORY_REQUEST: 1Gi
528
+ KUBERNETES_MEMORY_LIMIT: 4Gi
529
+ script:
530
+ - collapseable_section_start "injectvars" "Injecting variables"
531
+ - export APP_PATH="api"
532
+ - collapseable_section_end "injectvars"
533
+ - cd api
534
+ - yarn npm audit --environment production
535
+ rules:
536
+ - when: never
537
+ if: $CI_PIPELINE_SOURCE == "trigger"
538
+ - if: $CI_MERGE_REQUEST_ID
539
+ needs: []
540
+ retry: *a1
541
+ interruptible: true
542
+ allow_failure: true
543
+ 'api 👮 lint | review ':
544
+ stage: test
545
+ image: path/to/docker/jobs-default:the-version
546
+ variables:
547
+ KUBERNETES_CPU_REQUEST: '0.45'
548
+ KUBERNETES_MEMORY_REQUEST: 1Gi
549
+ KUBERNETES_MEMORY_LIMIT: 4Gi
550
+ script:
551
+ - collapseable_section_start "injectvars" "Injecting variables"
552
+ - export APP_PATH="api"
553
+ - collapseable_section_end "injectvars"
554
+ - collapseable_section_start "nodeinstall" "Ensure node version"
555
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
556
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
557
+ - collapseable_section_end "nodeinstall"
558
+ - cd api
559
+ - collapseable_section_start "nodeinstall" "Ensure node version"
560
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
561
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
562
+ - collapseable_section_end "nodeinstall"
563
+ - collapseable_section_start "yarninstall" "Yarn install"
564
+ - yarn install --immutable --inline-builds
565
+ - collapseable_section_end "yarninstall"
566
+ - yarn lint
567
+ cache:
568
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
569
+ policy: pull-push
570
+ paths:
571
+ - api/.yarn
572
+ fallback_keys:
573
+ - api-yarn
574
+ - key: api-node-modules-mr$CI_MERGE_REQUEST_IID
575
+ policy: pull-push
576
+ paths:
577
+ - api/node_modules
578
+ fallback_keys:
579
+ - api-node-modules
580
+ rules:
581
+ - when: never
582
+ if: $CI_PIPELINE_SOURCE == "trigger"
583
+ - if: $CI_MERGE_REQUEST_ID
584
+ needs: []
585
+ retry: *a1
586
+ interruptible: true
587
+ 'api 🧪 test | review ':
588
+ stage: test
589
+ image: path/to/docker/jobs-testing-chrome:the-version
590
+ variables:
591
+ KUBERNETES_CPU_REQUEST: '0.45'
592
+ KUBERNETES_MEMORY_REQUEST: 1Gi
593
+ KUBERNETES_MEMORY_LIMIT: 4Gi
594
+ script:
595
+ - collapseable_section_start "injectvars" "Injecting variables"
596
+ - export APP_PATH="api"
597
+ - collapseable_section_end "injectvars"
598
+ - collapseable_section_start "nodeinstall" "Ensure node version"
599
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
600
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
601
+ - collapseable_section_end "nodeinstall"
602
+ - cd api
603
+ - collapseable_section_start "nodeinstall" "Ensure node version"
604
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
605
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
606
+ - collapseable_section_end "nodeinstall"
607
+ - collapseable_section_start "yarninstall" "Yarn install"
608
+ - yarn install --immutable --inline-builds
609
+ - collapseable_section_end "yarninstall"
610
+ - yarn test
611
+ cache:
612
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
613
+ policy: pull-push
614
+ paths:
615
+ - api/.yarn
616
+ fallback_keys:
617
+ - api-yarn
618
+ - key: api-node-modules-mr$CI_MERGE_REQUEST_IID
619
+ policy: pull-push
620
+ paths:
621
+ - api/node_modules
622
+ fallback_keys:
623
+ - api-node-modules
624
+ rules:
625
+ - when: never
626
+ if: $CI_PIPELINE_SOURCE == "trigger"
627
+ - if: $CI_MERGE_REQUEST_ID
628
+ needs: []
629
+ retry: *a1
630
+ interruptible: true
530
631
  'api 🔨 app | review ':
531
632
  stage: build
532
633
  image: path/to/docker/jobs-default:the-version
@@ -580,18 +681,22 @@ api 🧪 test:
580
681
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
581
682
  - collapseable_section_end "nodeinstall"
582
683
  - collapseable_section_start "yarninstall" "Yarn install"
583
- - yarn install --immutable
684
+ - yarn install --immutable --inline-builds
584
685
  - collapseable_section_end "yarninstall"
585
686
  - yarn build
586
687
  cache:
587
- - key: api-yarn
688
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
588
689
  policy: pull-push
589
690
  paths:
590
691
  - api/.yarn
591
- - key: api-node-modules
692
+ fallback_keys:
693
+ - api-yarn
694
+ - key: api-node-modules-mr$CI_MERGE_REQUEST_IID
592
695
  policy: pull-push
593
696
  paths:
594
697
  - api/node_modules
698
+ fallback_keys:
699
+ - api-node-modules
595
700
  artifacts:
596
701
  paths:
597
702
  - api/__build_info.json
@@ -635,7 +740,8 @@ api 🧪 test:
635
740
  - export DOCKER_CACHE_IMAGE="europe-west4-docker.pkg.dev/google-project-id/catladder-deploy/pan-test-app/caches/api"
636
741
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
637
742
  - |-
638
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
743
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
744
+ COPY --chown=node:node $APP_DIR .
639
745
  RUN yarn plugin import workspace-tools
640
746
  RUN yarn workspaces focus --production && yarn rebuild"
641
747
  - |-
@@ -658,10 +764,12 @@ api 🧪 test:
658
764
  - docker push $DOCKER_CACHE_IMAGE
659
765
  - collapseable_section_end "docker-push"
660
766
  cache:
661
- - key: api-yarn
767
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
662
768
  policy: pull
663
769
  paths:
664
770
  - api/.yarn
771
+ fallback_keys:
772
+ - api-yarn
665
773
  rules:
666
774
  - when: never
667
775
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -791,17 +899,17 @@ api 🧪 test:
791
899
  - when: on_success
792
900
  if: $CI_MERGE_REQUEST_ID
793
901
  needs:
794
- - job: api 👮 lint
902
+ - job: 'api 👮 lint | review '
795
903
  artifacts: false
796
904
  - job: 'api 🔨 app | review '
797
905
  artifacts: false
798
906
  - job: 'api 🔨 docker | review '
799
907
  artifacts: false
800
- - job: api 🧪 test
908
+ - job: 'api 🧪 test | review '
801
909
  artifacts: false
802
910
  - job: 'api 🧾 sbom | review '
803
911
  artifacts: true
804
- - job: api 🛡 audit
912
+ - job: 'api 🛡 audit | review '
805
913
  artifacts: false
806
914
  retry: *a1
807
915
  interruptible: true
@@ -896,7 +1004,7 @@ api 🧪 test:
896
1004
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
897
1005
  - collapseable_section_end "nodeinstall"
898
1006
  - collapseable_section_start "yarninstall" "Yarn install"
899
- - yarn install --immutable
1007
+ - yarn install --immutable --inline-builds
900
1008
  - collapseable_section_end "yarninstall"
901
1009
  - yarn build
902
1010
  cache:
@@ -951,7 +1059,8 @@ api 🧪 test:
951
1059
  - export DOCKER_CACHE_IMAGE="europe-west4-docker.pkg.dev/google-project-id/catladder-deploy/pan-test-app/caches/api"
952
1060
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
953
1061
  - |-
954
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1062
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1063
+ COPY --chown=node:node $APP_DIR .
955
1064
  RUN yarn plugin import workspace-tools
956
1065
  RUN yarn workspaces focus --production && yarn rebuild"
957
1066
  - |-
@@ -1199,7 +1308,7 @@ api 🧪 test:
1199
1308
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1200
1309
  - collapseable_section_end "nodeinstall"
1201
1310
  - collapseable_section_start "yarninstall" "Yarn install"
1202
- - yarn install --immutable
1311
+ - yarn install --immutable --inline-builds
1203
1312
  - collapseable_section_end "yarninstall"
1204
1313
  - yarn build
1205
1314
  cache:
@@ -1254,7 +1363,8 @@ api 🧪 test:
1254
1363
  - export DOCKER_CACHE_IMAGE="europe-west4-docker.pkg.dev/google-project-id/catladder-deploy/pan-test-app/caches/api"
1255
1364
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1256
1365
  - |-
1257
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1366
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1367
+ COPY --chown=node:node $APP_DIR .
1258
1368
  RUN yarn plugin import workspace-tools
1259
1369
  RUN yarn workspaces focus --production && yarn rebuild"
1260
1370
  - |-