pulumi-gcp 7.24.0a1716588893__py3-none-any.whl → 7.25.0a1717097889__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 (126) hide show
  1. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +0 -64
  2. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +0 -70
  3. pulumi_gcp/alloydb/backup.py +50 -42
  4. pulumi_gcp/alloydb/cluster.py +56 -48
  5. pulumi_gcp/alloydb/instance.py +50 -42
  6. pulumi_gcp/alloydb/user.py +32 -24
  7. pulumi_gcp/apigateway/api_config.py +0 -114
  8. pulumi_gcp/apigateway/gateway.py +0 -44
  9. pulumi_gcp/apigee/addons_config.py +14 -4
  10. pulumi_gcp/apigee/endpoint_attachment.py +4 -2
  11. pulumi_gcp/apigee/env_group.py +4 -2
  12. pulumi_gcp/apigee/environment.py +4 -2
  13. pulumi_gcp/apigee/instance.py +22 -8
  14. pulumi_gcp/apigee/keystores_aliases_self_signed_cert.py +26 -10
  15. pulumi_gcp/apigee/nat_address.py +10 -2
  16. pulumi_gcp/apigee/organization.py +18 -6
  17. pulumi_gcp/apigee/sync_authorization.py +8 -4
  18. pulumi_gcp/apigee/target_server.py +26 -10
  19. pulumi_gcp/apphub/service.py +40 -20
  20. pulumi_gcp/apphub/service_project_attachment.py +16 -8
  21. pulumi_gcp/apphub/workload.py +0 -418
  22. pulumi_gcp/applicationintegration/auth_config.py +4 -2
  23. pulumi_gcp/artifactregistry/repository.py +14 -12
  24. pulumi_gcp/backupdisasterrecovery/management_server.py +4 -2
  25. pulumi_gcp/bigquery/data_transfer_config.py +8 -4
  26. pulumi_gcp/bigquery/job.py +22 -16
  27. pulumi_gcp/certificateauthority/authority.py +10 -2
  28. pulumi_gcp/certificateauthority/certificate.py +8 -4
  29. pulumi_gcp/certificatemanager/certificate.py +84 -80
  30. pulumi_gcp/certificatemanager/certificate_issuance_config.py +32 -30
  31. pulumi_gcp/cloudbuild/bitbucket_server_config.py +12 -6
  32. pulumi_gcp/cloudbuild/trigger.py +22 -14
  33. pulumi_gcp/cloudbuild/worker_pool.py +12 -6
  34. pulumi_gcp/cloudbuildv2/connection.py +10 -2
  35. pulumi_gcp/cloudbuildv2/repository.py +10 -2
  36. pulumi_gcp/cloudfunctionsv2/function.py +110 -62
  37. pulumi_gcp/cloudids/endpoint.py +4 -2
  38. pulumi_gcp/cloudrunv2/job.py +32 -20
  39. pulumi_gcp/cloudrunv2/service.py +28 -20
  40. pulumi_gcp/compute/forwarding_rule.py +225 -817
  41. pulumi_gcp/compute/global_forwarding_rule.py +0 -766
  42. pulumi_gcp/compute/instance_group.py +0 -100
  43. pulumi_gcp/compute/packet_mirroring.py +4 -2
  44. pulumi_gcp/compute/region_security_policy_rule.py +4 -2
  45. pulumi_gcp/compute/region_ssl_certificate.py +0 -188
  46. pulumi_gcp/compute/route.py +10 -2
  47. pulumi_gcp/compute/ssl_certificate.py +0 -166
  48. pulumi_gcp/compute/target_instance.py +4 -2
  49. pulumi_gcp/compute/vpn_gateway.py +12 -2
  50. pulumi_gcp/compute/vpn_tunnel.py +26 -16
  51. pulumi_gcp/databasemigrationservice/connection_profile.py +32 -16
  52. pulumi_gcp/datacatalog/policy_tag.py +4 -2
  53. pulumi_gcp/datafusion/instance.py +14 -12
  54. pulumi_gcp/dataplex/asset.py +4 -2
  55. pulumi_gcp/dataplex/datascan.py +16 -14
  56. pulumi_gcp/datastore/data_store_index.py +4 -2
  57. pulumi_gcp/datastream/stream.py +16 -10
  58. pulumi_gcp/diagflow/cx_test_case.py +4 -4
  59. pulumi_gcp/diagflow/entity_type.py +4 -2
  60. pulumi_gcp/diagflow/fulfillment.py +4 -2
  61. pulumi_gcp/diagflow/intent.py +8 -4
  62. pulumi_gcp/edgecontainer/node_pool.py +4 -2
  63. pulumi_gcp/edgecontainer/vpn_connection.py +4 -2
  64. pulumi_gcp/eventarc/channel.py +4 -2
  65. pulumi_gcp/eventarc/google_channel_config.py +4 -2
  66. pulumi_gcp/firebase/app_check_app_attest_config.py +16 -8
  67. pulumi_gcp/firebase/app_check_debug_token.py +8 -4
  68. pulumi_gcp/firebase/app_check_device_check_config.py +8 -4
  69. pulumi_gcp/firebase/app_check_play_integrity_config.py +16 -8
  70. pulumi_gcp/firebase/app_check_recaptcha_enterprise_config.py +8 -4
  71. pulumi_gcp/firebase/app_check_recaptcha_v3_config.py +8 -4
  72. pulumi_gcp/firebase/app_check_service_config.py +12 -6
  73. pulumi_gcp/firebase/database_instance.py +4 -2
  74. pulumi_gcp/firebaserules/release.py +0 -98
  75. pulumi_gcp/firestore/database.py +24 -20
  76. pulumi_gcp/firestore/document.py +24 -12
  77. pulumi_gcp/folder/access_approval_settings.py +4 -2
  78. pulumi_gcp/gkehub/membership_binding.py +14 -4
  79. pulumi_gcp/gkehub/membership_rbac_role_binding.py +8 -4
  80. pulumi_gcp/gkehub/namespace.py +4 -2
  81. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -2
  82. pulumi_gcp/integrationconnectors/connection.py +4 -2
  83. pulumi_gcp/integrationconnectors/managed_zone.py +18 -6
  84. pulumi_gcp/logging/folder_settings.py +12 -10
  85. pulumi_gcp/logging/linked_dataset.py +4 -2
  86. pulumi_gcp/logging/organization_settings.py +12 -10
  87. pulumi_gcp/logging/project_bucket_config.py +4 -2
  88. pulumi_gcp/looker/instance.py +12 -10
  89. pulumi_gcp/netapp/volume_replication.py +4 -2
  90. pulumi_gcp/netapp/volume_snapshot.py +4 -2
  91. pulumi_gcp/networkconnectivity/internal_range.py +14 -12
  92. pulumi_gcp/networksecurity/gateway_security_policy.py +16 -4
  93. pulumi_gcp/networksecurity/tls_inspection_policy.py +22 -4
  94. pulumi_gcp/networkservices/gateway.py +12 -6
  95. pulumi_gcp/networkservices/lb_traffic_extension.py +0 -526
  96. pulumi_gcp/organizations/access_approval_settings.py +4 -2
  97. pulumi_gcp/parallelstore/instance.py +20 -18
  98. pulumi_gcp/projects/access_approval_settings.py +4 -2
  99. pulumi_gcp/pubsub/schema.py +4 -2
  100. pulumi_gcp/pubsub/subscription.py +94 -62
  101. pulumi_gcp/pubsub/topic.py +4 -2
  102. pulumi_gcp/pulumi-plugin.json +1 -1
  103. pulumi_gcp/redis/cluster.py +30 -28
  104. pulumi_gcp/redis/instance.py +4 -2
  105. pulumi_gcp/secretmanager/secret.py +4 -2
  106. pulumi_gcp/securesourcemanager/instance.py +20 -8
  107. pulumi_gcp/securitycenter/instance_iam_binding.py +14 -12
  108. pulumi_gcp/securitycenter/instance_iam_member.py +14 -12
  109. pulumi_gcp/securitycenter/instance_iam_policy.py +14 -12
  110. pulumi_gcp/serviceaccount/key.py +2 -2
  111. pulumi_gcp/sql/database_instance.py +4 -2
  112. pulumi_gcp/storage/get_project_service_account.py +4 -2
  113. pulumi_gcp/storage/insights_report_config.py +12 -10
  114. pulumi_gcp/storage/notification.py +18 -16
  115. pulumi_gcp/storage/transfer_agent_pool.py +4 -2
  116. pulumi_gcp/storage/transfer_job.py +14 -4
  117. pulumi_gcp/tpu/v2_vm.py +10 -6
  118. pulumi_gcp/vertex/ai_endpoint.py +24 -22
  119. pulumi_gcp/vertex/ai_index_endpoint.py +20 -18
  120. pulumi_gcp/vertex/ai_tensorboard.py +14 -12
  121. pulumi_gcp/vmwareengine/external_address.py +4 -2
  122. pulumi_gcp/vmwareengine/network.py +8 -4
  123. {pulumi_gcp-7.24.0a1716588893.dist-info → pulumi_gcp-7.25.0a1717097889.dist-info}/METADATA +1 -1
  124. {pulumi_gcp-7.24.0a1716588893.dist-info → pulumi_gcp-7.25.0a1717097889.dist-info}/RECORD +126 -126
  125. {pulumi_gcp-7.24.0a1716588893.dist-info → pulumi_gcp-7.25.0a1717097889.dist-info}/WHEEL +0 -0
  126. {pulumi_gcp-7.24.0a1716588893.dist-info → pulumi_gcp-7.25.0a1717097889.dist-info}/top_level.txt +0 -0
