pulumi-gcp 8.27.0a1744872023__py3-none-any.whl → 8.27.0a1744903336__py3-none-any.whl

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 (76) hide show
  1. pulumi_gcp/__init__.py +80 -0
  2. pulumi_gcp/bigquery/_inputs.py +87 -30
  3. pulumi_gcp/bigquery/outputs.py +58 -20
  4. pulumi_gcp/bigquery/table.py +28 -14
  5. pulumi_gcp/cloudrun/service.py +46 -0
  6. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  7. pulumi_gcp/cloudrunv2/service.py +85 -0
  8. pulumi_gcp/compute/_inputs.py +428 -1
  9. pulumi_gcp/compute/image.py +183 -0
  10. pulumi_gcp/compute/outputs.py +362 -3
  11. pulumi_gcp/compute/region_backend_service.py +6 -2
  12. pulumi_gcp/compute/snapshot.py +6 -0
  13. pulumi_gcp/databasemigrationservice/_inputs.py +27 -24
  14. pulumi_gcp/databasemigrationservice/connection_profile.py +168 -0
  15. pulumi_gcp/databasemigrationservice/migration_job.py +6 -0
  16. pulumi_gcp/databasemigrationservice/outputs.py +18 -15
  17. pulumi_gcp/developerconnect/__init__.py +1 -0
  18. pulumi_gcp/developerconnect/_inputs.py +77 -0
  19. pulumi_gcp/developerconnect/account_connector.py +866 -0
  20. pulumi_gcp/developerconnect/outputs.py +64 -0
  21. pulumi_gcp/firestore/database.py +82 -0
  22. pulumi_gcp/firestore/index.py +263 -7
  23. pulumi_gcp/folder/service_identity.py +0 -26
  24. pulumi_gcp/managedkafka/_inputs.py +6 -6
  25. pulumi_gcp/managedkafka/connect_cluster.py +84 -40
  26. pulumi_gcp/managedkafka/connector.py +98 -44
  27. pulumi_gcp/managedkafka/outputs.py +4 -4
  28. pulumi_gcp/memorystore/_inputs.py +69 -0
  29. pulumi_gcp/memorystore/get_instance.py +34 -1
  30. pulumi_gcp/memorystore/instance.py +140 -0
  31. pulumi_gcp/memorystore/outputs.py +80 -0
  32. pulumi_gcp/ml/engine_model.py +0 -22
  33. pulumi_gcp/monitoring/_inputs.py +37 -19
  34. pulumi_gcp/monitoring/outputs.py +39 -11
  35. pulumi_gcp/monitoring/uptime_check_config.py +8 -0
  36. pulumi_gcp/netapp/_inputs.py +3 -3
  37. pulumi_gcp/netapp/outputs.py +2 -2
  38. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  39. pulumi_gcp/orgpolicy/policy.py +2 -2
  40. pulumi_gcp/osconfig/v2_policy_orchestrator.py +8 -0
  41. pulumi_gcp/osconfig/v2_policy_orchestrator_for_organization.py +8 -0
  42. pulumi_gcp/pubsub/subscription.py +6 -6
  43. pulumi_gcp/pulumi-plugin.json +1 -1
  44. pulumi_gcp/redis/_inputs.py +69 -0
  45. pulumi_gcp/redis/cluster.py +140 -0
  46. pulumi_gcp/redis/outputs.py +40 -0
  47. pulumi_gcp/storage/_inputs.py +111 -0
  48. pulumi_gcp/storage/control_folder_intelligence_config.py +32 -0
  49. pulumi_gcp/storage/control_organization_intelligence_config.py +32 -0
  50. pulumi_gcp/storage/control_project_intelligence_config.py +32 -0
  51. pulumi_gcp/storage/get_control_folder_intelligence_config.py +12 -1
  52. pulumi_gcp/storage/get_control_organization_intelligence_config.py +12 -1
  53. pulumi_gcp/storage/get_control_project_intelligence_config.py +12 -1
  54. pulumi_gcp/storage/outputs.py +174 -0
  55. pulumi_gcp/vertex/__init__.py +12 -0
  56. pulumi_gcp/vertex/_inputs.py +294 -0
  57. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  58. pulumi_gcp/vertex/ai_feature_group.py +1 -1
  59. pulumi_gcp/vertex/ai_feature_group_iam_binding.py +583 -0
  60. pulumi_gcp/vertex/ai_feature_group_iam_member.py +583 -0
  61. pulumi_gcp/vertex/ai_feature_group_iam_policy.py +422 -0
  62. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +26 -27
  63. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_binding.py +614 -0
  64. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_member.py +614 -0
  65. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_policy.py +453 -0
  66. pulumi_gcp/vertex/ai_feature_online_store_iam_binding.py +583 -0
  67. pulumi_gcp/vertex/ai_feature_online_store_iam_member.py +583 -0
  68. pulumi_gcp/vertex/ai_feature_online_store_iam_policy.py +422 -0
  69. pulumi_gcp/vertex/get_ai_feature_group_iam_policy.py +177 -0
  70. pulumi_gcp/vertex/get_ai_feature_online_store_featureview_iam_policy.py +194 -0
  71. pulumi_gcp/vertex/get_ai_feature_online_store_iam_policy.py +177 -0
  72. pulumi_gcp/vertex/outputs.py +168 -0
  73. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.27.0a1744903336.dist-info}/METADATA +1 -1
  74. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.27.0a1744903336.dist-info}/RECORD +76 -63
  75. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.27.0a1744903336.dist-info}/WHEEL +0 -0
  76. {pulumi_gcp-8.27.0a1744872023.dist-info → pulumi_gcp-8.27.0a1744903336.dist-info}/top_level.txt +0 -0
