@catladder/pipeline 3.36.0 → 3.37.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 (64) hide show
  1. package/dist/constants.js +1 -1
  2. package/dist/deploy/base/stop.js +0 -5
  3. package/dist/deploy/cloudRun/createJobs/cloudRunServices.js +1 -0
  4. package/dist/deploy/types/googleCloudRun.d.ts +7 -0
  5. package/dist/tsconfig.tsbuildinfo +1 -1
  6. package/examples/__snapshots__/automatic-releases.test.ts.snap +0 -8
  7. package/examples/__snapshots__/cloud-run-execute-script-on-deploy.test.ts.snap +0 -8
  8. package/examples/__snapshots__/cloud-run-existing-image.test.ts.snap +0 -8
  9. package/examples/__snapshots__/cloud-run-health-check-defaults.test.ts.snap +0 -8
  10. package/examples/__snapshots__/cloud-run-health-check-only-startup.test.ts.snap +0 -8
  11. package/examples/__snapshots__/cloud-run-health-check.test.ts.snap +0 -8
  12. package/examples/__snapshots__/cloud-run-http2.test.ts.snap +0 -8
  13. package/examples/__snapshots__/cloud-run-llama.test.ts.snap +0 -8
  14. package/examples/__snapshots__/cloud-run-memory-limit.test.ts.snap +0 -8
  15. package/examples/__snapshots__/cloud-run-meteor-with-worker.test.ts.snap +0 -8
  16. package/examples/__snapshots__/cloud-run-nextjs.test.ts.snap +0 -8
  17. package/examples/__snapshots__/cloud-run-no-cpu-throttling.test.ts.snap +0 -8
  18. package/examples/__snapshots__/cloud-run-no-service.test.ts.snap +0 -8
  19. package/examples/__snapshots__/cloud-run-non-public.test.ts.snap +0 -8
  20. package/examples/__snapshots__/cloud-run-post-stop-job.test.ts.snap +0 -8
  21. package/examples/__snapshots__/cloud-run-service-custom-vpc-connector.test.ts.snap +0 -8
  22. package/examples/__snapshots__/cloud-run-service-custom-vpc.test.ts.snap +0 -8
  23. package/examples/__snapshots__/cloud-run-service-gen2.test.ts.snap +0 -8
  24. package/examples/__snapshots__/cloud-run-service-increase-timout.test.ts.snap +0 -8
  25. package/examples/__snapshots__/cloud-run-service-with-volumes.test.ts.snap +0 -8
  26. package/examples/__snapshots__/cloud-run-session-affinity.test.ts.snap +1601 -0
  27. package/examples/__snapshots__/cloud-run-storybook.test.ts.snap +0 -8
  28. package/examples/__snapshots__/cloud-run-with-agents.test.ts.snap +0 -8
  29. package/examples/__snapshots__/cloud-run-with-gpu.test.ts.snap +0 -8
  30. package/examples/__snapshots__/cloud-run-with-ngnix.test.ts.snap +0 -8
  31. package/examples/__snapshots__/cloud-run-with-sql-legacy-jobs.test.ts.snap +0 -8
  32. package/examples/__snapshots__/cloud-run-with-sql-multiple-dbs.test.ts.snap +0 -24
  33. package/examples/__snapshots__/cloud-run-with-sql-reuse-db.test.ts.snap +0 -16
  34. package/examples/__snapshots__/cloud-run-with-sql.test.ts.snap +0 -8
  35. package/examples/__snapshots__/cloud-run-with-worker.test.ts.snap +0 -8
  36. package/examples/__snapshots__/custom-build-job-with-tests.test.ts.snap +0 -8
  37. package/examples/__snapshots__/custom-build-job.test.ts.snap +0 -8
  38. package/examples/__snapshots__/custom-deploy.test.ts.snap +0 -2
  39. package/examples/__snapshots__/custom-docker-file.test.ts.snap +0 -8
  40. package/examples/__snapshots__/custom-sbom-java.test.ts.snap +0 -8
  41. package/examples/__snapshots__/custom-verify-job.test.ts.snap +0 -8
  42. package/examples/__snapshots__/git-submodule.test.ts.snap +0 -8
  43. package/examples/__snapshots__/kubernetes-application-customization.test.ts.snap +0 -8
  44. package/examples/__snapshots__/kubernetes-with-cloud-sql.test.ts.snap +0 -8
  45. package/examples/__snapshots__/kubernetes-with-jobs.test.ts.snap +0 -16
  46. package/examples/__snapshots__/kubernetes-with-mongodb.test.ts.snap +0 -8
  47. package/examples/__snapshots__/local-dot-env.test.ts.snap +0 -8
  48. package/examples/__snapshots__/meteor-kubernetes.test.ts.snap +0 -8
  49. package/examples/__snapshots__/multiline-var.test.ts.snap +0 -24
  50. package/examples/__snapshots__/native-app.test.ts.snap +0 -8
  51. package/examples/__snapshots__/node-build-with-custom-image.test.ts.snap +0 -8
  52. package/examples/__snapshots__/node-build-with-docker-additions.test.ts.snap +0 -8
  53. package/examples/__snapshots__/override-secrets.test.ts.snap +0 -8
  54. package/examples/__snapshots__/rails-k8s-with-worker-dockerfile.test.ts.snap +0 -8
  55. package/examples/__snapshots__/rails-k8s-with-worker.test.ts.snap +0 -8
  56. package/examples/__snapshots__/referencing-other-vars.test.ts.snap +0 -24
  57. package/examples/__snapshots__/workspace-api-www-turbo-cache.test.ts.snap +0 -16
  58. package/examples/__snapshots__/workspace-api-www.test.ts.snap +0 -16
  59. package/examples/cloud-run-session-affinity.test.ts +12 -0
  60. package/examples/cloud-run-session-affinity.ts +29 -0
  61. package/package.json +1 -1
  62. package/src/deploy/base/stop.ts +0 -6
  63. package/src/deploy/cloudRun/createJobs/cloudRunServices.ts +1 -0
  64. package/src/deploy/types/googleCloudRun.ts +8 -0
