@catladder/pipeline 3.24.0 โ†’ 3.26.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 (75) hide show
  1. package/dist/build/custom/testJob.js +1 -2
  2. package/dist/build/index.js +2 -1
  3. package/dist/build/node/testJob.js +1 -2
  4. package/dist/build/rails/test.js +1 -2
  5. package/dist/constants.js +1 -1
  6. package/dist/pipeline/agent/createAgentReviewJob.js +1 -0
  7. package/dist/pipeline/agent/shared.d.ts +1 -1
  8. package/dist/pipeline/agent/shared.js +0 -1
  9. package/dist/pipeline/createMainPipeline.js +1 -0
  10. package/dist/pipeline/gitlab/cache.d.ts +9 -0
  11. package/dist/pipeline/gitlab/cache.js +47 -0
  12. package/dist/pipeline/gitlab/createGitlabJobs.js +7 -7
  13. package/dist/tsconfig.tsbuildinfo +1 -1
  14. package/dist/types/jobs.d.ts +2 -3
  15. package/examples/__snapshots__/automatic-releases.test.ts.snap +131 -21
  16. package/examples/__snapshots__/cloud-run-health-check-defaults.test.ts.snap +131 -21
  17. package/examples/__snapshots__/cloud-run-health-check-only-startup.test.ts.snap +131 -21
  18. package/examples/__snapshots__/cloud-run-health-check.test.ts.snap +131 -21
  19. package/examples/__snapshots__/cloud-run-http2.test.ts.snap +131 -21
  20. package/examples/__snapshots__/cloud-run-memory-limit.test.ts.snap +131 -21
  21. package/examples/__snapshots__/cloud-run-meteor-with-worker.test.ts.snap +127 -21
  22. package/examples/__snapshots__/cloud-run-nextjs.test.ts.snap +134 -22
  23. package/examples/__snapshots__/cloud-run-no-cpu-throttling.test.ts.snap +131 -21
  24. package/examples/__snapshots__/cloud-run-no-service.test.ts.snap +131 -21
  25. package/examples/__snapshots__/cloud-run-non-public.test.ts.snap +131 -21
  26. package/examples/__snapshots__/cloud-run-post-stop-job.test.ts.snap +131 -21
  27. package/examples/__snapshots__/cloud-run-service-custom-vpc-connector.test.ts.snap +131 -21
  28. package/examples/__snapshots__/cloud-run-service-custom-vpc.test.ts.snap +131 -21
  29. package/examples/__snapshots__/cloud-run-service-gen2.test.ts.snap +131 -21
  30. package/examples/__snapshots__/cloud-run-service-increase-timout.test.ts.snap +131 -21
  31. package/examples/__snapshots__/cloud-run-service-with-volumes.test.ts.snap +131 -21
  32. package/examples/__snapshots__/cloud-run-storybook.test.ts.snap +13 -3
  33. package/examples/__snapshots__/cloud-run-with-agents.test.ts.snap +134 -22
  34. package/examples/__snapshots__/cloud-run-with-gpu.test.ts.snap +131 -21
  35. package/examples/__snapshots__/cloud-run-with-ngnix.test.ts.snap +131 -21
  36. package/examples/__snapshots__/cloud-run-with-sql-legacy-jobs.test.ts.snap +131 -21
  37. package/examples/__snapshots__/cloud-run-with-sql-multiple-dbs.test.ts.snap +393 -63
  38. package/examples/__snapshots__/cloud-run-with-sql-reuse-db.test.ts.snap +262 -42
  39. package/examples/__snapshots__/cloud-run-with-sql.test.ts.snap +131 -21
  40. package/examples/__snapshots__/cloud-run-with-worker.test.ts.snap +131 -21
  41. package/examples/__snapshots__/custom-build-job-with-tests.test.ts.snap +93 -22
  42. package/examples/__snapshots__/custom-deploy.test.ts.snap +131 -21
  43. package/examples/__snapshots__/custom-envs.test.ts.snap +326 -32
  44. package/examples/__snapshots__/custom-verify-job.test.ts.snap +134 -22
  45. package/examples/__snapshots__/git-submodule.test.ts.snap +131 -21
  46. package/examples/__snapshots__/kubernetes-application-customization.test.ts.snap +135 -21
  47. package/examples/__snapshots__/kubernetes-with-cloud-sql.test.ts.snap +135 -21
  48. package/examples/__snapshots__/kubernetes-with-jobs.test.ts.snap +266 -42
  49. package/examples/__snapshots__/kubernetes-with-mongodb.test.ts.snap +135 -21
  50. package/examples/__snapshots__/local-dot-env.test.ts.snap +135 -21
  51. package/examples/__snapshots__/meteor-kubernetes.test.ts.snap +127 -21
  52. package/examples/__snapshots__/modify-generated-files.test.ts.snap +122 -14
  53. package/examples/__snapshots__/modify-generated-yaml.test.ts.snap +122 -14
  54. package/examples/__snapshots__/multiline-var.test.ts.snap +393 -63
  55. package/examples/__snapshots__/native-app.test.ts.snap +265 -41
  56. package/examples/__snapshots__/node-build-with-custom-image.test.ts.snap +131 -21
  57. package/examples/__snapshots__/node-build-with-docker-additions.test.ts.snap +131 -21
  58. package/examples/__snapshots__/override-secrets.test.ts.snap +131 -21
  59. package/examples/__snapshots__/rails-k8s-with-worker-dockerfile.test.ts.snap +84 -22
  60. package/examples/__snapshots__/rails-k8s-with-worker.test.ts.snap +84 -22
  61. package/examples/__snapshots__/referencing-other-vars.test.ts.snap +393 -63
  62. package/examples/__snapshots__/wait-for-other-deploy.test.ts.snap +256 -40
  63. package/examples/__snapshots__/workspace-api-www-turbo-cache.test.ts.snap +147 -29
  64. package/examples/__snapshots__/workspace-api-www.test.ts.snap +147 -29
  65. package/package.json +1 -1
  66. package/src/build/custom/testJob.ts +0 -1
  67. package/src/build/index.ts +1 -0
  68. package/src/build/node/testJob.ts +0 -1
  69. package/src/build/rails/test.ts +0 -1
  70. package/src/pipeline/agent/createAgentReviewJob.ts +1 -0
  71. package/src/pipeline/agent/shared.ts +2 -2
  72. package/src/pipeline/createMainPipeline.ts +1 -0
  73. package/src/pipeline/gitlab/cache.ts +49 -0
  74. package/src/pipeline/gitlab/createGitlabJobs.ts +7 -9
  75. 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: audit-image
