@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
- db1 🛡 audit:
106
+ 'db1 🛡 audit | dev ':
107
107
  stage: test
108
108
  image: path/to/docker/jobs-default:the-version
109
109
  variables:
@@ -120,9 +120,6 @@ db1 🛡 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 @@ db1 🛡 audit:
131
128
  - stuck_or_timeout_failure
132
129
  interruptible: true
133
130
  allow_failure: true
134
- db1 👮 lint:
131
+ 'db1 👮 lint | dev ':
135
132
  stage: test
136
133
  image: path/to/docker/jobs-default:the-version
137
134
  variables:
@@ -168,13 +165,10 @@ db1 👮 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
- db1 🧪 test:
171
+ 'db1 🧪 test | dev ':
178
172
  stage: test
179
173
  image: path/to/docker/jobs-testing-chrome:the-version
180
174
  variables:
@@ -211,9 +205,6 @@ db1 🧪 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
@@ -303,6 +294,7 @@ db1 🧪 test:
303
294
  - packages/db1/dist
304
295
  exclude:
305
296
  - packages/db1/.env
297
+ - packages/db1/.next/cache/**/*
306
298
  expire_in: 1 day
307
299
  when: always
308
300
  reports: {}
@@ -526,17 +518,17 @@ db1 🧪 test:
526
518
  - when: on_success
527
519
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
528
520
  needs:
529
- - job: db1 👮 lint
521
+ - job: 'db1 👮 lint | dev '
530
522
  artifacts: false
531
523
  - job: 'db1 🔨 app | dev '
532
524
  artifacts: false
533
525
  - job: 'db1 🔨 docker | dev '
534
526
  artifacts: false
535
- - job: db1 🧪 test
527
+ - job: 'db1 🧪 test | dev '
536
528
  artifacts: false
537
529
  - job: 'db1 🧾 sbom | dev '
538
530
  artifacts: true
539
- - job: db1 🛡 audit
531
+ - job: 'db1 🛡 audit | dev '
540
532
  artifacts: false
541
533
  retry: *a1
542
534
  interruptible: true
@@ -576,6 +568,115 @@ db1 🧪 test:
576
568
  retry: *a1
577
569
  interruptible: true
578
570
  allow_failure: true
