pulumi-gcp 8.26.0a1744267117__py3-none-any.whl → 8.27.0__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 (116) hide show
  1. pulumi_gcp/__init__.py +128 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +117 -0
  3. pulumi_gcp/accesscontextmanager/gcp_user_access_binding.py +81 -26
  4. pulumi_gcp/accesscontextmanager/outputs.py +95 -0
  5. pulumi_gcp/apigee/__init__.py +1 -0
  6. pulumi_gcp/apigee/control_plane_access.py +419 -0
  7. pulumi_gcp/bigquery/_inputs.py +87 -30
  8. pulumi_gcp/bigquery/outputs.py +58 -20
  9. pulumi_gcp/bigquery/table.py +28 -14
  10. pulumi_gcp/clouddeploy/__init__.py +1 -0
  11. pulumi_gcp/clouddeploy/_inputs.py +2876 -1314
  12. pulumi_gcp/clouddeploy/automation.py +64 -2
  13. pulumi_gcp/clouddeploy/deploy_policy.py +1179 -0
  14. pulumi_gcp/clouddeploy/outputs.py +1130 -5
  15. pulumi_gcp/cloudrun/service.py +46 -0
  16. pulumi_gcp/cloudrunv2/get_service.py +12 -1
  17. pulumi_gcp/cloudrunv2/service.py +87 -2
  18. pulumi_gcp/compute/_inputs.py +448 -1
  19. pulumi_gcp/compute/image.py +183 -0
  20. pulumi_gcp/compute/outputs.py +387 -3
  21. pulumi_gcp/compute/region_backend_service.py +6 -2
  22. pulumi_gcp/compute/resource_policy.py +30 -0
  23. pulumi_gcp/compute/snapshot.py +6 -0
  24. pulumi_gcp/databasemigrationservice/_inputs.py +27 -24
  25. pulumi_gcp/databasemigrationservice/connection_profile.py +168 -0
  26. pulumi_gcp/databasemigrationservice/migration_job.py +6 -0
  27. pulumi_gcp/databasemigrationservice/outputs.py +18 -15
  28. pulumi_gcp/datastream/_inputs.py +506 -0
  29. pulumi_gcp/datastream/outputs.py +376 -0
  30. pulumi_gcp/datastream/stream.py +0 -2
  31. pulumi_gcp/developerconnect/__init__.py +1 -0
  32. pulumi_gcp/developerconnect/_inputs.py +77 -0
  33. pulumi_gcp/developerconnect/account_connector.py +866 -0
  34. pulumi_gcp/developerconnect/outputs.py +64 -0
  35. pulumi_gcp/firebase/hosting_version.py +34 -14
  36. pulumi_gcp/firestore/database.py +82 -0
  37. pulumi_gcp/firestore/index.py +263 -7
  38. pulumi_gcp/folder/__init__.py +1 -0
  39. pulumi_gcp/folder/service_identity.py +314 -0
  40. pulumi_gcp/gemini/__init__.py +2 -0
  41. pulumi_gcp/gemini/_inputs.py +176 -0
  42. pulumi_gcp/gemini/code_tools_setting.py +601 -0
  43. pulumi_gcp/gemini/code_tools_setting_binding.py +753 -0
  44. pulumi_gcp/gemini/outputs.py +124 -0
  45. pulumi_gcp/gkeonprem/v_mware_cluster.py +49 -0
  46. pulumi_gcp/gkeonprem/vmware_admin_cluster.py +28 -0
  47. pulumi_gcp/managedkafka/_inputs.py +6 -6
  48. pulumi_gcp/managedkafka/connect_cluster.py +84 -40
  49. pulumi_gcp/managedkafka/connector.py +98 -44
  50. pulumi_gcp/managedkafka/outputs.py +4 -4
  51. pulumi_gcp/memorystore/_inputs.py +205 -0
  52. pulumi_gcp/memorystore/get_instance.py +45 -1
  53. pulumi_gcp/memorystore/instance.py +194 -0
  54. pulumi_gcp/memorystore/outputs.py +270 -0
  55. pulumi_gcp/ml/engine_model.py +0 -22
  56. pulumi_gcp/monitoring/_inputs.py +37 -19
  57. pulumi_gcp/monitoring/outputs.py +39 -11
  58. pulumi_gcp/monitoring/uptime_check_config.py +8 -0
  59. pulumi_gcp/netapp/_inputs.py +92 -6
  60. pulumi_gcp/netapp/outputs.py +77 -4
  61. pulumi_gcp/netapp/volume_replication.py +12 -2
  62. pulumi_gcp/networkconnectivity/service_connection_policy.py +4 -2
  63. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  64. pulumi_gcp/orgpolicy/policy.py +2 -2
  65. pulumi_gcp/osconfig/__init__.py +1 -0
  66. pulumi_gcp/osconfig/_inputs.py +5439 -0
  67. pulumi_gcp/osconfig/outputs.py +3978 -0
  68. pulumi_gcp/osconfig/v2_policy_orchestrator.py +8 -0
  69. pulumi_gcp/osconfig/v2_policy_orchestrator_for_organization.py +1055 -0
  70. pulumi_gcp/parametermanager/get_regional_parameter.py +12 -1
  71. pulumi_gcp/parametermanager/get_regional_parameter_version.py +15 -1
  72. pulumi_gcp/parametermanager/outputs.py +11 -0
  73. pulumi_gcp/parametermanager/regional_parameter.py +78 -0
  74. pulumi_gcp/parametermanager/regional_parameter_version.py +66 -0
  75. pulumi_gcp/pubsub/subscription.py +6 -6
  76. pulumi_gcp/pulumi-plugin.json +1 -1
  77. pulumi_gcp/redis/_inputs.py +69 -0
  78. pulumi_gcp/redis/cluster.py +140 -0
  79. pulumi_gcp/redis/outputs.py +40 -0
  80. pulumi_gcp/spanner/database.py +0 -34
  81. pulumi_gcp/storage/_inputs.py +111 -0
  82. pulumi_gcp/storage/bucket_object.py +28 -0
  83. pulumi_gcp/storage/control_folder_intelligence_config.py +32 -0
  84. pulumi_gcp/storage/control_organization_intelligence_config.py +32 -0
  85. pulumi_gcp/storage/control_project_intelligence_config.py +32 -0
  86. pulumi_gcp/storage/get_bucket_object.py +12 -1
  87. pulumi_gcp/storage/get_bucket_object_content.py +12 -1
  88. pulumi_gcp/storage/get_control_folder_intelligence_config.py +12 -1
  89. pulumi_gcp/storage/get_control_organization_intelligence_config.py +12 -1
  90. pulumi_gcp/storage/get_control_project_intelligence_config.py +12 -1
  91. pulumi_gcp/storage/outputs.py +174 -0
  92. pulumi_gcp/vertex/__init__.py +12 -0
  93. pulumi_gcp/vertex/_inputs.py +294 -0
  94. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  95. pulumi_gcp/vertex/ai_feature_group.py +1 -1
  96. pulumi_gcp/vertex/ai_feature_group_iam_binding.py +583 -0
  97. pulumi_gcp/vertex/ai_feature_group_iam_member.py +583 -0
  98. pulumi_gcp/vertex/ai_feature_group_iam_policy.py +422 -0
  99. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +26 -27
  100. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_binding.py +614 -0
  101. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_member.py +614 -0
  102. pulumi_gcp/vertex/ai_feature_online_store_featureview_iam_policy.py +453 -0
  103. pulumi_gcp/vertex/ai_feature_online_store_iam_binding.py +583 -0
  104. pulumi_gcp/vertex/ai_feature_online_store_iam_member.py +583 -0
  105. pulumi_gcp/vertex/ai_feature_online_store_iam_policy.py +422 -0
  106. pulumi_gcp/vertex/get_ai_feature_group_iam_policy.py +177 -0
  107. pulumi_gcp/vertex/get_ai_feature_online_store_featureview_iam_policy.py +194 -0
  108. pulumi_gcp/vertex/get_ai_feature_online_store_iam_policy.py +177 -0
  109. pulumi_gcp/vertex/outputs.py +168 -0
  110. pulumi_gcp/workbench/_inputs.py +60 -0
  111. pulumi_gcp/workbench/instance.py +48 -0
  112. pulumi_gcp/workbench/outputs.py +55 -0
  113. {pulumi_gcp-8.26.0a1744267117.dist-info → pulumi_gcp-8.27.0.dist-info}/METADATA +1 -1
  114. {pulumi_gcp-8.26.0a1744267117.dist-info → pulumi_gcp-8.27.0.dist-info}/RECORD +116 -97
  115. {pulumi_gcp-8.26.0a1744267117.dist-info → pulumi_gcp-8.27.0.dist-info}/WHEEL +0 -0
  116. {pulumi_gcp-8.26.0a1744267117.dist-info → pulumi_gcp-8.27.0.dist-info}/top_level.txt +0 -0