109
109
  services: &a1
@@ -128,9 +128,6 @@ www ๐Ÿ›ก audit:
128
128
  - when: never
129
129
  if: $CI_PIPELINE_SOURCE == "trigger"
130
130
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
131
- - when: never
132
- if: $CI_PIPELINE_SOURCE == "trigger"
133
- - if: $CI_MERGE_REQUEST_ID
134
131
  needs: []
135
132
  retry: &a2
136
133
  max: 2
@@ -139,7 +136,7 @@ www ๐Ÿ›ก audit:
139
136
  - stuck_or_timeout_failure
140
137
  interruptible: true
141
138
  allow_failure: true
142
- www ๐Ÿ‘ฎ lint:
139
+ 'www ๐Ÿ‘ฎ lint | dev ':
143
140
  stage: test
144
141
  image: lint-image
145
142
  services: *a1
@@ -161,13 +158,10 @@ www ๐Ÿ‘ฎ lint:
161
158
  - when: never
162
159
  if: $CI_PIPELINE_SOURCE == "trigger"
163
160
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
164
- - when: never
165
- if: $CI_PIPELINE_SOURCE == "trigger"
166
- - if: $CI_MERGE_REQUEST_ID
167
161
  needs: []
168
162
  retry: *a2
169
163
  interruptible: true
