@pulumi/gcp 6.30.0 → 6.31.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 (95) hide show
  1. package/bigquery/connection.d.ts +14 -14
  2. package/bigquery/connection.js +14 -14
  3. package/bigquery/connectionIamBinding.d.ts +214 -0
  4. package/bigquery/connectionIamBinding.js +155 -0
  5. package/bigquery/connectionIamBinding.js.map +1 -0
  6. package/bigquery/connectionIamMember.d.ts +214 -0
  7. package/bigquery/connectionIamMember.js +155 -0
  8. package/bigquery/connectionIamMember.js.map +1 -0
  9. package/bigquery/connectionIamPolicy.d.ts +204 -0
  10. package/bigquery/connectionIamPolicy.js +148 -0
  11. package/bigquery/connectionIamPolicy.js.map +1 -0
  12. package/bigquery/index.d.ts +3 -0
  13. package/bigquery/index.js +15 -0
  14. package/bigquery/index.js.map +1 -1
  15. package/billing/budget.d.ts +46 -0
  16. package/billing/budget.js +46 -0
  17. package/billing/budget.js.map +1 -1
  18. package/certificateauthority/authority.d.ts +85 -23
  19. package/certificateauthority/authority.js +56 -17
  20. package/certificateauthority/authority.js.map +1 -1
  21. package/certificateauthority/certificate.d.ts +14 -5
  22. package/certificateauthority/certificate.js.map +1 -1
  23. package/certificateauthority/getAuthority.d.ts +2 -0
  24. package/certificateauthority/getAuthority.js.map +1 -1
  25. package/cloudfunctions/function.d.ts +4 -3
  26. package/cloudfunctions/function.js +1 -0
  27. package/cloudfunctions/function.js.map +1 -1
  28. package/cloudfunctionsv2/function.d.ts +6 -2
  29. package/cloudfunctionsv2/function.js +6 -2
  30. package/cloudfunctionsv2/function.js.map +1 -1
  31. package/cloudrun/service.d.ts +424 -0
  32. package/cloudrun/service.js +424 -0
  33. package/cloudrun/service.js.map +1 -1
  34. package/cloudtasks/index.d.ts +3 -0
  35. package/cloudtasks/index.js +15 -0
  36. package/cloudtasks/index.js.map +1 -1
  37. package/cloudtasks/queueIamBinding.d.ts +190 -0
  38. package/cloudtasks/queueIamBinding.js +149 -0
  39. package/cloudtasks/queueIamBinding.js.map +1 -0
  40. package/cloudtasks/queueIamMember.d.ts +190 -0
  41. package/cloudtasks/queueIamMember.js +149 -0
  42. package/cloudtasks/queueIamMember.js.map +1 -0
  43. package/cloudtasks/queueIamPolicy.d.ts +180 -0
  44. package/cloudtasks/queueIamPolicy.js +142 -0
  45. package/cloudtasks/queueIamPolicy.js.map +1 -0
  46. package/compute/globalForwardingRule.d.ts +17 -2
  47. package/compute/globalForwardingRule.js +17 -2
  48. package/compute/globalForwardingRule.js.map +1 -1
  49. package/compute/networkEndpointGroup.d.ts +6 -3
  50. package/compute/networkEndpointGroup.js.map +1 -1
  51. package/dataproc/autoscalingPolicyIamBinding.d.ts +208 -0
  52. package/dataproc/autoscalingPolicyIamBinding.js +155 -0
  53. package/dataproc/autoscalingPolicyIamBinding.js.map +1 -0
  54. package/dataproc/autoscalingPolicyIamMember.d.ts +208 -0
  55. package/dataproc/autoscalingPolicyIamMember.js +155 -0
  56. package/dataproc/autoscalingPolicyIamMember.js.map +1 -0
  57. package/dataproc/autoscalingPolicyIamPolicy.d.ts +198 -0
  58. package/dataproc/autoscalingPolicyIamPolicy.js +148 -0
  59. package/dataproc/autoscalingPolicyIamPolicy.js.map +1 -0
  60. package/dataproc/index.d.ts +6 -0
  61. package/dataproc/index.js +30 -0
  62. package/dataproc/index.js.map +1 -1
  63. package/dataproc/metastoreServiceIamBinding.d.ts +130 -0
  64. package/dataproc/metastoreServiceIamBinding.js +95 -0
  65. package/dataproc/metastoreServiceIamBinding.js.map +1 -0
  66. package/dataproc/metastoreServiceIamMember.d.ts +130 -0
  67. package/dataproc/metastoreServiceIamMember.js +95 -0
  68. package/dataproc/metastoreServiceIamMember.js.map +1 -0
  69. package/dataproc/metastoreServiceIamPolicy.d.ts +120 -0
  70. package/dataproc/metastoreServiceIamPolicy.js +88 -0
  71. package/dataproc/metastoreServiceIamPolicy.js.map +1 -0
  72. package/logging/projectSink.d.ts +80 -0
  73. package/logging/projectSink.js +80 -0
  74. package/logging/projectSink.js.map +1 -1
  75. package/monitoring/monitoredProject.d.ts +2 -6
  76. package/monitoring/monitoredProject.js +2 -6
  77. package/monitoring/monitoredProject.js.map +1 -1
  78. package/package.json +2 -2
  79. package/package.json.dev +2 -2
  80. package/projects/serviceIdentity.d.ts +4 -0
  81. package/projects/serviceIdentity.js +1 -1
  82. package/projects/serviceIdentity.js.map +1 -1
  83. package/redis/getInstance.d.ts +1 -0
  84. package/redis/getInstance.js.map +1 -1
  85. package/redis/instance.d.ts +42 -0
  86. package/redis/instance.js +29 -0
  87. package/redis/instance.js.map +1 -1
  88. package/spanner/database.d.ts +44 -12
  89. package/spanner/database.js +13 -0
  90. package/spanner/database.js.map +1 -1
  91. package/sql/getBackupRun.d.ts +11 -0
  92. package/sql/getBackupRun.js +1 -0
  93. package/sql/getBackupRun.js.map +1 -1
  94. package/types/input.d.ts +144 -7
  95. package/types/output.d.ts +162 -11
