pulumi-gcp 7.30.2a1720626904__py3-none-any.whl → 7.31.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 (86) hide show
  1. pulumi_gcp/__init__.py +40 -0
  2. pulumi_gcp/applicationintegration/auth_config.py +2 -2
  3. pulumi_gcp/bigquery/reservation_assignment.py +48 -30
  4. pulumi_gcp/certificateauthority/certificate_template.py +2 -2
  5. pulumi_gcp/certificatemanager/_inputs.py +33 -0
  6. pulumi_gcp/certificatemanager/outputs.py +36 -0
  7. pulumi_gcp/certificatemanager/trust_config.py +107 -0
  8. pulumi_gcp/compute/_inputs.py +3 -6
  9. pulumi_gcp/compute/ca_external_account_key.py +2 -2
  10. pulumi_gcp/compute/get_health_check.py +11 -1
  11. pulumi_gcp/compute/global_forwarding_rule.py +2 -4
  12. pulumi_gcp/compute/health_check.py +124 -0
  13. pulumi_gcp/compute/instance.py +14 -14
  14. pulumi_gcp/compute/instance_group_membership.py +2 -2
  15. pulumi_gcp/compute/outputs.py +4 -8
  16. pulumi_gcp/compute/region_network_endpoint.py +2 -2
  17. pulumi_gcp/compute/region_network_endpoint_group.py +2 -2
  18. pulumi_gcp/compute/subnetwork.py +2 -2
  19. pulumi_gcp/config/__init__.pyi +2 -0
  20. pulumi_gcp/config/vars.py +4 -0
  21. pulumi_gcp/container/_inputs.py +3 -3
  22. pulumi_gcp/container/outputs.py +4 -4
  23. pulumi_gcp/containeranalysis/note.py +2 -2
  24. pulumi_gcp/dataloss/_inputs.py +3 -0
  25. pulumi_gcp/dataloss/outputs.py +2 -0
  26. pulumi_gcp/dataloss/prevention_job_trigger.py +90 -0
  27. pulumi_gcp/dataplex/_inputs.py +56 -0
  28. pulumi_gcp/dataplex/datascan.py +12 -0
  29. pulumi_gcp/dataplex/outputs.py +52 -0
  30. pulumi_gcp/filestore/backup.py +2 -2
  31. pulumi_gcp/filestore/instance.py +2 -2
  32. pulumi_gcp/filestore/snapshot.py +2 -2
  33. pulumi_gcp/gkehub/_inputs.py +20 -0
  34. pulumi_gcp/gkehub/outputs.py +12 -0
  35. pulumi_gcp/kms/__init__.py +2 -0
  36. pulumi_gcp/kms/crypto_key.py +7 -7
  37. pulumi_gcp/kms/get_crypto_keys.py +143 -0
  38. pulumi_gcp/kms/get_key_rings.py +119 -0
  39. pulumi_gcp/kms/outputs.py +270 -0
  40. pulumi_gcp/logging/_inputs.py +12 -12
  41. pulumi_gcp/logging/folder_bucket_config.py +6 -6
  42. pulumi_gcp/logging/organization_bucket_config.py +6 -6
  43. pulumi_gcp/logging/outputs.py +8 -8
  44. pulumi_gcp/logging/project_bucket_config.py +6 -6
  45. pulumi_gcp/looker/instance.py +2 -2
  46. pulumi_gcp/monitoring/custom_service.py +2 -2
  47. pulumi_gcp/monitoring/generic_service.py +2 -2
  48. pulumi_gcp/monitoring/notification_channel.py +2 -2
  49. pulumi_gcp/monitoring/slo.py +2 -2
  50. pulumi_gcp/netapp/storage_pool.py +132 -53
  51. pulumi_gcp/netapp/volume.py +60 -4
  52. pulumi_gcp/networksecurity/address_group.py +85 -1
  53. pulumi_gcp/networksecurity/firewall_endpoint.py +2 -2
  54. pulumi_gcp/networksecurity/firewall_endpoint_association.py +2 -2
  55. pulumi_gcp/networksecurity/security_profile_group.py +2 -2
  56. pulumi_gcp/orgpolicy/_inputs.py +40 -10
  57. pulumi_gcp/orgpolicy/outputs.py +28 -8
  58. pulumi_gcp/orgpolicy/policy.py +52 -35
  59. pulumi_gcp/provider.py +20 -0
  60. pulumi_gcp/pubsub/_inputs.py +3 -3
  61. pulumi_gcp/pubsub/outputs.py +4 -4
  62. pulumi_gcp/pulumi-plugin.json +1 -1
  63. pulumi_gcp/securesourcemanager/__init__.py +5 -0
  64. pulumi_gcp/securesourcemanager/_inputs.py +284 -0
  65. pulumi_gcp/securesourcemanager/get_repository_iam_policy.py +177 -0
  66. pulumi_gcp/securesourcemanager/outputs.py +202 -0
  67. pulumi_gcp/securesourcemanager/repository.py +715 -0
  68. pulumi_gcp/securesourcemanager/repository_iam_binding.py +804 -0
  69. pulumi_gcp/securesourcemanager/repository_iam_member.py +804 -0
  70. pulumi_gcp/securesourcemanager/repository_iam_policy.py +643 -0
  71. pulumi_gcp/securitycenter/__init__.py +1 -0
  72. pulumi_gcp/securitycenter/_inputs.py +93 -0
  73. pulumi_gcp/securitycenter/outputs.py +59 -0
  74. pulumi_gcp/securitycenter/v2_organization_notification_config.py +576 -0
  75. pulumi_gcp/securityposture/posture_deployment.py +0 -78
  76. pulumi_gcp/servicenetworking/vpc_service_controls.py +2 -2
  77. pulumi_gcp/vertex/_inputs.py +21 -1
  78. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +222 -0
  79. pulumi_gcp/vertex/outputs.py +15 -1
  80. pulumi_gcp/workstations/_inputs.py +33 -1
  81. pulumi_gcp/workstations/outputs.py +23 -1
  82. pulumi_gcp/workstations/workstation_config.py +18 -0
  83. {pulumi_gcp-7.30.2a1720626904.dist-info → pulumi_gcp-7.31.0.dist-info}/METADATA +1 -1
  84. {pulumi_gcp-7.30.2a1720626904.dist-info → pulumi_gcp-7.31.0.dist-info}/RECORD +86 -78
  85. {pulumi_gcp-7.30.2a1720626904.dist-info → pulumi_gcp-7.31.0.dist-info}/WHEEL +0 -0
  86. {pulumi_gcp-7.30.2a1720626904.dist-info → pulumi_gcp-7.31.0.dist-info}/top_level.txt +0 -0