@@ -1370,9 +1370,9 @@ class ConnectionProfileMysqlArgs:
1370
1370
 
1371
1371
  if not MYPY:
1372
1372
  class ConnectionProfileMysqlSslArgsDict(TypedDict):
1373
- ca_certificate: pulumi.Input[builtins.str]
1373
+ ca_certificate: NotRequired[pulumi.Input[builtins.str]]
1374
1374
  """
1375
- Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1375
+ Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1376
1376
  The replica will use this certificate to verify it's connecting to the right host.
1377
1377
  **Note**: This property is sensitive and will not be displayed in the plan.
1378
1378
  """
@@ -1399,12 +1399,12 @@ elif False:
1399
1399
  @pulumi.input_type
1400
1400
  class ConnectionProfileMysqlSslArgs:
1401
1401
  def __init__(__self__, *,
1402
- ca_certificate: pulumi.Input[builtins.str],
1402
+ ca_certificate: Optional[pulumi.Input[builtins.str]] = None,
1403
1403
  client_certificate: Optional[pulumi.Input[builtins.str]] = None,
1404
1404
  client_key: Optional[pulumi.Input[builtins.str]] = None,
1405
1405
  type: Optional[pulumi.Input[builtins.str]] = None):
1406
1406
  """
1407
- :param pulumi.Input[builtins.str] ca_certificate: Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1407
+ :param pulumi.Input[builtins.str] ca_certificate: Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1408
1408
  The replica will use this certificate to verify it's connecting to the right host.
1409
1409
  **Note**: This property is sensitive and will not be displayed in the plan.
1410
1410
  :param pulumi.Input[builtins.str] client_certificate: Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server.
@@ -1416,7 +1416,8 @@ class ConnectionProfileMysqlSslArgs:
1416
1416
  :param pulumi.Input[builtins.str] type: (Output)
1417
1417
  The current connection profile state.
1418
1418
  """