@@ -922,8 +922,6 @@ before_script:
922
922
  name: dev/api
923
923
  action: stop
924
924
  rules:
925
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
926
- when: on_success
927
925
  - when: never
928
926
  if: $CI_PIPELINE_SOURCE == "trigger"
929
927
  - when: manual
@@ -1158,8 +1156,6 @@ before_script:
1158
1156
  name: review/$CI_COMMIT_REF_NAME/api
1159
1157
  action: stop
1160
1158
  rules:
1161
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
1162
- when: on_success
1163
1159
  - when: never
1164
1160
  if: $CI_PIPELINE_SOURCE == "trigger"
1165
1161
  - when: manual
@@ -1379,8 +1375,6 @@ before_script:
1379
1375
  name: stage/api
1380
1376
  action: stop
1381
1377
  rules:
1382
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
1383
- when: on_success
1384
1378
  - when: never
1385
1379
  if: $CI_PIPELINE_SOURCE == "trigger"
1386
1380
  - when: manual
@@ -1600,8 +1594,6 @@ before_script:
1600
1594
  name: prod/api
1601
1595
  action: stop
1602
1596
  rules:
1603
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
1604
- when: on_success
1605
1597
  - when: never
1606
1598
  if: $CI_PIPELINE_SOURCE == "trigger"
1607
1599
  - when: manual
@@ -1831,8 +1823,6 @@ before_script:
1831
1823
  name: dev/www
1832
1824
  action: stop
1833
1825
  rules:
1834
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
1835
- when: on_success
1836
1826
  - when: never
1837
1827
  if: $CI_PIPELINE_SOURCE == "trigger"
1838
1828
  - when: manual
@@ -2070,8 +2060,6 @@ before_script:
2070
2060
  name: review/$CI_COMMIT_REF_NAME/www
2071
2061
  action: stop
2072
2062
  rules:
2073
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
2074
- when: on_success
2075
2063
  - when: never
2076
2064
  if: $CI_PIPELINE_SOURCE == "trigger"
2077
2065
  - when: manual
@@ -2294,8 +2282,6 @@ before_script:
2294
2282
  name: stage/www
2295
2283
  action: stop
2296
2284
  rules:
2297
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
2298
- when: on_success
2299
2285
  - when: never
2300
2286
  if: $CI_PIPELINE_SOURCE == "trigger"
2301
2287
  - when: manual
@@ -2518,8 +2504,6 @@ before_script:
2518
2504
  name: prod/www
2519
2505
  action: stop
2520
2506
  rules:
2521
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
2522
- when: on_success
2523
2507
  - when: never
2524
2508
  if: $CI_PIPELINE_SOURCE == "trigger"
2525
2509
  - when: manual
@@ -913,8 +913,6 @@ before_script:
913
913
  name: dev/api
914
914
  action: stop
915
915
  rules:
916
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
917
- when: on_success
918
916
  - when: never
919
917
  if: $CI_PIPELINE_SOURCE == "trigger"
920
918
  - when: manual
@@ -1148,8 +1146,6 @@ before_script:
1148
1146
  name: review/$CI_COMMIT_REF_NAME/api
1149
1147
  action: stop
1150
1148
  rules:
1151
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
1152
- when: on_success
1153
1149
  - when: never
1154
1150
  if: $CI_PIPELINE_SOURCE == "trigger"
1155
1151
  - when: manual
@@ -1368,8 +1364,6 @@ before_script:
1368
1364
  name: stage/api
1369
1365
  action: stop
1370
1366
  rules:
1371
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
1372
- when: on_success
1373
1367
  - when: never