571
+ 'db1 🛡 audit | review ':
572
+ stage: test
573
+ image: path/to/docker/jobs-default:the-version
574
+ variables:
575
+ KUBERNETES_CPU_REQUEST: '0.45'
576
+ KUBERNETES_MEMORY_REQUEST: 1Gi
577
+ KUBERNETES_MEMORY_LIMIT: 4Gi
578
+ script:
579
+ - collapseable_section_start "injectvars" "Injecting variables"
580
+ - export APP_PATH="packages/db1"
581
+ - collapseable_section_end "injectvars"
582
+ - cd packages/db1
583
+ - yarn npm audit --environment production
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
+ allow_failure: true
592
+ 'db1 👮 lint | review ':
593
+ stage: test
594
+ image: path/to/docker/jobs-default:the-version
595
+ variables:
596
+ KUBERNETES_CPU_REQUEST: '0.45'
597
+ KUBERNETES_MEMORY_REQUEST: 1Gi
598
+ KUBERNETES_MEMORY_LIMIT: 4Gi
599
+ script:
600
+ - collapseable_section_start "injectvars" "Injecting variables"
601
+ - export APP_PATH="packages/db1"
602
+ - collapseable_section_end "injectvars"
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
+ - cd packages/db1
608
+ - collapseable_section_start "nodeinstall" "Ensure node version"
609
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
610
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
611
+ - collapseable_section_end "nodeinstall"
612
+ - collapseable_section_start "yarninstall" "Yarn install"
613
+ - yarn install --immutable
614
+ - collapseable_section_end "yarninstall"
615
+ - yarn lint
616
+ cache:
617
+ - key: packagesdb1-yarn-mr$CI_MERGE_REQUEST_IID
618
+ policy: pull-push
619
+ paths:
620
+ - packages/db1/.yarn
621
+ fallback_keys:
622
+ - packagesdb1-yarn
623
+ - key: packagesdb1-node-modules-mr$CI_MERGE_REQUEST_IID
624
+ policy: pull-push
625
+ paths:
626
+ - packages/db1/node_modules
627
+ fallback_keys:
628
+ - packagesdb1-node-modules
629
+ rules:
630
+ - when: never
631
+ if: $CI_PIPELINE_SOURCE == "trigger"
632
+ - if: $CI_MERGE_REQUEST_ID
633
+ needs: []
634
+ retry: *a1
635
+ interruptible: true
636
+ 'db1 🧪 test | review ':
637
+ stage: test
638
+ image: path/to/docker/jobs-testing-chrome:the-version
639
+ variables:
640
+ KUBERNETES_CPU_REQUEST: '0.45'
641
+ KUBERNETES_MEMORY_REQUEST: 1Gi
642
+ KUBERNETES_MEMORY_LIMIT: 4Gi
643
+ script:
644
+ - collapseable_section_start "injectvars" "Injecting variables"
645
+ - export APP_PATH="packages/db1"
646
+ - collapseable_section_end "injectvars"
647
+ - collapseable_section_start "nodeinstall" "Ensure node version"
648
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
649
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
650
+ - collapseable_section_end "nodeinstall"
651
+ - cd packages/db1
652
+ - collapseable_section_start "nodeinstall" "Ensure node version"
653
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
654
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
655
+ - collapseable_section_end "nodeinstall"
656
+ - collapseable_section_start "yarninstall" "Yarn install"
657
+ - yarn install --immutable
658
+ - collapseable_section_end "yarninstall"
659
+ - yarn test
660
+ cache:
661
+ - key: packagesdb1-yarn-mr$CI_MERGE_REQUEST_IID
662
+ policy: pull-push
663
+ paths:
664
+ - packages/db1/.yarn
665
+ fallback_keys:
666
+ - packagesdb1-yarn
667
+ - key: packagesdb1-node-modules-mr$CI_MERGE_REQUEST_IID
668
+ policy: pull-push
669
+ paths:
670
+ - packages/db1/node_modules
671
+ fallback_keys:
672
+ - packagesdb1-node-modules
673
+ rules:
674
+ - when: never
675
+ if: $CI_PIPELINE_SOURCE == "trigger"
676
+ - if: $CI_MERGE_REQUEST_ID
677
+ needs: []
678
+ retry: *a1
679
+ interruptible: true
579
680
  'db1 🔨 app | review ':
580
681
  stage: build
581
682
  image: path/to/docker/jobs-default:the-version
@@ -647,14 +748,18 @@ db1 🧪 test:
647
748
  - collapseable_section_end "yarninstall"
648
749
  - yarn build
649
750
  cache:
650
- - key: packagesdb1-yarn
751
+ - key: packagesdb1-yarn-mr$CI_MERGE_REQUEST_IID
651
752
  policy: pull-push
652
753
  paths:
653
754
  - packages/db1/.yarn
654
- - key: packagesdb1-node-modules
755
+ fallback_keys:
756
+ - packagesdb1-yarn
757
+ - key: packagesdb1-node-modules-mr$CI_MERGE_REQUEST_IID
655
758
  policy: pull-push
656
759
  paths:
657
760
  - packages/db1/node_modules
761
+ fallback_keys:
762
+ - packagesdb1-node-modules
658
763
  artifacts:
659
764
  paths:
660
765
  - packages/db1/__build_info.json
@@ -662,6 +767,7 @@ db1 🧪 test:
662
767
  - packages/db1/dist
663
768
  exclude:
664
769
  - packages/db1/.env
770
+ - packages/db1/.next/cache/**/*
665
771
  expire_in: 1 day
666
772
  when: always
667
773
  reports: {}
@@ -720,10 +826,12 @@ db1 🧪 test:
720
826
  - docker push $DOCKER_CACHE_IMAGE
721
827
  - collapseable_section_end "docker-push"
722
828
  cache:
723
- - key: packagesdb1-yarn
829
+ - key: packagesdb1-yarn-mr$CI_MERGE_REQUEST_IID
724
830
  policy: pull
725
831
  paths:
726
832
  - packages/db1/.yarn
833
+ fallback_keys:
834
+ - packagesdb1-yarn
727
835
  rules:
728
836
  - when: never
729
837
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -888,17 +996,17 @@ db1 🧪 test:
888
996
  - when: on_success