@@ -369,269 +369,6 @@ class LbTrafficExtension(pulumi.CustomResource):
369
369
 
370
370
  ## Example Usage
371
371
 
372
- ### Network Services Lb Traffic Extension Basic
373
-
374
- ```python
375
- import pulumi
376
- import pulumi_gcp as gcp
377
-
378
- # Internal HTTP load balancer with a managed instance group backend
379
- # VPC network
380
- ilb_network = gcp.compute.Network("ilb_network",
381
- name="l7-ilb-network",
382
- auto_create_subnetworks=False)
383
- # proxy-only subnet
384
- proxy_subnet = gcp.compute.Subnetwork("proxy_subnet",
385
- name="l7-ilb-proxy-subnet",
386
- ip_cidr_range="10.0.0.0/24",
387
- region="us-west1",
388
- purpose="REGIONAL_MANAGED_PROXY",
389
- role="ACTIVE",
390
- network=ilb_network.id)
391
- # backend subnet
392
- ilb_subnet = gcp.compute.Subnetwork("ilb_subnet",
393
- name="l7-ilb-subnet",
394
- ip_cidr_range="10.0.1.0/24",
395
- region="us-west1",
396
- network=ilb_network.id)
397
- # health check
398
- default_region_health_check = gcp.compute.RegionHealthCheck("default",
399
- name="l7-ilb-hc",
400
- region="us-west1",
401
- http_health_check=gcp.compute.RegionHealthCheckHttpHealthCheckArgs(
402
- port_specification="USE_SERVING_PORT",
403
- ))
404
- # instance template
405
- instance_template = gcp.compute.InstanceTemplate("instance_template",
406
- network_interfaces=[gcp.compute.InstanceTemplateNetworkInterfaceArgs(
407
- access_configs=[gcp.compute.InstanceTemplateNetworkInterfaceAccessConfigArgs()],
408
- network=ilb_network.id,
409
- subnetwork=ilb_subnet.id,
410
- )],
411
- name="l7-ilb-mig-template",
412
- machine_type="e2-small",
413
- tags=["http-server"],
414
- disks=[gcp.compute.InstanceTemplateDiskArgs(
415
- source_image="debian-cloud/debian-10",
416
- auto_delete=True,
417
- boot=True,
418
- )],
419
- metadata={
420
- "startup-script": \"\"\"#! /bin/bash
421
- set -euo pipefail
422
-
423
- export DEBIAN_FRONTEND=noninteractive
424
- apt-get update
425
- apt-get install -y nginx-light jq
426
-
427
- NAME=$(curl -H "Metadata-Flavor: Google" "http://metadata.google.internal/computeMetadata/v1/instance/hostname")
428
- IP=$(curl -H "Metadata-Flavor: Google" "http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/ip")
429
- METADATA=$(curl -f -H "Metadata-Flavor: Google" "http://metadata.google.internal/computeMetadata/v1/instance/attributes/?recursive=True" | jq 'del(.["startup-script"])')
430
-
431
- cat <<EOF > /var/www/html/index.html
432
- <pre>
433
- Name: $NAME
434
- IP: $IP
435
- Metadata: $METADATA
436
- </pre>
437
- EOF
438
- \"\"\",
439
- })
440
- # MIG
441
- mig = gcp.compute.RegionInstanceGroupManager("mig",
442
- name="l7-ilb-mig1",
443
- region="us-west1",
444
- base_instance_name="vm",
445
- target_size=2,
446
- versions=[gcp.compute.RegionInstanceGroupManagerVersionArgs(
447
- instance_template=instance_template.id,
448
- name="primary",
449
- )])
450
- # backend service
451
- default_region_backend_service = gcp.compute.RegionBackendService("default",
452
- name="l7-ilb-backend-subnet",
453
- region="us-west1",
454
- protocol="HTTP",
455
- load_balancing_scheme="INTERNAL_MANAGED",
456
- timeout_sec=10,
457
- health_checks=default_region_health_check.id,
458
- backends=[gcp.compute.RegionBackendServiceBackendArgs(
459
- group=mig.instance_group,
460
- balancing_mode="UTILIZATION",
461
- capacity_scaler=1,
462
- )])
463
- # URL map
464
- default_region_url_map = gcp.compute.RegionUrlMap("default",
465
- name="l7-ilb-regional-url-map",
466
- region="us-west1",
467
- default_service=default_region_backend_service.id)
468
- # HTTP target proxy
469
- default_region_target_http_proxy = gcp.compute.RegionTargetHttpProxy("default",
470
- name="l7-ilb-target-http-proxy",
471
- region="us-west1",
472
- url_map=default_region_url_map.id)
473
- # forwarding rule
474
- default = gcp.compute.ForwardingRule("default",
475
- name="l7-ilb-forwarding-rule",
476
- region="us-west1",
477
- ip_protocol="TCP",
478
- load_balancing_scheme="INTERNAL_MANAGED",
479
- port_range="80",
480
- target=default_region_target_http_proxy.id,
481
- network=ilb_network.id,
482
- subnetwork=ilb_subnet.id,
483
- network_tier="PREMIUM")
484
- # allow all access from IAP and health check ranges
485
- fw_iap = gcp.compute.Firewall("fw_iap",
486
- name="l7-ilb-fw-allow-iap-hc",
487
- direction="INGRESS",
488
- network=ilb_network.id,
489
- source_ranges=[
490
- "130.211.0.0/22",
491
- "35.191.0.0/16",
492
- "35.235.240.0/20",
493
- ],
494
- allows=[gcp.compute.FirewallAllowArgs(
495
- protocol="tcp",
496
- )])
497
- # allow http from proxy subnet to backends
498
- fw_ilb_to_backends = gcp.compute.Firewall("fw_ilb_to_backends",
499
- name="l7-ilb-fw-allow-ilb-to-backends",
500
- direction="INGRESS",
501
- network=ilb_network.id,
502
- source_ranges=["10.0.0.0/24"],
503
- target_tags=["http-server"],
504
- allows=[gcp.compute.FirewallAllowArgs(
505
- protocol="tcp",
506
- ports=[
507
- "80",
508
- "443",
509
- "8080",
510
- ],
511
- )])
512
- # Traffic Extension Backend Instance
513
- callouts_instance = gcp.compute.Instance("callouts_instance",
514
- network_interfaces=[gcp.compute.InstanceNetworkInterfaceArgs(
515
- access_configs=[gcp.compute.InstanceNetworkInterfaceAccessConfigArgs()],
516
- network=ilb_network.id,
517
- subnetwork=ilb_subnet.id,
518
- )],
519
- name="l7-ilb-callouts-ins",
520
- zone="us-west1-a",
521
- machine_type="e2-small",
522
- labels={
523
- "container-vm": "cos-stable-109-17800-147-54",
524
- },
525
- tags=[
526
- "allow-ssh",
527
- "load-balanced-backend",
528
- ],
529
- boot_disk=gcp.compute.InstanceBootDiskArgs(
530
- auto_delete=True,
531
- initialize_params=gcp.compute.InstanceBootDiskInitializeParamsArgs(
532
- type="pd-standard",
533
- size=10,
534
- image="https://www.googleapis.com/compute/v1/projects/cos-cloud/global/images/cos-stable-109-17800-147-54",
535
- ),
536
- ),
537
- metadata={
538
- "gce-container-declaration": \"\"\"# DISCLAIMER:
539
- # This container declaration format is not a public API and may change without
540
- # notice. Please use gcloud command-line tool or Google Cloud Console to run
541
- # Containers on Google Compute Engine.
542
-
543
- spec:
544
- containers:
545
- - image: us-docker.pkg.dev/service-extensions/ext-proc/service-callout-basic-example-python:latest
546
- name: callouts-vm
547
- securityContext:
548
- privileged: false
549
- stdin: false
550
- tty: false
551
- volumeMounts: []
552
- restartPolicy: Always
553
- volumes: []
554
- \"\"\",
555
- "google-logging-enabled": "true",
556
- },
557
- deletion_protection=False)
558
- # callouts instance group
559
- callouts_instance_group = gcp.compute.InstanceGroup("callouts_instance_group",
560
- name="l7-ilb-callouts-ins-group",
561
- description="Terraform test instance group",
562
- zone="us-west1-a",
563
- instances=[callouts_instance.id],
564
- named_ports=[
565
- gcp.compute.InstanceGroupNamedPortArgs(
566
- name="http",
567
- port=80,
568
- ),
569
- gcp.compute.InstanceGroupNamedPortArgs(
570
- name="grpc",
571
- port=443,
572
- ),
573
- ])
574
- # callout health check
575
- callouts_health_check = gcp.compute.RegionHealthCheck("callouts_health_check",
576
- name="l7-ilb-callouts-hc",
577
- region="us-west1",
578
- http_health_check=gcp.compute.RegionHealthCheckHttpHealthCheckArgs(
579
- port=80,
580
- ))
581
- # callout backend service
582
- callouts_backend = gcp.compute.RegionBackendService("callouts_backend",
583
- name="l7-ilb-callouts-backend",
584
- region="us-west1",
585
- protocol="HTTP2",
586
- load_balancing_scheme="INTERNAL_MANAGED",
587
- timeout_sec=10,
588
- port_name="grpc",
589
- health_checks=callouts_health_check.id,
590
- backends=[gcp.compute.RegionBackendServiceBackendArgs(
591
- group=callouts_instance_group.id,
592
- balancing_mode="UTILIZATION",
593
- capacity_scaler=1,
594
- )])
595
- default_lb_traffic_extension = gcp.networkservices.LbTrafficExtension("default",
596
- name="l7-ilb-traffic-ext",
597
- description="my traffic extension",
598
- location="us-west1",
599
- load_balancing_scheme="INTERNAL_MANAGED",
600
- forwarding_rules=[default.self_link],
601
- extension_chains=[gcp.networkservices.LbTrafficExtensionExtensionChainArgs(
602
- name="chain1",
603
- match_condition=gcp.networkservices.LbTrafficExtensionExtensionChainMatchConditionArgs(
604
- cel_expression="request.host == 'example.com'",
605
- ),
606
- extensions=[gcp.networkservices.LbTrafficExtensionExtensionChainExtensionArgs(
607
- name="ext11",
608
- authority="ext11.com",
609
- service=callouts_backend.self_link,
610
- timeout="0.1s",
611
- fail_open=False,
612
- supported_events=["REQUEST_HEADERS"],
613
- forward_headers=["custom-header"],
614
- )],
615
- )],
616
- labels={
617
- "foo": "bar",
618
- })
619
- # test instance
620
- vm_test = gcp.compute.Instance("vm_test",
621
- name="l7-ilb-test-vm",
622
- zone="us-west1-b",
623
- machine_type="e2-small",
624
- network_interfaces=[gcp.compute.InstanceNetworkInterfaceArgs(
625
- network=ilb_network.id,
626
- subnetwork=ilb_subnet.id,
627
- )],
628
- boot_disk=gcp.compute.InstanceBootDiskArgs(
629
- initialize_params=gcp.compute.InstanceBootDiskInitializeParamsArgs(
630
- image="debian-cloud/debian-11",
631
- ),
632
- ))
633
- ```
634
-
635
372
  ## Import