170
- www ๐Ÿงช test:
164
+ 'www ๐Ÿงช test | dev ':
171
165
  stage: test
172
166
  image: test-image
173
167
  services: *a1
@@ -190,9 +184,6 @@ www ๐Ÿงช test:
190
184
  - when: never
191
185
  if: $CI_PIPELINE_SOURCE == "trigger"
192
186
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
193
- - when: never
194
- if: $CI_PIPELINE_SOURCE == "trigger"
195
- - if: $CI_MERGE_REQUEST_ID
196
187
  needs: []
197
188
  retry: *a2
198
189
  interruptible: true
@@ -428,17 +419,17 @@ www ๐Ÿงช test:
428
419
  - when: on_success
429
420
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
430
421
  needs:
431
- - job: www ๐Ÿ‘ฎ lint
422
+ - job: 'www ๐Ÿ‘ฎ lint | dev '
432
423
  artifacts: false
433
424
  - job: 'www ๐Ÿ”จ app | dev '
434
425
  artifacts: false
435
426
  - job: 'www ๐Ÿ”จ docker | dev '
436
427
  artifacts: false
437
- - job: www ๐Ÿงช test
428
+ - job: 'www ๐Ÿงช test | dev '
438
429
  artifacts: false
439
430
  - job: 'www ๐Ÿงพ sbom | dev '
440
431
  artifacts: true
441
- - job: www ๐Ÿ›ก audit
432
+ - job: 'www ๐Ÿ›ก audit | dev '
442
433
  artifacts: false
443
434
  retry: *a2
444
435
  interruptible: true
@@ -477,6 +468,86 @@ www ๐Ÿงช test:
477
468
  retry: *a2
478
469
  interruptible: true
479
470
  allow_failure: true
471
+ 'www ๐Ÿ›ก audit | review ':
472
+ stage: test
473
+ image: audit-image
474
+ services: &a3
475
+ - name: job-service-1
476
+ command:
477
+ - --some-command=some-value
478
+ variables:
479
+ KUBERNETES_CPU_REQUEST: '0.45'
480
+ KUBERNETES_MEMORY_REQUEST: 1Gi
481
+ KUBERNETES_MEMORY_LIMIT: 4Gi
482
+ script:
483
+ - collapseable_section_start "injectvars" "Injecting variables"
484
+ - export APP_PATH="www"
485
+ - collapseable_section_end "injectvars"
486
+ - audit
487
+ artifacts:
488
+ paths: []
489
+ reports:
490
+ junit:
491
+ - www/dist/audit.xml
492
+ rules:
493
+ - when: never
494
+ if: $CI_PIPELINE_SOURCE == "trigger"
495
+ - if: $CI_MERGE_REQUEST_ID
496
+ needs: []
497
+ retry: *a2
498
+ interruptible: true
499
+ allow_failure: true
500
+ 'www ๐Ÿ‘ฎ lint | review ':
501
+ stage: test
502
+ image: lint-image
503
+ services: *a3
504
+ variables:
505
+ KUBERNETES_CPU_REQUEST: '0.45'
506
+ KUBERNETES_MEMORY_REQUEST: 1Gi
507
+ KUBERNETES_MEMORY_LIMIT: 4Gi
508
+ script:
509
+ - collapseable_section_start "injectvars" "Injecting variables"
510
+ - export APP_PATH="www"
511
+ - collapseable_section_end "injectvars"
512
+ - lint
513
+ artifacts:
514
+ paths: []
515
+ reports:
516
+ junit:
517
+ - www/dist/lint.xml
518
+ rules:
519
+ - when: never
520
+ if: $CI_PIPELINE_SOURCE == "trigger"
521
+ - if: $CI_MERGE_REQUEST_ID
522
+ needs: []
523
+ retry: *a2
524
+ interruptible: true
525
+ 'www ๐Ÿงช test | review ':
526
+ stage: test
527
+ image: test-image
528
+ services: *a3
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
+ - test
538
+ artifacts:
539
+ paths: []
540
+ reports:
541
+ junit:
542
+ - www/dist/TEST-*.xml
543
+ - www/dist/junit-*.xml
544
+ rules:
545
+ - when: never
546
+ if: $CI_PIPELINE_SOURCE == "trigger"
547
+ - if: $CI_MERGE_REQUEST_ID
548
+ needs: []
549
+ retry: *a2
550
+ interruptible: true
480
551
  'www ๐Ÿ”จ app | review ':