889
997
  if: $CI_MERGE_REQUEST_ID
890
998
  needs:
891
- - job: db1 👮 lint
999
+ - job: 'db1 👮 lint | review '
892
1000
  artifacts: false
893
1001
  - job: 'db1 🔨 app | review '
894
1002
  artifacts: false
895
1003
  - job: 'db1 🔨 docker | review '
896
1004
  artifacts: false
897
- - job: db1 🧪 test
1005
+ - job: 'db1 🧪 test | review '
898
1006
  artifacts: false
899
1007
  - job: 'db1 🧾 sbom | review '
900
1008
  artifacts: true
901
- - job: db1 🛡 audit
1009
+ - job: 'db1 🛡 audit | review '
902
1010
  artifacts: false
903
1011
  retry: *a1
904
1012
  interruptible: true
@@ -1030,6 +1138,7 @@ db1 🧪 test:
1030
1138
  - packages/db1/dist
1031
1139
  exclude:
1032
1140
  - packages/db1/.env
1141
+ - packages/db1/.next/cache/**/*
1033
1142
  expire_in: 1 day
1034
1143
  when: always
1035
1144
  reports: {}
@@ -1382,6 +1491,7 @@ db1 🧪 test:
1382
1491
  - packages/db1/dist
1383
1492
  exclude:
1384
1493
  - packages/db1/.env
1494
+ - packages/db1/.next/cache/**/*
1385
1495
  expire_in: 1 day
1386
1496
  when: always
1387
1497
  reports: {}
@@ -1648,7 +1758,7 @@ db1 🧪 test:
1648
1758
  retry: *a1
1649
1759
  interruptible: true
1650
1760
  allow_failure: true
1651
- db2 🛡 audit:
1761
+ 'db2 🛡 audit | dev ':
1652
1762
  stage: test
1653
1763
  image: path/to/docker/jobs-default:the-version
1654
1764
  variables:
@@ -1665,14 +1775,11 @@ db2 🛡 audit:
1665
1775
  - when: never
1666
1776
  if: $CI_PIPELINE_SOURCE == "trigger"
1667
1777
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1668
- - when: never
1669
- if: $CI_PIPELINE_SOURCE == "trigger"
1670
- - if: $CI_MERGE_REQUEST_ID
1671
1778
  needs: []
1672
1779
  retry: *a1
1673
1780
  interruptible: true
1674
1781
  allow_failure: true
1675
- db2 👮 lint:
1782
+ 'db2 👮 lint | dev ':
1676
1783
  stage: test
1677
1784
  image: path/to/docker/jobs-default:the-version
1678
1785
  variables:
@@ -1709,13 +1816,10 @@ db2 👮 lint:
1709
1816
  - when: never
1710
1817
  if: $CI_PIPELINE_SOURCE == "trigger"
1711
1818
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1712
- - when: never
1713
- if: $CI_PIPELINE_SOURCE == "trigger"
1714
- - if: $CI_MERGE_REQUEST_ID
1715
1819
  needs: []
1716
1820
  retry: *a1
1717
1821
  interruptible: true
1718
- db2 🧪 test:
1822
+ 'db2 🧪 test | dev ':
1719
1823
  stage: test
1720
1824
  image: path/to/docker/jobs-testing-chrome:the-version
1721
1825
  variables:
@@ -1752,9 +1856,6 @@ db2 🧪 test:
1752
1856
  - when: never
1753
1857
  if: $CI_PIPELINE_SOURCE == "trigger"
1754
1858
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
1755
- - when: never
1756
- if: $CI_PIPELINE_SOURCE == "trigger"
1757
- - if: $CI_MERGE_REQUEST_ID
1758
1859
  needs: []
1759
1860
  retry: *a1
1760
1861
  interruptible: true
@@ -1844,6 +1945,7 @@ db2 🧪 test:
1844
1945
  - packages/db2/dist
1845
1946
  exclude:
1846
1947
  - packages/db2/.env
1948
+ - packages/db2/.next/cache/**/*
1847
1949
  expire_in: 1 day
1848
1950
  when: always
1849
1951
  reports: {}
@@ -2067,17 +2169,17 @@ db2 🧪 test:
2067
2169
  - when: on_success