@@ -385,22 +385,33 @@ class ConnectCluster(pulumi.CustomResource):
385
385
  ```python
386
386
  import pulumi
387
387
  import pulumi_gcp as gcp
388
-
389
- mkc_network = gcp.compute.Network("mkc_network",
390
- name="my-network",
391
- auto_create_subnetworks=False)
392
- mkc_subnet = gcp.compute.Subnetwork("mkc_subnet",
393
- name="my-subnetwork",
394
- ip_cidr_range="10.2.0.0/16",
395
- region="us-central1",
396
- network=mkc_network.id)
397
- mkc_additional_subnet = gcp.compute.Subnetwork("mkc_additional_subnet",
398
- name="my-additional-subnetwork-0",
388
+ import pulumi_time as time
389
+
390
+ project = gcp.organizations.Project("project",
391
+ project_id="tf-test_91980",
392
+ name="tf-test_37118",
393
+ org_id="123456789",
394
+ billing_account="000000-0000000-0000000-000000",
395
+ deletion_policy="DELETE")
396
+ wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s,
397
+ opts = pulumi.ResourceOptions(depends_on=[project]))
398
+ compute = gcp.projects.Service("compute",
399
+ project=project.project_id,
400
+ service="compute.googleapis.com",
401
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
402
+ managedkafka = gcp.projects.Service("managedkafka",
403
+ project=project.project_id,
404
+ service="managedkafka.googleapis.com",
405
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
406
+ mkc_secondary_subnet = gcp.compute.Subnetwork("mkc_secondary_subnet",
407
+ project=project.project_id,
408
+ name="my-secondary-subnetwork",
399
409
  ip_cidr_range="10.3.0.0/16",
400
410
  region="us-central1",
401
- network=mkc_network.id)
402
- project = gcp.organizations.get_project()
411
+ network="default",
412
+ opts = pulumi.ResourceOptions(depends_on=[compute]))
403
413
  gmk_cluster = gcp.managedkafka.Cluster("gmk_cluster",
414
+ project=project.project_id,
404
415
  cluster_id="my-cluster",
405
416
  location="us-central1",
406
417
  capacity_config={
@@ -410,13 +421,19 @@ class ConnectCluster(pulumi.CustomResource):
410
421
  gcp_config={
411
422
  "access_config": {
412
423
  "network_configs": [{
413
- "subnet": mkc_subnet.id.apply(lambda id: f"projects/{project.project_id}/regions/us-central1/subnetworks/{id}"),
424
+ "subnet": project.project_id.apply(lambda project_id: f"projects/{project_id}/regions/us-central1/subnetworks/default"),
414
425
  }],
415
426
  },
416
- })
427
+ },
428
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
417
429
  example = gcp.managedkafka.ConnectCluster("example",
430
+ project=project.project_id,
418
431
  connect_cluster_id="my-connect-cluster",
419
- kafka_cluster=gmk_cluster.cluster_id.apply(lambda cluster_id: f"projects/{project.project_id}/locations/us-central1/clusters/{cluster_id}"),
432
+ kafka_cluster=pulumi.Output.all(
433
+ project_id=project.project_id,
434
+ cluster_id=gmk_cluster.cluster_id
435
+ ).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project_id']}/locations/us-central1/clusters/{resolved_outputs['cluster_id']}")
436
+ ,
420
437
  location="us-central1",
421
438
  capacity_config={
422
439
  "vcpu_count": "12",
@@ -425,15 +442,20 @@ class ConnectCluster(pulumi.CustomResource):
425
442
  gcp_config={
426
443
  "access_config": {
427
444
  "network_configs": [{
428
- "primary_subnet": mkc_subnet.id.apply(lambda id: f"projects/{project.project_id}/regions/us-central1/subnetworks/{id}"),
429
- "additional_subnets": [mkc_additional_subnet.id],
430
- "dns_domain_names": [gmk_cluster.cluster_id.apply(lambda cluster_id: f"{cluster_id}.us-central1.managedkafka-staging.{project.project_id}.cloud-staging.goog")],
445
+ "primary_subnet": project.project_id.apply(lambda project_id: f"projects/{project_id}/regions/us-central1/subnetworks/default"),
446
+ "additional_subnets": [mkc_secondary_subnet.id],
447
+ "dns_domain_names": [pulumi.Output.all(
448
+ cluster_id=gmk_cluster.cluster_id,
449
+ project_id=project.project_id
450
+ ).apply(lambda resolved_outputs: f"{resolved_outputs['cluster_id']}.us-central1.managedkafka.{resolved_outputs['project_id']}.cloud.goog")
451
+ ],
431
452
  }],
432
453
  },
433
454
  },
434
455
  labels={
435
456
  "key": "value",
436
- })
457
+ },
458
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
437
459
  ```