@@ -6286,7 +6286,7 @@ class ClusterMonitoringConfig(dict):
6286
6286
  managed_prometheus: Optional['outputs.ClusterMonitoringConfigManagedPrometheus'] = None):
6287
6287
  """
6288
6288
  :param Sequence['ClusterMonitoringConfigAdvancedDatapathObservabilityConfigArgs'] advanced_datapath_observability_configs: Configuration for Advanced Datapath Monitoring. Structure is documented below.
6289
- :param Sequence[str] enable_components: The GKE components exposing metrics. Supported values include: `SYSTEM_COMPONENTS`, `APISERVER`, `SCHEDULER`, `CONTROLLER_MANAGER`, `STORAGE`, `HPA`, `POD`, `DAEMONSET`, `DEPLOYMENT`, `STATEFULSET`, `KUBELET` and `CADVISOR`. In beta provider, `WORKLOADS` is supported on top of those 12 values. (`WORKLOADS` is deprecated and removed in GKE 1.24.) `KUBELET` and `CADVISOR` are only supported in GKE 1.29.3-gke.1093000 and above.
6289
+ :param Sequence[str] enable_components: The GKE components exposing metrics. Supported values include: `SYSTEM_COMPONENTS`, `APISERVER`, `SCHEDULER`, `CONTROLLER_MANAGER`, `STORAGE`, `HPA`, `POD`, `DAEMONSET`, `DEPLOYMENT`, `STATEFULSET`, `KUBELET`, `CADVISOR` and `DCGM`. In beta provider, `WORKLOADS` is supported on top of those 12 values. (`WORKLOADS` is deprecated and removed in GKE 1.24.) `KUBELET` and `CADVISOR` are only supported in GKE 1.29.3-gke.1093000 and above.
6290
6290
  :param 'ClusterMonitoringConfigManagedPrometheusArgs' managed_prometheus: Configuration for Managed Service for Prometheus. Structure is documented below.
6291
6291
  """
6292
6292
  if advanced_datapath_observability_configs is not None:
@@ -6308,7 +6308,7 @@ class ClusterMonitoringConfig(dict):
6308
6308
  @pulumi.getter(name="enableComponents")
6309
6309
  def enable_components(self) -> Optional[Sequence[str]]:
6310
6310
  """
6311
- The GKE components exposing metrics. Supported values include: `SYSTEM_COMPONENTS`, `APISERVER`, `SCHEDULER`, `CONTROLLER_MANAGER`, `STORAGE`, `HPA`, `POD`, `DAEMONSET`, `DEPLOYMENT`, `STATEFULSET`, `KUBELET` and `CADVISOR`. In beta provider, `WORKLOADS` is supported on top of those 12 values. (`WORKLOADS` is deprecated and removed in GKE 1.24.) `KUBELET` and `CADVISOR` are only supported in GKE 1.29.3-gke.1093000 and above.
6311
+ The GKE components exposing metrics. Supported values include: `SYSTEM_COMPONENTS`, `APISERVER`, `SCHEDULER`, `CONTROLLER_MANAGER`, `STORAGE`, `HPA`, `POD`, `DAEMONSET`, `DEPLOYMENT`, `STATEFULSET`, `KUBELET`, `CADVISOR` and `DCGM`. In beta provider, `WORKLOADS` is supported on top of those 12 values. (`WORKLOADS` is deprecated and removed in GKE 1.24.) `KUBELET` and `CADVISOR` are only supported in GKE 1.29.3-gke.1093000 and above.
6312
6312
  """
6313
6313
  return pulumi.get(self, "enable_components")
6314
6314
 
@@ -16158,7 +16158,7 @@ class GetClusterMonitoringConfigResult(dict):
16158
16158
  managed_prometheuses: Sequence['outputs.GetClusterMonitoringConfigManagedPrometheusResult']):