636
373
 
637
374
  LbTrafficExtension can be imported using any of these accepted formats:
@@ -692,269 +429,6 @@ class LbTrafficExtension(pulumi.CustomResource):
692
429
 
693
430
  ## Example Usage
694
431
 
695
- ### Network Services Lb Traffic Extension Basic
696
-
697
- ```python
698
- import pulumi
699
- import pulumi_gcp as gcp
700
-
701
- # Internal HTTP load balancer with a managed instance group backend
702
- # VPC network
703
- ilb_network = gcp.compute.Network("ilb_network",
704
- name="l7-ilb-network",
705
- auto_create_subnetworks=False)
706
- # proxy-only subnet
707
- proxy_subnet = gcp.compute.Subnetwork("proxy_subnet",
708
- name="l7-ilb-proxy-subnet",
709
- ip_cidr_range="10.0.0.0/24",
710
- region="us-west1",
711
- purpose="REGIONAL_MANAGED_PROXY",
712
- role="ACTIVE",
713
- network=ilb_network.id)
714
- # backend subnet
715
- ilb_subnet = gcp.compute.Subnetwork("ilb_subnet",
716
- name="l7-ilb-subnet",
717
- ip_cidr_range="10.0.1.0/24",
718
- region="us-west1",
719
- network=ilb_network.id)
720
- # health check
721
- default_region_health_check = gcp.compute.RegionHealthCheck("default",
722
- name="l7-ilb-hc",
723
- region="us-west1",
724
- http_health_check=gcp.compute.RegionHealthCheckHttpHealthCheckArgs(
725
- port_specification="USE_SERVING_PORT",
726
- ))
727
- # instance template
728
- instance_template = gcp.compute.InstanceTemplate("instance_template",
729
- network_interfaces=[gcp.compute.InstanceTemplateNetworkInterfaceArgs(
730
- access_configs=[gcp.compute.InstanceTemplateNetworkInterfaceAccessConfigArgs()],
731
- network=ilb_network.id,
732
- subnetwork=ilb_subnet.id,
733
- )],
734
- name="l7-ilb-mig-template",
735
- machine_type="e2-small",
736
- tags=["http-server"],
737
- disks=[gcp.compute.InstanceTemplateDiskArgs(
738
- source_image="debian-cloud/debian-10",
739
- auto_delete=True,
740
- boot=True,
741
- )],
742
- metadata={
743
- "startup-script": \"\"\"#! /bin/bash
744
- set -euo pipefail
745
-
746
- export DEBIAN_FRONTEND=noninteractive
747
- apt-get update
748
- apt-get install -y nginx-light jq
749
-
750
- NAME=$(curl -H "Metadata-Flavor: Google" "http://metadata.google.internal/computeMetadata/v1/instance/hostname")
751
- IP=$(curl -H "Metadata-Flavor: Google" "http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/ip")
752
- METADATA=$(curl -f -H "Metadata-Flavor: Google" "http://metadata.google.internal/computeMetadata/v1/instance/attributes/?recursive=True" | jq 'del(.["startup-script"])')
753
-
754
- cat <<EOF > /var/www/html/index.html
755
- <pre>
756
- Name: $NAME
757
- IP: $IP
758
- Metadata: $METADATA
759
- </pre>
760
- EOF
761
- \"\"\",
762
- })
763
- # MIG
764
- mig = gcp.compute.RegionInstanceGroupManager("mig",
765
- name="l7-ilb-mig1",
766
- region="us-west1",
767
- base_instance_name="vm",
768
- target_size=2,
769
- versions=[gcp.compute.RegionInstanceGroupManagerVersionArgs(
770
- instance_template=instance_template.id,
771
- name="primary",
772
- )])
773
- # backend service
774
- default_region_backend_service = gcp.compute.RegionBackendService("default",
775
- name="l7-ilb-backend-subnet",
776
- region="us-west1",
777
- protocol="HTTP",
778
- load_balancing_scheme="INTERNAL_MANAGED",
779
- timeout_sec=10,
780
- health_checks=default_region_health_check.id,
781
- backends=[gcp.compute.RegionBackendServiceBackendArgs(
782
- group=mig.instance_group,
783
- balancing_mode="UTILIZATION",
784
- capacity_scaler=1,
785
- )])
786
- # URL map
787
- default_region_url_map = gcp.compute.RegionUrlMap("default",
788
- name="l7-ilb-regional-url-map",
789
- region="us-west1",
790
- default_service=default_region_backend_service.id)
791
- # HTTP target proxy
792
- default_region_target_http_proxy = gcp.compute.RegionTargetHttpProxy("default",
793
- name="l7-ilb-target-http-proxy",
794
- region="us-west1",
795
- url_map=default_region_url_map.id)
796
- # forwarding rule
797
- default = gcp.compute.ForwardingRule("default",
798
- name="l7-ilb-forwarding-rule",
799
- region="us-west1",
800
- ip_protocol="TCP",
801
- load_balancing_scheme="INTERNAL_MANAGED",
802
- port_range="80",
803
- target=default_region_target_http_proxy.id,
804
- network=ilb_network.id,
805
- subnetwork=ilb_subnet.id,
806
- network_tier="PREMIUM")
807
- # allow all access from IAP and health check ranges
808
- fw_iap = gcp.compute.Firewall("fw_iap",
809
- name="l7-ilb-fw-allow-iap-hc",
810
- direction="INGRESS",
811
- network=ilb_network.id,
812
- source_ranges=[
813
- "130.211.0.0/22",
814
- "35.191.0.0/16",
815
- "35.235.240.0/20",
816
- ],
817
- allows=[gcp.compute.FirewallAllowArgs(
818
- protocol="tcp",
819
- )])
820
- # allow http from proxy subnet to backends
821
- fw_ilb_to_backends = gcp.compute.Firewall("fw_ilb_to_backends",
822
- name="l7-ilb-fw-allow-ilb-to-backends",
823
- direction="INGRESS",
824
- network=ilb_network.id,
825
- source_ranges=["10.0.0.0/24"],
826
- target_tags=["http-server"],
827
- allows=[gcp.compute.FirewallAllowArgs(
828
- protocol="tcp",
829
- ports=[
830
- "80",
831
- "443",
832
- "8080",
833
- ],
834
- )])
835
- # Traffic Extension Backend Instance
836
- callouts_instance = gcp.compute.Instance("callouts_instance",
837
- network_interfaces=[gcp.compute.InstanceNetworkInterfaceArgs(
838
- access_configs=[gcp.compute.InstanceNetworkInterfaceAccessConfigArgs()],
839
- network=ilb_network.id,
840
- subnetwork=ilb_subnet.id,
841
- )],
842
- name="l7-ilb-callouts-ins",
843
- zone="us-west1-a",
844
- machine_type="e2-small",
845
- labels={
846
- "container-vm": "cos-stable-109-17800-147-54",
847
- },
848
- tags=[
849
- "allow-ssh",
850
- "load-balanced-backend",
851
- ],
852
- boot_disk=gcp.compute.InstanceBootDiskArgs(
853
- auto_delete=True,
854
- initialize_params=gcp.compute.InstanceBootDiskInitializeParamsArgs(
855
- type="pd-standard",
856
- size=10,
857
- image="https://www.googleapis.com/compute/v1/projects/cos-cloud/global/images/cos-stable-109-17800-147-54",
858
- ),
859
- ),
860
- metadata={
861
- "gce-container-declaration": \"\"\"# DISCLAIMER:
862
- # This container declaration format is not a public API and may change without
863
- # notice. Please use gcloud command-line tool or Google Cloud Console to run
864
- # Containers on Google Compute Engine.
865
-
866
- spec:
867
- containers:
868
- - image: us-docker.pkg.dev/service-extensions/ext-proc/service-callout-basic-example-python:latest
869
- name: callouts-vm
870
- securityContext:
871
- privileged: false
872
- stdin: false
873
- tty: false
874
- volumeMounts: []
875
- restartPolicy: Always
876
- volumes: []
877
- \"\"\",
878
- "google-logging-enabled": "true",
879
- },
880
- deletion_protection=False)
881
- # callouts instance group
882
- callouts_instance_group = gcp.compute.InstanceGroup("callouts_instance_group",
883
- name="l7-ilb-callouts-ins-group",
884
- description="Terraform test instance group",
885
- zone="us-west1-a",
886
- instances=[callouts_instance.id],
887
- named_ports=[
888
- gcp.compute.InstanceGroupNamedPortArgs(
889
- name="http",
890
- port=80,
891
- ),
892
- gcp.compute.InstanceGroupNamedPortArgs(
893
- name="grpc",
894
- port=443,
895
- ),
896
- ])
897
- # callout health check
898
- callouts_health_check = gcp.compute.RegionHealthCheck("callouts_health_check",
899
- name="l7-ilb-callouts-hc",
900
- region="us-west1",
901
- http_health_check=gcp.compute.RegionHealthCheckHttpHealthCheckArgs(
902
- port=80,
903
- ))
904
- # callout backend service
905
- callouts_backend = gcp.compute.RegionBackendService("callouts_backend",
906
- name="l7-ilb-callouts-backend",
907
- region="us-west1",
908
- protocol="HTTP2",
909
- load_balancing_scheme="INTERNAL_MANAGED",
910
- timeout_sec=10,
911
- port_name="grpc",
912
- health_checks=callouts_health_check.id,
913
- backends=[gcp.compute.RegionBackendServiceBackendArgs(
914
- group=callouts_instance_group.id,
915
- balancing_mode="UTILIZATION",
916
- capacity_scaler=1,
917
- )])
918
- default_lb_traffic_extension = gcp.networkservices.LbTrafficExtension("default",
919
- name="l7-ilb-traffic-ext",
920
- description="my traffic extension",
921
- location="us-west1",
922
- load_balancing_scheme="INTERNAL_MANAGED",
923
- forwarding_rules=[default.self_link],
924
- extension_chains=[gcp.networkservices.LbTrafficExtensionExtensionChainArgs(
925
- name="chain1",
926
- match_condition=gcp.networkservices.LbTrafficExtensionExtensionChainMatchConditionArgs(
927
- cel_expression="request.host == 'example.com'",
928
- ),
929
- extensions=[gcp.networkservices.LbTrafficExtensionExtensionChainExtensionArgs(
930
- name="ext11",
931
- authority="ext11.com",
932
- service=callouts_backend.self_link,
933
- timeout="0.1s",
934
- fail_open=False,
935
- supported_events=["REQUEST_HEADERS"],
936
- forward_headers=["custom-header"],
937
- )],
938
- )],
939
- labels={
940
- "foo": "bar",
941
- })
942
- # test instance
943
- vm_test = gcp.compute.Instance("vm_test",
944
- name="l7-ilb-test-vm",
945
- zone="us-west1-b",
946
- machine_type="e2-small",
947
- network_interfaces=[gcp.compute.InstanceNetworkInterfaceArgs(
948
- network=ilb_network.id,
949
- subnetwork=ilb_subnet.id,
950
- )],
951
- boot_disk=gcp.compute.InstanceBootDiskArgs(
952
- initialize_params=gcp.compute.InstanceBootDiskInitializeParamsArgs(
953
- image="debian-cloud/debian-11",
954
- ),
955
- ))
956
- ```
957
-
958
432
  ## Import