438
460
 
439
461
  ## Import
@@ -488,22 +510,33 @@ class ConnectCluster(pulumi.CustomResource):
488
510
  ```python
489
511
  import pulumi
490
512
  import pulumi_gcp as gcp
491
-
492
- mkc_network = gcp.compute.Network("mkc_network",
493
- name="my-network",
494
- auto_create_subnetworks=False)
495
- mkc_subnet = gcp.compute.Subnetwork("mkc_subnet",
496
- name="my-subnetwork",
497
- ip_cidr_range="10.2.0.0/16",
498
- region="us-central1",
499
- network=mkc_network.id)
500
- mkc_additional_subnet = gcp.compute.Subnetwork("mkc_additional_subnet",
501
- name="my-additional-subnetwork-0",
513
+ import pulumi_time as time
514
+
515
+ project = gcp.organizations.Project("project",
516
+ project_id="tf-test_91980",
517
+ name="tf-test_37118",
518
+ org_id="123456789",
519
+ billing_account="000000-0000000-0000000-000000",
520
+ deletion_policy="DELETE")
521
+ wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s,
522
+ opts = pulumi.ResourceOptions(depends_on=[project]))
523
+ compute = gcp.projects.Service("compute",
524
+ project=project.project_id,
525
+ service="compute.googleapis.com",
526
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
527
+ managedkafka = gcp.projects.Service("managedkafka",
528
+ project=project.project_id,
529
+ service="managedkafka.googleapis.com",
530
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
531
+ mkc_secondary_subnet = gcp.compute.Subnetwork("mkc_secondary_subnet",
532
+ project=project.project_id,
533
+ name="my-secondary-subnetwork",
502
534
  ip_cidr_range="10.3.0.0/16",
503
535
  region="us-central1",
504
- network=mkc_network.id)
505
- project = gcp.organizations.get_project()
536
+ network="default",
537
+ opts = pulumi.ResourceOptions(depends_on=[compute]))
506
538
  gmk_cluster = gcp.managedkafka.Cluster("gmk_cluster",
539
+ project=project.project_id,
507
540
  cluster_id="my-cluster",
508
541
  location="us-central1",
509
542
  capacity_config={
@@ -513,13 +546,19 @@ class ConnectCluster(pulumi.CustomResource):
513
546
  gcp_config={
514
547
  "access_config": {
515
548
  "network_configs": [{
516
- "subnet": mkc_subnet.id.apply(lambda id: f"projects/{project.project_id}/regions/us-central1/subnetworks/{id}"),
549
+ "subnet": project.project_id.apply(lambda project_id: f"projects/{project_id}/regions/us-central1/subnetworks/default"),
517
550
  }],
518
551
  },
519
- })
552
+ },
553
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
520
554
  example = gcp.managedkafka.ConnectCluster("example",
555
+ project=project.project_id,
521
556
  connect_cluster_id="my-connect-cluster",
522
- kafka_cluster=gmk_cluster.cluster_id.apply(lambda cluster_id: f"projects/{project.project_id}/locations/us-central1/clusters/{cluster_id}"),
557
+ kafka_cluster=pulumi.Output.all(
558
+ project_id=project.project_id,
559
+ cluster_id=gmk_cluster.cluster_id
560
+ ).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project_id']}/locations/us-central1/clusters/{resolved_outputs['cluster_id']}")
561
+ ,
523
562
  location="us-central1",
524
563
  capacity_config={
525
564
  "vcpu_count": "12",
@@ -528,15 +567,20 @@ class ConnectCluster(pulumi.CustomResource):
528
567
  gcp_config={
529
568
  "access_config": {
530
569
  "network_configs": [{
531
- "primary_subnet": mkc_subnet.id.apply(lambda id: f"projects/{project.project_id}/regions/us-central1/subnetworks/{id}"),
532
- "additional_subnets": [mkc_additional_subnet.id],
533
- "dns_domain_names": [gmk_cluster.cluster_id.apply(lambda cluster_id: f"{cluster_id}.us-central1.managedkafka-staging.{project.project_id}.cloud-staging.goog")],
570
+ "primary_subnet": project.project_id.apply(lambda project_id: f"projects/{project_id}/regions/us-central1/subnetworks/default"),
571
+ "additional_subnets": [mkc_secondary_subnet.id],
572
+ "dns_domain_names": [pulumi.Output.all(
573
+ cluster_id=gmk_cluster.cluster_id,
574
+ project_id=project.project_id
575
+ ).apply(lambda resolved_outputs: f"{resolved_outputs['cluster_id']}.us-central1.managedkafka.{resolved_outputs['project_id']}.cloud.goog")
576
+ ],
534
577
  }],
535
578
  },
536
579
  },
537
580
  labels={
538
581
  "key": "value",
539
- })
582
+ },
583
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
540
584
  ```