16159
16159
  """
16160
16160
  :param Sequence['GetClusterMonitoringConfigAdvancedDatapathObservabilityConfigArgs'] advanced_datapath_observability_configs: Configuration of Advanced Datapath Observability features.
16161
- :param Sequence[str] enable_components: GKE components exposing metrics. Valid values include SYSTEM_COMPONENTS, APISERVER, SCHEDULER, CONTROLLER_MANAGER, STORAGE, HPA, POD, DAEMONSET, DEPLOYMENT, STATEFULSET, WORKLOADS, KUBELET and CADVISOR.
16161
+ :param Sequence[str] enable_components: GKE components exposing metrics. Valid values include SYSTEM_COMPONENTS, APISERVER, SCHEDULER, CONTROLLER_MANAGER, STORAGE, HPA, POD, DAEMONSET, DEPLOYMENT, STATEFULSET, WORKLOADS, KUBELET, CADVISOR and DCGM.
16162
16162
  :param Sequence['GetClusterMonitoringConfigManagedPrometheusArgs'] managed_prometheuses: Configuration for Google Cloud Managed Services for Prometheus.
16163
16163
  """
16164
16164
  pulumi.set(__self__, "advanced_datapath_observability_configs", advanced_datapath_observability_configs)
@@ -16177,7 +16177,7 @@ class GetClusterMonitoringConfigResult(dict):
16177
16177
  @pulumi.getter(name="enableComponents")
16178
16178
  def enable_components(self) -> Sequence[str]:
16179
16179
  """
16180
- GKE components exposing metrics. Valid values include SYSTEM_COMPONENTS, APISERVER, SCHEDULER, CONTROLLER_MANAGER, STORAGE, HPA, POD, DAEMONSET, DEPLOYMENT, STATEFULSET, WORKLOADS, KUBELET and CADVISOR.
16180
+ GKE components exposing metrics. Valid values include SYSTEM_COMPONENTS, APISERVER, SCHEDULER, CONTROLLER_MANAGER, STORAGE, HPA, POD, DAEMONSET, DEPLOYMENT, STATEFULSET, WORKLOADS, KUBELET, CADVISOR and DCGM.
16181
16181
  """
16182
16182
  return pulumi.get(self, "enable_components")
16183
16183
 
@@ -387,8 +387,8 @@ class Note(pulumi.CustomResource):
387
387
 
