@catladder/pipeline 1.81.1 → 1.81.3
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/bundles/catladder-gitlab/index.js +1 -1
- package/dist/constants.js +1 -1
- package/dist/deploy/cloudRun/deployJob.js +3 -3
- package/dist/deploy/cloudRun/index.js +2 -1
- package/dist/deploy/cloudRun/utils/createArgsString.d.ts +1 -1
- package/dist/deploy/cloudRun/utils/createArgsString.js +6 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/gitlab-types.d.ts +18 -0
- package/examples/__snapshots__/cloud-run-no-cpu-throttling.ts.snap +1572 -0
- package/examples/__snapshots__/cloud-run-non-public.ts.snap +48 -48
- package/examples/__snapshots__/cloud-run-with-sql.ts.snap +108 -108
- package/examples/__snapshots__/custom-build-job.ts.snap +48 -48
- package/examples/cloud-run-no-cpu-throttling.ts +33 -0
- package/examples/cloud-run-with-sql.ts +1 -1
- package/package.json +1 -1
- package/src/deploy/cloudRun/deployJob.ts +4 -8
- package/src/deploy/cloudRun/index.ts +2 -2
- package/src/deploy/cloudRun/utils/createArgsString.ts +9 -2
- package/src/types/gitlab-types.ts +11 -0
|
@@ -39,13 +39,13 @@ exports[`matches snapshot 1`] = `
|
|
|
39
39
|
"ENV_SHORT": "dev",
|
|
40
40
|
"ENV_TYPE": "dev",
|
|
41
41
|
"GCLOUD_DEPLOY_credentialsKey": "$CL_dev_www_GCLOUD_DEPLOY_credentialsKey",
|
|
42
|
-
"HOST": "pan-test-app-dev-www-
|
|
43
|
-
"HOST_CANONICAL": "pan-test-app-dev-www-
|
|
42
|
+
"HOST": "pan-test-app-dev-www-unknown-host.example.com",
|
|
43
|
+
"HOST_CANONICAL": "pan-test-app-dev-www-unknown-host.example.com",
|
|
44
44
|
"KUBERNETES_CPU_LIMIT": "2",
|
|
45
45
|
"KUBERNETES_CPU_REQUEST": "0.5",
|
|
46
46
|
"KUBERNETES_MEMORY_LIMIT": "4Gi",
|
|
47
47
|
"KUBERNETES_MEMORY_REQUEST": "2Gi",
|
|
48
|
-
"ROOT_URL": "https://pan-test-app-dev-www-
|
|
48
|
+
"ROOT_URL": "https://pan-test-app-dev-www-unknown-host.example.com",
|
|
49
49
|
"_ALL_ENV_VAR_KEYS": "["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]",
|
|
50
50
|
},
|
|
51
51
|
},
|
|
@@ -113,7 +113,7 @@ exports[`matches snapshot 1`] = `
|
|
|
113
113
|
"auto_stop_in": "4 weeks",
|
|
114
114
|
"name": "dev/www",
|
|
115
115
|
"on_stop": "www 🛑 Stop ⚠️ | dev ",
|
|
116
|
-
"url": "https://pan-test-app-dev-www-
|
|
116
|
+
"url": "https://pan-test-app-dev-www-unknown-host.example.com",
|
|
117
117
|
},
|
|
118
118
|
"image": "path/to/docker/gcloud:the-version",
|
|
119
119
|
"interruptible": true,
|
|
@@ -151,7 +151,7 @@ exports[`matches snapshot 1`] = `
|
|
|
151
151
|
"docker tag $DOCKER_IMAGE:$DOCKER_IMAGE_TAG asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
152
152
|
"docker push asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
153
153
|
"echo "$ENV_VARS" > ____envvars.yaml",
|
|
154
|
-
"gcloud run deploy pan-test-app-dev-www --image=asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG --project=asdf --region=asia-east1 --labels=customer-name=pan,app-name=test-app,env-type=dev,env-name=dev,build-type=custom --env-vars-file=____envvars.yaml --allow-unauthenticated",
|
|
154
|
+
"gcloud run deploy pan-test-app-dev-www --image=asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG --project=asdf --region=asia-east1 --labels=customer-name=pan,app-name=test-app,env-type=dev,env-name=dev,build-type=custom --env-vars-file=____envvars.yaml --cpu-throttling --allow-unauthenticated",
|
|
155
155
|
"docker image rm asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
156
156
|
],
|
|
157
157
|
"services": [
|
|
@@ -184,19 +184,19 @@ exports[`matches snapshot 1`] = `
|
|
|
184
184
|
"ENV_VARS": "ENV_SHORT: 'dev'
|
|
185
185
|
APP_DIR: 'www'
|
|
186
186
|
ENV_TYPE: 'dev'
|
|
187
|
-
HOST: 'pan-test-app-dev-www-
|
|
188
|
-
ROOT_URL: 'https://pan-test-app-dev-www-
|
|
189
|
-
HOST_CANONICAL: 'pan-test-app-dev-www-
|
|
187
|
+
HOST: 'pan-test-app-dev-www-unknown-host.example.com'
|
|
188
|
+
ROOT_URL: 'https://pan-test-app-dev-www-unknown-host.example.com'
|
|
189
|
+
HOST_CANONICAL: 'pan-test-app-dev-www-unknown-host.example.com'
|
|
190
190
|
_ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]'
|
|
191
191
|
",
|
|
192
192
|
"GCLOUD_DEPLOY_credentialsKey": "$CL_dev_www_GCLOUD_DEPLOY_credentialsKey",
|
|
193
|
-
"HOST": "pan-test-app-dev-www-
|
|
194
|
-
"HOST_CANONICAL": "pan-test-app-dev-www-
|
|
193
|
+
"HOST": "pan-test-app-dev-www-unknown-host.example.com",
|
|
194
|
+
"HOST_CANONICAL": "pan-test-app-dev-www-unknown-host.example.com",
|
|
195
195
|
"KUBERNETES_CPU_LIMIT": "1",
|
|
196
196
|
"KUBERNETES_CPU_REQUEST": "0.5",
|
|
197
197
|
"KUBERNETES_MEMORY_LIMIT": "2Gi",
|
|
198
198
|
"KUBERNETES_MEMORY_REQUEST": "1Gi",
|
|
199
|
-
"ROOT_URL": "https://pan-test-app-dev-www-
|
|
199
|
+
"ROOT_URL": "https://pan-test-app-dev-www-unknown-host.example.com",
|
|
200
200
|
"_ALL_ENV_VAR_KEYS": "["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]",
|
|
201
201
|
},
|
|
202
202
|
},
|
|
@@ -204,7 +204,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
204
204
|
"environment": {
|
|
205
205
|
"action": "stop",
|
|
206
206
|
"name": "dev/www",
|
|
207
|
-
"url": "https://pan-test-app-dev-www-
|
|
207
|
+
"url": "https://pan-test-app-dev-www-unknown-host.example.com",
|
|
208
208
|
},
|
|
209
209
|
"image": "path/to/docker/gcloud:the-version",
|
|
210
210
|
"interruptible": true,
|
|
@@ -349,13 +349,13 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
349
349
|
"ENV_SHORT": "review",
|
|
350
350
|
"ENV_TYPE": "review",
|
|
351
351
|
"GCLOUD_DEPLOY_credentialsKey": "$CL_review_www_GCLOUD_DEPLOY_credentialsKey",
|
|
352
|
-
"HOST": "pan-test-app-review-mr1234-www-
|
|
353
|
-
"HOST_CANONICAL": "pan-test-app-review-mr1234-www-
|
|
352
|
+
"HOST": "pan-test-app-review-mr1234-www-unknown-host.example.com",
|
|
353
|
+
"HOST_CANONICAL": "pan-test-app-review-mr1234-www-unknown-host.example.com",
|
|
354
354
|
"KUBERNETES_CPU_LIMIT": "2",
|
|
355
355
|
"KUBERNETES_CPU_REQUEST": "0.5",
|
|
356
356
|
"KUBERNETES_MEMORY_LIMIT": "4Gi",
|
|
357
357
|
"KUBERNETES_MEMORY_REQUEST": "2Gi",
|
|
358
|
-
"ROOT_URL": "https://pan-test-app-review-mr1234-www-
|
|
358
|
+
"ROOT_URL": "https://pan-test-app-review-mr1234-www-unknown-host.example.com",
|
|
359
359
|
"_ALL_ENV_VAR_KEYS": "["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]",
|
|
360
360
|
},
|
|
361
361
|
},
|
|
@@ -423,7 +423,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
423
423
|
"auto_stop_in": "2 week",
|
|
424
424
|
"name": "review/some-commit/www",
|
|
425
425
|
"on_stop": "www 🛑 Stop ⚠️ | review ",
|
|
426
|
-
"url": "https://pan-test-app-review-mr1234-www-
|
|
426
|
+
"url": "https://pan-test-app-review-mr1234-www-unknown-host.example.com",
|
|
427
427
|
},
|
|
428
428
|
"image": "path/to/docker/gcloud:the-version",
|
|
429
429
|
"interruptible": true,
|
|
@@ -461,7 +461,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
461
461
|
"docker tag $DOCKER_IMAGE:$DOCKER_IMAGE_TAG asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
462
462
|
"docker push asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
463
463
|
"echo "$ENV_VARS" > ____envvars.yaml",
|
|
464
|
-
"gcloud run deploy pan-test-app-review-mr1234-www --image=asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG --project=asdf --region=asia-east1 --labels=customer-name=pan,app-name=test-app,env-type=review,env-name=review,build-type=custom --env-vars-file=____envvars.yaml --allow-unauthenticated",
|
|
464
|
+
"gcloud run deploy pan-test-app-review-mr1234-www --image=asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG --project=asdf --region=asia-east1 --labels=customer-name=pan,app-name=test-app,env-type=review,env-name=review,build-type=custom --env-vars-file=____envvars.yaml --cpu-throttling --allow-unauthenticated",
|
|
465
465
|
"docker image rm asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
466
466
|
],
|
|
467
467
|
"services": [
|
|
@@ -494,19 +494,19 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
494
494
|
"ENV_VARS": "ENV_SHORT: 'review'
|
|
495
495
|
APP_DIR: 'www'
|
|
496
496
|
ENV_TYPE: 'review'
|
|
497
|
-
HOST: 'pan-test-app-review-mr1234-www-
|
|
498
|
-
ROOT_URL: 'https://pan-test-app-review-mr1234-www-
|
|
499
|
-
HOST_CANONICAL: 'pan-test-app-review-mr1234-www-
|
|
497
|
+
HOST: 'pan-test-app-review-mr1234-www-unknown-host.example.com'
|
|
498
|
+
ROOT_URL: 'https://pan-test-app-review-mr1234-www-unknown-host.example.com'
|
|
499
|
+
HOST_CANONICAL: 'pan-test-app-review-mr1234-www-unknown-host.example.com'
|
|
500
500
|
_ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]'
|
|
501
501
|
",
|
|
502
502
|
"GCLOUD_DEPLOY_credentialsKey": "$CL_review_www_GCLOUD_DEPLOY_credentialsKey",
|
|
503
|
-
"HOST": "pan-test-app-review-mr1234-www-
|
|
504
|
-
"HOST_CANONICAL": "pan-test-app-review-mr1234-www-
|
|
503
|
+
"HOST": "pan-test-app-review-mr1234-www-unknown-host.example.com",
|
|
504
|
+
"HOST_CANONICAL": "pan-test-app-review-mr1234-www-unknown-host.example.com",
|
|
505
505
|
"KUBERNETES_CPU_LIMIT": "1",
|
|
506
506
|
"KUBERNETES_CPU_REQUEST": "0.5",
|
|
507
507
|
"KUBERNETES_MEMORY_LIMIT": "2Gi",
|
|
508
508
|
"KUBERNETES_MEMORY_REQUEST": "1Gi",
|
|
509
|
-
"ROOT_URL": "https://pan-test-app-review-mr1234-www-
|
|
509
|
+
"ROOT_URL": "https://pan-test-app-review-mr1234-www-unknown-host.example.com",
|
|
510
510
|
"_ALL_ENV_VAR_KEYS": "["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]",
|
|
511
511
|
},
|
|
512
512
|
},
|
|
@@ -514,7 +514,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
514
514
|
"environment": {
|
|
515
515
|
"action": "stop",
|
|
516
516
|
"name": "review/some-commit/www",
|
|
517
|
-
"url": "https://pan-test-app-review-mr1234-www-
|
|
517
|
+
"url": "https://pan-test-app-review-mr1234-www-unknown-host.example.com",
|
|
518
518
|
},
|
|
519
519
|
"image": "path/to/docker/gcloud:the-version",
|
|
520
520
|
"interruptible": true,
|
|
@@ -659,13 +659,13 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
659
659
|
"ENV_SHORT": "prod",
|
|
660
660
|
"ENV_TYPE": "prod",
|
|
661
661
|
"GCLOUD_DEPLOY_credentialsKey": "$CL_prod_www_GCLOUD_DEPLOY_credentialsKey",
|
|
662
|
-
"HOST": "pan-test-app-prod-www-
|
|
663
|
-
"HOST_CANONICAL": "pan-test-app-prod-www-
|
|
662
|
+
"HOST": "pan-test-app-prod-www-unknown-host.example.com",
|
|
663
|
+
"HOST_CANONICAL": "pan-test-app-prod-www-unknown-host.example.com",
|
|
664
664
|
"KUBERNETES_CPU_LIMIT": "2",
|
|
665
665
|
"KUBERNETES_CPU_REQUEST": "0.5",
|
|
666
666
|
"KUBERNETES_MEMORY_LIMIT": "4Gi",
|
|
667
667
|
"KUBERNETES_MEMORY_REQUEST": "2Gi",
|
|
668
|
-
"ROOT_URL": "https://pan-test-app-prod-www-
|
|
668
|
+
"ROOT_URL": "https://pan-test-app-prod-www-unknown-host.example.com",
|
|
669
669
|
"_ALL_ENV_VAR_KEYS": "["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]",
|
|
670
670
|
},
|
|
671
671
|
},
|
|
@@ -703,13 +703,13 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
703
703
|
"ENV_SHORT": "stage",
|
|
704
704
|
"ENV_TYPE": "stage",
|
|
705
705
|
"GCLOUD_DEPLOY_credentialsKey": "$CL_stage_www_GCLOUD_DEPLOY_credentialsKey",
|
|
706
|
-
"HOST": "pan-test-app-stage-www-
|
|
707
|
-
"HOST_CANONICAL": "pan-test-app-stage-www-
|
|
706
|
+
"HOST": "pan-test-app-stage-www-unknown-host.example.com",
|
|
707
|
+
"HOST_CANONICAL": "pan-test-app-stage-www-unknown-host.example.com",
|
|
708
708
|
"KUBERNETES_CPU_LIMIT": "2",
|
|
709
709
|
"KUBERNETES_CPU_REQUEST": "0.5",
|
|
710
710
|
"KUBERNETES_MEMORY_LIMIT": "4Gi",
|
|
711
711
|
"KUBERNETES_MEMORY_REQUEST": "2Gi",
|
|
712
|
-
"ROOT_URL": "https://pan-test-app-stage-www-
|
|
712
|
+
"ROOT_URL": "https://pan-test-app-stage-www-unknown-host.example.com",
|
|
713
713
|
"_ALL_ENV_VAR_KEYS": "["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]",
|
|
714
714
|
},
|
|
715
715
|
},
|
|
@@ -830,7 +830,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
830
830
|
"auto_stop_in": undefined,
|
|
831
831
|
"name": "prod/www",
|
|
832
832
|
"on_stop": "www 🛑 Stop ⚠️ | prod ",
|
|
833
|
-
"url": "https://pan-test-app-prod-www-
|
|
833
|
+
"url": "https://pan-test-app-prod-www-unknown-host.example.com",
|
|
834
834
|
},
|
|
835
835
|
"image": "path/to/docker/gcloud:the-version",
|
|
836
836
|
"interruptible": true,
|
|
@@ -868,7 +868,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
868
868
|
"docker tag $DOCKER_IMAGE:$DOCKER_IMAGE_TAG asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
869
869
|
"docker push asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
870
870
|
"echo "$ENV_VARS" > ____envvars.yaml",
|
|
871
|
-
"gcloud run deploy pan-test-app-prod-www --image=asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG --project=asdf --region=asia-east1 --labels=customer-name=pan,app-name=test-app,env-type=prod,env-name=prod,build-type=custom --env-vars-file=____envvars.yaml --allow-unauthenticated",
|
|
871
|
+
"gcloud run deploy pan-test-app-prod-www --image=asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG --project=asdf --region=asia-east1 --labels=customer-name=pan,app-name=test-app,env-type=prod,env-name=prod,build-type=custom --env-vars-file=____envvars.yaml --cpu-throttling --allow-unauthenticated",
|
|
872
872
|
"docker image rm asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
873
873
|
],
|
|
874
874
|
"services": [
|
|
@@ -901,19 +901,19 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
901
901
|
"ENV_VARS": "ENV_SHORT: 'prod'
|
|
902
902
|
APP_DIR: 'www'
|
|
903
903
|
ENV_TYPE: 'prod'
|
|
904
|
-
HOST: 'pan-test-app-prod-www-
|
|
905
|
-
ROOT_URL: 'https://pan-test-app-prod-www-
|
|
906
|
-
HOST_CANONICAL: 'pan-test-app-prod-www-
|
|
904
|
+
HOST: 'pan-test-app-prod-www-unknown-host.example.com'
|
|
905
|
+
ROOT_URL: 'https://pan-test-app-prod-www-unknown-host.example.com'
|
|
906
|
+
HOST_CANONICAL: 'pan-test-app-prod-www-unknown-host.example.com'
|
|
907
907
|
_ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]'
|
|
908
908
|
",
|
|
909
909
|
"GCLOUD_DEPLOY_credentialsKey": "$CL_prod_www_GCLOUD_DEPLOY_credentialsKey",
|
|
910
|
-
"HOST": "pan-test-app-prod-www-
|
|
911
|
-
"HOST_CANONICAL": "pan-test-app-prod-www-
|
|
910
|
+
"HOST": "pan-test-app-prod-www-unknown-host.example.com",
|
|
911
|
+
"HOST_CANONICAL": "pan-test-app-prod-www-unknown-host.example.com",
|
|
912
912
|
"KUBERNETES_CPU_LIMIT": "1",
|
|
913
913
|
"KUBERNETES_CPU_REQUEST": "0.5",
|
|
914
914
|
"KUBERNETES_MEMORY_LIMIT": "2Gi",
|
|
915
915
|
"KUBERNETES_MEMORY_REQUEST": "1Gi",
|
|
916
|
-
"ROOT_URL": "https://pan-test-app-prod-www-
|
|
916
|
+
"ROOT_URL": "https://pan-test-app-prod-www-unknown-host.example.com",
|
|
917
917
|
"_ALL_ENV_VAR_KEYS": "["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]",
|
|
918
918
|
},
|
|
919
919
|
},
|
|
@@ -928,7 +928,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
928
928
|
"auto_stop_in": undefined,
|
|
929
929
|
"name": "stage/www",
|
|
930
930
|
"on_stop": "www 🛑 Stop ⚠️ | stage ",
|
|
931
|
-
"url": "https://pan-test-app-stage-www-
|
|
931
|
+
"url": "https://pan-test-app-stage-www-unknown-host.example.com",
|
|
932
932
|
},
|
|
933
933
|
"image": "path/to/docker/gcloud:the-version",
|
|
934
934
|
"interruptible": true,
|
|
@@ -966,7 +966,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
966
966
|
"docker tag $DOCKER_IMAGE:$DOCKER_IMAGE_TAG asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
967
967
|
"docker push asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
968
968
|
"echo "$ENV_VARS" > ____envvars.yaml",
|
|
969
|
-
"gcloud run deploy pan-test-app-stage-www --image=asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG --project=asdf --region=asia-east1 --labels=customer-name=pan,app-name=test-app,env-type=stage,env-name=stage,build-type=custom --env-vars-file=____envvars.yaml --allow-unauthenticated",
|
|
969
|
+
"gcloud run deploy pan-test-app-stage-www --image=asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG --project=asdf --region=asia-east1 --labels=customer-name=pan,app-name=test-app,env-type=stage,env-name=stage,build-type=custom --env-vars-file=____envvars.yaml --cpu-throttling --allow-unauthenticated",
|
|
970
970
|
"docker image rm asia-east1-docker.pkg.dev/asdf/catladder-deploy/pan-test-app/$DOCKER_IMAGE_NAME:$DOCKER_IMAGE_TAG",
|
|
971
971
|
],
|
|
972
972
|
"services": [
|
|
@@ -999,19 +999,19 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
999
999
|
"ENV_VARS": "ENV_SHORT: 'stage'
|
|
1000
1000
|
APP_DIR: 'www'
|
|
1001
1001
|
ENV_TYPE: 'stage'
|
|
1002
|
-
HOST: 'pan-test-app-stage-www-
|
|
1003
|
-
ROOT_URL: 'https://pan-test-app-stage-www-
|
|
1004
|
-
HOST_CANONICAL: 'pan-test-app-stage-www-
|
|
1002
|
+
HOST: 'pan-test-app-stage-www-unknown-host.example.com'
|
|
1003
|
+
ROOT_URL: 'https://pan-test-app-stage-www-unknown-host.example.com'
|
|
1004
|
+
HOST_CANONICAL: 'pan-test-app-stage-www-unknown-host.example.com'
|
|
1005
1005
|
_ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]'
|
|
1006
1006
|
",
|
|
1007
1007
|
"GCLOUD_DEPLOY_credentialsKey": "$CL_stage_www_GCLOUD_DEPLOY_credentialsKey",
|
|
1008
|
-
"HOST": "pan-test-app-stage-www-
|
|
1009
|
-
"HOST_CANONICAL": "pan-test-app-stage-www-
|
|
1008
|
+
"HOST": "pan-test-app-stage-www-unknown-host.example.com",
|
|
1009
|
+
"HOST_CANONICAL": "pan-test-app-stage-www-unknown-host.example.com",
|
|
1010
1010
|
"KUBERNETES_CPU_LIMIT": "1",
|
|
1011
1011
|
"KUBERNETES_CPU_REQUEST": "0.5",
|
|
1012
1012
|
"KUBERNETES_MEMORY_LIMIT": "2Gi",
|
|
1013
1013
|
"KUBERNETES_MEMORY_REQUEST": "1Gi",
|
|
1014
|
-
"ROOT_URL": "https://pan-test-app-stage-www-
|
|
1014
|
+
"ROOT_URL": "https://pan-test-app-stage-www-unknown-host.example.com",
|
|
1015
1015
|
"_ALL_ENV_VAR_KEYS": "["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CANONICAL","GCLOUD_DEPLOY_credentialsKey"]",
|
|
1016
1016
|
},
|
|
1017
1017
|
},
|
|
@@ -1019,7 +1019,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
1019
1019
|
"environment": {
|
|
1020
1020
|
"action": "stop",
|
|
1021
1021
|
"name": "prod/www",
|
|
1022
|
-
"url": "https://pan-test-app-prod-www-
|
|
1022
|
+
"url": "https://pan-test-app-prod-www-unknown-host.example.com",
|
|
1023
1023
|
},
|
|
1024
1024
|
"image": "path/to/docker/gcloud:the-version",
|
|
1025
1025
|
"interruptible": true,
|
|
@@ -1062,7 +1062,7 @@ _ALL_ENV_VAR_KEYS: '["ENV_SHORT","APP_DIR","ENV_TYPE","HOST","ROOT_URL","HOST_CA
|
|
|
1062
1062
|
"environment": {
|
|
1063
1063
|
"action": "stop",
|
|
1064
1064
|
"name": "stage/www",
|
|
1065
|
-
"url": "https://pan-test-app-stage-www-
|
|
1065
|
+
"url": "https://pan-test-app-stage-www-unknown-host.example.com",
|
|
1066
1066
|
},
|
|
1067
1067
|
"image": "path/to/docker/gcloud:the-version",
|
|
1068
1068
|
"interruptible": true,
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Config } from "../src";
|
|
2
|
+
import { createAllPipelines } from "./__utils__/helpers";
|
|
3
|
+
const config: Config = {
|
|
4
|
+
appName: "test-app",
|
|
5
|
+
customerName: "pan",
|
|
6
|
+
components: {
|
|
7
|
+
api: {
|
|
8
|
+
dir: "api",
|
|
9
|
+
build: {
|
|
10
|
+
type: "node",
|
|
11
|
+
},
|
|
12
|
+
deploy: {
|
|
13
|
+
type: "google-cloudrun",
|
|
14
|
+
projectId: "google-project-id",
|
|
15
|
+
region: "europe-west6",
|
|
16
|
+
|
|
17
|
+
service: {
|
|
18
|
+
minInstances: 1,
|
|
19
|
+
// careful, this is expensive!
|
|
20
|
+
// this will always allocate the cpu
|
|
21
|
+
// use this if you have background tasks.
|
|
22
|
+
|
|
23
|
+
// consider using cloud task instead of this
|
|
24
|
+
noCpuThrottling: true,
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
it("matches snapshot", async () => {
|
|
32
|
+
expect(await createAllPipelines(config)).toMatchSnapshot();
|
|
33
|
+
});
|
package/package.json
CHANGED
|
@@ -121,15 +121,11 @@ export const createGoogleCloudRunDeployJobs = (
|
|
|
121
121
|
"env-vars-file": "____envvars.yaml",
|
|
122
122
|
"min-instances": customConfig?.minInstances,
|
|
123
123
|
"max-instances": customConfig?.maxInstances,
|
|
124
|
-
"
|
|
124
|
+
"cpu-throttling": customConfig?.noCpuThrottling !== true,
|
|
125
|
+
"allow-unauthenticated": customConfig?.allowUnauthenticated ?? true,
|
|
125
126
|
});
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
? "--allow-unauthenticated"
|
|
129
|
-
: "--no-allow-unauthenticated";
|
|
130
|
-
return `gcloud run deploy ${serviceName}${
|
|
131
|
-
nameSuffix ?? ""
|
|
132
|
-
} ${argsString} ${authenticationString}`;
|
|
127
|
+
|
|
128
|
+
return `gcloud run deploy ${serviceName}${nameSuffix ?? ""} ${argsString}`;
|
|
133
129
|
};
|
|
134
130
|
|
|
135
131
|
const getJobCreateScriptsForJob = (
|
|
@@ -67,9 +67,9 @@ export const GCLOUD_RUN_DEPLOY_TYPE: DeployTypeDefinition<"google-cloudrun"> = {
|
|
|
67
67
|
const HOST_CANONICAL =
|
|
68
68
|
fullName.toLowerCase() +
|
|
69
69
|
"-" +
|
|
70
|
-
process.env[
|
|
70
|
+
(process.env[
|
|
71
71
|
getSecretVarName(env, componentName, GCLOUD_RUN_CANONICAL_HOST_SUFFIX)
|
|
72
|
-
];
|
|
72
|
+
] ?? "unknown-host.example.com");
|
|
73
73
|
|
|
74
74
|
const jobTriggers =
|
|
75
75
|
deployConfigRaw && deployConfigRaw.jobs
|
|
@@ -11,9 +11,16 @@ import { isNil } from "lodash";
|
|
|
11
11
|
* @returns
|
|
12
12
|
*/
|
|
13
13
|
export const createArgsString = (
|
|
14
|
-
args: Record<string, string | number | true | undefined>
|
|
14
|
+
args: Record<string, string | number | true | false | undefined>
|
|
15
15
|
) =>
|
|
16
16
|
Object.entries(args)
|
|
17
17
|
.filter(([, value]) => !isNil(value))
|
|
18
|
-
.map(([key, value]) =>
|
|
18
|
+
.map(([key, value]) => {
|
|
19
|
+
if (value === true) {
|
|
20
|
+
return `--${key}`;
|
|
21
|
+
} else if (value === false) {
|
|
22
|
+
return `--no-${key}`;
|
|
23
|
+
}
|
|
24
|
+
return `--${key}=${value}`;
|
|
25
|
+
})
|
|
19
26
|
.join(" ");
|
|
@@ -2,7 +2,18 @@ export type Artifacts = {
|
|
|
2
2
|
paths: string[];
|
|
3
3
|
expire_in?: string;
|
|
4
4
|
when?: "always" | "on_success" | "on_failure";
|
|
5
|
+
reports?: ArtifactReports;
|
|
5
6
|
};
|
|
7
|
+
// Reports won't show up on MRs until https://gitlab.com/groups/gitlab-org/-/epics/8205
|
|
8
|
+
export type ArtifactReports =
|
|
9
|
+
| { accessibility: string }
|
|
10
|
+
| { coverage_report: string }
|
|
11
|
+
| { codequality: string }
|
|
12
|
+
| { cyclonedx: string }
|
|
13
|
+
| { dotenv: string }
|
|
14
|
+
| { sast: string }
|
|
15
|
+
| { secret_detection: string }
|
|
16
|
+
| { terraform: string }
|
|
6
17
|
export type GitlabJobCache = {
|
|
7
18
|
key: GitlabJobCacheKey;
|
|
8
19
|
policy?: string;
|