541
585
 
542
586
  ## Import
@@ -296,25 +296,37 @@ class Connector(pulumi.CustomResource):
296
296
  ```python
297
297
  import pulumi
298
298
  import pulumi_gcp as gcp
299
-
300
- mkc_network = gcp.compute.Network("mkc_network",
301
- name="my-network-0",
302
- auto_create_subnetworks=False)
303
- mkc_subnet = gcp.compute.Subnetwork("mkc_subnet",
304
- name="my-subnetwork-0",
305
- ip_cidr_range="10.4.0.0/16",
306
- region="us-central1",
307
- network=mkc_network.id)
308
- mkc_additional_subnet = gcp.compute.Subnetwork("mkc_additional_subnet",
309
- name="my-additional-subnetwork-0",
299
+ import pulumi_time as time
300
+
301
+ project = gcp.organizations.Project("project",
302
+ project_id="tf-test_80332",
303
+ name="tf-test_13293",
304
+ org_id="123456789",
305
+ billing_account="000000-0000000-0000000-000000",
306
+ deletion_policy="DELETE")
307
+ wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s,
308
+ opts = pulumi.ResourceOptions(depends_on=[project]))
309
+ compute = gcp.projects.Service("compute",
310
+ project=project.project_id,
311
+ service="compute.googleapis.com",
312
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
313
+ managedkafka = gcp.projects.Service("managedkafka",
314
+ project=project.project_id,
315
+ service="managedkafka.googleapis.com",
316
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
317
+ mkc_secondary_subnet = gcp.compute.Subnetwork("mkc_secondary_subnet",
318
+ project=project.project_id,
319
+ name="my-secondary-subnetwork-00",
310
320
  ip_cidr_range="10.5.0.0/16",
311
321
  region="us-central1",
312
- network=mkc_network.id)
322
+ network="default",
323
+ opts = pulumi.ResourceOptions(depends_on=[compute]))
313
324
  cps_topic = gcp.pubsub.Topic("cps_topic",
325
+ project=project.project_id,
314
326
  name="my-cps-topic",
315
327
  message_retention_duration="86600s")
316
- project = gcp.organizations.get_project()
317
328
  gmk_cluster = gcp.managedkafka.Cluster("gmk_cluster",
329
+ project=project.project_id,
318
330
  cluster_id="my-cluster",
319
331
  location="us-central1",
320
332
  capacity_config={
@@ -324,19 +336,27 @@ class Connector(pulumi.CustomResource):
324
336
  gcp_config={
325
337
  "access_config": {
326
338
  "network_configs": [{
327
- "subnet": mkc_subnet.id.apply(lambda id: f"projects/{project.project_id}/regions/us-central1/subnetworks/{id}"),
339
+ "subnet": project.project_id.apply(lambda project_id: f"projects/{project_id}/regions/us-central1/subnetworks/default"),
328
340
  }],
329
341
  },
330
- })
342
+ },
343
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
331
344
  gmk_topic = gcp.managedkafka.Topic("gmk_topic",
345
+ project=project.project_id,
332
346
  topic_id="my-topic",
333
347
  cluster=gmk_cluster.cluster_id,
334
348
  location="us-central1",
335
349
  partition_count=2,
336
- replication_factor=3)
350
+ replication_factor=3,
351
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
337
352
  mkc_cluster = gcp.managedkafka.ConnectCluster("mkc_cluster",
353
+ project=project.project_id,
338
354
  connect_cluster_id="my-connect-cluster",
339
- kafka_cluster=gmk_cluster.cluster_id.apply(lambda cluster_id: f"projects/{project.project_id}/locations/us-central1/clusters/{cluster_id}"),
355
+ kafka_cluster=pulumi.Output.all(
356
+ project_id=project.project_id,
357
+ cluster_id=gmk_cluster.cluster_id
358
+ ).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project_id']}/locations/us-central1/clusters/{resolved_outputs['cluster_id']}")
359
+ ,
340
360
  location="us-central1",
341
361
  capacity_config={
342
362
  "vcpu_count": "12",
@@ -345,16 +365,22 @@ class Connector(pulumi.CustomResource):
345
365
  gcp_config={
346
366
  "access_config": {
347
367
  "network_configs": [{
348
- "primary_subnet": mkc_subnet.id.apply(lambda id: f"projects/{project.project_id}/regions/us-central1/subnetworks/{id}"),
349
- "additional_subnets": [mkc_additional_subnet.id],
350
- "dns_domain_names": [gmk_cluster.cluster_id.apply(lambda cluster_id: f"{cluster_id}.us-central1.managedkafka-staging.{project.project_id}.cloud-staging.goog")],
368
+ "primary_subnet": project.project_id.apply(lambda project_id: f"projects/{project_id}/regions/us-central1/subnetworks/default"),
369
+ "additional_subnets": [mkc_secondary_subnet.id],
370
+ "dns_domain_names": [pulumi.Output.all(
371
+ cluster_id=gmk_cluster.cluster_id,
372
+ project_id=project.project_id
373
+ ).apply(lambda resolved_outputs: f"{resolved_outputs['cluster_id']}.us-central1.managedkafka.{resolved_outputs['project_id']}.cloud.goog")
374
+ ],
351
375
  }],
352
376
  },
353
377
  },
354
378
  labels={
355
379
  "key": "value",
356
- })
380
+ },
381
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
357
382
  example = gcp.managedkafka.Connector("example",
383
+ project=project.project_id,
358
384
  connector_id="my-connector",
359
385
  connect_cluster=mkc_cluster.connect_cluster_id,
360
386
  location="us-central1",
@@ -371,7 +397,8 @@ class Connector(pulumi.CustomResource):
371
397
  task_restart_policy={
372
398
  "minimum_backoff": "60s",
373
399
  "maximum_backoff": "1800s",
374
- })
400
+ },
401
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
375
402
  ```