1419
- pulumi.set(__self__, "ca_certificate", ca_certificate)
1419
+ if ca_certificate is not None:
1420
+ pulumi.set(__self__, "ca_certificate", ca_certificate)
1420
1421
  if client_certificate is not None:
1421
1422
  pulumi.set(__self__, "client_certificate", client_certificate)
1422
1423
  if client_key is not None:
@@ -1426,16 +1427,16 @@ class ConnectionProfileMysqlSslArgs:
1426
1427
 
1427
1428
  @property
1428
1429
  @pulumi.getter(name="caCertificate")
1429
- def ca_certificate(self) -> pulumi.Input[builtins.str]:
1430
+ def ca_certificate(self) -> Optional[pulumi.Input[builtins.str]]:
1430
1431
  """
1431
- Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1432
+ Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1432
1433
  The replica will use this certificate to verify it's connecting to the right host.
1433
1434
  **Note**: This property is sensitive and will not be displayed in the plan.
1434
1435
  """
1435
1436
  return pulumi.get(self, "ca_certificate")
1436
1437
 
1437
1438
  @ca_certificate.setter
1438
- def ca_certificate(self, value: pulumi.Input[builtins.str]):
1439
+ def ca_certificate(self, value: Optional[pulumi.Input[builtins.str]]):
1439
1440
  pulumi.set(self, "ca_certificate", value)
1440
1441
 
1441
1442
  @property
@@ -1856,9 +1857,9 @@ class ConnectionProfileOraclePrivateConnectivityArgs:
1856
1857
 
1857
1858
  if not MYPY:
1858
1859
  class ConnectionProfileOracleSslArgsDict(TypedDict):
1859
- ca_certificate: pulumi.Input[builtins.str]
1860
+ ca_certificate: NotRequired[pulumi.Input[builtins.str]]
1860
1861
  """
1861
- Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1862
+ Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1862
1863
  The replica will use this certificate to verify it's connecting to the right host.
1863
1864
  **Note**: This property is sensitive and will not be displayed in the plan.
1864
1865
  """
@@ -1885,12 +1886,12 @@ elif False:
1885
1886
  @pulumi.input_type
1886
1887
  class ConnectionProfileOracleSslArgs:
1887
1888
  def __init__(__self__, *,
1888
- ca_certificate: pulumi.Input[builtins.str],
1889
+ ca_certificate: Optional[pulumi.Input[builtins.str]] = None,
1889
1890
  client_certificate: Optional[pulumi.Input[builtins.str]] = None,
1890
1891
  client_key: Optional[pulumi.Input[builtins.str]] = None,
1891
1892
  type: Optional[pulumi.Input[builtins.str]] = None):