481
552
  stage: build
482
553
  image: foo
@@ -712,17 +783,17 @@ www ๐Ÿงช test:
712
783
  - when: on_success
713
784
  if: $CI_MERGE_REQUEST_ID
714
785
  needs:
715
- - job: www ๐Ÿ‘ฎ lint
786
+ - job: 'www ๐Ÿ‘ฎ lint | review '
716
787
  artifacts: false
717
788
  - job: 'www ๐Ÿ”จ app | review '
718
789
  artifacts: false
719
790
  - job: 'www ๐Ÿ”จ docker | review '
720
791
  artifacts: false
721
- - job: www ๐Ÿงช test
792
+ - job: 'www ๐Ÿงช test | review '
722
793
  artifacts: false
723
794
  - job: 'www ๐Ÿงพ sbom | review '
724
795
  artifacts: true
725
- - job: www ๐Ÿ›ก audit
796
+ - job: 'www ๐Ÿ›ก audit | review '
726
797
  artifacts: false
727
798
  retry: *a2
728
799
  interruptible: true
@@ -1319,13 +1390,13 @@ create release:
1319
1390
  - semanticRelease
1320
1391
  - echo '๐Ÿ‘‰ The project access token might be invald - run \`project-renew-token\` in catladder CLI to fix.'
1321
1392
  rules:
1322
- - &a3
1393
+ - &a4
1323
1394
  if: $CI_COMMIT_MESSAGE =~ /^chore\\(release\\).*/
1324
1395
  when: never
1325
- - &a4
1396
+ - &a5
1326
1397
  if: $CI_PIPELINE_SOURCE == "trigger"
1327
1398
  when: never
1328
- - &a5
1399
+ - &a6
1329
1400
  if: $CI_PIPELINE_SOURCE == "schedule"
1330
1401
  when: never
1331
1402
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
@@ -1339,9 +1410,9 @@ create release:
1339
1410
  - semanticRelease
1340
1411
  - echo '๐Ÿ‘‰ The project access token might be invald - run \`project-renew-token\` in catladder CLI to fix.'
1341
1412
  rules:
1342
- - *a3
1343
1413
  - *a4
1344
1414
  - *a5
1415
+ - *a6
1345
1416
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
1346
1417
  when: manual
1347
1418
  - if: $CI_COMMIT_BRANCH =~ /^[0-9]+.([0-9]+|x).x$/
@@ -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:
@@ -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:
@@ -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
@@ -281,6 +272,7 @@ www ๐Ÿงช test:
281
272
  - www/dist
282
273
  exclude:
283
274
  - www/.env
275
+ - www/.next/cache/**/*
284
276
  expire_in: 1 day
285
277
  when: always
286
278
  reports: {}
@@ -417,21 +409,130 @@ www ๐Ÿงช test:
417
409
  - when: on_success
418
410
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
419
411
  needs:
420
- - job: www ๐Ÿ‘ฎ lint
412
+ - job: 'www ๐Ÿ‘ฎ lint | dev '
421
413
  artifacts: false
422
414
  - job: 'www ๐Ÿ”จ app | dev '
423
415
  artifacts: false
424
416
  - job: 'www ๐Ÿ”จ docker | dev '
425
417
  artifacts: false
426
- - job: www ๐Ÿงช test
418
+ - job: 'www ๐Ÿงช test | dev '
427
419
  artifacts: false
428
420
  - job: 'www ๐Ÿงพ sbom | dev '