@@ -13,6 +13,7 @@ const utilities = require("../utilities");
13
13
  * import * as pulumi from "@pulumi/pulumi";
14
14
  * import * as gcp from "@pulumi/gcp";
15
15
  *
16
+ * // [START functions_v2_basic]
16
17
  * const bucket = new gcp.storage.Bucket("bucket", {
17
18
  * location: "US",
18
19
  * uniformBucketLevelAccess: true,
@@ -25,6 +26,7 @@ const utilities = require("../utilities");
25
26
  * }, {
26
27
  * provider: google_beta,
27
28
  * });
29
+ * // Add path to the zipped function source code
28
30
  * const terraform_test2 = new gcp.cloudfunctionsv2.Function("terraform-test2", {
29
31
  * location: "us-central1",
30
32
  * description: "a new function",
@@ -53,8 +55,9 @@ const utilities = require("../utilities");
53
55
  * import * as pulumi from "@pulumi/pulumi";
54
56
  * import * as gcp from "@pulumi/gcp";
55
57
  *
58
+ * // [START functions_v2_full]
56
59
  * const account = new gcp.serviceaccount.Account("account", {
57
- * accountId: "test-service-account",
60
+ * accountId: "s-a",
58
61
  * displayName: "Test Service Account",
59
62
  * }, {
60
63
  * provider: google_beta,
@@ -74,12 +77,13 @@ const utilities = require("../utilities");
74
77
  * }, {
75
78
  * provider: google_beta,
76
79
  * });
80
+ * // Add path to the zipped function source code
77
81
  * const terraform_test = new gcp.cloudfunctionsv2.Function("terraform-test", {
78
82
  * location: "us-central1",
79
83
  * description: "a new function",
80
84
  * buildConfig: {
81
85
  * runtime: "nodejs16",
82
- * entryPoint: "helloHttp",
86
+ * entryPoint: "helloPubSub",
83
87
  * environmentVariables: {
84
88
  * BUILD_CONFIG_TEST: "build_test",
85
89
  * },
@@ -1 +1 @@
1
- {"version":3,"file":"function.js","sourceRoot":"","sources":["../../cloudfunctionsv2/function.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"function.js","sourceRoot":"","sources":["../../cloudfunctionsv2/function.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgIG;AACH,MAAa,QAAS,SAAQ,MAAM,CAAC,cAAc;IAwF/C,YAAY,IAAY,EAAE,WAA0C,EAAE,IAAmC;QACrG,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAwC,CAAC;YACvD,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;YACxE,cAAc,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,eAAe,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1E,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;SACvE;aAAM;YACH,MAAM,IAAI,GAAG,WAAuC,CAAC;YACrD,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,cAAc,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,cAAc,CAAC,eAAe,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;YACxE,cAAc,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAClD,cAAc,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC5C,cAAc,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACpD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC7D,CAAC;IAvHD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAqB,EAAE,IAAmC;QACnH,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC/D,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,YAAY,CAAC;IACzD,CAAC;;AA1BL,4BAyHC;AA3GG,gBAAgB;AACO,qBAAY,GAAG,wCAAwC,CAAC"}
@@ -225,6 +225,84 @@ import { input as inputs, output as outputs } from "../types";
225
225
  * ],
226
226
  * });
227
227
  * ```
228
+ * ### Cloud Run Service Scheduled
229
+ *
230
+ * ```typescript
231
+ * import * as pulumi from "@pulumi/pulumi";
232
+ * import * as gcp from "@pulumi/gcp";
233
+ *
234
+ * const runApi = new gcp.projects.Service("runApi", {
235
+ * project: "my-project-name",
236
+ * service: "run.googleapis.com",
237
+ * disableDependentServices: true,
238
+ * disableOnDestroy: false,
239
+ * });
240
+ * const iamApi = new gcp.projects.Service("iamApi", {
241
+ * project: "my-project-name",
242
+ * service: "iam.googleapis.com",
243
+ * disableOnDestroy: false,
244
+ * });
245
+ * const resourceManagerApi = new gcp.projects.Service("resourceManagerApi", {
246
+ * project: "my-project-name",
247
+ * service: "cloudresourcemanager.googleapis.com",
248
+ * disableOnDestroy: false,
249
+ * });
250
+ * const schedulerApi = new gcp.projects.Service("schedulerApi", {
251
+ * project: "my-project-name",
252
+ * service: "cloudscheduler.googleapis.com",
253
+ * disableOnDestroy: false,
254
+ * });
255
+ * const defaultService = new gcp.cloudrun.Service("defaultService", {
256
+ * project: "my-project-name",
257
+ * location: "us-central1",
258
+ * template: {
259
+ * spec: {
260
+ * containers: [{
261
+ * image: "us-docker.pkg.dev/cloudrun/container/hello",
262
+ * }],
263
+ * },
264
+ * },
265
+ * traffics: [{
266
+ * percent: 100,
267
+ * latestRevision: true,
268
+ * }],
269
+ * }, {
270
+ * dependsOn: [runApi],
271
+ * });
272
+ * const defaultAccount = new gcp.serviceaccount.Account("defaultAccount", {
273
+ * project: "my-project-name",
274
+ * accountId: "scheduler-sa",
275
+ * description: "Cloud Scheduler service account; used to trigger scheduled Cloud Run jobs.",
276
+ * displayName: "scheduler-sa",
277
+ * }, {
278
+ * dependsOn: [iamApi],
279
+ * });
280
+ * const defaultJob = new gcp.cloudscheduler.Job("defaultJob", {
281
+ * description: "Invoke a Cloud Run container on a schedule.",
282
+ * schedule: "*/8 * * * *",
283
+ * timeZone: "America/New_York",
284
+ * attemptDeadline: "320s",
285
+ * retryConfig: {
286
+ * retryCount: 1,
287
+ * },
288
+ * httpTarget: {
289
+ * httpMethod: "POST",
290
+ * uri: defaultService.statuses.apply(statuses => `${statuses[0].url}/`),
291
+ * oidcToken: {
292
+ * serviceAccountEmail: defaultAccount.email,
293
+ * },
294
+ * },
295
+ * }, {
296
+ * dependsOn: [schedulerApi],
297
+ * });
298
+ * const defaultIamMember = new gcp.cloudrun.IamMember("defaultIamMember", {
299
+ * project: "my-project-name",
300
+ * location: defaultService.location,
301
+ * service: defaultService.name,
302
+ * role: "roles/run.invoker",
303
+ * member: pulumi.interpolate`serviceAccount:${defaultAccount.email}`,
304
+ * });
305
+ * ```
228
306
  * ### Cloud Run Service Secret Environment Variables
229
307
  *
230
308
  * ```typescript
@@ -344,6 +422,34 @@ import { input as inputs, output as outputs } from "../types";
344
422
  * dependsOn: [secret_version_data],
345
423
  * });
346
424
  * ```
425
+ * ### Cloud Run Service Ingress
426
+ *
427
+ * ```typescript
428
+ * import * as pulumi from "@pulumi/pulumi";
429
+ * import * as gcp from "@pulumi/gcp";
430
+ *
431
+ * const defaultService = new gcp.cloudrun.Service("default", {
432
+ * location: "us-central1",
433
+ * metadata: {
434
+ * annotations: {
435
+ * // For valid annotation values and descriptions, see
436
+ * // https://cloud.google.com/sdk/gcloud/reference/run/deploy#--ingress
437
+ * "run.googleapis.com/ingress": "internal",
438
+ * },
439
+ * },
440
+ * template: {
441
+ * spec: {
442
+ * containers: [{
443
+ * image: "gcr.io/cloudrun/hello", //public image for your service
444
+ * }],
445
+ * },
446
+ * },
447
+ * traffics: [{
448
+ * latestRevision: true,
449
+ * percent: 100,
450
+ * }],
451
+ * });
452
+ * ```
347
453
  * ### Eventarc Basic Tf
348
454
  *
349
455
  * ```typescript
@@ -447,6 +553,324 @@ import { input as inputs, output as outputs } from "../types";
447
553
  * dependsOn: [eventarc],
448
554
  * });