1892
1893
  """
1893
- :param pulumi.Input[builtins.str] ca_certificate: Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1894
+ :param pulumi.Input[builtins.str] ca_certificate: Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1894
1895
  The replica will use this certificate to verify it's connecting to the right host.
1895
1896
  **Note**: This property is sensitive and will not be displayed in the plan.
1896
1897
  :param pulumi.Input[builtins.str] client_certificate: Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server.
@@ -1902,7 +1903,8 @@ class ConnectionProfileOracleSslArgs:
1902
1903
  :param pulumi.Input[builtins.str] type: (Output)
1903
1904
  The current connection profile state.
1904
1905
  """
1905
- pulumi.set(__self__, "ca_certificate", ca_certificate)
1906
+ if ca_certificate is not None:
1907
+ pulumi.set(__self__, "ca_certificate", ca_certificate)
1906
1908
  if client_certificate is not None:
1907
1909
  pulumi.set(__self__, "client_certificate", client_certificate)
1908
1910
  if client_key is not None:
@@ -1912,16 +1914,16 @@ class ConnectionProfileOracleSslArgs:
1912
1914
 
1913
1915
  @property
1914
1916
  @pulumi.getter(name="caCertificate")
1915
- def ca_certificate(self) -> pulumi.Input[builtins.str]:
1917
+ def ca_certificate(self) -> Optional[pulumi.Input[builtins.str]]:
1916
1918
  """
1917
- Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1919
+ Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1918
1920
  The replica will use this certificate to verify it's connecting to the right host.
1919
1921
  **Note**: This property is sensitive and will not be displayed in the plan.
1920
1922
  """
1921
1923
  return pulumi.get(self, "ca_certificate")
1922
1924
 
1923
1925
  @ca_certificate.setter
1924
- def ca_certificate(self, value: pulumi.Input[builtins.str]):
1926
+ def ca_certificate(self, value: Optional[pulumi.Input[builtins.str]]):
1925
1927
  pulumi.set(self, "ca_certificate", value)
1926
1928
 
1927
1929
  @property
@@ -2187,9 +2189,9 @@ class ConnectionProfilePostgresqlArgs:
2187
2189
 
2188
2190
  if not MYPY:
2189
2191
  class ConnectionProfilePostgresqlSslArgsDict(TypedDict):
2190
- ca_certificate: pulumi.Input[builtins.str]
2192
+ ca_certificate: NotRequired[pulumi.Input[builtins.str]]
2191
2193
  """
2192
- Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
2194
+ Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
2193
2195
  The replica will use this certificate to verify it's connecting to the right host.
2194
2196
  **Note**: This property is sensitive and will not be displayed in the plan.
2195
2197
  """
@@ -2216,12 +2218,12 @@ elif False:
2216
2218
  @pulumi.input_type
2217
2219
  class ConnectionProfilePostgresqlSslArgs:
2218
2220
  def __init__(__self__, *,
2219
- ca_certificate: pulumi.Input[builtins.str],
2221
+ ca_certificate: Optional[pulumi.Input[builtins.str]] = None,
2220
2222
  client_certificate: Optional[pulumi.Input[builtins.str]] = None,
2221
2223
  client_key: Optional[pulumi.Input[builtins.str]] = None,
2222
2224
  type: Optional[pulumi.Input[builtins.str]] = None):
2223
2225
  """
2224
- :param pulumi.Input[builtins.str] ca_certificate: Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
2226
+ :param pulumi.Input[builtins.str] ca_certificate: Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
2225
2227
  The replica will use this certificate to verify it's connecting to the right host.
2226
2228
  **Note**: This property is sensitive and will not be displayed in the plan.
2227
2229
  :param pulumi.Input[builtins.str] client_certificate: Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server.
@@ -2233,7 +2235,8 @@ class ConnectionProfilePostgresqlSslArgs:
2233
2235
  :param pulumi.Input[builtins.str] type: (Output)
2234
2236
  The current connection profile state.
2235
2237
  """
2236
- pulumi.set(__self__, "ca_certificate", ca_certificate)
2238
+ if ca_certificate is not None:
2239
+ pulumi.set(__self__, "ca_certificate", ca_certificate)
2237
2240
  if client_certificate is not None:
2238
2241
  pulumi.set(__self__, "client_certificate", client_certificate)
2239
2242
  if client_key is not None:
@@ -2243,16 +2246,16 @@ class ConnectionProfilePostgresqlSslArgs:
2243
2246
 
2244
2247
  @property
2245
2248
  @pulumi.getter(name="caCertificate")
2246
- def ca_certificate(self) -> pulumi.Input[builtins.str]:
2249
+ def ca_certificate(self) -> Optional[pulumi.Input[builtins.str]]:
2247
2250
  """
2248
- Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
2251
+ Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
2249
2252
  The replica will use this certificate to verify it's connecting to the right host.
2250
2253
  **Note**: This property is sensitive and will not be displayed in the plan.
2251
2254
  """