429
421
  artifacts: true
430
- - job: www ๐Ÿ›ก audit
422
+ - job: 'www ๐Ÿ›ก audit | dev '
431
423
  artifacts: false
432
424
  retry: *a1
433
425
  interruptible: true
434
426
  allow_failure: false
427
+ 'www ๐Ÿ›ก audit | review ':
428
+ stage: test
429
+ image: path/to/docker/jobs-default:the-version
430
+ variables:
431
+ KUBERNETES_CPU_REQUEST: '0.45'
432
+ KUBERNETES_MEMORY_REQUEST: 1Gi
433
+ KUBERNETES_MEMORY_LIMIT: 4Gi
434
+ script:
435
+ - collapseable_section_start "injectvars" "Injecting variables"
436
+ - export APP_PATH="www"
437
+ - collapseable_section_end "injectvars"
438
+ - cd www
439
+ - yarn npm audit --environment production
440
+ rules:
441
+ - when: never
442
+ if: $CI_PIPELINE_SOURCE == "trigger"
443
+ - if: $CI_MERGE_REQUEST_ID
444
+ needs: []
445
+ retry: *a1
446
+ interruptible: true
447
+ allow_failure: true
448
+ 'www ๐Ÿ‘ฎ lint | review ':
449
+ stage: test
450
+ image: path/to/docker/jobs-default:the-version
451
+ variables:
452
+ KUBERNETES_CPU_REQUEST: '0.45'
453
+ KUBERNETES_MEMORY_REQUEST: 1Gi
454
+ KUBERNETES_MEMORY_LIMIT: 4Gi
455
+ script:
456
+ - collapseable_section_start "injectvars" "Injecting variables"
457
+ - export APP_PATH="www"
458
+ - collapseable_section_end "injectvars"
459
+ - collapseable_section_start "nodeinstall" "Ensure node version"
460
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
461
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
462
+ - collapseable_section_end "nodeinstall"
463
+ - cd www
464
+ - collapseable_section_start "nodeinstall" "Ensure node version"
465
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
466
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
467
+ - collapseable_section_end "nodeinstall"
468
+ - collapseable_section_start "yarninstall" "Yarn install"
469
+ - yarn install --immutable
470
+ - collapseable_section_end "yarninstall"
471
+ - yarn lint
472
+ cache:
473
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
474
+ policy: pull-push
475
+ paths:
476
+ - www/.yarn
477
+ fallback_keys:
478
+ - www-yarn
479
+ - key: www-node-modules-mr$CI_MERGE_REQUEST_IID
480
+ policy: pull-push
481
+ paths:
482
+ - www/node_modules
483
+ fallback_keys:
484
+ - www-node-modules
485
+ rules:
486
+ - when: never
487
+ if: $CI_PIPELINE_SOURCE == "trigger"
488
+ - if: $CI_MERGE_REQUEST_ID
489
+ needs: []
490
+ retry: *a1
491
+ interruptible: true
492
+ 'www ๐Ÿงช test | review ':
493
+ stage: test
494
+ image: path/to/docker/jobs-testing-chrome:the-version
495
+ variables:
496
+ KUBERNETES_CPU_REQUEST: '0.45'
497
+ KUBERNETES_MEMORY_REQUEST: 1Gi
498
+ KUBERNETES_MEMORY_LIMIT: 4Gi
499
+ script:
500
+ - collapseable_section_start "injectvars" "Injecting variables"
501
+ - export APP_PATH="www"
502
+ - collapseable_section_end "injectvars"
503
+ - collapseable_section_start "nodeinstall" "Ensure node version"
504
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
505
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
506
+ - collapseable_section_end "nodeinstall"
507
+ - cd www
508
+ - collapseable_section_start "nodeinstall" "Ensure node version"
509
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
510
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
511
+ - collapseable_section_end "nodeinstall"
512
+ - collapseable_section_start "yarninstall" "Yarn install"
513
+ - yarn install --immutable
514
+ - collapseable_section_end "yarninstall"
515
+ - yarn test
516
+ cache:
517
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
518
+ policy: pull-push
519
+ paths:
520
+ - www/.yarn
521
+ fallback_keys:
522
+ - www-yarn
523
+ - key: www-node-modules-mr$CI_MERGE_REQUEST_IID
524
+ policy: pull-push
525
+ paths:
526
+ - www/node_modules
527
+ fallback_keys:
528
+ - www-node-modules
529
+ rules:
530
+ - when: never
531
+ if: $CI_PIPELINE_SOURCE == "trigger"
532
+ - if: $CI_MERGE_REQUEST_ID
533
+ needs: []
534
+ retry: *a1
535
+ interruptible: true
435
536
  'www ๐Ÿ”จ app | review ':
