@catladder/pipeline 3.25.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.
- package/dist/build/custom/testJob.js +1 -2
- package/dist/build/node/testJob.js +1 -2
- package/dist/build/rails/test.js +1 -2
- package/dist/constants.js +1 -1
- package/dist/pipeline/agent/createAgentReviewJob.js +1 -0
- package/dist/pipeline/agent/shared.d.ts +1 -1
- package/dist/pipeline/agent/shared.js +0 -1
- package/dist/pipeline/createMainPipeline.js +1 -0
- package/dist/pipeline/gitlab/cache.d.ts +9 -0
- package/dist/pipeline/gitlab/cache.js +47 -0
- package/dist/pipeline/gitlab/createGitlabJobs.js +7 -7
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/jobs.d.ts +2 -3
- package/examples/__snapshots__/automatic-releases.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-health-check-defaults.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-health-check-only-startup.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-health-check.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-http2.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-memory-limit.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-meteor-with-worker.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-nextjs.test.ts.snap +130 -22
- package/examples/__snapshots__/cloud-run-no-cpu-throttling.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-no-service.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-non-public.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-post-stop-job.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-service-custom-vpc-connector.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-service-custom-vpc.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-service-gen2.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-service-increase-timout.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-service-with-volumes.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-storybook.test.ts.snap +9 -3
- package/examples/__snapshots__/cloud-run-with-agents.test.ts.snap +130 -22
- package/examples/__snapshots__/cloud-run-with-gpu.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-with-ngnix.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-with-sql-legacy-jobs.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-with-sql-multiple-dbs.test.ts.snap +381 -63
- package/examples/__snapshots__/cloud-run-with-sql-reuse-db.test.ts.snap +254 -42
- package/examples/__snapshots__/cloud-run-with-sql.test.ts.snap +127 -21
- package/examples/__snapshots__/cloud-run-with-worker.test.ts.snap +127 -21
- package/examples/__snapshots__/custom-build-job-with-tests.test.ts.snap +93 -22
- package/examples/__snapshots__/custom-deploy.test.ts.snap +127 -21
- package/examples/__snapshots__/custom-envs.test.ts.snap +320 -32
- package/examples/__snapshots__/custom-verify-job.test.ts.snap +130 -22
- package/examples/__snapshots__/git-submodule.test.ts.snap +127 -21
- package/examples/__snapshots__/kubernetes-application-customization.test.ts.snap +127 -21
- package/examples/__snapshots__/kubernetes-with-cloud-sql.test.ts.snap +127 -21
- package/examples/__snapshots__/kubernetes-with-jobs.test.ts.snap +254 -42
- package/examples/__snapshots__/kubernetes-with-mongodb.test.ts.snap +127 -21
- package/examples/__snapshots__/local-dot-env.test.ts.snap +127 -21
- package/examples/__snapshots__/meteor-kubernetes.test.ts.snap +127 -21
- package/examples/__snapshots__/modify-generated-files.test.ts.snap +118 -14
- package/examples/__snapshots__/modify-generated-yaml.test.ts.snap +118 -14
- package/examples/__snapshots__/multiline-var.test.ts.snap +381 -63
- package/examples/__snapshots__/native-app.test.ts.snap +257 -41
- package/examples/__snapshots__/node-build-with-custom-image.test.ts.snap +127 -21
- package/examples/__snapshots__/node-build-with-docker-additions.test.ts.snap +127 -21
- package/examples/__snapshots__/override-secrets.test.ts.snap +127 -21
- package/examples/__snapshots__/rails-k8s-with-worker-dockerfile.test.ts.snap +84 -22
- package/examples/__snapshots__/rails-k8s-with-worker.test.ts.snap +84 -22
- package/examples/__snapshots__/referencing-other-vars.test.ts.snap +381 -63
- package/examples/__snapshots__/wait-for-other-deploy.test.ts.snap +248 -40
- package/examples/__snapshots__/workspace-api-www-turbo-cache.test.ts.snap +139 -29
- package/examples/__snapshots__/workspace-api-www.test.ts.snap +139 -29
- package/package.json +1 -1
- package/src/build/custom/testJob.ts +0 -1
- package/src/build/node/testJob.ts +0 -1
- package/src/build/rails/test.ts +0 -1
- package/src/pipeline/agent/createAgentReviewJob.ts +1 -0
- package/src/pipeline/agent/shared.ts +2 -2
- package/src/pipeline/createMainPipeline.ts +1 -0
- package/src/pipeline/gitlab/cache.ts +49 -0
- package/src/pipeline/gitlab/createGitlabJobs.ts +7 -9
- 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
|
-
my-app ๐ก audit:
|
|
106
|
+
'my-app ๐ก audit | dev ':
|
|
107
107
|
stage: test
|
|
108
108
|
image: path/to/docker/jobs-default:the-version
|
|
109
109
|
variables:
|
|
@@ -120,9 +120,6 @@ my-app ๐ก 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 @@ my-app ๐ก audit:
|
|
|
131
128
|
- stuck_or_timeout_failure
|
|
132
129
|
interruptible: true
|
|
133
130
|
allow_failure: true
|
|
134
|
-
my-app ๐ฎ lint:
|
|
131
|
+
'my-app ๐ฎ lint | dev ':
|
|
135
132
|
stage: test
|
|
136
133
|
image: path/to/docker/jobs-default:the-version
|
|
137
134
|
variables:
|
|
@@ -168,13 +165,10 @@ my-app ๐ฎ 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
|
-
my-app ๐งช test:
|
|
171
|
+
'my-app ๐งช test | dev ':
|
|
178
172
|
stage: test
|
|
179
173
|
image: path/to/docker/jobs-testing-chrome:the-version
|
|
180
174
|
variables:
|
|
@@ -211,9 +205,6 @@ my-app ๐งช 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
|
|
@@ -483,17 +474,17 @@ my-app ๐งช test:
|
|
|
483
474
|
- when: on_success
|
|
484
475
|
if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
|
|
485
476
|
needs:
|
|
486
|
-
- job: my-app ๐ฎ lint
|
|
477
|
+
- job: 'my-app ๐ฎ lint | dev '
|
|
487
478
|
artifacts: false
|
|
488
479
|
- job: 'my-app ๐จ app | dev '
|
|
489
480
|
artifacts: false
|
|
490
481
|
- job: 'my-app ๐จ docker | dev '
|
|
491
482
|
artifacts: false
|
|
492
|
-
- job: my-app ๐งช test
|
|
483
|
+
- job: 'my-app ๐งช test | dev '
|
|
493
484
|
artifacts: false
|
|
494
485
|
- job: 'my-app ๐งพ sbom | dev '
|
|
495
486
|
artifacts: true
|
|
496
|
-
- job: my-app ๐ก audit
|
|
487
|
+
- job: 'my-app ๐ก audit | dev '
|
|
497
488
|
artifacts: false
|
|
498
489
|
retry: *a1
|
|
499
490
|
interruptible: true
|
|
@@ -532,6 +523,115 @@ my-app ๐งช test:
|
|
|
532
523
|
retry: *a1
|
|
533
524
|
interruptible: true
|
|
534
525
|
allow_failure: true
|
|
526
|
+
'my-app ๐ก 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="app"
|
|
536
|
+
- collapseable_section_end "injectvars"
|
|
537
|
+
- cd app
|
|
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
|
+
'my-app ๐ฎ 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="app"
|
|
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 app
|
|
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
|
|
569
|
+
- collapseable_section_end "yarninstall"
|
|
570
|
+
- yarn lint
|
|
571
|
+
cache:
|
|
572
|
+
- key: app-yarn-mr$CI_MERGE_REQUEST_IID
|
|
573
|
+
policy: pull-push
|
|
574
|
+
paths:
|
|
575
|
+
- app/.yarn
|
|
576
|
+
fallback_keys:
|
|
577
|
+
- app-yarn
|
|
578
|
+
- key: app-node-modules-mr$CI_MERGE_REQUEST_IID
|
|
579
|
+
policy: pull-push
|
|
580
|
+
paths:
|
|
581
|
+
- app/node_modules
|
|
582
|
+
fallback_keys:
|
|
583
|
+
- app-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
|
+
'my-app ๐งช 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="app"
|
|
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 app
|
|
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
|
|
613
|
+
- collapseable_section_end "yarninstall"
|
|
614
|
+
- yarn test
|
|
615
|
+
cache:
|
|
616
|
+
- key: app-yarn-mr$CI_MERGE_REQUEST_IID
|
|
617
|
+
policy: pull-push
|
|
618
|
+
paths:
|
|
619
|
+
- app/.yarn
|
|
620
|
+
fallback_keys:
|
|
621
|
+
- app-yarn
|
|
622
|
+
- key: app-node-modules-mr$CI_MERGE_REQUEST_IID
|
|
623
|
+
policy: pull-push
|
|
624
|
+
paths:
|
|
625
|
+
- app/node_modules
|
|
626
|
+
fallback_keys:
|
|
627
|
+
- app-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
|
|
535
635
|
'my-app ๐จ app | review ':
|
|
536
636
|
stage: build
|
|
537
637
|
image: path/to/docker/jobs-default:the-version
|
|
@@ -593,14 +693,18 @@ my-app ๐งช test:
|
|
|
593
693
|
- collapseable_section_end "yarninstall"
|
|
594
694
|
- yarn build
|
|
595
695
|
cache:
|
|
596
|
-
- key: app-yarn
|
|
696
|
+
- key: app-yarn-mr$CI_MERGE_REQUEST_IID
|
|
597
697
|
policy: pull-push
|
|
598
698
|
paths:
|
|
599
699
|
- app/.yarn
|
|
600
|
-
|
|
700
|
+
fallback_keys:
|
|
701
|
+
- app-yarn
|
|
702
|
+
- key: app-node-modules-mr$CI_MERGE_REQUEST_IID
|
|
601
703
|
policy: pull-push
|
|
602
704
|
paths:
|
|
603
705
|
- app/node_modules
|
|
706
|
+
fallback_keys:
|
|
707
|
+
- app-node-modules
|
|
604
708
|
artifacts:
|
|
605
709
|
paths:
|
|
606
710
|
- app/__build_info.json
|
|
@@ -667,10 +771,12 @@ my-app ๐งช test:
|
|
|
667
771
|
- docker push $DOCKER_CACHE_IMAGE
|
|
668
772
|
- collapseable_section_end "docker-push"
|
|
669
773
|
cache:
|
|
670
|
-
- key: app-yarn
|
|
774
|
+
- key: app-yarn-mr$CI_MERGE_REQUEST_IID
|
|
671
775
|
policy: pull
|
|
672
776
|
paths:
|
|
673
777
|
- app/.yarn
|
|
778
|
+
fallback_keys:
|
|
779
|
+
- app-yarn
|
|
674
780
|
rules:
|
|
675
781
|
- when: never
|
|
676
782
|
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
@@ -806,17 +912,17 @@ my-app ๐งช test:
|
|
|
806
912
|
- when: on_success
|
|
807
913
|
if: $CI_MERGE_REQUEST_ID
|
|
808
914
|
needs:
|
|
809
|
-
- job: my-app ๐ฎ lint
|
|
915
|
+
- job: 'my-app ๐ฎ lint | review '
|
|
810
916
|
artifacts: false
|
|
811
917
|
- job: 'my-app ๐จ app | review '
|
|
812
918
|
artifacts: false
|
|
813
919
|
- job: 'my-app ๐จ docker | review '
|
|
814
920
|
artifacts: false
|
|
815
|
-
- job: my-app ๐งช test
|
|
921
|
+
- job: 'my-app ๐งช test | review '
|
|
816
922
|
artifacts: false
|
|
817
923
|
- job: 'my-app ๐งพ sbom | review '
|
|
818
924
|
artifacts: true
|
|
819
|
-
- job: my-app ๐ก audit
|
|
925
|
+
- job: 'my-app ๐ก audit | review '
|
|
820
926
|
artifacts: false
|
|
821
927
|
retry: *a1
|
|
822
928
|
interruptible: true
|
|
@@ -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
|
-
app ๐ก audit:
|
|
106
|
+
'app ๐ก audit | dev ':
|
|
107
107
|
stage: test
|
|
108
108
|
image: ruby:3.2.1
|
|
109
109
|
variables: {}
|
|
@@ -117,9 +117,6 @@ app ๐ก audit:
|
|
|
117
117
|
- when: never
|
|
118
118
|
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
119
119
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
|
|
120
|
-
- when: never
|
|
121
|
-
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
122
|
-
- if: $CI_MERGE_REQUEST_ID
|
|
123
120
|
needs: []
|
|
124
121
|
retry: &a1
|
|
125
122
|
max: 2
|
|
@@ -128,7 +125,7 @@ app ๐ก audit:
|
|
|
128
125
|
- stuck_or_timeout_failure
|
|
129
126
|
interruptible: true
|
|
130
127
|
allow_failure: true
|
|
131
|
-
app ๐ฎ lint:
|
|
128
|
+
'app ๐ฎ lint | dev ':
|
|
132
129
|
stage: test
|
|
133
130
|
image: ruby:3.2.1
|
|
134
131
|
variables: {}
|
|
@@ -150,13 +147,10 @@ app ๐ฎ lint:
|
|
|
150
147
|
- when: never
|
|
151
148
|
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
152
149
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
|
|
153
|
-
- when: never
|
|
154
|
-
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
155
|
-
- if: $CI_MERGE_REQUEST_ID
|
|
156
150
|
needs: []
|
|
157
151
|
retry: *a1
|
|
158
152
|
interruptible: true
|
|
159
|
-
app ๐งช test:
|
|
153
|
+
'app ๐งช test | dev ':
|
|
160
154
|
stage: test
|
|
161
155
|
image: ruby:3.2.1
|
|
162
156
|
services:
|
|
@@ -181,9 +175,6 @@ app ๐งช test:
|
|
|
181
175
|
- when: never
|
|
182
176
|
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
183
177
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
|
|
184
|
-
- when: never
|
|
185
|
-
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
186
|
-
- if: $CI_MERGE_REQUEST_ID
|
|
187
178
|
needs: []
|
|
188
179
|
retry: *a1
|
|
189
180
|
interruptible: true
|
|
@@ -398,15 +389,15 @@ app ๐งช test:
|
|
|
398
389
|
- when: on_success
|
|
399
390
|
if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
|
|
400
391
|
needs:
|
|
401
|
-
- job: app ๐ฎ lint
|
|
392
|
+
- job: 'app ๐ฎ lint | dev '
|
|
402
393
|
artifacts: false
|
|
403
394
|
- job: 'app ๐จ docker | dev '
|
|
404
395
|
artifacts: false
|
|
405
|
-
- job: app ๐งช test
|
|
396
|
+
- job: 'app ๐งช test | dev '
|
|
406
397
|
artifacts: false
|
|
407
398
|
- job: 'app ๐งพ sbom | dev '
|
|
408
399
|
artifacts: true
|
|
409
|
-
- job: app ๐ก audit
|
|
400
|
+
- job: 'app ๐ก audit | dev '
|
|
410
401
|
artifacts: false
|
|
411
402
|
retry: *a1
|
|
412
403
|
interruptible: true
|
|
@@ -519,6 +510,77 @@ app ๐งช test:
|
|
|
519
510
|
retry: *a1
|
|
520
511
|
interruptible: true
|
|
521
512
|
allow_failure: true
|
|
513
|
+
'app ๐ก audit | review ':
|
|
514
|
+
stage: test
|
|
515
|
+
image: ruby:3.2.1
|
|
516
|
+
variables: {}
|
|
517
|
+
script:
|
|
518
|
+
- collapseable_section_start "injectvars" "Injecting variables"
|
|
519
|
+
- collapseable_section_end "injectvars"
|
|
520
|
+
- cd .temp-with-dockerfile
|
|
521
|
+
- gem install bundler-audit
|
|
522
|
+
- bundle audit check
|
|
523
|
+
rules:
|
|
524
|
+
- when: never
|
|
525
|
+
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
526
|
+
- if: $CI_MERGE_REQUEST_ID
|
|
527
|
+
needs: []
|
|
528
|
+
retry: *a1
|
|
529
|
+
interruptible: true
|
|
530
|
+
allow_failure: true
|
|
531
|
+
'app ๐ฎ lint | review ':
|
|
532
|
+
stage: test
|
|
533
|
+
image: ruby:3.2.1
|
|
534
|
+
variables: {}
|
|
535
|
+
script:
|
|
536
|
+
- collapseable_section_start "injectvars" "Injecting variables"
|
|
537
|
+
- collapseable_section_end "injectvars"
|
|
538
|
+
- cd .temp-with-dockerfile
|
|
539
|
+
- bundle config set path 'tmp/cache'
|
|
540
|
+
- bundle install -j $(nproc)
|
|
541
|
+
- bundle exec rubocop
|
|
542
|
+
cache: &a3
|
|
543
|
+
key:
|
|
544
|
+
files:
|
|
545
|
+
- Gemfile.lock
|
|
546
|
+
prefix: $CI_JOB_IMAGE
|
|
547
|
+
paths:
|
|
548
|
+
- tmp/cache
|
|
549
|
+
rules:
|
|
550
|
+
- when: never
|
|
551
|
+
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
552
|
+
- if: $CI_MERGE_REQUEST_ID
|
|
553
|
+
needs: []
|
|
554
|
+
retry: *a1
|
|
555
|
+
interruptible: true
|
|
556
|
+
'app ๐งช test | review ':
|
|
557
|
+
stage: test
|
|
558
|
+
image: ruby:3.2.1
|
|
559
|
+
services:
|
|
560
|
+
- name: docker.io/postgres:latest
|
|
561
|
+
alias: database
|
|
562
|
+
variables:
|
|
563
|
+
POSTGRES_HOST_AUTH_METHOD: trust
|
|
564
|
+
variables:
|
|
565
|
+
RAILS_ENV: test
|
|
566
|
+
DATABASE_URL: postgresql://postgres@database
|
|
567
|
+
script:
|
|
568
|
+
- collapseable_section_start "injectvars" "Injecting variables"
|
|
569
|
+
- collapseable_section_end "injectvars"
|
|
570
|
+
- cd .temp-with-dockerfile
|
|
571
|
+
- bundle config set path 'tmp/cache'
|
|
572
|
+
- bundle install -j $(nproc)
|
|
573
|
+
- bundle exec rake db:test:prepare
|
|
574
|
+
- bundle exec rake assets:precompile assets:clean
|
|
575
|
+
- bundle exec rspec
|
|
576
|
+
cache: *a3
|
|
577
|
+
rules:
|
|
578
|
+
- when: never
|
|
579
|
+
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
580
|
+
- if: $CI_MERGE_REQUEST_ID
|
|
581
|
+
needs: []
|
|
582
|
+
retry: *a1
|
|
583
|
+
interruptible: true
|
|
522
584
|
'app ๐จ docker | review ':
|
|
523
585
|
stage: build
|
|
524
586
|
image: path/to/docker/docker-build:the-version
|
|
@@ -736,15 +798,15 @@ app ๐งช test:
|
|
|
736
798
|
- when: on_success
|
|
737
799
|
if: $CI_MERGE_REQUEST_ID
|
|
738
800
|
needs:
|
|
739
|
-
- job: app ๐ฎ lint
|
|
801
|
+
- job: 'app ๐ฎ lint | review '
|
|
740
802
|
artifacts: false
|
|
741
803
|
- job: 'app ๐จ docker | review '
|
|
742
804
|
artifacts: false
|
|
743
|
-
- job: app ๐งช test
|
|
805
|
+
- job: 'app ๐งช test | review '
|
|
744
806
|
artifacts: false
|
|
745
807
|
- job: 'app ๐งพ sbom | review '
|
|
746
808
|
artifacts: true
|
|
747
|
-
- job: app ๐ก audit
|
|
809
|
+
- job: 'app ๐ก audit | review '
|
|
748
810
|
artifacts: false
|
|
749
811
|
retry: *a1
|
|
750
812
|
interruptible: true
|
|
@@ -1514,13 +1576,13 @@ create release:
|
|
|
1514
1576
|
- semanticRelease
|
|
1515
1577
|
- echo '๐ The project access token might be invald - run \`project-renew-token\` in catladder CLI to fix.'
|
|
1516
1578
|
rules:
|
|
1517
|
-
- &
|
|
1579
|
+
- &a4
|
|
1518
1580
|
if: $CI_COMMIT_MESSAGE =~ /^chore\\(release\\).*/
|
|
1519
1581
|
when: never
|
|
1520
|
-
- &
|
|
1582
|
+
- &a5
|
|
1521
1583
|
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
1522
1584
|
when: never
|
|
1523
|
-
- &
|
|
1585
|
+
- &a6
|
|
1524
1586
|
if: $CI_PIPELINE_SOURCE == "schedule"
|
|
1525
1587
|
when: never
|
|
1526
1588
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
@@ -1534,9 +1596,9 @@ create release:
|
|
|
1534
1596
|
- semanticRelease
|
|
1535
1597
|
- echo '๐ The project access token might be invald - run \`project-renew-token\` in catladder CLI to fix.'
|
|
1536
1598
|
rules:
|
|
1537
|
-
- *a3
|
|
1538
1599
|
- *a4
|
|
1539
1600
|
- *a5
|
|
1601
|
+
- *a6
|
|
1540
1602
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
1541
1603
|
when: manual
|
|
1542
1604
|
- 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
|
-
app ๐ก audit:
|
|
106
|
+
'app ๐ก audit | dev ':
|
|
107
107
|
stage: test
|
|
108
108
|
image: ruby:3.2.1
|
|
109
109
|
variables: {}
|
|
@@ -117,9 +117,6 @@ app ๐ก audit:
|
|
|
117
117
|
- when: never
|
|
118
118
|
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
119
119
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
|
|
120
|
-
- when: never
|
|
121
|
-
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
122
|
-
- if: $CI_MERGE_REQUEST_ID
|
|
123
120
|
needs: []
|
|
124
121
|
retry: &a1
|
|
125
122
|
max: 2
|
|
@@ -128,7 +125,7 @@ app ๐ก audit:
|
|
|
128
125
|
- stuck_or_timeout_failure
|
|
129
126
|
interruptible: true
|
|
130
127
|
allow_failure: true
|
|
131
|
-
app ๐ฎ lint:
|
|
128
|
+
'app ๐ฎ lint | dev ':
|
|
132
129
|
stage: test
|
|
133
130
|
image: ruby:3.2.1
|
|
134
131
|
variables: {}
|
|
@@ -150,13 +147,10 @@ app ๐ฎ lint:
|
|
|
150
147
|
- when: never
|
|
151
148
|
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
152
149
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
|
|
153
|
-
- when: never
|
|
154
|
-
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
155
|
-
- if: $CI_MERGE_REQUEST_ID
|
|
156
150
|
needs: []
|
|
157
151
|
retry: *a1
|
|
158
152
|
interruptible: true
|
|
159
|
-
app ๐งช test:
|
|
153
|
+
'app ๐งช test | dev ':
|
|
160
154
|
stage: test
|
|
161
155
|
image: ruby:3.2.1
|
|
162
156
|
services:
|
|
@@ -181,9 +175,6 @@ app ๐งช test:
|
|
|
181
175
|
- when: never
|
|
182
176
|
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
183
177
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
|
|
184
|
-
- when: never
|
|
185
|
-
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
186
|
-
- if: $CI_MERGE_REQUEST_ID
|
|
187
178
|
needs: []
|
|
188
179
|
retry: *a1
|
|
189
180
|
interruptible: true
|
|
@@ -393,15 +384,15 @@ app ๐งช test:
|
|
|
393
384
|
- when: on_success
|
|
394
385
|
if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_COMMIT_MESSAGE !~ /^chore\\(release\\).*/
|
|
395
386
|
needs:
|
|
396
|
-
- job: app ๐ฎ lint
|
|
387
|
+
- job: 'app ๐ฎ lint | dev '
|
|
397
388
|
artifacts: false
|
|
398
389
|
- job: 'app ๐จ docker | dev '
|
|
399
390
|
artifacts: false
|
|
400
|
-
- job: app ๐งช test
|
|
391
|
+
- job: 'app ๐งช test | dev '
|
|
401
392
|
artifacts: false
|
|
402
393
|
- job: 'app ๐งพ sbom | dev '
|
|
403
394
|
artifacts: true
|
|
404
|
-
- job: app ๐ก audit
|
|
395
|
+
- job: 'app ๐ก audit | dev '
|
|
405
396
|
artifacts: false
|
|
406
397
|
retry: *a1
|
|
407
398
|
interruptible: true
|
|
@@ -514,6 +505,77 @@ app ๐งช test:
|
|
|
514
505
|
retry: *a1
|
|
515
506
|
interruptible: true
|
|
516
507
|
allow_failure: true
|
|
508
|
+
'app ๐ก audit | review ':
|
|
509
|
+
stage: test
|
|
510
|
+
image: ruby:3.2.1
|
|
511
|
+
variables: {}
|
|
512
|
+
script:
|
|
513
|
+
- collapseable_section_start "injectvars" "Injecting variables"
|
|
514
|
+
- collapseable_section_end "injectvars"
|
|
515
|
+
- cd .
|
|
516
|
+
- gem install bundler-audit
|
|
517
|
+
- bundle audit check
|
|
518
|
+
rules:
|
|
519
|
+
- when: never
|
|
520
|
+
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
521
|
+
- if: $CI_MERGE_REQUEST_ID
|
|
522
|
+
needs: []
|
|
523
|
+
retry: *a1
|
|
524
|
+
interruptible: true
|
|
525
|
+
allow_failure: true
|
|
526
|
+
'app ๐ฎ lint | review ':
|
|
527
|
+
stage: test
|
|
528
|
+
image: ruby:3.2.1
|
|
529
|
+
variables: {}
|
|
530
|
+
script:
|
|
531
|
+
- collapseable_section_start "injectvars" "Injecting variables"
|
|
532
|
+
- collapseable_section_end "injectvars"
|
|
533
|
+
- cd .
|
|
534
|
+
- bundle config set path 'tmp/cache'
|
|
535
|
+
- bundle install -j $(nproc)
|
|
536
|
+
- bundle exec rubocop
|
|
537
|
+
cache: &a3
|
|
538
|
+
key:
|
|
539
|
+
files:
|
|
540
|
+
- Gemfile.lock
|
|
541
|
+
prefix: $CI_JOB_IMAGE
|
|
542
|
+
paths:
|
|
543
|
+
- tmp/cache
|
|
544
|
+
rules:
|
|
545
|
+
- when: never
|
|
546
|
+
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
547
|
+
- if: $CI_MERGE_REQUEST_ID
|
|
548
|
+
needs: []
|
|
549
|
+
retry: *a1
|
|
550
|
+
interruptible: true
|
|
551
|
+
'app ๐งช test | review ':
|
|
552
|
+
stage: test
|
|
553
|
+
image: ruby:3.2.1
|
|
554
|
+
services:
|
|
555
|
+
- name: docker.io/postgres:latest
|
|
556
|
+
alias: database
|
|
557
|
+
variables:
|
|
558
|
+
POSTGRES_HOST_AUTH_METHOD: trust
|
|
559
|
+
variables:
|
|
560
|
+
RAILS_ENV: test
|
|
561
|
+
DATABASE_URL: postgresql://postgres@database
|
|
562
|
+
script:
|
|
563
|
+
- collapseable_section_start "injectvars" "Injecting variables"
|
|
564
|
+
- collapseable_section_end "injectvars"
|
|
565
|
+
- cd .
|
|
566
|
+
- bundle config set path 'tmp/cache'
|
|
567
|
+
- bundle install -j $(nproc)
|
|
568
|
+
- bundle exec rake db:test:prepare
|
|
569
|
+
- bundle exec rake assets:precompile assets:clean
|
|
570
|
+
- bundle exec rspec
|
|
571
|
+
cache: *a3
|
|
572
|
+
rules:
|
|
573
|
+
- when: never
|
|
574
|
+
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
575
|
+
- if: $CI_MERGE_REQUEST_ID
|
|
576
|
+
needs: []
|
|
577
|
+
retry: *a1
|
|
578
|
+
interruptible: true
|
|
517
579
|
'app ๐จ docker | review ':
|
|
518
580
|
stage: build
|
|
519
581
|
image: path/to/docker/docker-build:the-version
|
|
@@ -726,15 +788,15 @@ app ๐งช test:
|
|
|
726
788
|
- when: on_success
|
|
727
789
|
if: $CI_MERGE_REQUEST_ID
|
|
728
790
|
needs:
|
|
729
|
-
- job: app ๐ฎ lint
|
|
791
|
+
- job: 'app ๐ฎ lint | review '
|
|
730
792
|
artifacts: false
|
|
731
793
|
- job: 'app ๐จ docker | review '
|
|
732
794
|
artifacts: false
|
|
733
|
-
- job: app ๐งช test
|
|
795
|
+
- job: 'app ๐งช test | review '
|
|
734
796
|
artifacts: false
|
|
735
797
|
- job: 'app ๐งพ sbom | review '
|
|
736
798
|
artifacts: true
|
|
737
|
-
- job: app ๐ก audit
|
|
799
|
+
- job: 'app ๐ก audit | review '
|
|
738
800
|
artifacts: false
|
|
739
801
|
retry: *a1
|
|
740
802
|
interruptible: true
|
|
@@ -1494,13 +1556,13 @@ create release:
|
|
|
1494
1556
|
- semanticRelease
|
|
1495
1557
|
- echo '๐ The project access token might be invald - run \`project-renew-token\` in catladder CLI to fix.'
|
|
1496
1558
|
rules:
|
|
1497
|
-
- &
|
|
1559
|
+
- &a4
|
|
1498
1560
|
if: $CI_COMMIT_MESSAGE =~ /^chore\\(release\\).*/
|
|
1499
1561
|
when: never
|
|
1500
|
-
- &
|
|
1562
|
+
- &a5
|
|
1501
1563
|
if: $CI_PIPELINE_SOURCE == "trigger"
|
|
1502
1564
|
when: never
|
|
1503
|
-
- &
|
|
1565
|
+
- &a6
|
|
1504
1566
|
if: $CI_PIPELINE_SOURCE == "schedule"
|
|
1505
1567
|
when: never
|
|
1506
1568
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
@@ -1514,9 +1576,9 @@ create release:
|
|
|
1514
1576
|
- semanticRelease
|
|
1515
1577
|
- echo '๐ The project access token might be invald - run \`project-renew-token\` in catladder CLI to fix.'
|
|
1516
1578
|
rules:
|
|
1517
|
-
- *a3
|
|
1518
1579
|
- *a4
|
|
1519
1580
|
- *a5
|
|
1581
|
+
- *a6
|
|
1520
1582
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
|
1521
1583
|
when: manual
|
|
1522
1584
|
- if: $CI_COMMIT_BRANCH =~ /^[0-9]+.([0-9]+|x).x$/
|