959
433
 
960
434
  LbTrafficExtension can be imported using any of these accepted formats:
@@ -324,7 +324,8 @@ class AccessApprovalSettings(pulumi.CustomResource):
324
324
  active_key_version=crypto_key_version.name,
325
325
  enrolled_services=[gcp.organizations.AccessApprovalSettingsEnrolledServiceArgs(
326
326
  cloud_product="all",
327
- )])
327
+ )],
328
+ opts=pulumi.ResourceOptions(depends_on=[iam]))
328
329
  ```
329
330
 
330
331
  ## Import
@@ -428,7 +429,8 @@ class AccessApprovalSettings(pulumi.CustomResource):
428
429
  active_key_version=crypto_key_version.name,
429
430
  enrolled_services=[gcp.organizations.AccessApprovalSettingsEnrolledServiceArgs(
430
431
  cloud_product="all",
431
- )])
432
+ )],
433
+ opts=pulumi.ResourceOptions(depends_on=[iam]))
432
434
  ```
433
435
 
434
436
  ## Import
@@ -607,15 +607,6 @@ class Instance(pulumi.CustomResource):
607
607
  name="network",
608
608
  auto_create_subnetworks=True,
609
609
  mtu=8896)
610
- instance = gcp.parallelstore.Instance("instance",
611
- instance_id="instance",
612
- location="us-central1-a",
613
- description="test instance",
614
- capacity_gib="12000",
615
- network=network.name,
616
- labels={
617
- "test": "value",
618
- })
619
610
  # Create an IP address