376
403
 
377
404
  ## Import
@@ -426,25 +453,37 @@ class Connector(pulumi.CustomResource):
426
453
  ```python
427
454
  import pulumi
428
455
  import pulumi_gcp as gcp
429
-
430
- mkc_network = gcp.compute.Network("mkc_network",
431
- name="my-network-0",
432
- auto_create_subnetworks=False)
433
- mkc_subnet = gcp.compute.Subnetwork("mkc_subnet",
434
- name="my-subnetwork-0",
435
- ip_cidr_range="10.4.0.0/16",
436
- region="us-central1",
437
- network=mkc_network.id)
438
- mkc_additional_subnet = gcp.compute.Subnetwork("mkc_additional_subnet",
439
- name="my-additional-subnetwork-0",
456
+ import pulumi_time as time
457
+
458
+ project = gcp.organizations.Project("project",
459
+ project_id="tf-test_80332",
460
+ name="tf-test_13293",
461
+ org_id="123456789",
462
+ billing_account="000000-0000000-0000000-000000",
463
+ deletion_policy="DELETE")
464
+ wait60_seconds = time.index.Sleep("wait_60_seconds", create_duration=60s,
465
+ opts = pulumi.ResourceOptions(depends_on=[project]))
466
+ compute = gcp.projects.Service("compute",
467
+ project=project.project_id,
468
+ service="compute.googleapis.com",
469
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
470
+ managedkafka = gcp.projects.Service("managedkafka",
471
+ project=project.project_id,
472
+ service="managedkafka.googleapis.com",
473
+ opts = pulumi.ResourceOptions(depends_on=[wait60_seconds]))
474
+ mkc_secondary_subnet = gcp.compute.Subnetwork("mkc_secondary_subnet",
475
+ project=project.project_id,
476
+ name="my-secondary-subnetwork-00",
440
477
  ip_cidr_range="10.5.0.0/16",
441
478
  region="us-central1",
442
- network=mkc_network.id)
479
+ network="default",
480
+ opts = pulumi.ResourceOptions(depends_on=[compute]))
443
481
  cps_topic = gcp.pubsub.Topic("cps_topic",
482
+ project=project.project_id,
444
483
  name="my-cps-topic",
445
484
  message_retention_duration="86600s")
446
- project = gcp.organizations.get_project()
447
485
  gmk_cluster = gcp.managedkafka.Cluster("gmk_cluster",
486
+ project=project.project_id,
448
487
  cluster_id="my-cluster",
449
488
  location="us-central1",
450
489
  capacity_config={
@@ -454,19 +493,27 @@ class Connector(pulumi.CustomResource):
454
493
  gcp_config={
455
494
  "access_config": {
456
495
  "network_configs": [{
457
- "subnet": mkc_subnet.id.apply(lambda id: f"projects/{project.project_id}/regions/us-central1/subnetworks/{id}"),
496
+ "subnet": project.project_id.apply(lambda project_id: f"projects/{project_id}/regions/us-central1/subnetworks/default"),
458
497
  }],
459
498
  },
460
- })
499
+ },
500
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
461
501
  gmk_topic = gcp.managedkafka.Topic("gmk_topic",
502
+ project=project.project_id,
462
503
  topic_id="my-topic",
463
504
  cluster=gmk_cluster.cluster_id,
464
505
  location="us-central1",
465
506
  partition_count=2,
466
- replication_factor=3)
507
+ replication_factor=3,
508
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
467
509
  mkc_cluster = gcp.managedkafka.ConnectCluster("mkc_cluster",
510
+ project=project.project_id,
468
511
  connect_cluster_id="my-connect-cluster",
469
- kafka_cluster=gmk_cluster.cluster_id.apply(lambda cluster_id: f"projects/{project.project_id}/locations/us-central1/clusters/{cluster_id}"),
512
+ kafka_cluster=pulumi.Output.all(
513
+ project_id=project.project_id,
514
+ cluster_id=gmk_cluster.cluster_id
515
+ ).apply(lambda resolved_outputs: f"projects/{resolved_outputs['project_id']}/locations/us-central1/clusters/{resolved_outputs['cluster_id']}")
516
+ ,
470
517
  location="us-central1",
471
518
  capacity_config={
472
519
  "vcpu_count": "12",
@@ -475,16 +522,22 @@ class Connector(pulumi.CustomResource):
475
522
  gcp_config={
476
523
  "access_config": {
477
524
  "network_configs": [{
478
- "primary_subnet": mkc_subnet.id.apply(lambda id: f"projects/{project.project_id}/regions/us-central1/subnetworks/{id}"),
479
- "additional_subnets": [mkc_additional_subnet.id],
480
- "dns_domain_names": [gmk_cluster.cluster_id.apply(lambda cluster_id: f"{cluster_id}.us-central1.managedkafka-staging.{project.project_id}.cloud-staging.goog")],
525
+ "primary_subnet": project.project_id.apply(lambda project_id: f"projects/{project_id}/regions/us-central1/subnetworks/default"),
526
+ "additional_subnets": [mkc_secondary_subnet.id],
527
+ "dns_domain_names": [pulumi.Output.all(
528
+ cluster_id=gmk_cluster.cluster_id,
529
+ project_id=project.project_id
530
+ ).apply(lambda resolved_outputs: f"{resolved_outputs['cluster_id']}.us-central1.managedkafka.{resolved_outputs['project_id']}.cloud.goog")
531
+ ],
481
532
  }],
482
533
  },
483
534
  },
484
535
  labels={
485
536
  "key": "value",
486
- })
537
+ },
538
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
487
539
  example = gcp.managedkafka.Connector("example",
540
+ project=project.project_id,
488
541
  connector_id="my-connector",
489
542
  connect_cluster=mkc_cluster.connect_cluster_id,
490
543
  location="us-central1",
@@ -501,7 +554,8 @@ class Connector(pulumi.CustomResource):
501
554
  task_restart_policy={
502
555
  "minimum_backoff": "60s",
503
556
  "maximum_backoff": "1800s",
504
- })
557
+ },
558
+ opts = pulumi.ResourceOptions(depends_on=[managedkafka]))
505
559
  ```