2068
2170
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
2069
2171
  needs:
2070
- - job: db2 👮 lint
2172
+ - job: 'db2 👮 lint | dev '
2071
2173
  artifacts: false
2072
2174
  - job: 'db2 🔨 app | dev '
2073
2175
  artifacts: false
2074
2176
  - job: 'db2 🔨 docker | dev '
2075
2177
  artifacts: false
2076
- - job: db2 🧪 test
2178
+ - job: 'db2 🧪 test | dev '
2077
2179
  artifacts: false
2078
2180
  - job: 'db2 🧾 sbom | dev '
2079
2181
  artifacts: true
2080
- - job: db2 🛡 audit
2182
+ - job: 'db2 🛡 audit | dev '
2081
2183
  artifacts: false
2082
2184
  retry: *a1
2083
2185
  interruptible: true
@@ -2117,6 +2219,115 @@ db2 🧪 test:
2117
2219
  retry: *a1
2118
2220
  interruptible: true
2119
2221
  allow_failure: true
2222
+ 'db2 🛡 audit | review ':
2223
+ stage: test
2224
+ image: path/to/docker/jobs-default:the-version
2225
+ variables:
2226
+ KUBERNETES_CPU_REQUEST: '0.45'
2227
+ KUBERNETES_MEMORY_REQUEST: 1Gi
2228
+ KUBERNETES_MEMORY_LIMIT: 4Gi
2229
+ script:
2230
+ - collapseable_section_start "injectvars" "Injecting variables"
2231
+ - export APP_PATH="packages/db2"
2232
+ - collapseable_section_end "injectvars"
2233
+ - cd packages/db2
2234
+ - yarn npm audit --environment production
2235
+ rules:
2236
+ - when: never
2237
+ if: $CI_PIPELINE_SOURCE == "trigger"
2238
+ - if: $CI_MERGE_REQUEST_ID
2239
+ needs: []
2240
+ retry: *a1
2241
+ interruptible: true
2242
+ allow_failure: true
2243
+ 'db2 👮 lint | review ':
2244
+ stage: test
2245
+ image: path/to/docker/jobs-default:the-version
2246
+ variables:
2247
+ KUBERNETES_CPU_REQUEST: '0.45'
2248
+ KUBERNETES_MEMORY_REQUEST: 1Gi
2249
+ KUBERNETES_MEMORY_LIMIT: 4Gi
2250
+ script:
2251
+ - collapseable_section_start "injectvars" "Injecting variables"
2252
+ - export APP_PATH="packages/db2"
2253
+ - collapseable_section_end "injectvars"
2254
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2255
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2256
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2257
+ - collapseable_section_end "nodeinstall"
2258
+ - cd packages/db2
2259
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2260
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2261
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2262
+ - collapseable_section_end "nodeinstall"
2263
+ - collapseable_section_start "yarninstall" "Yarn install"
2264
+ - yarn install --immutable
2265
+ - collapseable_section_end "yarninstall"
2266
+ - yarn lint
2267
+ cache:
2268
+ - key: packagesdb2-yarn-mr$CI_MERGE_REQUEST_IID
2269
+ policy: pull-push
2270
+ paths:
2271
+ - packages/db2/.yarn
2272
+ fallback_keys:
2273
+ - packagesdb2-yarn
2274
+ - key: packagesdb2-node-modules-mr$CI_MERGE_REQUEST_IID
2275
+ policy: pull-push
2276
+ paths:
2277
+ - packages/db2/node_modules
2278
+ fallback_keys:
2279
+ - packagesdb2-node-modules
2280
+ rules:
2281
+ - when: never
2282
+ if: $CI_PIPELINE_SOURCE == "trigger"
2283
+ - if: $CI_MERGE_REQUEST_ID
2284
+ needs: []
2285
+ retry: *a1
2286
+ interruptible: true
2287
+ 'db2 🧪 test | review ':
2288
+ stage: test
2289
+ image: path/to/docker/jobs-testing-chrome:the-version
2290
+ variables:
2291
+ KUBERNETES_CPU_REQUEST: '0.45'
2292
+ KUBERNETES_MEMORY_REQUEST: 1Gi
2293
+ KUBERNETES_MEMORY_LIMIT: 4Gi
2294
+ script:
2295
+ - collapseable_section_start "injectvars" "Injecting variables"
2296
+ - export APP_PATH="packages/db2"
2297
+ - collapseable_section_end "injectvars"
2298
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2299
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2300
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2301
+ - collapseable_section_end "nodeinstall"
2302
+ - cd packages/db2
2303
+ - collapseable_section_start "nodeinstall" "Ensure node version"
2304
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
2305
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
2306
+ - collapseable_section_end "nodeinstall"
2307
+ - collapseable_section_start "yarninstall" "Yarn install"
2308
+ - yarn install --immutable
2309
+ - collapseable_section_end "yarninstall"
2310
+ - yarn test
2311
+ cache:
2312
+ - key: packagesdb2-yarn-mr$CI_MERGE_REQUEST_IID
2313
+ policy: pull-push
2314
+ paths:
2315
+ - packages/db2/.yarn
2316
+ fallback_keys:
2317
+ - packagesdb2-yarn
2318
+ - key: packagesdb2-node-modules-mr$CI_MERGE_REQUEST_IID
2319
+ policy: pull-push
2320
+ paths:
2321
+ - packages/db2/node_modules
2322
+ fallback_keys:
2323
+ - packagesdb2-node-modules
2324
+ rules:
2325
+ - when: never
2326
+ if: $CI_PIPELINE_SOURCE == "trigger"
2327
+ - if: $CI_MERGE_REQUEST_ID
2328
+ needs: []
2329
+ retry: *a1
2330
+ interruptible: true
2120
2331
  'db2 🔨 app | review ':