620
611
  private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
621
612
  name="address",
@@ -628,6 +619,16 @@ class Instance(pulumi.CustomResource):
628
619
  network=network.id,
629
620
  service="servicenetworking.googleapis.com",
630
621
  reserved_peering_ranges=[private_ip_alloc.name])
622
+ instance = gcp.parallelstore.Instance("instance",
623
+ instance_id="instance",
624
+ location="us-central1-a",
625
+ description="test instance",
626
+ capacity_gib="12000",
627
+ network=network.name,
628
+ labels={
629
+ "test": "value",
630
+ },
631
+ opts=pulumi.ResourceOptions(depends_on=[default]))
631
632
  ```
632
633
 
633
634
  ## Import
@@ -717,15 +718,6 @@ class Instance(pulumi.CustomResource):
717
718
  name="network",
718
719
  auto_create_subnetworks=True,
719
720
  mtu=8896)
720
- instance = gcp.parallelstore.Instance("instance",
721
- instance_id="instance",
722
- location="us-central1-a",
723
- description="test instance",
724
- capacity_gib="12000",
725
- network=network.name,
726
- labels={
727
- "test": "value",
728
- })
729
721
  # Create an IP address
730
722
  private_ip_alloc = gcp.compute.GlobalAddress("private_ip_alloc",
731
723
  name="address",
@@ -738,6 +730,16 @@ class Instance(pulumi.CustomResource):
738
730
  network=network.id,
739
731
  service="servicenetworking.googleapis.com",
740
732
  reserved_peering_ranges=[private_ip_alloc.name])
733
+ instance = gcp.parallelstore.Instance("instance",
734
+ instance_id="instance",
735
+ location="us-central1-a",
736
+ description="test instance",
737
+ capacity_gib="12000",
738
+ network=network.name,
739
+ labels={
740
+ "test": "value",
741
+ },
742
+ opts=pulumi.ResourceOptions(depends_on=[default]))
741
743
  ```