2252
2255
  return pulumi.get(self, "ca_certificate")
2253
2256
 
2254
2257
  @ca_certificate.setter
2255
- def ca_certificate(self, value: pulumi.Input[builtins.str]):
2258
+ def ca_certificate(self, value: Optional[pulumi.Input[builtins.str]]):
2256
2259
  pulumi.set(self, "ca_certificate", value)
2257
2260
 
2258
2261
  @property
@@ -585,6 +585,7 @@ class ConnectionProfile(pulumi.CustomResource):
585
585
  "client_key": sql_client_cert.private_key,
586
586
  "client_certificate": sql_client_cert.cert,
587
587
  "ca_certificate": sql_client_cert.server_ca_cert,
588
+ "type": "SERVER_CLIENT",
588
589
  },
589
590
  "cloud_sql_id": "my-database",
590
591
  },
@@ -658,6 +659,89 @@ class ConnectionProfile(pulumi.CustomResource):
658
659
  "client_key": sql_client_cert.private_key,
659
660
  "client_certificate": sql_client_cert.cert,
660
661
  "ca_certificate": sql_client_cert.server_ca_cert,
662
+ "type": "SERVER_CLIENT",
663
+ },
664
+ "cloud_sql_id": "my-database",
665
+ },
666
+ opts = pulumi.ResourceOptions(depends_on=[sqldb_user]))
667
+ ```
668
+ ### Database Migration Service Connection Profile Postgres No Ssl
669
+
670
+ ```python
671
+ import pulumi
672
+ import pulumi_gcp as gcp
673
+
674
+ postgresqldb = gcp.sql.DatabaseInstance("postgresqldb",
675
+ name="my-database",
676
+ database_version="POSTGRES_12",
677
+ settings={
678
+ "tier": "db-custom-2-13312",
679
+ },
680
+ deletion_protection=False)
681
+ sql_client_cert = gcp.sql.SslCert("sql_client_cert",
682
+ common_name="my-cert",
683
+ instance=postgresqldb.name,
684
+ opts = pulumi.ResourceOptions(depends_on=[postgresqldb]))
685
+ sqldb_user = gcp.sql.User("sqldb_user",
686
+ name="my-username",
687
+ instance=postgresqldb.name,
688
+ password="my-password",
689
+ opts = pulumi.ResourceOptions(depends_on=[sql_client_cert]))
690
+ postgresprofile = gcp.databasemigrationservice.ConnectionProfile("postgresprofile",
691
+ location="us-central1",
692
+ connection_profile_id="my-profileid",
693
+ display_name="my-profileid_display",
694
+ labels={
695
+ "foo": "bar",
696
+ },
697
+ postgresql={
698
+ "host": postgresqldb.ip_addresses[0].ip_address,
699
+ "port": 5432,
700
+ "username": sqldb_user.name,
701
+ "password": sqldb_user.password,
702
+ "ssl": {
703
+ "type": "NONE",
704
+ },
705
+ "cloud_sql_id": "my-database",
706
+ },
707
+ opts = pulumi.ResourceOptions(depends_on=[sqldb_user]))
708
+ ```
709
+ ### Database Migration Service Connection Profile Postgres Required Ssl
710
+
711
+ ```python
712
+ import pulumi
713
+ import pulumi_gcp as gcp
714
+
715
+ postgresqldb = gcp.sql.DatabaseInstance("postgresqldb",
716
+ name="my-database",
717
+ database_version="POSTGRES_12",
718
+ settings={
719
+ "tier": "db-custom-2-13312",
720
+ },
721
+ deletion_protection=False)
722
+ sql_client_cert = gcp.sql.SslCert("sql_client_cert",
723
+ common_name="my-cert",
724
+ instance=postgresqldb.name,
725
+ opts = pulumi.ResourceOptions(depends_on=[postgresqldb]))
726
+ sqldb_user = gcp.sql.User("sqldb_user",
727
+ name="my-username",
728
+ instance=postgresqldb.name,
729
+ password="my-password",
730
+ opts = pulumi.ResourceOptions(depends_on=[sql_client_cert]))
731
+ postgresprofile = gcp.databasemigrationservice.ConnectionProfile("postgresprofile",
732
+ location="us-central1",
733
+ connection_profile_id="my-profileid",
734
+ display_name="my-profileid_display",
735
+ labels={
736
+ "foo": "bar",
737
+ },
738
+ postgresql={
739
+ "host": postgresqldb.ip_addresses[0].ip_address,
740
+ "port": 5432,
741
+ "username": sqldb_user.name,
742
+ "password": sqldb_user.password,
743
+ "ssl": {
744
+ "type": "REQUIRED",
661
745
  },
662
746
  "cloud_sql_id": "my-database",
663
747
  },
@@ -945,6 +1029,7 @@ class ConnectionProfile(pulumi.CustomResource):
945
1029
  "client_key": sql_client_cert.private_key,
946
1030
  "client_certificate": sql_client_cert.cert,
947
1031
  "ca_certificate": sql_client_cert.server_ca_cert,
1032
+ "type": "SERVER_CLIENT",
948
1033
  },
