@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
- 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="asia-east1-docker.pkg.dev/asdf/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="app"
532
+ - collapseable_section_end "injectvars"
533
+ - cd app
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="app"
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 app
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: app-yarn-mr$CI_MERGE_REQUEST_IID
569
+ policy: pull-push
570
+ paths:
571
+ - app/.yarn
572
+ fallback_keys:
573
+ - app-yarn
574
+ - key: app-node-modules-mr$CI_MERGE_REQUEST_IID
575
+ policy: pull-push
576
+ paths:
577
+ - app/node_modules
578
+ fallback_keys:
579
+ - app-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="app"
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 app
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: app-yarn-mr$CI_MERGE_REQUEST_IID
613
+ policy: pull-push
614
+ paths:
615
+ - app/.yarn
616
+ fallback_keys:
617
+ - app-yarn
618
+ - key: app-node-modules-mr$CI_MERGE_REQUEST_IID
619
+ policy: pull-push
620
+ paths:
621
+ - app/node_modules
622
+ fallback_keys:
623
+ - app-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: app-yarn
688
+ - key: app-yarn-mr$CI_MERGE_REQUEST_IID
588
689
  policy: pull-push
589
690
  paths:
590
691
  - app/.yarn
591
- - key: app-node-modules
692
+ fallback_keys:
693
+ - app-yarn
694
+ - key: app-node-modules-mr$CI_MERGE_REQUEST_IID
592
695
  policy: pull-push
593
696
  paths:
594
697
  - app/node_modules
698
+ fallback_keys:
699
+ - app-node-modules
595
700
  artifacts:
596
701
  paths:
597
702
  - app/__build_info.json
@@ -635,7 +740,8 @@ api 🧪 test:
635
740
  - export DOCKER_CACHE_IMAGE="asia-east1-docker.pkg.dev/asdf/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: app-yarn
767
+ - key: app-yarn-mr$CI_MERGE_REQUEST_IID
662
768
  policy: pull
663
769
  paths:
664
770
  - app/.yarn
771
+ fallback_keys:
772
+ - app-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="asia-east1-docker.pkg.dev/asdf/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="asia-east1-docker.pkg.dev/asdf/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
  - |-
@@ -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
@@ -286,7 +277,7 @@ api 🧪 test:
286
277
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
287
278
  - collapseable_section_end "nodeinstall"
288
279
  - collapseable_section_start "yarninstall" "Yarn install"
289
- - yarn install --immutable
280
+ - yarn install --immutable --inline-builds
290
281
  - collapseable_section_end "yarninstall"
291
282
  - yarn build
292
283
  cache:
@@ -341,7 +332,8 @@ api 🧪 test:
341
332
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/google-project-id/catladder-deploy/pan-test-app/caches/api"
342
333
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
343
334
  - |-
344
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
335
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
336
+ COPY --chown=node:node $APP_DIR .
345
337
  RUN yarn plugin import workspace-tools
346
338
  RUN yarn workspaces focus --production && yarn rebuild"
347
339
  - |-
@@ -551,17 +543,17 @@ api 🧪 test:
551
543
  - when: on_success
552
544
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
553
545
  needs:
554
- - job: api 👮 lint
546
+ - job: 'api 👮 lint | dev '
555
547
  artifacts: false
556
548
  - job: 'api 🔨 app | dev '
557
549
  artifacts: false
558
550
  - job: 'api 🔨 docker | dev '
559
551
  artifacts: false
560
- - job: api 🧪 test
552
+ - job: 'api 🧪 test | dev '
561
553
  artifacts: false
562
554
  - job: 'api 🧾 sbom | dev '
563
555
  artifacts: true
564
- - job: api 🛡 audit
556
+ - job: 'api 🛡 audit | dev '
565
557
  artifacts: false
566
558
  retry: *a1
567
559
  interruptible: true
@@ -605,6 +597,115 @@ api 🧪 test:
605
597
  retry: *a1
606
598
  interruptible: true
607
599
  allow_failure: true