742
744
 
743
745
  ## Import
@@ -366,7 +366,8 @@ class AccessApprovalSettings(pulumi.CustomResource):
366
366
  active_key_version=crypto_key_version.name,
367
367
  enrolled_services=[gcp.projects.AccessApprovalSettingsEnrolledServiceArgs(
368
368
  cloud_product="all",
369
- )])
369
+ )],
370
+ opts=pulumi.ResourceOptions(depends_on=[iam]))
370
371
  ```
371
372
 
372
373
  ## Import
@@ -463,7 +464,8 @@ class AccessApprovalSettings(pulumi.CustomResource):
463
464
  active_key_version=crypto_key_version.name,
464
465
  enrolled_services=[gcp.projects.AccessApprovalSettingsEnrolledServiceArgs(
465
466
  cloud_product="all",
466
- )])
467
+ )],
468
+ opts=pulumi.ResourceOptions(depends_on=[iam]))
467
469
  ```
468
470
 
469
471
  ## Import
@@ -271,7 +271,8 @@ class Schema(pulumi.CustomResource):
271
271
  schema_settings=gcp.pubsub.TopicSchemaSettingsArgs(
272
272
  schema="projects/my-project-name/schemas/example",
273
273
  encoding="JSON",
274
- ))
274
+ ),
275
+ opts=pulumi.ResourceOptions(depends_on=[example]))
275
276
  ```
276
277
 
277
278
  ## Import
@@ -381,7 +382,8 @@ class Schema(pulumi.CustomResource):
381
382
  schema_settings=gcp.pubsub.TopicSchemaSettingsArgs(
382
383
  schema="projects/my-project-name/schemas/example",
383
384
  encoding="JSON",
384
- ))
385
+ ),
386
+ opts=pulumi.ResourceOptions(depends_on=[example]))
385
387
  ```
386
388
 
387
389
  ## Import