1374
1368
  if: $CI_PIPELINE_SOURCE == "trigger"
1375
1369
  - when: manual
@@ -1588,8 +1582,6 @@ before_script:
1588
1582
  name: prod/api
1589
1583
  action: stop
1590
1584
  rules:
1591
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
1592
- when: on_success
1593
1585
  - when: never
1594
1586
  if: $CI_PIPELINE_SOURCE == "trigger"
1595
1587
  - when: manual
@@ -1818,8 +1810,6 @@ before_script:
1818
1810
  name: dev/www
1819
1811
  action: stop
1820
1812
  rules:
1821
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
1822
- when: on_success
1823
1813
  - when: never
1824
1814
  if: $CI_PIPELINE_SOURCE == "trigger"
1825
1815
  - when: manual
@@ -2056,8 +2046,6 @@ before_script:
2056
2046
  name: review/$CI_COMMIT_REF_NAME/www
2057
2047
  action: stop
2058
2048
  rules:
2059
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
2060
- when: on_success
2061
2049
  - when: never
2062
2050
  if: $CI_PIPELINE_SOURCE == "trigger"
2063
2051
  - when: manual
@@ -2279,8 +2267,6 @@ before_script:
2279
2267
  name: stage/www
2280
2268
  action: stop
2281
2269
  rules:
2282
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
2283
- when: on_success
2284
2270
  - when: never
2285
2271
  if: $CI_PIPELINE_SOURCE == "trigger"
2286
2272
  - when: manual
@@ -2502,8 +2488,6 @@ before_script:
2502
2488
  name: prod/www
2503
2489
  action: stop
2504
2490
  rules:
2505
- - if: $CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/
2506
- when: on_success
2507
2491
  - when: never
2508
2492
  if: $CI_PIPELINE_SOURCE == "trigger"
2509
2493
  - when: manual
@@ -0,0 +1,12 @@
1
+ import { it, expect } from "vitest";
2
+ import { createYamlLocalPipeline } from "./__utils__/helpers";
3
+ import config from "./cloud-run-session-affinity";
4
+
5
+ /**
6
+ * This test is auto-generated.
7
+ * Modifications will be overwritten on every `yarn test` run!
8
+ */
9
+
10
+ it("matches snapshot for cloud-run-session-affinity local pipeline YAML", async () => {
11
+ expect(await createYamlLocalPipeline(config)).toMatchSnapshot();
12
+ });
@@ -0,0 +1,29 @@
1
+ import type { Config } from "../src";
2
+
3
+ const 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
+ sessionAffinity: true,
19
+ },
20
+ },
21
+ },
22
+ },
23
+ } satisfies Config;
24
+
25
+ export default config;
26
+
27
+ export const information = {
28
+ title: "Cloud Run: with session affinity",
29
+ };
package/package.json CHANGED
@@ -53,7 +53,7 @@
53
53
  }
54
54
  ],
55
55
  "license": "MIT",
56
- "version": "3.36.0",
56
+ "version": "3.37.0",
57
57
  "scripts": {
58
58
  "build:tsc": "yarn tsc",
59
59
  "build": "yarn build:compile && yarn build:inline-variables",
@@ -16,12 +16,6 @@ export const createStopJob = (
16
16
  needs: [], // can be executed even if the deploy job failed
17
17
  allow_failure: true,
18
18
  when: "manual", // stop is always manual
19
- rules: [
20
- {
21
- if: "$CI_COMMIT_BRANCH =~ /^[0-9]+\\.([0-9]+|x)\\.x$/", // automatic on hotfix branches
22
- when: "on_success",
23
- },
24
- ],
25
19
  variables: {
26
20
  ...context.environment.jobOnlyVars.deploy.envVars,
27
21
  ...jobDefinition.variables,
@@ -65,6 +65,7 @@ export const getServiceDeployScript = (
65
65
  "use-http2": customConfig?.http2,
66
66
  "allow-unauthenticated": customConfig?.allowUnauthenticated ?? true,
67
67
  ingress: customConfig?.ingress ?? "all",
68
+ "session-affinity": customConfig?.sessionAffinity,
68
69
  "cpu-boost": true,
69
70
  "execution-environment": customConfig?.executionEnvironment,
70
71
  gpu: customConfig?.gpu,
@@ -202,6 +202,14 @@ export type DeployConfigCloudRunService = {
202
202
  * If you specify an image, you usually want to disable the build by setting build: false
203
203
  */
204
204
  image?: string;
205
+ /**
206
+ * whether to enable session affinity. When enabled, Cloud Run will try to route
207
+ * requests from the same client to the same instance.
208
+ *
209
+ * Passed as `--session-affinity` to gcloud.
210
+ */
211
+ sessionAffinity?: boolean;
212
+
205
213
  /**
206
214
  * args to pass to the command
207
215
  */