506
560
 
507
561
  ## Import
@@ -154,7 +154,7 @@ class ClusterGcpConfigAccessConfig(dict):
154
154
  def __init__(__self__, *,
155
155
  network_configs: Sequence['outputs.ClusterGcpConfigAccessConfigNetworkConfig']):
156
156
  """
157
- :param Sequence['ClusterGcpConfigAccessConfigNetworkConfigArgs'] network_configs: Virtual Private Cloud (VPC) subnets where IP addresses for the Kafka cluster are allocated. To make the cluster available in a VPC, you must specify at least one subnet per network. You must specify between 1 and 10 subnets. Additional subnets may be specified with additional `network_configs` blocks.
157
+ :param Sequence['ClusterGcpConfigAccessConfigNetworkConfigArgs'] network_configs: Virtual Private Cloud (VPC) subnets where IP addresses for the Kafka cluster are allocated. To make the cluster available in a VPC, you must specify at least one `network_configs` block. Max of 10 subnets per cluster. Additional subnets may be specified with additional `network_configs` blocks.
158
158
  Structure is documented below.
159
159
  """
160
160
  pulumi.set(__self__, "network_configs", network_configs)
@@ -163,7 +163,7 @@ class ClusterGcpConfigAccessConfig(dict):
163
163
  @pulumi.getter(name="networkConfigs")