2121
2332
  stage: build
2122
2333
  image: path/to/docker/jobs-default:the-version
@@ -2188,14 +2399,18 @@ db2 🧪 test:
2188
2399
  - collapseable_section_end "yarninstall"
2189
2400
  - yarn build
2190
2401
  cache:
2191
- - key: packagesdb2-yarn
2402
+ - key: packagesdb2-yarn-mr$CI_MERGE_REQUEST_IID
2192
2403
  policy: pull-push
2193
2404
  paths:
2194
2405
  - packages/db2/.yarn
2195
- - key: packagesdb2-node-modules
2406
+ fallback_keys:
2407
+ - packagesdb2-yarn
2408
+ - key: packagesdb2-node-modules-mr$CI_MERGE_REQUEST_IID
2196
2409
  policy: pull-push
2197
2410
  paths:
2198
2411
  - packages/db2/node_modules
2412
+ fallback_keys:
2413
+ - packagesdb2-node-modules
2199
2414
  artifacts:
2200
2415
  paths:
2201
2416
  - packages/db2/__build_info.json
@@ -2203,6 +2418,7 @@ db2 🧪 test:
2203
2418
  - packages/db2/dist
2204
2419
  exclude:
2205
2420
  - packages/db2/.env
2421
+ - packages/db2/.next/cache/**/*
2206
2422
  expire_in: 1 day
2207
2423
  when: always
2208
2424
  reports: {}
@@ -2261,10 +2477,12 @@ db2 🧪 test:
2261
2477
  - docker push $DOCKER_CACHE_IMAGE
2262
2478
  - collapseable_section_end "docker-push"
2263
2479
  cache:
2264
- - key: packagesdb2-yarn
2480
+ - key: packagesdb2-yarn-mr$CI_MERGE_REQUEST_IID
2265
2481
  policy: pull
2266
2482
  paths:
2267
2483
  - packages/db2/.yarn
2484
+ fallback_keys:
2485
+ - packagesdb2-yarn
2268
2486
  rules:
2269
2487
  - when: never
2270
2488
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -2429,17 +2647,17 @@ db2 🧪 test:
2429
2647
  - when: on_success
2430
2648
  if: $CI_MERGE_REQUEST_ID
2431
2649
  needs:
2432
- - job: db2 👮 lint
2650
+ - job: 'db2 👮 lint | review '
2433
2651
  artifacts: false
2434
2652
  - job: 'db2 🔨 app | review '
2435
2653
  artifacts: false
2436
2654
  - job: 'db2 🔨 docker | review '
2437
2655
  artifacts: false
2438
- - job: db2 🧪 test
2656
+ - job: 'db2 🧪 test | review '
2439
2657
  artifacts: false