600
+ 'api 🛡 audit | review ':
601
+ stage: test
602
+ image: path/to/docker/jobs-default:the-version
603
+ variables:
604
+ KUBERNETES_CPU_REQUEST: '0.45'
605
+ KUBERNETES_MEMORY_REQUEST: 1Gi
606
+ KUBERNETES_MEMORY_LIMIT: 4Gi
607
+ script:
608
+ - collapseable_section_start "injectvars" "Injecting variables"
609
+ - export APP_PATH="api"
610
+ - collapseable_section_end "injectvars"
611
+ - cd api
612
+ - yarn npm audit --environment production
613
+ rules:
614
+ - when: never
615
+ if: $CI_PIPELINE_SOURCE == "trigger"
616
+ - if: $CI_MERGE_REQUEST_ID
617
+ needs: []
618
+ retry: *a1
619
+ interruptible: true
620
+ allow_failure: true
621
+ 'api 👮 lint | review ':
622
+ stage: test
623
+ image: path/to/docker/jobs-default:the-version
624
+ variables:
625
+ KUBERNETES_CPU_REQUEST: '0.45'
626
+ KUBERNETES_MEMORY_REQUEST: 1Gi
627
+ KUBERNETES_MEMORY_LIMIT: 4Gi
628
+ script:
629
+ - collapseable_section_start "injectvars" "Injecting variables"
630
+ - export APP_PATH="api"
631
+ - collapseable_section_end "injectvars"
632
+ - collapseable_section_start "nodeinstall" "Ensure node version"
633
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
634
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
635
+ - collapseable_section_end "nodeinstall"
636
+ - cd api
637
+ - collapseable_section_start "nodeinstall" "Ensure node version"
638
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
639
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
640
+ - collapseable_section_end "nodeinstall"
641
+ - collapseable_section_start "yarninstall" "Yarn install"
642
+ - yarn install --immutable --inline-builds
643
+ - collapseable_section_end "yarninstall"
644
+ - yarn lint
645
+ cache:
646
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
647
+ policy: pull-push
648
+ paths:
649
+ - api/.yarn
650
+ fallback_keys:
651
+ - api-yarn
652
+ - key: api-node-modules-mr$CI_MERGE_REQUEST_IID
653
+ policy: pull-push
654
+ paths:
655
+ - api/node_modules
656
+ fallback_keys:
657
+ - api-node-modules
658
+ rules:
659
+ - when: never
660
+ if: $CI_PIPELINE_SOURCE == "trigger"
661
+ - if: $CI_MERGE_REQUEST_ID
662
+ needs: []
663
+ retry: *a1
664
+ interruptible: true
665
+ 'api 🧪 test | review ':
666
+ stage: test
667
+ image: path/to/docker/jobs-testing-chrome:the-version
668
+ variables:
669
+ KUBERNETES_CPU_REQUEST: '0.45'
670
+ KUBERNETES_MEMORY_REQUEST: 1Gi
671
+ KUBERNETES_MEMORY_LIMIT: 4Gi
672
+ script:
673
+ - collapseable_section_start "injectvars" "Injecting variables"
674
+ - export APP_PATH="api"
675
+ - collapseable_section_end "injectvars"
676
+ - collapseable_section_start "nodeinstall" "Ensure node version"
677
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
678
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
679
+ - collapseable_section_end "nodeinstall"
680
+ - cd api
681
+ - collapseable_section_start "nodeinstall" "Ensure node version"
682
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
683
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
684
+ - collapseable_section_end "nodeinstall"
685
+ - collapseable_section_start "yarninstall" "Yarn install"
686
+ - yarn install --immutable --inline-builds
687
+ - collapseable_section_end "yarninstall"
688
+ - yarn test
689
+ cache:
690
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
691
+ policy: pull-push
692
+ paths:
693
+ - api/.yarn
694
+ fallback_keys:
695
+ - api-yarn
696
+ - key: api-node-modules-mr$CI_MERGE_REQUEST_IID
697
+ policy: pull-push
698
+ paths:
699
+ - api/node_modules
700
+ fallback_keys:
701
+ - api-node-modules
702
+ rules:
703
+ - when: never
704
+ if: $CI_PIPELINE_SOURCE == "trigger"
705
+ - if: $CI_MERGE_REQUEST_ID
706
+ needs: []
707
+ retry: *a1
708
+ interruptible: true
608
709
  'api 🔨 app | review ':
609
710
  stage: build
610
711
  image: path/to/docker/jobs-default:the-version
@@ -674,18 +775,22 @@ api 🧪 test:
674
775
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
675
776
  - collapseable_section_end "nodeinstall"
676
777
  - collapseable_section_start "yarninstall" "Yarn install"
677
- - yarn install --immutable
778
+ - yarn install --immutable --inline-builds
678
779
  - collapseable_section_end "yarninstall"
679
780
  - yarn build
680
781
  cache:
681
- - key: api-yarn
782
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
682
783
  policy: pull-push
683
784
  paths:
684
785
  - api/.yarn
685
- - key: api-node-modules
786
+ fallback_keys:
787
+ - api-yarn
788
+ - key: api-node-modules-mr$CI_MERGE_REQUEST_IID
686
789
  policy: pull-push
687
790
  paths:
688
791
  - api/node_modules
792
+ fallback_keys:
793
+ - api-node-modules
689
794
  artifacts:
690
795
  paths:
691
796
  - api/__build_info.json
@@ -729,7 +834,8 @@ api 🧪 test:
729
834
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/google-project-id/catladder-deploy/pan-test-app/caches/api"
730
835
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
731
836
  - |-
732
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
837
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
838
+ COPY --chown=node:node $APP_DIR .
733
839
  RUN yarn plugin import workspace-tools
734
840
  RUN yarn workspaces focus --production && yarn rebuild"
735
841
  - |-
@@ -752,10 +858,12 @@ api 🧪 test:
752
858
  - docker push $DOCKER_CACHE_IMAGE
753
859
  - collapseable_section_end "docker-push"
754
860
  cache:
755
- - key: api-yarn
861
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
756
862
  policy: pull
757
863
  paths:
758
864
  - api/.yarn
865
+ fallback_keys:
866
+ - api-yarn
759
867
  rules:
760
868
  - when: never
761
869
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -942,17 +1050,17 @@ api 🧪 test:
942
1050
  - when: on_success
943
1051
  if: $CI_MERGE_REQUEST_ID
944
1052
  needs:
945
- - job: api 👮 lint
1053
+ - job: 'api 👮 lint | review '
946
1054
  artifacts: false
947
1055
  - job: 'api 🔨 app | review '
948
1056
  artifacts: false
949
1057
  - job: 'api 🔨 docker | review '
950
1058
  artifacts: false
951
- - job: api 🧪 test
1059
+ - job: 'api 🧪 test | review '
952
1060
  artifacts: false
953
1061
  - job: 'api 🧾 sbom | review '
954
1062
  artifacts: true
955
- - job: api 🛡 audit
1063
+ - job: 'api 🛡 audit | review '
956
1064
  artifacts: false
957
1065
  retry: *a1
958
1066
  interruptible: true
@@ -1071,7 +1179,7 @@ api 🧪 test:
1071
1179
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1072
1180
  - collapseable_section_end "nodeinstall"
1073
1181
  - collapseable_section_start "yarninstall" "Yarn install"
1074
- - yarn install --immutable
1182
+ - yarn install --immutable --inline-builds
1075
1183
  - collapseable_section_end "yarninstall"
1076
1184
  - yarn build
1077
1185
  cache:
@@ -1126,7 +1234,8 @@ api 🧪 test:
1126
1234
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/google-project-id/catladder-deploy/pan-test-app/caches/api"
1127
1235
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1128
1236
  - |-
1129
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1237
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1238
+ COPY --chown=node:node $APP_DIR .
1130
1239
  RUN yarn plugin import workspace-tools
1131
1240
  RUN yarn workspaces focus --production && yarn rebuild"
1132
1241
  - |-
@@ -1452,7 +1561,7 @@ api 🧪 test:
1452
1561
  - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
1453
1562
  - collapseable_section_end "nodeinstall"
1454
1563
  - collapseable_section_start "yarninstall" "Yarn install"
1455
- - yarn install --immutable
1564
+ - yarn install --immutable --inline-builds
1456
1565
  - collapseable_section_end "yarninstall"
1457
1566
  - yarn build
1458
1567
  cache:
@@ -1507,7 +1616,8 @@ api 🧪 test:
1507
1616
  - export DOCKER_CACHE_IMAGE="europe-west6-docker.pkg.dev/google-project-id/catladder-deploy/pan-test-app/caches/api"
1508
1617
  - export DOCKER_IMAGE_TAG="$CI_COMMIT_SHA"
1509
1618
  - |-
1510
- export DOCKER_COPY_AND_INSTALL_APP="COPY --chown=node:node $APP_DIR .
1619
+ export DOCKER_COPY_AND_INSTALL_APP="ENV YARN_ENABLE_INLINE_BUILDS=1
1620
+ COPY --chown=node:node $APP_DIR .
1511
1621
  RUN yarn plugin import workspace-tools
1512
1622
  RUN yarn workspaces focus --production && yarn rebuild"
1513
1623
  - |-