949
1034
  "cloud_sql_id": "my-database",
950
1035
  },
@@ -1018,6 +1103,89 @@ class ConnectionProfile(pulumi.CustomResource):
1018
1103
  "client_key": sql_client_cert.private_key,
1019
1104
  "client_certificate": sql_client_cert.cert,
1020
1105
  "ca_certificate": sql_client_cert.server_ca_cert,
1106
+ "type": "SERVER_CLIENT",
1107
+ },
1108
+ "cloud_sql_id": "my-database",
1109
+ },
1110
+ opts = pulumi.ResourceOptions(depends_on=[sqldb_user]))
1111
+ ```
1112
+ ### Database Migration Service Connection Profile Postgres No Ssl
1113
+
1114
+ ```python
1115
+ import pulumi
1116
+ import pulumi_gcp as gcp
1117
+
1118
+ postgresqldb = gcp.sql.DatabaseInstance("postgresqldb",
1119
+ name="my-database",
1120
+ database_version="POSTGRES_12",
1121
+ settings={
1122
+ "tier": "db-custom-2-13312",
1123
+ },
1124
+ deletion_protection=False)
1125
+ sql_client_cert = gcp.sql.SslCert("sql_client_cert",
1126
+ common_name="my-cert",
1127
+ instance=postgresqldb.name,
1128
+ opts = pulumi.ResourceOptions(depends_on=[postgresqldb]))
1129
+ sqldb_user = gcp.sql.User("sqldb_user",
1130
+ name="my-username",
1131
+ instance=postgresqldb.name,
1132
+ password="my-password",
1133
+ opts = pulumi.ResourceOptions(depends_on=[sql_client_cert]))
1134
+ postgresprofile = gcp.databasemigrationservice.ConnectionProfile("postgresprofile",
1135
+ location="us-central1",
1136
+ connection_profile_id="my-profileid",
1137
+ display_name="my-profileid_display",
1138
+ labels={
1139
+ "foo": "bar",
1140
+ },
1141
+ postgresql={
1142
+ "host": postgresqldb.ip_addresses[0].ip_address,
1143
+ "port": 5432,
1144
+ "username": sqldb_user.name,
1145
+ "password": sqldb_user.password,
1146
+ "ssl": {
1147
+ "type": "NONE",
1148
+ },
1149
+ "cloud_sql_id": "my-database",
1150
+ },
1151
+ opts = pulumi.ResourceOptions(depends_on=[sqldb_user]))
1152
+ ```
1153
+ ### Database Migration Service Connection Profile Postgres Required Ssl
1154
+
1155
+ ```python
1156
+ import pulumi
1157
+ import pulumi_gcp as gcp
1158
+
1159
+ postgresqldb = gcp.sql.DatabaseInstance("postgresqldb",
1160
+ name="my-database",
1161
+ database_version="POSTGRES_12",
1162
+ settings={
1163
+ "tier": "db-custom-2-13312",
1164
+ },
1165
+ deletion_protection=False)
1166
+ sql_client_cert = gcp.sql.SslCert("sql_client_cert",
1167
+ common_name="my-cert",
1168
+ instance=postgresqldb.name,
1169
+ opts = pulumi.ResourceOptions(depends_on=[postgresqldb]))
1170
+ sqldb_user = gcp.sql.User("sqldb_user",
1171
+ name="my-username",
1172
+ instance=postgresqldb.name,
1173
+ password="my-password",
1174
+ opts = pulumi.ResourceOptions(depends_on=[sql_client_cert]))
1175
+ postgresprofile = gcp.databasemigrationservice.ConnectionProfile("postgresprofile",
1176
+ location="us-central1",
1177
+ connection_profile_id="my-profileid",
1178
+ display_name="my-profileid_display",
1179
+ labels={
1180
+ "foo": "bar",
1181
+ },
1182
+ postgresql={
1183
+ "host": postgresqldb.ip_addresses[0].ip_address,
1184
+ "port": 5432,
1185
+ "username": sqldb_user.name,
1186
+ "password": sqldb_user.password,
1187
+ "ssl": {
1188
+ "type": "REQUIRED",
1021
1189
  },
1022
1190
  "cloud_sql_id": "my-database",
1023
1191
  },
@@ -775,6 +775,7 @@ class MigrationJob(pulumi.CustomResource):
775
775
  "client_key": source_sql_client_cert.private_key,
776
776
  "client_certificate": source_sql_client_cert.cert,
777
777
  "ca_certificate": source_sql_client_cert.server_ca_cert,
778
+ "type": "SERVER_CLIENT",
778
779
  },