2440
2658
  - job: 'db2 🧾 sbom | review '
2441
2659
  artifacts: true
2442
- - job: db2 🛡 audit
2660
+ - job: 'db2 🛡 audit | review '
2443
2661
  artifacts: false
2444
2662
  retry: *a1
2445
2663
  interruptible: true
@@ -2571,6 +2789,7 @@ db2 🧪 test:
2571
2789
  - packages/db2/dist
2572
2790
  exclude:
2573
2791
  - packages/db2/.env
2792
+ - packages/db2/.next/cache/**/*
2574
2793
  expire_in: 1 day
2575
2794
  when: always
2576
2795
  reports: {}
@@ -2923,6 +3142,7 @@ db2 🧪 test:
2923
3142
  - packages/db2/dist
2924
3143
  exclude:
2925
3144
  - packages/db2/.env
3145
+ - packages/db2/.next/cache/**/*
2926
3146
  expire_in: 1 day
2927
3147
  when: always
2928
3148
  reports: {}
@@ -3189,7 +3409,7 @@ db2 🧪 test:
3189
3409
  retry: *a1
3190
3410
  interruptible: true
3191
3411
  allow_failure: true
3192
- api 🛡 audit:
3412
+ 'api 🛡 audit | dev ':
3193
3413
  stage: test
3194
3414
  image: path/to/docker/jobs-default:the-version
3195
3415
  variables:
@@ -3206,14 +3426,11 @@ api 🛡 audit:
3206
3426
  - when: never
3207
3427
  if: $CI_PIPELINE_SOURCE == "trigger"
3208
3428
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3209
- - when: never
3210
- if: $CI_PIPELINE_SOURCE == "trigger"
3211
- - if: $CI_MERGE_REQUEST_ID
3212
3429
  needs: []
3213
3430
  retry: *a1
3214
3431
  interruptible: true
3215
3432
  allow_failure: true
3216
- api 👮 lint:
3433
+ 'api 👮 lint | dev ':
3217
3434
  stage: test
3218
3435
  image: path/to/docker/jobs-default:the-version
3219
3436
  variables:
@@ -3250,13 +3467,10 @@ api 👮 lint:
3250
3467
  - when: never
3251
3468
  if: $CI_PIPELINE_SOURCE == "trigger"
3252
3469
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3253
- - when: never
3254
- if: $CI_PIPELINE_SOURCE == "trigger"
3255
- - if: $CI_MERGE_REQUEST_ID
3256
3470
  needs: []
3257
3471
  retry: *a1
3258
3472
  interruptible: true
3259
- api 🧪 test:
3473
+ 'api 🧪 test | dev ':
3260
3474
  stage: test
3261
3475
  image: path/to/docker/jobs-testing-chrome:the-version
3262
3476
  variables:
@@ -3293,9 +3507,6 @@ api 🧪 test:
3293
3507
  - when: never
3294
3508
  if: $CI_PIPELINE_SOURCE == "trigger"
3295
3509
  - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3296
- - when: never
3297
- if: $CI_PIPELINE_SOURCE == "trigger"
3298
- - if: $CI_MERGE_REQUEST_ID
3299
3510
  needs: []
3300
3511
  retry: *a1
3301
3512
  interruptible: true
@@ -3385,6 +3596,7 @@ api 🧪 test:
3385
3596
  - api/dist
3386
3597
  exclude:
3387
3598
  - api/.env
3599
+ - api/.next/cache/**/*
3388
3600
  expire_in: 1 day
3389
3601
  when: always
3390
3602
  reports: {}
@@ -3598,17 +3810,17 @@ api 🧪 test:
3598
3810
  - when: on_success
3599
3811
  if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
3600
3812
  needs:
3601
- - job: api 👮 lint
3813
+ - job: 'api 👮 lint | dev '
3602
3814
  artifacts: false
3603
3815
  - job: 'api 🔨 app | dev '
3604
3816
  artifacts: false
3605
3817
  - job: 'api 🔨 docker | dev '
3606
3818
  artifacts: false
3607
- - job: api 🧪 test
3819
+ - job: 'api 🧪 test | dev '
3608
3820
  artifacts: false
3609
3821
  - job: 'api 🧾 sbom | dev '
3610
3822
  artifacts: true