436
537
  stage: build
437
538
  image: path/to/docker/jobs-default:the-version
@@ -481,14 +582,18 @@ www ๐Ÿงช test:
481
582
  - collapseable_section_end "yarninstall"
482
583
  - yarn build
483
584
  cache:
484
- - key: www-yarn
585
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
485
586
  policy: pull-push
486
587
  paths:
487
588
  - www/.yarn
488
- - key: www-node-modules
589
+ fallback_keys:
590
+ - www-yarn
591
+ - key: www-node-modules-mr$CI_MERGE_REQUEST_IID
489
592
  policy: pull-push
490
593
  paths:
491
594
  - www/node_modules
595
+ fallback_keys:
596
+ - www-node-modules
492
597
  artifacts:
493
598
  paths:
494
599
  - www/__build_info.json
@@ -496,6 +601,7 @@ www ๐Ÿงช test:
496
601
  - www/dist
497
602
  exclude:
498
603
  - www/.env
604
+ - www/.next/cache/**/*
499
605
  expire_in: 1 day
500
606
  when: always
501
607
  reports: {}
@@ -554,10 +660,12 @@ www ๐Ÿงช test:
554
660
  - docker push $DOCKER_CACHE_IMAGE
555
661
  - collapseable_section_end "docker-push"
556
662
  cache:
557
- - key: www-yarn
663
+ - key: www-yarn-mr$CI_MERGE_REQUEST_IID
558
664
  policy: pull
559
665
  paths:
560
666
  - www/.yarn
667
+ fallback_keys:
668
+ - www-yarn
561
669
  rules:
562
670
  - when: never
563
671
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -634,17 +742,17 @@ www ๐Ÿงช test:
634
742
  - when: on_success
635
743
  if: $CI_MERGE_REQUEST_ID
636
744
  needs:
637
- - job: www ๐Ÿ‘ฎ lint
745
+ - job: 'www ๐Ÿ‘ฎ lint | review '
638
746
  artifacts: false
639
747
  - job: 'www ๐Ÿ”จ app | review '
640
748
  artifacts: false
641
749
  - job: 'www ๐Ÿ”จ docker | review '
642
750
  artifacts: false
643
- - job: www ๐Ÿงช test
751
+ - job: 'www ๐Ÿงช test | review '
644
752
  artifacts: false
645
753
  - job: 'www ๐Ÿงพ sbom | review '
646
754
  artifacts: true
647
- - job: www ๐Ÿ›ก audit
755
+ - job: 'www ๐Ÿ›ก audit | review '
648
756
  artifacts: false
649
757
  retry: *a1
650
758
  interruptible: true
@@ -742,6 +850,7 @@ www ๐Ÿงช test:
742
850
  - www/dist
743
851
  exclude:
744
852
  - www/.env
853
+ - www/.next/cache/**/*
745
854
  expire_in: 1 day
746
855
  when: always
747
856
  reports: {}
@@ -951,6 +1060,7 @@ www ๐Ÿงช test:
951
1060
  - www/dist
952
1061
  exclude:
953
1062
  - www/.env
1063
+ - www/.next/cache/**/*
954
1064
  expire_in: 1 day
955
1065
  when: always
956
1066
  reports: {}