779
780
  "cloud_sql_id": "source-csql",
780
781
  },
@@ -863,6 +864,7 @@ class MigrationJob(pulumi.CustomResource):
863
864
  "client_key": source_sql_client_cert.private_key,
864
865
  "client_certificate": source_sql_client_cert.cert,
865
866
  "ca_certificate": source_sql_client_cert.server_ca_cert,
867
+ "type": "SERVER_CLIENT",
866
868
  },
867
869
  "cloud_sql_id": "source-csql",
868
870
  },
@@ -938,6 +940,7 @@ class MigrationJob(pulumi.CustomResource):
938
940
  "client_key": source_sql_client_cert.private_key,
939
941
  "client_certificate": source_sql_client_cert.cert,
940
942
  "ca_certificate": source_sql_client_cert.server_ca_cert,
943
+ "type": "SERVER_CLIENT",
941
944
  },
942
945
  "cloud_sql_id": "source-csql",
943
946
  },
@@ -1114,6 +1117,7 @@ class MigrationJob(pulumi.CustomResource):
1114
1117
  "client_key": source_sql_client_cert.private_key,
1115
1118
  "client_certificate": source_sql_client_cert.cert,
1116
1119
  "ca_certificate": source_sql_client_cert.server_ca_cert,
1120
+ "type": "SERVER_CLIENT",
1117
1121
  },
1118
1122
  "cloud_sql_id": "source-csql",
1119
1123
  },
@@ -1202,6 +1206,7 @@ class MigrationJob(pulumi.CustomResource):
1202
1206
  "client_key": source_sql_client_cert.private_key,
1203
1207
  "client_certificate": source_sql_client_cert.cert,
1204
1208
  "ca_certificate": source_sql_client_cert.server_ca_cert,
1209
+ "type": "SERVER_CLIENT",
1205
1210
  },
1206
1211
  "cloud_sql_id": "source-csql",
1207
1212
  },
@@ -1277,6 +1282,7 @@ class MigrationJob(pulumi.CustomResource):
1277
1282
  "client_key": source_sql_client_cert.private_key,
1278
1283
  "client_certificate": source_sql_client_cert.cert,
1279
1284
  "ca_certificate": source_sql_client_cert.server_ca_cert,
1285
+ "type": "SERVER_CLIENT",
1280
1286
  },
1281
1287
  "cloud_sql_id": "source-csql",
1282
1288
  },
@@ -1060,12 +1060,12 @@ class ConnectionProfileMysqlSsl(dict):
1060
1060
  return super().get(key, default)
1061
1061
 
1062
1062
  def __init__(__self__, *,
1063
- ca_certificate: builtins.str,
1063
+ ca_certificate: Optional[builtins.str] = None,
1064
1064
  client_certificate: Optional[builtins.str] = None,
1065
1065
  client_key: Optional[builtins.str] = None,
1066
1066
  type: Optional[builtins.str] = None):
1067
1067
  """
1068
- :param builtins.str ca_certificate: Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1068
+ :param builtins.str ca_certificate: Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1069
1069
  The replica will use this certificate to verify it's connecting to the right host.
1070
1070
  **Note**: This property is sensitive and will not be displayed in the plan.
1071
1071
  :param builtins.str client_certificate: Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server.
@@ -1077,7 +1077,8 @@ class ConnectionProfileMysqlSsl(dict):
1077
1077
  :param builtins.str type: (Output)
1078
1078
  The current connection profile state.
1079
1079
  """
1080
- pulumi.set(__self__, "ca_certificate", ca_certificate)
1080
+ if ca_certificate is not None:
1081
+ pulumi.set(__self__, "ca_certificate", ca_certificate)
1081
1082
  if client_certificate is not None:
1082
1083
  pulumi.set(__self__, "client_certificate", client_certificate)
1083
1084
  if client_key is not None:
@@ -1087,9 +1088,9 @@ class ConnectionProfileMysqlSsl(dict):
1087
1088
 
1088
1089
  @property