3611
- - job: api 🛡 audit
3823
+ - job: 'api 🛡 audit | dev '
3612
3824
  artifacts: false
3613
3825
  retry: *a1
3614
3826
  interruptible: true
@@ -3647,6 +3859,115 @@ api 🧪 test:
3647
3859
  retry: *a1
3648
3860
  interruptible: true
3649
3861
  allow_failure: true
3862
+ 'api 🛡 audit | review ':
3863
+ stage: test
3864
+ image: path/to/docker/jobs-default:the-version
3865
+ variables:
3866
+ KUBERNETES_CPU_REQUEST: '0.45'
3867
+ KUBERNETES_MEMORY_REQUEST: 1Gi
3868
+ KUBERNETES_MEMORY_LIMIT: 4Gi
3869
+ script:
3870
+ - collapseable_section_start "injectvars" "Injecting variables"
3871
+ - export APP_PATH="api"
3872
+ - collapseable_section_end "injectvars"
3873
+ - cd api
3874
+ - yarn npm audit --environment production
3875
+ rules:
3876
+ - when: never
3877
+ if: $CI_PIPELINE_SOURCE == "trigger"
3878
+ - if: $CI_MERGE_REQUEST_ID
3879
+ needs: []
3880
+ retry: *a1
3881
+ interruptible: true
3882
+ allow_failure: true
3883
+ 'api 👮 lint | review ':
3884
+ stage: test
3885
+ image: path/to/docker/jobs-default:the-version
3886
+ variables:
3887
+ KUBERNETES_CPU_REQUEST: '0.45'
3888
+ KUBERNETES_MEMORY_REQUEST: 1Gi
3889
+ KUBERNETES_MEMORY_LIMIT: 4Gi
3890
+ script:
3891
+ - collapseable_section_start "injectvars" "Injecting variables"
3892
+ - export APP_PATH="api"
3893
+ - collapseable_section_end "injectvars"
3894
+ - collapseable_section_start "nodeinstall" "Ensure node version"
3895
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
3896
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3897
+ - collapseable_section_end "nodeinstall"
3898
+ - cd api
3899
+ - collapseable_section_start "nodeinstall" "Ensure node version"
3900
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
3901
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3902
+ - collapseable_section_end "nodeinstall"
3903
+ - collapseable_section_start "yarninstall" "Yarn install"
3904
+ - yarn install --immutable
3905
+ - collapseable_section_end "yarninstall"
3906
+ - yarn lint
3907
+ cache:
3908
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
3909
+ policy: pull-push
3910
+ paths:
3911
+ - api/.yarn
3912
+ fallback_keys:
3913
+ - api-yarn
3914
+ - key: api-node-modules-mr$CI_MERGE_REQUEST_IID
3915
+ policy: pull-push
3916
+ paths:
3917
+ - api/node_modules
3918
+ fallback_keys:
3919
+ - api-node-modules
3920
+ rules:
3921
+ - when: never
3922
+ if: $CI_PIPELINE_SOURCE == "trigger"
3923
+ - if: $CI_MERGE_REQUEST_ID
3924
+ needs: []
3925
+ retry: *a1
3926
+ interruptible: true
3927
+ 'api 🧪 test | review ':
3928
+ stage: test
3929
+ image: path/to/docker/jobs-testing-chrome:the-version
3930
+ variables:
3931
+ KUBERNETES_CPU_REQUEST: '0.45'
3932
+ KUBERNETES_MEMORY_REQUEST: 1Gi
3933
+ KUBERNETES_MEMORY_LIMIT: 4Gi
3934
+ script:
3935
+ - collapseable_section_start "injectvars" "Injecting variables"
3936
+ - export APP_PATH="api"
3937
+ - collapseable_section_end "injectvars"
3938
+ - collapseable_section_start "nodeinstall" "Ensure node version"
3939
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
3940
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3941
+ - collapseable_section_end "nodeinstall"
3942
+ - cd api
3943
+ - collapseable_section_start "nodeinstall" "Ensure node version"
3944
+ - if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi
3945
+ - if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi
3946
+ - collapseable_section_end "nodeinstall"
3947
+ - collapseable_section_start "yarninstall" "Yarn install"
3948
+ - yarn install --immutable
3949
+ - collapseable_section_end "yarninstall"
3950
+ - yarn test
3951
+ cache:
3952
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
3953
+ policy: pull-push
3954
+ paths:
3955
+ - api/.yarn
3956
+ fallback_keys:
3957
+ - api-yarn
3958
+ - key: api-node-modules-mr$CI_MERGE_REQUEST_IID
3959
+ policy: pull-push
3960
+ paths:
3961
+ - api/node_modules
3962
+ fallback_keys:
3963
+ - api-node-modules
3964
+ rules:
3965
+ - when: never
3966
+ if: $CI_PIPELINE_SOURCE == "trigger"
3967
+ - if: $CI_MERGE_REQUEST_ID
3968
+ needs: []
3969
+ retry: *a1
3970
+ interruptible: true
3650
3971
  'api 🔨 app | review ':