388
388
  * [API documentation](https://cloud.google.com/container-analysis/api/reference/rest/)
389
389
  * How-to Guides
390
- * [Official Documentation](https://cloud.google.com/container-analysis/)
391
390
  * [Creating Attestations (Occurrences)](https://cloud.google.com/binary-authorization/docs/making-attestations)
391
+ * [Official Documentation](https://cloud.google.com/container-analysis/)
392
392
 
393
393
  ## Example Usage
394
394
 
@@ -490,8 +490,8 @@ class Note(pulumi.CustomResource):
490
490
 
491
491
  * [API documentation](https://cloud.google.com/container-analysis/api/reference/rest/)
492
492
  * How-to Guides
493
- * [Official Documentation](https://cloud.google.com/container-analysis/)
494
493
  * [Creating Attestations (Occurrences)](https://cloud.google.com/binary-authorization/docs/making-attestations)
494
+ * [Official Documentation](https://cloud.google.com/container-analysis/)
495
495
 
496
496
  ## Example Usage
497
497
 
@@ -22963,6 +22963,7 @@ if not MYPY:
22963
22963
  """
22964
22964
  How to sample rows if not all rows are scanned. Meaningful only when used in conjunction with either
22965
22965
  rowsLimit or rowsLimitPercent. If not specified, rows are scanned in the order BigQuery reads them.
22966
+ If TimespanConfig is set, set this to an empty string to avoid using the default value.
22966
22967
  Default value is `TOP`.
22967
22968
  Possible values are: `TOP`, `RANDOM_START`.
22968
22969
  """
@@ -22998,6 +22999,7 @@ class PreventionJobTriggerInspectJobStorageConfigBigQueryOptionsArgs:
22998
22999
  rowsLimit and rowsLimitPercent can be specified. Cannot be used in conjunction with TimespanConfig.
22999
23000
  :param pulumi.Input[str] sample_method: How to sample rows if not all rows are scanned. Meaningful only when used in conjunction with either
23000
23001
  rowsLimit or rowsLimitPercent. If not specified, rows are scanned in the order BigQuery reads them.
23002
+ If TimespanConfig is set, set this to an empty string to avoid using the default value.
23001
23003
  Default value is `TOP`.
23002
23004
  Possible values are: `TOP`, `RANDOM_START`.
23003
23005
  """
@@ -23103,6 +23105,7 @@ class PreventionJobTriggerInspectJobStorageConfigBigQueryOptionsArgs:
23103
23105
  """
23104
23106
  How to sample rows if not all rows are scanned. Meaningful only when used in conjunction with either
23105
23107
  rowsLimit or rowsLimitPercent. If not specified, rows are scanned in the order BigQuery reads them.
23108
+ If TimespanConfig is set, set this to an empty string to avoid using the default value.
23106
23109
  Default value is `TOP`.
23107
23110
  Possible values are: `TOP`, `RANDOM_START`.
23108
23111
  """
@@ -17354,6 +17354,7 @@ class PreventionJobTriggerInspectJobStorageConfigBigQueryOptions(dict):
17354
17354
  rowsLimit and rowsLimitPercent can be specified. Cannot be used in conjunction with TimespanConfig.
17355
17355
  :param str sample_method: How to sample rows if not all rows are scanned. Meaningful only when used in conjunction with either
17356
17356
  rowsLimit or rowsLimitPercent. If not specified, rows are scanned in the order BigQuery reads them.
17357
+ If TimespanConfig is set, set this to an empty string to avoid using the default value.
17357
17358
  Default value is `TOP`.
17358
17359
  Possible values are: `TOP`, `RANDOM_START`.
17359
17360
  """
@@ -17435,6 +17436,7 @@ class PreventionJobTriggerInspectJobStorageConfigBigQueryOptions(dict):
17435
17436
  """
17436
17437
  How to sample rows if not all rows are scanned. Meaningful only when used in conjunction with either
17437
17438
  rowsLimit or rowsLimitPercent. If not specified, rows are scanned in the order BigQuery reads them.
17439
+ If TimespanConfig is set, set this to an empty string to avoid using the default value.
17438
17440
  Default value is `TOP`.
17439
17441
  Possible values are: `TOP`, `RANDOM_START`.
17440
17442
  """
@@ -857,6 +857,51 @@ class PreventionJobTrigger(pulumi.CustomResource):
857
857
  },
858
858
  })
859
859
  ```
860
+ ### Dlp Job Trigger Timespan Config Big Query
861
+
862
+ ```python
863
+ import pulumi
864
+ import pulumi_gcp as gcp
865
+
866
+ timespan_config_big_query = gcp.dataloss.PreventionJobTrigger("timespan_config_big_query",
867
+ parent="projects/my-project-name",
868
+ description="BigQuery DLP Job Trigger with timespan config and row limit",
869
+ display_name="bigquery-dlp-job-trigger-limit-timespan",
870
+ triggers=[{
871
+ "schedule": {
872
+ "recurrencePeriodDuration": "86400s",
873
+ },
874
+ }],
875
+ inspect_job={
876
+ "inspectTemplateName": "projects/test/locations/global/inspectTemplates/6425492983381733900",
877
+ "storageConfig": {
878
+ "bigQueryOptions": {
879
+ "tableReference": {
880
+ "projectId": "project",
881
+ "datasetId": "dataset",
882
+ "tableId": "table",
883
+ },
884
+ "sampleMethod": "",
885
+ },
886
+ "timespanConfig": {
887
+ "startTime": "2023-01-01T00:00:23Z",
888
+ "timestampField": {
889
+ "name": "timestamp",
890
+ },
891
+ },
892
+ },
893
+ "actions": [{
894
+ "saveFindings": {
895
+ "outputConfig": {
896
+ "table": {
897
+ "projectId": "project",
898
+ "datasetId": "output",
899
+ },
900
+ },
901
+ },
902
+ }],
903
+ })
904
+ ```
860
905
 
861
906
  ## Import
862
907
 
@@ -1407,6 +1452,51 @@ class PreventionJobTrigger(pulumi.CustomResource):
1407
1452
  },
1408
1453
  })
1409
1454
  ```
1455
+ ### Dlp Job Trigger Timespan Config Big Query
1456
+
1457
+ ```python
1458
+ import pulumi
1459
+ import pulumi_gcp as gcp
1460
+
1461
+ timespan_config_big_query = gcp.dataloss.PreventionJobTrigger("timespan_config_big_query",
1462
+ parent="projects/my-project-name",
1463
+ description="BigQuery DLP Job Trigger with timespan config and row limit",
1464
+ display_name="bigquery-dlp-job-trigger-limit-timespan",
1465
+ triggers=[{
1466
+ "schedule": {
1467
+ "recurrencePeriodDuration": "86400s",
1468
+ },
1469
+ }],
1470
+ inspect_job={
1471
+ "inspectTemplateName": "projects/test/locations/global/inspectTemplates/6425492983381733900",
1472
+ "storageConfig": {
1473
+ "bigQueryOptions": {
1474
+ "tableReference": {
1475
+ "projectId": "project",
1476
+ "datasetId": "dataset",
1477
+ "tableId": "table",
1478
+ },
1479
+ "sampleMethod": "",
1480
+ },
1481
+ "timespanConfig": {
1482
+ "startTime": "2023-01-01T00:00:23Z",
1483
+ "timestampField": {
1484
+ "name": "timestamp",
1485
+ },
1486
+ },
1487
+ },
1488
+ "actions": [{
1489
+ "saveFindings": {
1490
+ "outputConfig": {
1491
+ "table": {
1492
+ "projectId": "project",
1493
+ "datasetId": "output",
1494
+ },
1495
+ },
1496
+ },
1497
+ }],
1498
+ })
1499
+ ```
1410
1500
 
1411
1501
  ## Import
1412
1502
 
@@ -69,6 +69,8 @@ __all__ = [
69
69
  'DatascanDataQualitySpecRuleRowConditionExpectationArgsDict',
70
70
  'DatascanDataQualitySpecRuleSetExpectationArgs',
71
71
  'DatascanDataQualitySpecRuleSetExpectationArgsDict',
72
+ 'DatascanDataQualitySpecRuleSqlAssertionArgs',
73
+ 'DatascanDataQualitySpecRuleSqlAssertionArgsDict',
72
74
  'DatascanDataQualitySpecRuleStatisticRangeExpectationArgs',
73
75
  'DatascanDataQualitySpecRuleStatisticRangeExpectationArgsDict',
74
76
  'DatascanDataQualitySpecRuleTableConditionExpectationArgs',
@@ -1626,6 +1628,11 @@ if not MYPY:
1626
1628
  ColumnMap rule which evaluates whether each column value is contained by a specified set.
1627
1629
  Structure is documented below.
1628
1630
  """
1631
+ sql_assertion: NotRequired[pulumi.Input['DatascanDataQualitySpecRuleSqlAssertionArgsDict']]
1632
+ """
1633
+ Table rule which evaluates whether any row matches invalid state.
1634
+ Structure is documented below.
1635
+ """
1629
1636
  statistic_range_expectation: NotRequired[pulumi.Input['DatascanDataQualitySpecRuleStatisticRangeExpectationArgsDict']]
1630
1637
  """
1631
1638
  ColumnAggregate rule which evaluates whether the column aggregate statistic lies between a specified range.
@@ -1660,6 +1667,7 @@ class DatascanDataQualitySpecRuleArgs:
1660
1667
  regex_expectation: Optional[pulumi.Input['DatascanDataQualitySpecRuleRegexExpectationArgs']] = None,
1661
1668
  row_condition_expectation: Optional[pulumi.Input['DatascanDataQualitySpecRuleRowConditionExpectationArgs']] = None,
1662
1669
  set_expectation: Optional[pulumi.Input['DatascanDataQualitySpecRuleSetExpectationArgs']] = None,
1670
+ sql_assertion: Optional[pulumi.Input['DatascanDataQualitySpecRuleSqlAssertionArgs']] = None,
1663
1671
  statistic_range_expectation: Optional[pulumi.Input['DatascanDataQualitySpecRuleStatisticRangeExpectationArgs']] = None,
1664
1672
  table_condition_expectation: Optional[pulumi.Input['DatascanDataQualitySpecRuleTableConditionExpectationArgs']] = None,
1665
1673
  threshold: Optional[pulumi.Input[float]] = None,
@@ -1684,6 +1692,8 @@ class DatascanDataQualitySpecRuleArgs:
1684
1692
  Structure is documented below.
1685
1693
  :param pulumi.Input['DatascanDataQualitySpecRuleSetExpectationArgs'] set_expectation: ColumnMap rule which evaluates whether each column value is contained by a specified set.
1686
1694
  Structure is documented below.
1695
+ :param pulumi.Input['DatascanDataQualitySpecRuleSqlAssertionArgs'] sql_assertion: Table rule which evaluates whether any row matches invalid state.
1696
+ Structure is documented below.
1687
1697
  :param pulumi.Input['DatascanDataQualitySpecRuleStatisticRangeExpectationArgs'] statistic_range_expectation: ColumnAggregate rule which evaluates whether the column aggregate statistic lies between a specified range.
1688
1698
  Structure is documented below.
1689
1699
  :param pulumi.Input['DatascanDataQualitySpecRuleTableConditionExpectationArgs'] table_condition_expectation: Table rule which evaluates whether the provided expression is true.
@@ -1710,6 +1720,8 @@ class DatascanDataQualitySpecRuleArgs:
1710
1720
  pulumi.set(__self__, "row_condition_expectation", row_condition_expectation)
1711
1721
  if set_expectation is not None:
1712
1722
  pulumi.set(__self__, "set_expectation", set_expectation)
1723
+ if sql_assertion is not None:
1724
+ pulumi.set(__self__, "sql_assertion", sql_assertion)
1713
1725
  if statistic_range_expectation is not None:
1714
1726
  pulumi.set(__self__, "statistic_range_expectation", statistic_range_expectation)
1715
1727
  if table_condition_expectation is not None:
@@ -1848,6 +1860,19 @@ class DatascanDataQualitySpecRuleArgs:
1848
1860
  def set_expectation(self, value: Optional[pulumi.Input['DatascanDataQualitySpecRuleSetExpectationArgs']]):
1849
1861
  pulumi.set(self, "set_expectation", value)
1850
1862
 
1863
+ @property
1864
+ @pulumi.getter(name="sqlAssertion")
1865
+ def sql_assertion(self) -> Optional[pulumi.Input['DatascanDataQualitySpecRuleSqlAssertionArgs']]:
1866
+ """
1867
+ Table rule which evaluates whether any row matches invalid state.
1868
+ Structure is documented below.
1869
+ """
1870
+ return pulumi.get(self, "sql_assertion")
1871
+
1872
+ @sql_assertion.setter
1873
+ def sql_assertion(self, value: Optional[pulumi.Input['DatascanDataQualitySpecRuleSqlAssertionArgs']]):
1874
+ pulumi.set(self, "sql_assertion", value)
1875
+
1851
1876
  @property
1852
1877
  @pulumi.getter(name="statisticRangeExpectation")
1853
1878
  def statistic_range_expectation(self) -> Optional[pulumi.Input['DatascanDataQualitySpecRuleStatisticRangeExpectationArgs']]:
@@ -2102,6 +2127,37 @@ class DatascanDataQualitySpecRuleSetExpectationArgs:
2102
2127
  pulumi.set(self, "values", value)
2103
2128
 
2104
2129
 
2130
+ if not MYPY:
2131
+ class DatascanDataQualitySpecRuleSqlAssertionArgsDict(TypedDict):
2132
+ sql_statement: pulumi.Input[str]
2133
+ """
2134
+ The SQL statement.
2135
+ """
2136
+ elif False:
2137
+ DatascanDataQualitySpecRuleSqlAssertionArgsDict: TypeAlias = Mapping[str, Any]
2138
+
2139
+ @pulumi.input_type
2140
+ class DatascanDataQualitySpecRuleSqlAssertionArgs:
2141
+ def __init__(__self__, *,
2142
+ sql_statement: pulumi.Input[str]):
2143
+ """
2144
+ :param pulumi.Input[str] sql_statement: The SQL statement.
2145
+ """
2146
+ pulumi.set(__self__, "sql_statement", sql_statement)
2147
+
2148
+ @property
2149
+ @pulumi.getter(name="sqlStatement")
2150
+ def sql_statement(self) -> pulumi.Input[str]:
2151
+ """
2152
+ The SQL statement.
2153
+ """
2154
+ return pulumi.get(self, "sql_statement")
2155
+
2156
+ @sql_statement.setter
2157
+ def sql_statement(self, value: pulumi.Input[str]):
2158
+ pulumi.set(self, "sql_statement", value)
2159
+
2160
+
2105
2161
  if not MYPY:
2106
2162
  class DatascanDataQualitySpecRuleStatisticRangeExpectationArgsDict(TypedDict):
2107
2163
  statistic: pulumi.Input[str]
@@ -725,6 +725,12 @@ class Datascan(pulumi.CustomResource):
725
725
  "sqlExpression": "COUNT(*) > 0",
726
726
  },
727
727
  },
728
+ {
729
+ "dimension": "VALIDITY",
730
+ "sqlAssertion": {
731
+ "sqlStatement": "select * from bigquery-public-data.austin_bikeshare.bikeshare_stations where station_id is null",
732
+ },
733
+ },
728
734
  ],
729
735
  },
730
736
  project="my-project-name")
@@ -985,6 +991,12 @@ class Datascan(pulumi.CustomResource):
985
991
  "sqlExpression": "COUNT(*) > 0",
986
992
  },