164
164
  def network_configs(self) -> Sequence['outputs.ClusterGcpConfigAccessConfigNetworkConfig']:
165
165
  """
166
- Virtual Private Cloud (VPC) subnets where IP addresses for the Kafka cluster are allocated. To make the cluster available in a VPC, you must specify at least one subnet per network. You must specify between 1 and 10 subnets. Additional subnets may be specified with additional `network_configs` blocks.
166
+ Virtual Private Cloud (VPC) subnets where IP addresses for the Kafka cluster are allocated. To make the cluster available in a VPC, you must specify at least one `network_configs` block. Max of 10 subnets per cluster. Additional subnets may be specified with additional `network_configs` blocks.
167
167
  Structure is documented below.
168
168
  """
169
169
  return pulumi.get(self, "network_configs")
@@ -174,7 +174,7 @@ class ClusterGcpConfigAccessConfigNetworkConfig(dict):
174
174
  def __init__(__self__, *,
175
175
  subnet: builtins.str):
176
176
  """
177
- :param builtins.str subnet: Name of the VPC subnet from which the cluster is accessible. Both broker and bootstrap server IP addresses and DNS entries are automatically created in the subnet. The subnet must be located in the same region as the cluster. The project may differ. The name of the subnet must be in the format `projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET`.
177
+ :param builtins.str subnet: Name of the VPC subnet from which the cluster is accessible. Both broker and bootstrap server IP addresses and DNS entries are automatically created in the subnet. There can only be one subnet per network, and the subnet must be located in the same region as the cluster. The project may differ. The name of the subnet must be in the format `projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET`.
178
178
  """
179
179
  pulumi.set(__self__, "subnet", subnet)
180
180
 
@@ -182,7 +182,7 @@ class ClusterGcpConfigAccessConfigNetworkConfig(dict):
182
182
  @pulumi.getter
183
183
  def subnet(self) -> builtins.str:
184
184
  """
185
- Name of the VPC subnet from which the cluster is accessible. Both broker and bootstrap server IP addresses and DNS entries are automatically created in the subnet. The subnet must be located in the same region as the cluster. The project may differ. The name of the subnet must be in the format `projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET`.
185
+ Name of the VPC subnet from which the cluster is accessible. Both broker and bootstrap server IP addresses and DNS entries are automatically created in the subnet. There can only be one subnet per network, and the subnet must be located in the same region as the cluster. The project may differ. The name of the subnet must be in the format `projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET`.
186
186
  """
187
187
  return pulumi.get(self, "subnet")
188
188
 