1089
1090
  @pulumi.getter(name="caCertificate")
1090
- def ca_certificate(self) -> builtins.str:
1091
+ def ca_certificate(self) -> Optional[builtins.str]:
1091
1092
  """
1092
- Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1093
+ Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1093
1094
  The replica will use this certificate to verify it's connecting to the right host.
1094
1095
  **Note**: This property is sensitive and will not be displayed in the plan.
1095
1096
  """
@@ -1430,12 +1431,12 @@ class ConnectionProfileOracleSsl(dict):
1430
1431
  return super().get(key, default)
1431
1432
 
1432
1433
  def __init__(__self__, *,
1433
- ca_certificate: builtins.str,
1434
+ ca_certificate: Optional[builtins.str] = None,
1434
1435
  client_certificate: Optional[builtins.str] = None,
1435
1436
  client_key: Optional[builtins.str] = None,
1436
1437
  type: Optional[builtins.str] = None):
1437
1438
  """
1438
- :param builtins.str ca_certificate: Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1439
+ :param builtins.str ca_certificate: Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1439
1440
  The replica will use this certificate to verify it's connecting to the right host.
1440
1441
  **Note**: This property is sensitive and will not be displayed in the plan.
1441
1442
  :param builtins.str client_certificate: Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server.
@@ -1447,7 +1448,8 @@ class ConnectionProfileOracleSsl(dict):
1447
1448
  :param builtins.str type: (Output)
1448
1449
  The current connection profile state.
1449
1450
  """
1450
- pulumi.set(__self__, "ca_certificate", ca_certificate)
1451
+ if ca_certificate is not None:
1452
+ pulumi.set(__self__, "ca_certificate", ca_certificate)
1451
1453
  if client_certificate is not None:
1452
1454
  pulumi.set(__self__, "client_certificate", client_certificate)
1453
1455
  if client_key is not None:
@@ -1457,9 +1459,9 @@ class ConnectionProfileOracleSsl(dict):
1457
1459
 
1458
1460
  @property
1459
1461
  @pulumi.getter(name="caCertificate")
1460
- def ca_certificate(self) -> builtins.str:
1462
+ def ca_certificate(self) -> Optional[builtins.str]:
1461
1463
  """
1462
- Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1464
+ Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1463
1465
  The replica will use this certificate to verify it's connecting to the right host.
1464
1466
  **Note**: This property is sensitive and will not be displayed in the plan.
1465
1467
  """
@@ -1673,12 +1675,12 @@ class ConnectionProfilePostgresqlSsl(dict):
1673
1675
  return super().get(key, default)
1674
1676
 
1675
1677
  def __init__(__self__, *,
1676
- ca_certificate: builtins.str,
1678
+ ca_certificate: Optional[builtins.str] = None,
1677
1679
  client_certificate: Optional[builtins.str] = None,
1678
1680
  client_key: Optional[builtins.str] = None,
1679
1681
  type: Optional[builtins.str] = None):
1680
1682
  """
1681
- :param builtins.str ca_certificate: Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1683
+ :param builtins.str ca_certificate: Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1682
1684
  The replica will use this certificate to verify it's connecting to the right host.
1683
1685
  **Note**: This property is sensitive and will not be displayed in the plan.
1684
1686
  :param builtins.str client_certificate: Input only. The x509 PEM-encoded certificate that will be used by the replica to authenticate against the source database server.
@@ -1690,7 +1692,8 @@ class ConnectionProfilePostgresqlSsl(dict):
1690
1692
  :param builtins.str type: (Output)
1691
1693
  The current connection profile state.
1692
1694
  """
1693
- pulumi.set(__self__, "ca_certificate", ca_certificate)
1695
+ if ca_certificate is not None:
1696
+ pulumi.set(__self__, "ca_certificate", ca_certificate)
1694
1697
  if client_certificate is not None:
1695
1698
  pulumi.set(__self__, "client_certificate", client_certificate)
1696
1699
  if client_key is not None:
@@ -1700,9 +1703,9 @@ class ConnectionProfilePostgresqlSsl(dict):
1700
1703
 
1701
1704
  @property
1702
1705
  @pulumi.getter(name="caCertificate")
1703
- def ca_certificate(self) -> builtins.str:
1706
+ def ca_certificate(self) -> Optional[builtins.str]:
1704
1707
  """
1705
- Required. Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1708
+ Input only. The x509 PEM-encoded certificate of the CA that signed the source database server's certificate.
1706
1709
  The replica will use this certificate to verify it's connecting to the right host.
1707
1710
  **Note**: This property is sensitive and will not be displayed in the plan.
1708
1711
  """