449
555
  * ```
556
+ * ### Cloud Run Service Multiple Regions
557
+ *
558
+ * ```typescript
559
+ * import * as pulumi from "@pulumi/pulumi";
560
+ * import * as gcp from "@pulumi/gcp";
561
+ *
562
+ * // Cloud Run service replicated across multiple GCP regions
563
+ * const computeApi = new gcp.projects.Service("computeApi", {
564
+ * project: "my-project-name",
565
+ * service: "compute.googleapis.com",
566
+ * disableDependentServices: true,
567
+ * disableOnDestroy: false,
568
+ * });
569
+ * const runApi = new gcp.projects.Service("runApi", {
570
+ * project: "my-project-name",
571
+ * service: "run.googleapis.com",
572
+ * disableDependentServices: true,
573
+ * disableOnDestroy: false,
574
+ * });
575
+ * const config = new pulumi.Config();
576
+ * const domainName = config.get("domainName") || "example.com";
577
+ * const runRegions = config.getObject("runRegions") || [
578
+ * "us-central1",
579
+ * "europe-west1",
580
+ * ];
581
+ * const lbDefaultGlobalAddress = new gcp.compute.GlobalAddress("lbDefaultGlobalAddress", {project: "my-project-name"}, {
582
+ * dependsOn: [computeApi],
583
+ * });
584
+ * const runDefault: gcp.cloudrun.Service[];
585
+ * for (const range = {value: 0}; range.value < runRegions.length; range.value++) {
586
+ * runDefault.push(new gcp.cloudrun.Service(`runDefault-${range.value}`, {
587
+ * project: "my-project-name",
588
+ * location: runRegions[range.value],
589
+ * template: {
590
+ * spec: {
591
+ * containers: [{
592
+ * image: "us-docker.pkg.dev/cloudrun/container/hello",
593
+ * }],
594
+ * },
595
+ * },
596
+ * traffics: [{
597
+ * percent: 100,
598
+ * latestRevision: true,
599
+ * }],
600
+ * }, {
601
+ * dependsOn: [runApi],
602
+ * }));
603
+ * }
604
+ * const lbDefaultRegionNetworkEndpointGroup: gcp.compute.RegionNetworkEndpointGroup[];
605
+ * for (const range = {value: 0}; range.value < runRegions.length; range.value++) {
606
+ * lbDefaultRegionNetworkEndpointGroup.push(new gcp.compute.RegionNetworkEndpointGroup(`lbDefaultRegionNetworkEndpointGroup-${range.value}`, {
607
+ * project: "my-project-name",
608
+ * networkEndpointType: "SERVERLESS",
609
+ * region: runRegions[range.value],
610
+ * cloudRun: {
611
+ * service: runDefault[count.index].name,
612
+ * },
613
+ * }));
614
+ * }
615
+ * const lbDefaultBackendService = new gcp.compute.BackendService("lbDefaultBackendService", {
616
+ * project: "my-project-name",
617
+ * loadBalancingScheme: "EXTERNAL_MANAGED",
618
+ * backends: [
619
+ * {
620
+ * balancingMode: "UTILIZATION",
621
+ * capacityScaler: 0.85,
622
+ * group: lbDefaultRegionNetworkEndpointGroup[0].id,
623
+ * },
624
+ * {
625
+ * balancingMode: "UTILIZATION",
626
+ * capacityScaler: 0.85,
627
+ * group: lbDefaultRegionNetworkEndpointGroup[1].id,
628
+ * },
629
+ * ],
630
+ * }, {
631
+ * dependsOn: [computeApi],
632
+ * });
633
+ * const lbDefaultURLMap = new gcp.compute.URLMap("lbDefaultURLMap", {
634
+ * project: "my-project-name",
635
+ * defaultService: lbDefaultBackendService.id,
636
+ * pathMatchers: [{
637
+ * name: "allpaths",
638
+ * defaultService: lbDefaultBackendService.id,
639
+ * routeRules: [{
640
+ * priority: 1,
641
+ * urlRedirect: {
642
+ * httpsRedirect: true,
643
+ * redirectResponseCode: "MOVED_PERMANENTLY_DEFAULT",
644
+ * },
645
+ * }],
646
+ * }],
647
+ * });
648
+ * const lbDefaultManagedSslCertificate = new gcp.compute.ManagedSslCertificate("lbDefaultManagedSslCertificate", {
649
+ * project: "my-project-name",
650
+ * managed: {
651
+ * domains: [domainName],
652
+ * },
653
+ * });
654
+ * const lbDefaultTargetHttpsProxy = new gcp.compute.TargetHttpsProxy("lbDefaultTargetHttpsProxy", {
655
+ * project: "my-project-name",
656
+ * urlMap: lbDefaultURLMap.id,
657
+ * sslCertificates: [lbDefaultManagedSslCertificate.name],
658
+ * }, {
659
+ * dependsOn: [lbDefaultManagedSslCertificate],
660
+ * });
661
+ * const lbDefaultGlobalForwardingRule = new gcp.compute.GlobalForwardingRule("lbDefaultGlobalForwardingRule", {
662
+ * project: "my-project-name",
663
+ * loadBalancingScheme: "EXTERNAL_MANAGED",
664
+ * target: lbDefaultTargetHttpsProxy.id,
665
+ * ipAddress: lbDefaultGlobalAddress.id,
666
+ * portRange: "443",
667
+ * }, {
668
+ * dependsOn: [lbDefaultTargetHttpsProxy],
669
+ * });
670
+ * export const loadBalancerIpAddr = lbDefaultGlobalAddress.address;
671
+ * const runAllowUnauthenticated: gcp.cloudrun.IamMember[];
672
+ * for (const range = {value: 0}; range.value < runRegions.length; range.value++) {
673
+ * runAllowUnauthenticated.push(new gcp.cloudrun.IamMember(`runAllowUnauthenticated-${range.value}`, {
674
+ * project: "my-project-name",
675
+ * location: runDefault[range.value].location,
676
+ * service: runDefault[range.value].name,
677
+ * role: "roles/run.invoker",
678
+ * member: "allUsers",
679
+ * }));
680
+ * }
681
+ * const httpsDefaultURLMap = new gcp.compute.URLMap("httpsDefaultURLMap", {
682
+ * project: "my-project-name",
683
+ * defaultUrlRedirect: {
684
+ * redirectResponseCode: "MOVED_PERMANENTLY_DEFAULT",
685
+ * httpsRedirect: true,
686
+ * stripQuery: false,
687
+ * },
688
+ * });
689
+ * const httpsDefaultTargetHttpProxy = new gcp.compute.TargetHttpProxy("httpsDefaultTargetHttpProxy", {
690
+ * project: "my-project-name",
691
+ * urlMap: httpsDefaultURLMap.id,
692
+ * }, {
693
+ * dependsOn: [httpsDefaultURLMap],
694
+ * });
695
+ * const httpsDefaultGlobalForwardingRule = new gcp.compute.GlobalForwardingRule("httpsDefaultGlobalForwardingRule", {
696
+ * project: "my-project-name",
697
+ * target: httpsDefaultTargetHttpProxy.id,
698
+ * ipAddress: lbDefaultGlobalAddress.id,
699
+ * portRange: "80",
700
+ * }, {
701
+ * dependsOn: [httpsDefaultTargetHttpProxy],
702
+ * });
703
+ * ```
704
+ * ### Cloud Run Service Remove Tag
705
+ *
706
+ * ```typescript
707
+ * import * as pulumi from "@pulumi/pulumi";
708
+ * import * as gcp from "@pulumi/gcp";
709
+ *
710
+ * const defaultService = new gcp.cloudrun.Service("default", {
711
+ * location: "us-central1",
712
+ * template: {},
713
+ * traffics: [
714
+ * {
715
+ * percent: 100,
716
+ * // This revision needs to already exist
717
+ * revisionName: "cloudrun-srv-green",
718
+ * },
719
+ * {
720
+ * // No tags for this revision
721
+ * // Keep revision at 0% traffic
722
+ * percent: 0,
723
+ * // This revision needs to already exist
724
+ * revisionName: "cloudrun-srv-blue",
725
+ * },
726
+ * ],
727
+ * });
728
+ * ```
729
+ * ### Cloud Run Service Deploy Tag
730
+ *
731
+ * ```typescript
732
+ * import * as pulumi from "@pulumi/pulumi";
733
+ * import * as gcp from "@pulumi/gcp";
734
+ *
735
+ * const defaultService = new gcp.cloudrun.Service("default", {
736
+ * location: "us-central1",
737
+ * template: {
738
+ * metadata: {
739
+ * name: "cloudrun-srv-blue",
740
+ * },
741
+ * spec: {
742
+ * containers: [{
743
+ * // image or tag must be different from previous revision
744
+ * image: "us-docker.pkg.dev/cloudrun/container/hello",
745
+ * }],
746
+ * },
747
+ * },
748
+ * traffics: [
749
+ * {
750
+ * percent: 100,
751
+ * // This revision needs to already exist
752
+ * revisionName: "cloudrun-srv-green",
753
+ * },
754
+ * {
755
+ * // Deploy new revision with 0% traffic
756
+ * percent: 0,
757
+ * revisionName: "cloudrun-srv-blue",
758
+ * tag: "tag-name",
759
+ * },
760
+ * ],
761
+ * });
762
+ * ```
763
+ * ### Cloud Run Service Add Tag
764
+ *
765
+ * ```typescript
766
+ * import * as pulumi from "@pulumi/pulumi";
767
+ * import * as gcp from "@pulumi/gcp";
768
+ *
769
+ * const defaultService = new gcp.cloudrun.Service("default", {
770
+ * location: "us-central1",
771
+ * template: {},
772
+ * traffics: [
773
+ * {
774
+ * percent: 100,
775
+ * // This revision needs to already exist
776
+ * revisionName: "cloudrun-srv-green",
777
+ * },
778
+ * {
779
+ * // Deploy new revision with 0% traffic
780
+ * percent: 0,
781
+ * revisionName: "cloudrun-srv-blue",
782
+ * tag: "tag-name",
783
+ * },
784
+ * ],
785
+ * });
786
+ * ```
787
+ * ### Cloud Run Service Traffic Gradual Rollout
788
+ *
789
+ * ```typescript
790
+ * import * as pulumi from "@pulumi/pulumi";
791
+ * import * as gcp from "@pulumi/gcp";
792
+ *
793
+ * const defaultService = new gcp.cloudrun.Service("default", {
794
+ * autogenerateRevisionName: true,
795
+ * location: "us-central1",
796
+ * template: {
797
+ * spec: {
798
+ * containers: [{
799
+ * // Image or image tag must be different from previous revision
800
+ * image: "us-docker.pkg.dev/cloudrun/container/hello",
801
+ * }],
802
+ * },
803
+ * },
804
+ * traffics: [
805
+ * {
806
+ * percent: 100,
807
+ * // This revision needs to already exist
808
+ * revisionName: "cloudrun-srv-green",
809
+ * },
810
+ * {
811
+ * latestRevision: true,
812
+ * // Deploy new revision with 0% traffic
813
+ * percent: 0,
814
+ * },
815
+ * ],
816
+ * });
817
+ * ```
818
+ * ### Cloud Run Service Traffic Latest Revision
819
+ *
820
+ * ```typescript
821
+ * import * as pulumi from "@pulumi/pulumi";
822
+ * import * as gcp from "@pulumi/gcp";
823
+ *
824
+ * const defaultService = new gcp.cloudrun.Service("default", {
825
+ * location: "us-central1",
826
+ * template: {},
827
+ * traffics: [{
828
+ * latestRevision: true,
829
+ * percent: 100,
830
+ * }],
831
+ * });
832
+ * ```
833
+ * ### Cloud Run Service Traffic Rollback
834
+ *
835
+ * ```typescript
836
+ * import * as pulumi from "@pulumi/pulumi";
837
+ * import * as gcp from "@pulumi/gcp";
838
+ *
839
+ * const defaultService = new gcp.cloudrun.Service("default", {
840
+ * location: "us-central1",
841
+ * template: {},
842
+ * traffics: [{
843
+ * percent: 100,
844
+ * // This revision needs to already exist
845
+ * revisionName: "cloudrun-srv-green",
846
+ * }],
847
+ * });
848
+ * ```
849
+ * ### Cloud Run Service Traffic Split Tag
850
+ *
851
+ * ```typescript
852
+ * import * as pulumi from "@pulumi/pulumi";
853
+ * import * as gcp from "@pulumi/gcp";
854
+ *
855
+ * const defaultService = new gcp.cloudrun.Service("default", {
856
+ * location: "us-central1",
857
+ * template: {},
858
+ * traffics: [
859
+ * {
860
+ * // Update revision to 50% traffic
861
+ * percent: 50,
862
+ * // This revision needs to already exist
863
+ * revisionName: "cloudrun-srv-green",
864
+ * },
865
+ * {
866
+ * // Update tag to 50% traffic
867
+ * percent: 50,
868
+ * // This tag needs to already exist
869
+ * tag: "tag-name",
870
+ * },
871
+ * ],
872
+ * });
873
+ * ```
450
874
  *
451
875
  * ## Import
452
876
  *