@@ -50,6 +50,8 @@ __all__ = [
50
50
  'InstanceEndpointConnectionArgsDict',
51
51
  'InstanceEndpointConnectionPscAutoConnectionArgs',
52
52
  'InstanceEndpointConnectionPscAutoConnectionArgsDict',
53
+ 'InstanceGcsSourceArgs',
54
+ 'InstanceGcsSourceArgsDict',
53
55
  'InstanceMaintenancePolicyArgs',
54
56
  'InstanceMaintenancePolicyArgsDict',
55
57
  'InstanceMaintenancePolicyWeeklyMaintenanceWindowArgs',
@@ -58,6 +60,8 @@ __all__ = [
58
60
  'InstanceMaintenancePolicyWeeklyMaintenanceWindowStartTimeArgsDict',
59
61
  'InstanceMaintenanceScheduleArgs',
60
62
  'InstanceMaintenanceScheduleArgsDict',
63
+ 'InstanceManagedBackupSourceArgs',
64
+ 'InstanceManagedBackupSourceArgsDict',
61
65
  'InstanceNodeConfigArgs',
62
66
  'InstanceNodeConfigArgsDict',
63
67
  'InstancePersistenceConfigArgs',
@@ -1333,6 +1337,40 @@ class InstanceEndpointConnectionPscAutoConnectionArgs:
1333
1337
  pulumi.set(self, "service_attachment", value)
1334
1338
 
1335
1339
 
1340
+ if not MYPY:
1341
+ class InstanceGcsSourceArgsDict(TypedDict):
1342
+ uris: pulumi.Input[Sequence[pulumi.Input[builtins.str]]]
1343
+ """
1344
+ URIs of the GCS objects to import.
1345
+ Example: gs://bucket1/object1, gs//bucket2/folder2/object2
1346
+ """
1347
+ elif False:
1348
+ InstanceGcsSourceArgsDict: TypeAlias = Mapping[str, Any]
1349
+
1350
+ @pulumi.input_type
1351
+ class InstanceGcsSourceArgs:
1352
+ def __init__(__self__, *,
1353
+ uris: pulumi.Input[Sequence[pulumi.Input[builtins.str]]]):
1354
+ """
1355
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] uris: URIs of the GCS objects to import.
1356
+ Example: gs://bucket1/object1, gs//bucket2/folder2/object2
1357
+ """
1358
+ pulumi.set(__self__, "uris", uris)
1359
+
1360
+ @property
1361
+ @pulumi.getter
1362
+ def uris(self) -> pulumi.Input[Sequence[pulumi.Input[builtins.str]]]:
1363
+ """
1364
+ URIs of the GCS objects to import.
1365
+ Example: gs://bucket1/object1, gs//bucket2/folder2/object2
1366
+ """
1367
+ return pulumi.get(self, "uris")
1368
+
1369
+ @uris.setter
1370
+ def uris(self, value: pulumi.Input[Sequence[pulumi.Input[builtins.str]]]):
1371
+ pulumi.set(self, "uris", value)
1372
+
1373
+
1336
1374
  if not MYPY:
1337
1375
  class InstanceMaintenancePolicyArgsDict(TypedDict):
1338
1376
  create_time: NotRequired[pulumi.Input[builtins.str]]
@@ -1744,6 +1782,37 @@ class InstanceMaintenanceScheduleArgs:
1744
1782
  pulumi.set(self, "start_time", value)
1745
1783
 
1746
1784
 
1785
+ if not MYPY:
1786
+ class InstanceManagedBackupSourceArgsDict(TypedDict):
1787
+ backup: pulumi.Input[builtins.str]
1788
+ """
1789
+ Example: //memorystore.googleapis.com/projects/{project}/locations/{location}/backups/{backupId}. In this case, it assumes the backup is under memorystore.googleapis.com.
1790
+ """
1791
+ elif False:
1792
+ InstanceManagedBackupSourceArgsDict: TypeAlias = Mapping[str, Any]
1793
+
1794
+ @pulumi.input_type
1795
+ class InstanceManagedBackupSourceArgs:
1796
+ def __init__(__self__, *,
1797
+ backup: pulumi.Input[builtins.str]):
1798
+ """
1799
+ :param pulumi.Input[builtins.str] backup: Example: //memorystore.googleapis.com/projects/{project}/locations/{location}/backups/{backupId}. In this case, it assumes the backup is under memorystore.googleapis.com.
1800
+ """
1801
+ pulumi.set(__self__, "backup", backup)
1802
+
1803
+ @property
1804
+ @pulumi.getter
1805
+ def backup(self) -> pulumi.Input[builtins.str]:
1806
+ """
1807
+ Example: //memorystore.googleapis.com/projects/{project}/locations/{location}/backups/{backupId}. In this case, it assumes the backup is under memorystore.googleapis.com.
1808
+ """
1809
+ return pulumi.get(self, "backup")
1810
+
1811
+ @backup.setter
1812
+ def backup(self, value: pulumi.Input[builtins.str]):
1813
+ pulumi.set(self, "backup", value)
1814
+
1815
+
1747
1816
  if not MYPY:
1748
1817
  class InstanceNodeConfigArgsDict(TypedDict):
1749
1818
  size_gb: NotRequired[pulumi.Input[builtins.float]]