3651
3972
  stage: build
3652
3973
  image: path/to/docker/jobs-default:the-version
@@ -3718,14 +4039,18 @@ api 🧪 test:
3718
4039
  - collapseable_section_end "yarninstall"
3719
4040
  - yarn build:worker
3720
4041
  cache:
3721
- - key: api-yarn
4042
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
3722
4043
  policy: pull-push
3723
4044
  paths:
3724
4045
  - api/.yarn
3725
- - key: api-node-modules
4046
+ fallback_keys:
4047
+ - api-yarn
4048
+ - key: api-node-modules-mr$CI_MERGE_REQUEST_IID
3726
4049
  policy: pull-push
3727
4050
  paths:
3728
4051
  - api/node_modules
4052
+ fallback_keys:
4053
+ - api-node-modules
3729
4054
  artifacts:
3730
4055
  paths:
3731
4056
  - api/__build_info.json
@@ -3733,6 +4058,7 @@ api 🧪 test:
3733
4058
  - api/dist
3734
4059
  exclude:
3735
4060
  - api/.env
4061
+ - api/.next/cache/**/*
3736
4062
  expire_in: 1 day
3737
4063
  when: always
3738
4064
  reports: {}
@@ -3791,10 +4117,12 @@ api 🧪 test:
3791
4117
  - docker push $DOCKER_CACHE_IMAGE
3792
4118
  - collapseable_section_end "docker-push"
3793
4119
  cache:
3794
- - key: api-yarn
4120
+ - key: api-yarn-mr$CI_MERGE_REQUEST_IID
3795
4121
  policy: pull
3796
4122
  paths:
3797
4123
  - api/.yarn
4124
+ fallback_keys:
4125
+ - api-yarn
3798
4126
  rules:
3799
4127
  - when: never
3800
4128
  if: $CI_PIPELINE_SOURCE == "trigger"
@@ -3949,17 +4277,17 @@ api 🧪 test:
3949
4277
  - when: on_success
3950
4278
  if: $CI_MERGE_REQUEST_ID
3951
4279
  needs:
3952
- - job: api 👮 lint
4280
+ - job: 'api 👮 lint | review '
3953
4281
  artifacts: false
3954
4282
  - job: 'api 🔨 app | review '
3955
4283
  artifacts: false
3956
4284
  - job: 'api 🔨 docker | review '
3957
4285
  artifacts: false
3958
- - job: api 🧪 test
4286
+ - job: 'api 🧪 test | review '
3959
4287
  artifacts: false
3960
4288
  - job: 'api 🧾 sbom | review '
3961
4289
  artifacts: true
3962
- - job: api 🛡 audit
4290
+ - job: 'api 🛡 audit | review '
3963
4291
  artifacts: false
3964
4292
  retry: *a1
3965
4293
  interruptible: true
@@ -4090,6 +4418,7 @@ api 🧪 test:
4090
4418
  - api/dist
4091
4419
  exclude:
4092
4420
  - api/.env
4421
+ - api/.next/cache/**/*
4093
4422
  expire_in: 1 day
4094
4423
  when: always
4095
4424
  reports: {}
@@ -4431,6 +4760,7 @@ api 🧪 test:
4431
4760
  - api/dist
4432
4761
  exclude:
4433
4762
  - api/.env
4763
+ - api/.next/cache/**/*
4434
4764
  expire_in: 1 day
4435
4765
  when: always
4436
4766
  reports: {}