987
993
  },
994
+ {
995
+ "dimension": "VALIDITY",
996
+ "sqlAssertion": {
997
+ "sqlStatement": "select * from bigquery-public-data.austin_bikeshare.bikeshare_stations where station_id is null",
998
+ },
999
+ },
988
1000
  ],
989
1001
  },
990
1002
  project="my-project-name")
@@ -43,6 +43,7 @@ __all__ = [
43
43
  'DatascanDataQualitySpecRuleRegexExpectation',
44
44
  'DatascanDataQualitySpecRuleRowConditionExpectation',
45
45
  'DatascanDataQualitySpecRuleSetExpectation',
46
+ 'DatascanDataQualitySpecRuleSqlAssertion',
46
47
  'DatascanDataQualitySpecRuleStatisticRangeExpectation',
47
48
  'DatascanDataQualitySpecRuleTableConditionExpectation',
48
49
  'DatascanDataQualitySpecRuleUniquenessExpectation',
@@ -1248,6 +1249,8 @@ class DatascanDataQualitySpecRule(dict):
1248
1249
  suggest = "row_condition_expectation"
1249
1250
  elif key == "setExpectation":
1250
1251
  suggest = "set_expectation"
1252
+ elif key == "sqlAssertion":
1253
+ suggest = "sql_assertion"
1251
1254
  elif key == "statisticRangeExpectation":
1252
1255
  suggest = "statistic_range_expectation"
1253
1256
  elif key == "tableConditionExpectation":
@@ -1277,6 +1280,7 @@ class DatascanDataQualitySpecRule(dict):
1277
1280
  regex_expectation: Optional['outputs.DatascanDataQualitySpecRuleRegexExpectation'] = None,
1278
1281
  row_condition_expectation: Optional['outputs.DatascanDataQualitySpecRuleRowConditionExpectation'] = None,
1279
1282
  set_expectation: Optional['outputs.DatascanDataQualitySpecRuleSetExpectation'] = None,
1283
+ sql_assertion: Optional['outputs.DatascanDataQualitySpecRuleSqlAssertion'] = None,
1280
1284
  statistic_range_expectation: Optional['outputs.DatascanDataQualitySpecRuleStatisticRangeExpectation'] = None,
1281
1285
  table_condition_expectation: Optional['outputs.DatascanDataQualitySpecRuleTableConditionExpectation'] = None,
1282
1286
  threshold: Optional[float] = None,
@@ -1301,6 +1305,8 @@ class DatascanDataQualitySpecRule(dict):
1301
1305
  Structure is documented below.
1302
1306
  :param 'DatascanDataQualitySpecRuleSetExpectationArgs' set_expectation: ColumnMap rule which evaluates whether each column value is contained by a specified set.
1303
1307
  Structure is documented below.
1308
+ :param 'DatascanDataQualitySpecRuleSqlAssertionArgs' sql_assertion: Table rule which evaluates whether any row matches invalid state.
1309
+ Structure is documented below.
1304
1310
  :param 'DatascanDataQualitySpecRuleStatisticRangeExpectationArgs' statistic_range_expectation: ColumnAggregate rule which evaluates whether the column aggregate statistic lies between a specified range.
1305
1311
  Structure is documented below.
1306
1312
  :param 'DatascanDataQualitySpecRuleTableConditionExpectationArgs' table_condition_expectation: Table rule which evaluates whether the provided expression is true.
@@ -1327,6 +1333,8 @@ class DatascanDataQualitySpecRule(dict):
1327
1333
  pulumi.set(__self__, "row_condition_expectation", row_condition_expectation)
1328
1334
  if set_expectation is not None:
1329
1335
  pulumi.set(__self__, "set_expectation", set_expectation)
1336
+ if sql_assertion is not None:
1337
+ pulumi.set(__self__, "sql_assertion", sql_assertion)
1330
1338
  if statistic_range_expectation is not None:
1331
1339
  pulumi.set(__self__, "statistic_range_expectation", statistic_range_expectation)
1332
1340
  if table_condition_expectation is not None:
@@ -1425,6 +1433,15 @@ class DatascanDataQualitySpecRule(dict):
1425
1433
  """
1426
1434
  return pulumi.get(self, "set_expectation")
1427
1435
 
1436
+ @property
1437
+ @pulumi.getter(name="sqlAssertion")
1438
+ def sql_assertion(self) -> Optional['outputs.DatascanDataQualitySpecRuleSqlAssertion']:
1439
+ """
1440
+ Table rule which evaluates whether any row matches invalid state.
1441
+ Structure is documented below.
1442
+ """
1443
+ return pulumi.get(self, "sql_assertion")
1444
+
1428
1445
  @property
1429
1446
  @pulumi.getter(name="statisticRangeExpectation")
1430
1447
  def statistic_range_expectation(self) -> Optional['outputs.DatascanDataQualitySpecRuleStatisticRangeExpectation']:
@@ -1619,6 +1636,41 @@ class DatascanDataQualitySpecRuleSetExpectation(dict):
1619
1636
  return pulumi.get(self, "values")
1620
1637
 
1621
1638
 
1639
+ @pulumi.output_type
1640
+ class DatascanDataQualitySpecRuleSqlAssertion(dict):
1641
+ @staticmethod
1642
+ def __key_warning(key: str):
1643
+ suggest = None
1644
+ if key == "sqlStatement":
1645
+ suggest = "sql_statement"
1646
+
1647
+ if suggest:
1648
+ pulumi.log.warn(f"Key '{key}' not found in DatascanDataQualitySpecRuleSqlAssertion. Access the value via the '{suggest}' property getter instead.")
1649
+
1650
+ def __getitem__(self, key: str) -> Any:
1651
+ DatascanDataQualitySpecRuleSqlAssertion.__key_warning(key)
1652
+ return super().__getitem__(key)
1653
+
1654
+ def get(self, key: str, default = None) -> Any:
1655
+ DatascanDataQualitySpecRuleSqlAssertion.__key_warning(key)
1656
+ return super().get(key, default)
1657
+
1658
+ def __init__(__self__, *,
1659
+ sql_statement: str):
1660
+ """
1661
+ :param str sql_statement: The SQL statement.
1662
+ """
1663
+ pulumi.set(__self__, "sql_statement", sql_statement)
1664
+
1665
+ @property
1666
+ @pulumi.getter(name="sqlStatement")
1667
+ def sql_statement(self) -> str:
1668
+ """
1669
+ The SQL statement.
1670
+ """
1671
+ return pulumi.get(self, "sql_statement")
1672
+
1673
+
1622
1674
  @pulumi.output_type
1623
1675
  class DatascanDataQualitySpecRuleStatisticRangeExpectation(dict):
1624
1676
  @staticmethod
@@ -471,8 +471,8 @@ class Backup(pulumi.CustomResource):
471
471
 
472
472
  * [API documentation](https://cloud.google.com/filestore/docs/reference/rest/v1/projects.locations.instances.backups)
473
473
  * How-to Guides
474
- * [Official Documentation](https://cloud.google.com/filestore/docs/backups)
475
474
  * [Creating Backups](https://cloud.google.com/filestore/docs/create-backups)
475
+ * [Official Documentation](https://cloud.google.com/filestore/docs/backups)
476
476
 
477
477
  ## Example Usage
478
478
 
@@ -567,8 +567,8 @@ class Backup(pulumi.CustomResource):
567
567
 
568
568
  * [API documentation](https://cloud.google.com/filestore/docs/reference/rest/v1/projects.locations.instances.backups)
569
569
  * How-to Guides
570
- * [Official Documentation](https://cloud.google.com/filestore/docs/backups)
571
570
  * [Creating Backups](https://cloud.google.com/filestore/docs/create-backups)
571
+ * [Official Documentation](https://cloud.google.com/filestore/docs/backups)
572
572
 
573
573
  ## Example Usage
574
574
 
@@ -511,9 +511,9 @@ class Instance(pulumi.CustomResource):
511
511
 
512
512
  * [API documentation](https://cloud.google.com/filestore/docs/reference/rest/v1beta1/projects.locations.instances/create)
513
513
  * How-to Guides
514
+ * [Copying Data In/Out](https://cloud.google.com/filestore/docs/copying-data)
514
515
  * [Official Documentation](https://cloud.google.com/filestore/docs/creating-instances)
515
516
  * [Use with Kubernetes](https://cloud.google.com/filestore/docs/accessing-fileshares)
516
- * [Copying Data In/Out](https://cloud.google.com/filestore/docs/copying-data)
517
517
 
518
518
  ## Example Usage
519
519
 
@@ -676,9 +676,9 @@ class Instance(pulumi.CustomResource):
676
676
 
677
677
  * [API documentation](https://cloud.google.com/filestore/docs/reference/rest/v1beta1/projects.locations.instances/create)
678
678
  * How-to Guides
679
+ * [Copying Data In/Out](https://cloud.google.com/filestore/docs/copying-data)
679
680
  * [Official Documentation](https://cloud.google.com/filestore/docs/creating-instances)
680
681
  * [Use with Kubernetes](https://cloud.google.com/filestore/docs/accessing-fileshares)
681
- * [Copying Data In/Out](https://cloud.google.com/filestore/docs/copying-data)
682
682
 
683
683
  ## Example Usage
684
684
 
@@ -375,8 +375,8 @@ class Snapshot(pulumi.CustomResource):
375
375
 
376
376
  * [API documentation](https://cloud.google.com/filestore/docs/reference/rest/v1/projects.locations.instances.snapshots)
377
377
  * How-to Guides
378
- * [Official Documentation](https://cloud.google.com/filestore/docs/snapshots)
379
378
  * [Creating Snapshots](https://cloud.google.com/filestore/docs/create-snapshots)
379
+ * [Official Documentation](https://cloud.google.com/filestore/docs/snapshots)
380
380
 
381
381
  ## Example Usage
382
382
 
@@ -490,8 +490,8 @@ class Snapshot(pulumi.CustomResource):
490
490
 
491
491
  * [API documentation](https://cloud.google.com/filestore/docs/reference/rest/v1/projects.locations.instances.snapshots)
492
492
  * How-to Guides
493
- * [Official Documentation](https://cloud.google.com/filestore/docs/snapshots)
494
493
  * [Creating Snapshots](https://cloud.google.com/filestore/docs/create-snapshots)
494
+ * [Official Documentation](https://cloud.google.com/filestore/docs/snapshots)
495
495
 
496
496
  ## Example Usage
497
497
 
@@ -301,6 +301,10 @@ class FeatureFleetDefaultMemberConfigConfigmanagementArgs:
301
301
 
302
302
  if not MYPY:
303
303
  class FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgsDict(TypedDict):
304
+ enabled: NotRequired[pulumi.Input[bool]]
305
+ """
306
+ Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
307
+ """
304
308
  git: NotRequired[pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgsDict']]
305
309
  """
306
310
  Git repo configuration for the cluster
@@ -325,11 +329,13 @@ elif False:
325
329
  @pulumi.input_type
326
330
  class FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs:
327
331
  def __init__(__self__, *,
332
+ enabled: Optional[pulumi.Input[bool]] = None,
328
333
  git: Optional[pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs']] = None,
329
334
  oci: Optional[pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs']] = None,
330
335
  prevent_drift: Optional[pulumi.Input[bool]] = None,
331
336
  source_format: Optional[pulumi.Input[str]] = None):
332
337
  """
338
+ :param pulumi.Input[bool] enabled: Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
333
339
  :param pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs'] git: Git repo configuration for the cluster
334
340
  Structure is documented below.
335
341
  :param pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs'] oci: OCI repo configuration for the cluster
@@ -337,6 +343,8 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs:
337
343
  :param pulumi.Input[bool] prevent_drift: Set to true to enable the Config Sync admission webhook to prevent drifts. If set to `false`, disables the Config Sync admission webhook and does not prevent drifts.
338
344
  :param pulumi.Input[str] source_format: Specifies whether the Config Sync Repo is in hierarchical or unstructured mode
339
345
  """
346
+ if enabled is not None:
347
+ pulumi.set(__self__, "enabled", enabled)
340
348
  if git is not None:
341
349
  pulumi.set(__self__, "git", git)
342
350
  if oci is not None:
@@ -346,6 +354,18 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs:
346
354
  if source_format is not None:
347
355
  pulumi.set(__self__, "source_format", source_format)
348
356
 
357
+ @property
358
+ @pulumi.getter
359
+ def enabled(self) -> Optional[pulumi.Input[bool]]:
360
+ """
361
+ Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
362
+ """
363
+ return pulumi.get(self, "enabled")
364
+
365
+ @enabled.setter
366
+ def enabled(self, value: Optional[pulumi.Input[bool]]):
367
+ pulumi.set(self, "enabled", value)
368
+
349
369
  @property
350
370
  @pulumi.getter
351
371
  def git(self) -> Optional[pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs']]:
@@ -211,11 +211,13 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSync(dict):
211
211
  return super().get(key, default)
212
212
 
213
213
  def __init__(__self__, *,
214
+ enabled: Optional[bool] = None,
214
215
  git: Optional['outputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGit'] = None,
215
216
  oci: Optional['outputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOci'] = None,
216
217
  prevent_drift: Optional[bool] = None,
217
218
  source_format: Optional[str] = None):
218
219
  """
220
+ :param bool enabled: Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
219
221
  :param 'FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs' git: Git repo configuration for the cluster
220
222
  Structure is documented below.
221
223
  :param 'FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs' oci: OCI repo configuration for the cluster
@@ -223,6 +225,8 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSync(dict):
223
225
  :param bool prevent_drift: Set to true to enable the Config Sync admission webhook to prevent drifts. If set to `false`, disables the Config Sync admission webhook and does not prevent drifts.
224
226
  :param str source_format: Specifies whether the Config Sync Repo is in hierarchical or unstructured mode
225
227
  """
228
+ if enabled is not None:
229
+ pulumi.set(__self__, "enabled", enabled)
226
230
  if git is not None:
227
231
  pulumi.set(__self__, "git", git)
228
232
  if oci is not None:
@@ -232,6 +236,14 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSync(dict):
232
236
  if source_format is not None:
233
237
  pulumi.set(__self__, "source_format", source_format)
234
238
 
239
+ @property
240
+ @pulumi.getter
241
+ def enabled(self) -> Optional[bool]:
242
+ """
243
+ Enables the installation of ConfigSync. If set to true, ConfigSync resources will be created and the other ConfigSync fields will be applied if exist. If set to false, all other ConfigSync fields will be ignored, ConfigSync resources will be deleted. If omitted, ConfigSync resources will be managed depends on the presence of the git or oci field.
244
+ """
245
+ return pulumi.get(self, "enabled")
246
+
235
247
  @property
236
248
  @pulumi.getter
237
249
  def git(self) -> Optional['outputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGit']:
@@ -13,7 +13,9 @@ from .crypto_key_iam_policy import *
13
13
  from .crypto_key_version import *
14
14
  from .ekm_connection import *
15
15
  from .get_crypto_key_iam_policy import *
16
+ from .get_crypto_keys import *
16
17
  from .get_key_ring_iam_policy import *
18
+ from .get_key_rings import *
17
19
  from .get_kms_crypto_key import *
18
20
  from .get_kms_crypto_key_version import *
19
21
  from .get_kms_key_ring import *