pulumi-harness 0.5.0a1736833425__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.

Potentially problematic release.


This version of pulumi-harness might be problematic. Click here for more details.

Files changed (311) hide show
  1. pulumi_harness/__init__.py +1257 -0
  2. pulumi_harness/_inputs.py +4025 -0
  3. pulumi_harness/_utilities.py +327 -0
  4. pulumi_harness/add_user_to_group.py +241 -0
  5. pulumi_harness/application.py +393 -0
  6. pulumi_harness/application_git_sync.py +411 -0
  7. pulumi_harness/autostopping/__init__.py +27 -0
  8. pulumi_harness/autostopping/_inputs.py +2688 -0
  9. pulumi_harness/autostopping/aws_alb.py +640 -0
  10. pulumi_harness/autostopping/aws_proxy.py +760 -0
  11. pulumi_harness/autostopping/azure_gateway.py +798 -0
  12. pulumi_harness/autostopping/azure_proxy.py +855 -0
  13. pulumi_harness/autostopping/gcp_proxy.py +779 -0
  14. pulumi_harness/autostopping/get_aws_alb.py +278 -0
  15. pulumi_harness/autostopping/get_aws_proxy.py +335 -0
  16. pulumi_harness/autostopping/get_azure_gateway.py +343 -0
  17. pulumi_harness/autostopping/get_azure_proxy.py +375 -0
  18. pulumi_harness/autostopping/get_gcp_proxy.py +340 -0
  19. pulumi_harness/autostopping/get_rule_ecs.py +225 -0
  20. pulumi_harness/autostopping/get_rule_rds.py +205 -0
  21. pulumi_harness/autostopping/get_rule_vm.py +265 -0
  22. pulumi_harness/autostopping/get_schedule.py +193 -0
  23. pulumi_harness/autostopping/outputs.py +1971 -0
  24. pulumi_harness/autostopping/rule_ecs.py +450 -0
  25. pulumi_harness/autostopping/rule_rds.py +448 -0
  26. pulumi_harness/autostopping/rule_vm.py +663 -0
  27. pulumi_harness/autostopping/schedule.py +465 -0
  28. pulumi_harness/cloudprovider/__init__.py +17 -0
  29. pulumi_harness/cloudprovider/_inputs.py +777 -0
  30. pulumi_harness/cloudprovider/aws.py +586 -0
  31. pulumi_harness/cloudprovider/azure.py +393 -0
  32. pulumi_harness/cloudprovider/datacenter.py +233 -0
  33. pulumi_harness/cloudprovider/gcp.py +340 -0
  34. pulumi_harness/cloudprovider/get_delegate_ids.py +148 -0
  35. pulumi_harness/cloudprovider/kubernetes.py +310 -0
  36. pulumi_harness/cloudprovider/outputs.py +657 -0
  37. pulumi_harness/cloudprovider/spot.py +296 -0
  38. pulumi_harness/cloudprovider/tanzu.py +441 -0
  39. pulumi_harness/cluster/__init__.py +9 -0
  40. pulumi_harness/cluster/get_orchestrator.py +134 -0
  41. pulumi_harness/cluster/orchestrator.py +286 -0
  42. pulumi_harness/config/__init__.py +8 -0
  43. pulumi_harness/config/__init__.pyi +40 -0
  44. pulumi_harness/config/vars.py +54 -0
  45. pulumi_harness/delegate_approval.py +267 -0
  46. pulumi_harness/encrypted_text.py +499 -0
  47. pulumi_harness/environment.py +446 -0
  48. pulumi_harness/get_application.py +180 -0
  49. pulumi_harness/get_current_account.py +108 -0
  50. pulumi_harness/get_delegate.py +280 -0
  51. pulumi_harness/get_encrypted_text.py +136 -0
  52. pulumi_harness/get_environment.py +184 -0
  53. pulumi_harness/get_git_connector.py +255 -0
  54. pulumi_harness/get_secret_manager.py +142 -0
  55. pulumi_harness/get_service.py +198 -0
  56. pulumi_harness/get_ssh_credential.py +122 -0
  57. pulumi_harness/get_sso_provider.py +114 -0
  58. pulumi_harness/get_trigger.py +177 -0
  59. pulumi_harness/get_user.py +184 -0
  60. pulumi_harness/get_user_group.py +100 -0
  61. pulumi_harness/get_yaml_config.py +142 -0
  62. pulumi_harness/git_connector.py +738 -0
  63. pulumi_harness/governance/__init__.py +13 -0
  64. pulumi_harness/governance/get_rule.py +168 -0
  65. pulumi_harness/governance/get_rule_enforcement.py +266 -0
  66. pulumi_harness/governance/get_rule_set.py +150 -0
  67. pulumi_harness/governance/rule.py +337 -0
  68. pulumi_harness/governance/rule_enforcement.py +668 -0
  69. pulumi_harness/governance/rule_set.py +321 -0
  70. pulumi_harness/infrastructure_definition.py +1246 -0
  71. pulumi_harness/outputs.py +3306 -0
  72. pulumi_harness/platform/__init__.py +220 -0
  73. pulumi_harness/platform/_inputs.py +22314 -0
  74. pulumi_harness/platform/app_dynamics_connector.py +733 -0
  75. pulumi_harness/platform/artifactory_connector.py +748 -0
  76. pulumi_harness/platform/aws_cc_connector.py +716 -0
  77. pulumi_harness/platform/aws_connector.py +851 -0
  78. pulumi_harness/platform/aws_kms_connector.py +619 -0
  79. pulumi_harness/platform/aws_secret_manager_connector.py +712 -0
  80. pulumi_harness/platform/azure_cloud_cost_connector.py +675 -0
  81. pulumi_harness/platform/azure_cloud_provider_connector.py +826 -0
  82. pulumi_harness/platform/azure_key_vault_connector.py +843 -0
  83. pulumi_harness/platform/bitbucket_connector.py +713 -0
  84. pulumi_harness/platform/connector_azure_artifacts.py +529 -0
  85. pulumi_harness/platform/connector_custom_secret_manager.py +887 -0
  86. pulumi_harness/platform/connector_customhealthsource.py +807 -0
  87. pulumi_harness/platform/connector_jdbc.py +609 -0
  88. pulumi_harness/platform/connector_pdc.py +527 -0
  89. pulumi_harness/platform/connector_rancher.py +617 -0
  90. pulumi_harness/platform/datadog_connector.py +651 -0
  91. pulumi_harness/platform/db_instance.py +636 -0
  92. pulumi_harness/platform/db_schema.py +547 -0
  93. pulumi_harness/platform/delegatetoken.py +520 -0
  94. pulumi_harness/platform/docker_connector.py +669 -0
  95. pulumi_harness/platform/dynatrace_connector.py +601 -0
  96. pulumi_harness/platform/elasticsearch_connector.py +744 -0
  97. pulumi_harness/platform/environment.py +1173 -0
  98. pulumi_harness/platform/environment_clusters_mapping.py +454 -0
  99. pulumi_harness/platform/environment_group.py +560 -0
  100. pulumi_harness/platform/environment_service_overrides.py +688 -0
  101. pulumi_harness/platform/feature_flag.py +724 -0
  102. pulumi_harness/platform/feature_flag_api_key.py +550 -0
  103. pulumi_harness/platform/feature_flag_target.py +473 -0
  104. pulumi_harness/platform/feature_flag_target_group.py +577 -0
  105. pulumi_harness/platform/file_store_file.py +822 -0
  106. pulumi_harness/platform/file_store_folder.py +628 -0
  107. pulumi_harness/platform/filters.py +511 -0
  108. pulumi_harness/platform/gcp_cloud_cost_connector.py +669 -0
  109. pulumi_harness/platform/gcp_connector.py +663 -0
  110. pulumi_harness/platform/gcp_secret_manager_connector.py +594 -0
  111. pulumi_harness/platform/get_api_key.py +292 -0
  112. pulumi_harness/platform/get_app_dynamics_connector.py +271 -0
  113. pulumi_harness/platform/get_artifactory_connector.py +243 -0
  114. pulumi_harness/platform/get_aws_cc_connector.py +271 -0
  115. pulumi_harness/platform/get_aws_connector.py +313 -0
  116. pulumi_harness/platform/get_aws_kms_connector.py +253 -0
  117. pulumi_harness/platform/get_aws_secret_manager_connector.py +267 -0
  118. pulumi_harness/platform/get_azure_cloud_cost_connector.py +257 -0
  119. pulumi_harness/platform/get_azure_cloud_provider_connector.py +257 -0
  120. pulumi_harness/platform/get_azure_key_vault_connector.py +308 -0
  121. pulumi_harness/platform/get_bitbucket_connector.py +285 -0
  122. pulumi_harness/platform/get_ccm_filters.py +221 -0
  123. pulumi_harness/platform/get_connector_custom_secret_manager.py +330 -0
  124. pulumi_harness/platform/get_connector_customhealthsource.py +281 -0
  125. pulumi_harness/platform/get_connector_jdbc.py +243 -0
  126. pulumi_harness/platform/get_connector_pdc.py +229 -0
  127. pulumi_harness/platform/get_connector_rancher.py +236 -0
  128. pulumi_harness/platform/get_current_account.py +126 -0
  129. pulumi_harness/platform/get_current_user.py +252 -0
  130. pulumi_harness/platform/get_datadog_connector.py +262 -0
  131. pulumi_harness/platform/get_db_instance.py +268 -0
  132. pulumi_harness/platform/get_db_schema.py +233 -0
  133. pulumi_harness/platform/get_delegatetoken.py +214 -0
  134. pulumi_harness/platform/get_docker_connector.py +257 -0
  135. pulumi_harness/platform/get_dynatrace_connector.py +242 -0
  136. pulumi_harness/platform/get_elasticsearch_connector.py +257 -0
  137. pulumi_harness/platform/get_environment.py +263 -0
  138. pulumi_harness/platform/get_environment_clusters_mapping.py +262 -0
  139. pulumi_harness/platform/get_environment_group.py +190 -0
  140. pulumi_harness/platform/get_environment_list.py +172 -0
  141. pulumi_harness/platform/get_environment_service_overrides.py +212 -0
  142. pulumi_harness/platform/get_file_store_file.py +327 -0
  143. pulumi_harness/platform/get_file_store_folder.py +271 -0
  144. pulumi_harness/platform/get_filters.py +217 -0
  145. pulumi_harness/platform/get_gcp_cloud_cost_connector.py +257 -0
  146. pulumi_harness/platform/get_gcp_connector.py +243 -0
  147. pulumi_harness/platform/get_gcp_secret_manager_connector.py +238 -0
  148. pulumi_harness/platform/get_git_connector.py +271 -0
  149. pulumi_harness/platform/get_github_connector.py +296 -0
  150. pulumi_harness/platform/get_gitlab_connector.py +285 -0
  151. pulumi_harness/platform/get_gitops_agent.py +303 -0
  152. pulumi_harness/platform/get_gitops_agent_deploy_yaml.py +257 -0
  153. pulumi_harness/platform/get_gitops_app_project.py +191 -0
  154. pulumi_harness/platform/get_gitops_app_project_mapping.py +189 -0
  155. pulumi_harness/platform/get_gitops_applications.py +351 -0
  156. pulumi_harness/platform/get_gitops_cluster.py +216 -0
  157. pulumi_harness/platform/get_gitops_gnupg.py +219 -0
  158. pulumi_harness/platform/get_gitops_repo_cert.py +155 -0
  159. pulumi_harness/platform/get_gitops_repo_cred.py +223 -0
  160. pulumi_harness/platform/get_gitops_repository.py +230 -0
  161. pulumi_harness/platform/get_gitx_webhook.py +194 -0
  162. pulumi_harness/platform/get_helm_connector.py +243 -0
  163. pulumi_harness/platform/get_iacm_default_pipeline.py +168 -0
  164. pulumi_harness/platform/get_infra_module.py +320 -0
  165. pulumi_harness/platform/get_infrastructure.py +287 -0
  166. pulumi_harness/platform/get_input_set.py +238 -0
  167. pulumi_harness/platform/get_jenkins_connector.py +243 -0
  168. pulumi_harness/platform/get_jira_connector.py +285 -0
  169. pulumi_harness/platform/get_kubernetes_cloud_cost_connector.py +228 -0
  170. pulumi_harness/platform/get_kubernetes_connector.py +285 -0
  171. pulumi_harness/platform/get_manual_freeze.py +305 -0
  172. pulumi_harness/platform/get_monitored_service.py +134 -0
  173. pulumi_harness/platform/get_nexus_connector.py +257 -0
  174. pulumi_harness/platform/get_notification_rule.py +156 -0
  175. pulumi_harness/platform/get_oci_helm_connector.py +243 -0
  176. pulumi_harness/platform/get_organization.py +156 -0
  177. pulumi_harness/platform/get_overrides.py +198 -0
  178. pulumi_harness/platform/get_pagerduty_connector.py +224 -0
  179. pulumi_harness/platform/get_permissions.py +149 -0
  180. pulumi_harness/platform/get_pipeline.py +268 -0
  181. pulumi_harness/platform/get_pipeline_filters.py +197 -0
  182. pulumi_harness/platform/get_pipeline_list.py +269 -0
  183. pulumi_harness/platform/get_policy.py +220 -0
  184. pulumi_harness/platform/get_policy_set.py +298 -0
  185. pulumi_harness/platform/get_project.py +210 -0
  186. pulumi_harness/platform/get_project_list.py +249 -0
  187. pulumi_harness/platform/get_prometheus_connector.py +271 -0
  188. pulumi_harness/platform/get_provider.py +85 -0
  189. pulumi_harness/platform/get_repo.py +362 -0
  190. pulumi_harness/platform/get_repo_rule_branch.py +312 -0
  191. pulumi_harness/platform/get_repo_webhook.py +316 -0
  192. pulumi_harness/platform/get_resource_group.py +267 -0
  193. pulumi_harness/platform/get_role_assignments.py +223 -0
  194. pulumi_harness/platform/get_roles.py +240 -0
  195. pulumi_harness/platform/get_secret_file.py +224 -0
  196. pulumi_harness/platform/get_secret_sshkey.py +239 -0
  197. pulumi_harness/platform/get_secret_text.py +264 -0
  198. pulumi_harness/platform/get_service.py +235 -0
  199. pulumi_harness/platform/get_service_account.py +224 -0
  200. pulumi_harness/platform/get_service_list.py +172 -0
  201. pulumi_harness/platform/get_service_now_connector.py +285 -0
  202. pulumi_harness/platform/get_service_overrides_v2.py +220 -0
  203. pulumi_harness/platform/get_slo.py +134 -0
  204. pulumi_harness/platform/get_splunk_connector.py +270 -0
  205. pulumi_harness/platform/get_spot_connector.py +215 -0
  206. pulumi_harness/platform/get_sumologic_connector.py +256 -0
  207. pulumi_harness/platform/get_tas_connector.py +243 -0
  208. pulumi_harness/platform/get_template.py +386 -0
  209. pulumi_harness/platform/get_template_filters.py +221 -0
  210. pulumi_harness/platform/get_terraform_cloud_connector.py +233 -0
  211. pulumi_harness/platform/get_token.py +430 -0
  212. pulumi_harness/platform/get_triggers.py +260 -0
  213. pulumi_harness/platform/get_user.py +222 -0
  214. pulumi_harness/platform/get_usergroup.py +340 -0
  215. pulumi_harness/platform/get_variables.py +209 -0
  216. pulumi_harness/platform/get_vault_connector.py +574 -0
  217. pulumi_harness/platform/get_workspace.py +411 -0
  218. pulumi_harness/platform/get_workspace_output_value.py +168 -0
  219. pulumi_harness/platform/git_connector.py +713 -0
  220. pulumi_harness/platform/git_ops_agent.py +727 -0
  221. pulumi_harness/platform/git_ops_applications.py +1090 -0
  222. pulumi_harness/platform/git_ops_cluster.py +438 -0
  223. pulumi_harness/platform/git_ops_gnupg.py +453 -0
  224. pulumi_harness/platform/git_ops_repo_cert.py +437 -0
  225. pulumi_harness/platform/git_ops_repo_cred.py +533 -0
  226. pulumi_harness/platform/git_ops_repository.py +831 -0
  227. pulumi_harness/platform/github_connector.py +807 -0
  228. pulumi_harness/platform/gitlab_connector.py +713 -0
  229. pulumi_harness/platform/gitops_app_project.py +485 -0
  230. pulumi_harness/platform/gitops_app_project_mapping.py +423 -0
  231. pulumi_harness/platform/gitx_webhook.py +616 -0
  232. pulumi_harness/platform/helm_connector.py +617 -0
  233. pulumi_harness/platform/iacm_default_pipeline.py +343 -0
  234. pulumi_harness/platform/infra_module.py +755 -0
  235. pulumi_harness/platform/infrastructure.py +937 -0
  236. pulumi_harness/platform/input_set.py +689 -0
  237. pulumi_harness/platform/jenkins_connector.py +566 -0
  238. pulumi_harness/platform/jira_connector.py +714 -0
  239. pulumi_harness/platform/kubernetes_cloud_cost_connector.py +558 -0
  240. pulumi_harness/platform/kubernetes_connector.py +895 -0
  241. pulumi_harness/platform/manual_freeze.py +835 -0
  242. pulumi_harness/platform/monitored_service.py +1984 -0
  243. pulumi_harness/platform/newrelic_connector.py +651 -0
  244. pulumi_harness/platform/nexus_connector.py +622 -0
  245. pulumi_harness/platform/notification_rule.py +526 -0
  246. pulumi_harness/platform/oci_helm_connector.py +617 -0
  247. pulumi_harness/platform/organization.py +336 -0
  248. pulumi_harness/platform/outputs.py +23361 -0
  249. pulumi_harness/platform/overrides.py +669 -0
  250. pulumi_harness/platform/pagerduty_connector.py +547 -0
  251. pulumi_harness/platform/pipeline.py +991 -0
  252. pulumi_harness/platform/pipeline_filters.py +711 -0
  253. pulumi_harness/platform/policy.py +944 -0
  254. pulumi_harness/platform/policy_set.py +594 -0
  255. pulumi_harness/platform/project.py +453 -0
  256. pulumi_harness/platform/prometheus_connector.py +710 -0
  257. pulumi_harness/platform/provider.py +349 -0
  258. pulumi_harness/platform/repo.py +737 -0
  259. pulumi_harness/platform/repo_rule_branch.py +645 -0
  260. pulumi_harness/platform/repo_webhook.py +664 -0
  261. pulumi_harness/platform/resource_group.py +718 -0
  262. pulumi_harness/platform/role_assignments.py +524 -0
  263. pulumi_harness/platform/roles.py +546 -0
  264. pulumi_harness/platform/secret_file.py +548 -0
  265. pulumi_harness/platform/secret_sshkey.py +569 -0
  266. pulumi_harness/platform/secret_text.py +620 -0
  267. pulumi_harness/platform/service.py +1195 -0
  268. pulumi_harness/platform/service_account.py +548 -0
  269. pulumi_harness/platform/service_now_connector.py +714 -0
  270. pulumi_harness/platform/service_overrides_v2.py +915 -0
  271. pulumi_harness/platform/slo.py +462 -0
  272. pulumi_harness/platform/splunk_connector.py +701 -0
  273. pulumi_harness/platform/spot_connector.py +452 -0
  274. pulumi_harness/platform/sumologic_connector.py +651 -0
  275. pulumi_harness/platform/tas_connector.py +570 -0
  276. pulumi_harness/platform/template.py +861 -0
  277. pulumi_harness/platform/template_filters.py +515 -0
  278. pulumi_harness/platform/terraform_cloud_connector.py +545 -0
  279. pulumi_harness/platform/token.py +977 -0
  280. pulumi_harness/platform/triggers.py +680 -0
  281. pulumi_harness/platform/user.py +522 -0
  282. pulumi_harness/platform/usergroup.py +1104 -0
  283. pulumi_harness/platform/variables.py +509 -0
  284. pulumi_harness/platform/vault_connector.py +1919 -0
  285. pulumi_harness/platform/workspace.py +1145 -0
  286. pulumi_harness/platform_api_key.py +617 -0
  287. pulumi_harness/platform_ccm_filters.py +515 -0
  288. pulumi_harness/provider.py +227 -0
  289. pulumi_harness/pulumi-plugin.json +6 -0
  290. pulumi_harness/py.typed +0 -0
  291. pulumi_harness/service/__init__.py +18 -0
  292. pulumi_harness/service/_inputs.py +660 -0
  293. pulumi_harness/service/ami.py +336 -0
  294. pulumi_harness/service/codedeploy.py +336 -0
  295. pulumi_harness/service/ecs.py +336 -0
  296. pulumi_harness/service/helm.py +336 -0
  297. pulumi_harness/service/kubernetes.py +409 -0
  298. pulumi_harness/service/lambda_.py +336 -0
  299. pulumi_harness/service/outputs.py +388 -0
  300. pulumi_harness/service/ssh.py +386 -0
  301. pulumi_harness/service/tanzu.py +336 -0
  302. pulumi_harness/service/winrm.py +386 -0
  303. pulumi_harness/ssh_credential.py +361 -0
  304. pulumi_harness/user.py +423 -0
  305. pulumi_harness/user_group.py +713 -0
  306. pulumi_harness/user_group_permissions.py +247 -0
  307. pulumi_harness/yaml_config.py +336 -0
  308. pulumi_harness-0.5.0a1736833425.dist-info/METADATA +69 -0
  309. pulumi_harness-0.5.0a1736833425.dist-info/RECORD +311 -0
  310. pulumi_harness-0.5.0a1736833425.dist-info/WHEEL +5 -0
  311. pulumi_harness-0.5.0a1736833425.dist-info/top_level.txt +1 -0
@@ -0,0 +1,669 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
10
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
15
+ from .. import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['GcpCloudCostConnectorArgs', 'GcpCloudCostConnector']
20
+
21
+ @pulumi.input_type
22
+ class GcpCloudCostConnectorArgs:
23
+ def __init__(__self__, *,
24
+ features_enableds: pulumi.Input[Sequence[pulumi.Input[str]]],
25
+ gcp_project_id: pulumi.Input[str],
26
+ identifier: pulumi.Input[str],
27
+ service_account_email: pulumi.Input[str],
28
+ billing_export_spec: Optional[pulumi.Input['GcpCloudCostConnectorBillingExportSpecArgs']] = None,
29
+ description: Optional[pulumi.Input[str]] = None,
30
+ name: Optional[pulumi.Input[str]] = None,
31
+ org_id: Optional[pulumi.Input[str]] = None,
32
+ project_id: Optional[pulumi.Input[str]] = None,
33
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
34
+ """
35
+ The set of arguments for constructing a GcpCloudCostConnector resource.
36
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] features_enableds: Indicates which features to enable among Billing, Optimization, Visibility and Governance.
37
+ :param pulumi.Input[str] gcp_project_id: GCP Project Id.
38
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
39
+ :param pulumi.Input[str] service_account_email: Email corresponding to the Service Account.
40
+ :param pulumi.Input['GcpCloudCostConnectorBillingExportSpecArgs'] billing_export_spec: Returns billing details.
41
+ :param pulumi.Input[str] description: Description of the resource.
42
+ :param pulumi.Input[str] name: Name of the resource.
43
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
44
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
45
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
46
+ """
47
+ pulumi.set(__self__, "features_enableds", features_enableds)
48
+ pulumi.set(__self__, "gcp_project_id", gcp_project_id)
49
+ pulumi.set(__self__, "identifier", identifier)
50
+ pulumi.set(__self__, "service_account_email", service_account_email)
51
+ if billing_export_spec is not None:
52
+ pulumi.set(__self__, "billing_export_spec", billing_export_spec)
53
+ if description is not None:
54
+ pulumi.set(__self__, "description", description)
55
+ if name is not None:
56
+ pulumi.set(__self__, "name", name)
57
+ if org_id is not None:
58
+ pulumi.set(__self__, "org_id", org_id)
59
+ if project_id is not None:
60
+ pulumi.set(__self__, "project_id", project_id)
61
+ if tags is not None:
62
+ pulumi.set(__self__, "tags", tags)
63
+
64
+ @property
65
+ @pulumi.getter(name="featuresEnableds")
66
+ def features_enableds(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
67
+ """
68
+ Indicates which features to enable among Billing, Optimization, Visibility and Governance.
69
+ """
70
+ return pulumi.get(self, "features_enableds")
71
+
72
+ @features_enableds.setter
73
+ def features_enableds(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
74
+ pulumi.set(self, "features_enableds", value)
75
+
76
+ @property
77
+ @pulumi.getter(name="gcpProjectId")
78
+ def gcp_project_id(self) -> pulumi.Input[str]:
79
+ """
80
+ GCP Project Id.
81
+ """
82
+ return pulumi.get(self, "gcp_project_id")
83
+
84
+ @gcp_project_id.setter
85
+ def gcp_project_id(self, value: pulumi.Input[str]):
86
+ pulumi.set(self, "gcp_project_id", value)
87
+
88
+ @property
89
+ @pulumi.getter
90
+ def identifier(self) -> pulumi.Input[str]:
91
+ """
92
+ Unique identifier of the resource.
93
+ """
94
+ return pulumi.get(self, "identifier")
95
+
96
+ @identifier.setter
97
+ def identifier(self, value: pulumi.Input[str]):
98
+ pulumi.set(self, "identifier", value)
99
+
100
+ @property
101
+ @pulumi.getter(name="serviceAccountEmail")
102
+ def service_account_email(self) -> pulumi.Input[str]:
103
+ """
104
+ Email corresponding to the Service Account.
105
+ """
106
+ return pulumi.get(self, "service_account_email")
107
+
108
+ @service_account_email.setter
109
+ def service_account_email(self, value: pulumi.Input[str]):
110
+ pulumi.set(self, "service_account_email", value)
111
+
112
+ @property
113
+ @pulumi.getter(name="billingExportSpec")
114
+ def billing_export_spec(self) -> Optional[pulumi.Input['GcpCloudCostConnectorBillingExportSpecArgs']]:
115
+ """
116
+ Returns billing details.
117
+ """
118
+ return pulumi.get(self, "billing_export_spec")
119
+
120
+ @billing_export_spec.setter
121
+ def billing_export_spec(self, value: Optional[pulumi.Input['GcpCloudCostConnectorBillingExportSpecArgs']]):
122
+ pulumi.set(self, "billing_export_spec", value)
123
+
124
+ @property
125
+ @pulumi.getter
126
+ def description(self) -> Optional[pulumi.Input[str]]:
127
+ """
128
+ Description of the resource.
129
+ """
130
+ return pulumi.get(self, "description")
131
+
132
+ @description.setter
133
+ def description(self, value: Optional[pulumi.Input[str]]):
134
+ pulumi.set(self, "description", value)
135
+
136
+ @property
137
+ @pulumi.getter
138
+ def name(self) -> Optional[pulumi.Input[str]]:
139
+ """
140
+ Name of the resource.
141
+ """
142
+ return pulumi.get(self, "name")
143
+
144
+ @name.setter
145
+ def name(self, value: Optional[pulumi.Input[str]]):
146
+ pulumi.set(self, "name", value)
147
+
148
+ @property
149
+ @pulumi.getter(name="orgId")
150
+ def org_id(self) -> Optional[pulumi.Input[str]]:
151
+ """
152
+ Unique identifier of the organization.
153
+ """
154
+ return pulumi.get(self, "org_id")
155
+
156
+ @org_id.setter
157
+ def org_id(self, value: Optional[pulumi.Input[str]]):
158
+ pulumi.set(self, "org_id", value)
159
+
160
+ @property
161
+ @pulumi.getter(name="projectId")
162
+ def project_id(self) -> Optional[pulumi.Input[str]]:
163
+ """
164
+ Unique identifier of the project.
165
+ """
166
+ return pulumi.get(self, "project_id")
167
+
168
+ @project_id.setter
169
+ def project_id(self, value: Optional[pulumi.Input[str]]):
170
+ pulumi.set(self, "project_id", value)
171
+
172
+ @property
173
+ @pulumi.getter
174
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
175
+ """
176
+ Tags to associate with the resource.
177
+ """
178
+ return pulumi.get(self, "tags")
179
+
180
+ @tags.setter
181
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
182
+ pulumi.set(self, "tags", value)
183
+
184
+
185
+ @pulumi.input_type
186
+ class _GcpCloudCostConnectorState:
187
+ def __init__(__self__, *,
188
+ billing_export_spec: Optional[pulumi.Input['GcpCloudCostConnectorBillingExportSpecArgs']] = None,
189
+ description: Optional[pulumi.Input[str]] = None,
190
+ features_enableds: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
191
+ gcp_project_id: Optional[pulumi.Input[str]] = None,
192
+ identifier: Optional[pulumi.Input[str]] = None,
193
+ name: Optional[pulumi.Input[str]] = None,
194
+ org_id: Optional[pulumi.Input[str]] = None,
195
+ project_id: Optional[pulumi.Input[str]] = None,
196
+ service_account_email: Optional[pulumi.Input[str]] = None,
197
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
198
+ """
199
+ Input properties used for looking up and filtering GcpCloudCostConnector resources.
200
+ :param pulumi.Input['GcpCloudCostConnectorBillingExportSpecArgs'] billing_export_spec: Returns billing details.
201
+ :param pulumi.Input[str] description: Description of the resource.
202
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] features_enableds: Indicates which features to enable among Billing, Optimization, Visibility and Governance.
203
+ :param pulumi.Input[str] gcp_project_id: GCP Project Id.
204
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
205
+ :param pulumi.Input[str] name: Name of the resource.
206
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
207
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
208
+ :param pulumi.Input[str] service_account_email: Email corresponding to the Service Account.
209
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
210
+ """
211
+ if billing_export_spec is not None:
212
+ pulumi.set(__self__, "billing_export_spec", billing_export_spec)
213
+ if description is not None:
214
+ pulumi.set(__self__, "description", description)
215
+ if features_enableds is not None:
216
+ pulumi.set(__self__, "features_enableds", features_enableds)
217
+ if gcp_project_id is not None:
218
+ pulumi.set(__self__, "gcp_project_id", gcp_project_id)
219
+ if identifier is not None:
220
+ pulumi.set(__self__, "identifier", identifier)
221
+ if name is not None:
222
+ pulumi.set(__self__, "name", name)
223
+ if org_id is not None:
224
+ pulumi.set(__self__, "org_id", org_id)
225
+ if project_id is not None:
226
+ pulumi.set(__self__, "project_id", project_id)
227
+ if service_account_email is not None:
228
+ pulumi.set(__self__, "service_account_email", service_account_email)
229
+ if tags is not None:
230
+ pulumi.set(__self__, "tags", tags)
231
+
232
+ @property
233
+ @pulumi.getter(name="billingExportSpec")
234
+ def billing_export_spec(self) -> Optional[pulumi.Input['GcpCloudCostConnectorBillingExportSpecArgs']]:
235
+ """
236
+ Returns billing details.
237
+ """
238
+ return pulumi.get(self, "billing_export_spec")
239
+
240
+ @billing_export_spec.setter
241
+ def billing_export_spec(self, value: Optional[pulumi.Input['GcpCloudCostConnectorBillingExportSpecArgs']]):
242
+ pulumi.set(self, "billing_export_spec", value)
243
+
244
+ @property
245
+ @pulumi.getter
246
+ def description(self) -> Optional[pulumi.Input[str]]:
247
+ """
248
+ Description of the resource.
249
+ """
250
+ return pulumi.get(self, "description")
251
+
252
+ @description.setter
253
+ def description(self, value: Optional[pulumi.Input[str]]):
254
+ pulumi.set(self, "description", value)
255
+
256
+ @property
257
+ @pulumi.getter(name="featuresEnableds")
258
+ def features_enableds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
259
+ """
260
+ Indicates which features to enable among Billing, Optimization, Visibility and Governance.
261
+ """
262
+ return pulumi.get(self, "features_enableds")
263
+
264
+ @features_enableds.setter
265
+ def features_enableds(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
266
+ pulumi.set(self, "features_enableds", value)
267
+
268
+ @property
269
+ @pulumi.getter(name="gcpProjectId")
270
+ def gcp_project_id(self) -> Optional[pulumi.Input[str]]:
271
+ """
272
+ GCP Project Id.
273
+ """
274
+ return pulumi.get(self, "gcp_project_id")
275
+
276
+ @gcp_project_id.setter
277
+ def gcp_project_id(self, value: Optional[pulumi.Input[str]]):
278
+ pulumi.set(self, "gcp_project_id", value)
279
+
280
+ @property
281
+ @pulumi.getter
282
+ def identifier(self) -> Optional[pulumi.Input[str]]:
283
+ """
284
+ Unique identifier of the resource.
285
+ """
286
+ return pulumi.get(self, "identifier")
287
+
288
+ @identifier.setter
289
+ def identifier(self, value: Optional[pulumi.Input[str]]):
290
+ pulumi.set(self, "identifier", value)
291
+
292
+ @property
293
+ @pulumi.getter
294
+ def name(self) -> Optional[pulumi.Input[str]]:
295
+ """
296
+ Name of the resource.
297
+ """
298
+ return pulumi.get(self, "name")
299
+
300
+ @name.setter
301
+ def name(self, value: Optional[pulumi.Input[str]]):
302
+ pulumi.set(self, "name", value)
303
+
304
+ @property
305
+ @pulumi.getter(name="orgId")
306
+ def org_id(self) -> Optional[pulumi.Input[str]]:
307
+ """
308
+ Unique identifier of the organization.
309
+ """
310
+ return pulumi.get(self, "org_id")
311
+
312
+ @org_id.setter
313
+ def org_id(self, value: Optional[pulumi.Input[str]]):
314
+ pulumi.set(self, "org_id", value)
315
+
316
+ @property
317
+ @pulumi.getter(name="projectId")
318
+ def project_id(self) -> Optional[pulumi.Input[str]]:
319
+ """
320
+ Unique identifier of the project.
321
+ """
322
+ return pulumi.get(self, "project_id")
323
+
324
+ @project_id.setter
325
+ def project_id(self, value: Optional[pulumi.Input[str]]):
326
+ pulumi.set(self, "project_id", value)
327
+
328
+ @property
329
+ @pulumi.getter(name="serviceAccountEmail")
330
+ def service_account_email(self) -> Optional[pulumi.Input[str]]:
331
+ """
332
+ Email corresponding to the Service Account.
333
+ """
334
+ return pulumi.get(self, "service_account_email")
335
+
336
+ @service_account_email.setter
337
+ def service_account_email(self, value: Optional[pulumi.Input[str]]):
338
+ pulumi.set(self, "service_account_email", value)
339
+
340
+ @property
341
+ @pulumi.getter
342
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
343
+ """
344
+ Tags to associate with the resource.
345
+ """
346
+ return pulumi.get(self, "tags")
347
+
348
+ @tags.setter
349
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
350
+ pulumi.set(self, "tags", value)
351
+
352
+
353
+ class GcpCloudCostConnector(pulumi.CustomResource):
354
+ @overload
355
+ def __init__(__self__,
356
+ resource_name: str,
357
+ opts: Optional[pulumi.ResourceOptions] = None,
358
+ billing_export_spec: Optional[pulumi.Input[Union['GcpCloudCostConnectorBillingExportSpecArgs', 'GcpCloudCostConnectorBillingExportSpecArgsDict']]] = None,
359
+ description: Optional[pulumi.Input[str]] = None,
360
+ features_enableds: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
361
+ gcp_project_id: Optional[pulumi.Input[str]] = None,
362
+ identifier: Optional[pulumi.Input[str]] = None,
363
+ name: Optional[pulumi.Input[str]] = None,
364
+ org_id: Optional[pulumi.Input[str]] = None,
365
+ project_id: Optional[pulumi.Input[str]] = None,
366
+ service_account_email: Optional[pulumi.Input[str]] = None,
367
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
368
+ __props__=None):
369
+ """
370
+ Resource for creating a GCP Cloud Cost connector in Harness.
371
+
372
+ ## Example Usage
373
+
374
+ ```python
375
+ import pulumi
376
+ import pulumi_harness as harness
377
+
378
+ test = harness.platform.GcpCloudCostConnector("test",
379
+ identifier="identifier",
380
+ name="name",
381
+ description="test",
382
+ tags=["foo:bar"],
383
+ features_enableds=[
384
+ "BILLING",
385
+ "VISIBILITY",
386
+ "OPTIMIZATION",
387
+ "GOVERNANCE",
388
+ ],
389
+ gcp_project_id="gcp_project_id",
390
+ service_account_email="service_account_email",
391
+ billing_export_spec={
392
+ "data_set_id": "data_set_id",
393
+ "table_id": "table_id",
394
+ })
395
+ ```
396
+
397
+ ## Import
398
+
399
+ Import account level gcp cloud cost connector
400
+
401
+ ```sh
402
+ $ pulumi import harness:platform/gcpCloudCostConnector:GcpCloudCostConnector example <connector_id>
403
+ ```
404
+
405
+ Import org level gcp cloud cost connector
406
+
407
+ ```sh
408
+ $ pulumi import harness:platform/gcpCloudCostConnector:GcpCloudCostConnector example <ord_id>/<connector_id>
409
+ ```
410
+
411
+ Import project level gcp cloud cost connector
412
+
413
+ ```sh
414
+ $ pulumi import harness:platform/gcpCloudCostConnector:GcpCloudCostConnector example <org_id>/<project_id>/<connector_id>
415
+ ```
416
+
417
+ :param str resource_name: The name of the resource.
418
+ :param pulumi.ResourceOptions opts: Options for the resource.
419
+ :param pulumi.Input[Union['GcpCloudCostConnectorBillingExportSpecArgs', 'GcpCloudCostConnectorBillingExportSpecArgsDict']] billing_export_spec: Returns billing details.
420
+ :param pulumi.Input[str] description: Description of the resource.
421
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] features_enableds: Indicates which features to enable among Billing, Optimization, Visibility and Governance.
422
+ :param pulumi.Input[str] gcp_project_id: GCP Project Id.
423
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
424
+ :param pulumi.Input[str] name: Name of the resource.
425
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
426
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
427
+ :param pulumi.Input[str] service_account_email: Email corresponding to the Service Account.
428
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
429
+ """
430
+ ...
431
+ @overload
432
+ def __init__(__self__,
433
+ resource_name: str,
434
+ args: GcpCloudCostConnectorArgs,
435
+ opts: Optional[pulumi.ResourceOptions] = None):
436
+ """
437
+ Resource for creating a GCP Cloud Cost connector in Harness.
438
+
439
+ ## Example Usage
440
+
441
+ ```python
442
+ import pulumi
443
+ import pulumi_harness as harness
444
+
445
+ test = harness.platform.GcpCloudCostConnector("test",
446
+ identifier="identifier",
447
+ name="name",
448
+ description="test",
449
+ tags=["foo:bar"],
450
+ features_enableds=[
451
+ "BILLING",
452
+ "VISIBILITY",
453
+ "OPTIMIZATION",
454
+ "GOVERNANCE",
455
+ ],
456
+ gcp_project_id="gcp_project_id",
457
+ service_account_email="service_account_email",
458
+ billing_export_spec={
459
+ "data_set_id": "data_set_id",
460
+ "table_id": "table_id",
461
+ })
462
+ ```
463
+
464
+ ## Import
465
+
466
+ Import account level gcp cloud cost connector
467
+
468
+ ```sh
469
+ $ pulumi import harness:platform/gcpCloudCostConnector:GcpCloudCostConnector example <connector_id>
470
+ ```
471
+
472
+ Import org level gcp cloud cost connector
473
+
474
+ ```sh
475
+ $ pulumi import harness:platform/gcpCloudCostConnector:GcpCloudCostConnector example <ord_id>/<connector_id>
476
+ ```
477
+
478
+ Import project level gcp cloud cost connector
479
+
480
+ ```sh
481
+ $ pulumi import harness:platform/gcpCloudCostConnector:GcpCloudCostConnector example <org_id>/<project_id>/<connector_id>
482
+ ```
483
+
484
+ :param str resource_name: The name of the resource.
485
+ :param GcpCloudCostConnectorArgs args: The arguments to use to populate this resource's properties.
486
+ :param pulumi.ResourceOptions opts: Options for the resource.
487
+ """
488
+ ...
489
+ def __init__(__self__, resource_name: str, *args, **kwargs):
490
+ resource_args, opts = _utilities.get_resource_args_opts(GcpCloudCostConnectorArgs, pulumi.ResourceOptions, *args, **kwargs)
491
+ if resource_args is not None:
492
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
493
+ else:
494
+ __self__._internal_init(resource_name, *args, **kwargs)
495
+
496
+ def _internal_init(__self__,
497
+ resource_name: str,
498
+ opts: Optional[pulumi.ResourceOptions] = None,
499
+ billing_export_spec: Optional[pulumi.Input[Union['GcpCloudCostConnectorBillingExportSpecArgs', 'GcpCloudCostConnectorBillingExportSpecArgsDict']]] = None,
500
+ description: Optional[pulumi.Input[str]] = None,
501
+ features_enableds: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
502
+ gcp_project_id: Optional[pulumi.Input[str]] = None,
503
+ identifier: Optional[pulumi.Input[str]] = None,
504
+ name: Optional[pulumi.Input[str]] = None,
505
+ org_id: Optional[pulumi.Input[str]] = None,
506
+ project_id: Optional[pulumi.Input[str]] = None,
507
+ service_account_email: Optional[pulumi.Input[str]] = None,
508
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
509
+ __props__=None):
510
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
511
+ if not isinstance(opts, pulumi.ResourceOptions):
512
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
513
+ if opts.id is None:
514
+ if __props__ is not None:
515
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
516
+ __props__ = GcpCloudCostConnectorArgs.__new__(GcpCloudCostConnectorArgs)
517
+
518
+ __props__.__dict__["billing_export_spec"] = billing_export_spec
519
+ __props__.__dict__["description"] = description
520
+ if features_enableds is None and not opts.urn:
521
+ raise TypeError("Missing required property 'features_enableds'")
522
+ __props__.__dict__["features_enableds"] = features_enableds
523
+ if gcp_project_id is None and not opts.urn:
524
+ raise TypeError("Missing required property 'gcp_project_id'")
525
+ __props__.__dict__["gcp_project_id"] = gcp_project_id
526
+ if identifier is None and not opts.urn:
527
+ raise TypeError("Missing required property 'identifier'")
528
+ __props__.__dict__["identifier"] = identifier
529
+ __props__.__dict__["name"] = name
530
+ __props__.__dict__["org_id"] = org_id
531
+ __props__.__dict__["project_id"] = project_id
532
+ if service_account_email is None and not opts.urn:
533
+ raise TypeError("Missing required property 'service_account_email'")
534
+ __props__.__dict__["service_account_email"] = service_account_email
535
+ __props__.__dict__["tags"] = tags
536
+ super(GcpCloudCostConnector, __self__).__init__(
537
+ 'harness:platform/gcpCloudCostConnector:GcpCloudCostConnector',
538
+ resource_name,
539
+ __props__,
540
+ opts)
541
+
542
+ @staticmethod
543
+ def get(resource_name: str,
544
+ id: pulumi.Input[str],
545
+ opts: Optional[pulumi.ResourceOptions] = None,
546
+ billing_export_spec: Optional[pulumi.Input[Union['GcpCloudCostConnectorBillingExportSpecArgs', 'GcpCloudCostConnectorBillingExportSpecArgsDict']]] = None,
547
+ description: Optional[pulumi.Input[str]] = None,
548
+ features_enableds: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
549
+ gcp_project_id: Optional[pulumi.Input[str]] = None,
550
+ identifier: Optional[pulumi.Input[str]] = None,
551
+ name: Optional[pulumi.Input[str]] = None,
552
+ org_id: Optional[pulumi.Input[str]] = None,
553
+ project_id: Optional[pulumi.Input[str]] = None,
554
+ service_account_email: Optional[pulumi.Input[str]] = None,
555
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'GcpCloudCostConnector':
556
+ """
557
+ Get an existing GcpCloudCostConnector resource's state with the given name, id, and optional extra
558
+ properties used to qualify the lookup.
559
+
560
+ :param str resource_name: The unique name of the resulting resource.
561
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
562
+ :param pulumi.ResourceOptions opts: Options for the resource.
563
+ :param pulumi.Input[Union['GcpCloudCostConnectorBillingExportSpecArgs', 'GcpCloudCostConnectorBillingExportSpecArgsDict']] billing_export_spec: Returns billing details.
564
+ :param pulumi.Input[str] description: Description of the resource.
565
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] features_enableds: Indicates which features to enable among Billing, Optimization, Visibility and Governance.
566
+ :param pulumi.Input[str] gcp_project_id: GCP Project Id.
567
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
568
+ :param pulumi.Input[str] name: Name of the resource.
569
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
570
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
571
+ :param pulumi.Input[str] service_account_email: Email corresponding to the Service Account.
572
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
573
+ """
574
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
575
+
576
+ __props__ = _GcpCloudCostConnectorState.__new__(_GcpCloudCostConnectorState)
577
+
578
+ __props__.__dict__["billing_export_spec"] = billing_export_spec
579
+ __props__.__dict__["description"] = description
580
+ __props__.__dict__["features_enableds"] = features_enableds
581
+ __props__.__dict__["gcp_project_id"] = gcp_project_id
582
+ __props__.__dict__["identifier"] = identifier
583
+ __props__.__dict__["name"] = name
584
+ __props__.__dict__["org_id"] = org_id
585
+ __props__.__dict__["project_id"] = project_id
586
+ __props__.__dict__["service_account_email"] = service_account_email
587
+ __props__.__dict__["tags"] = tags
588
+ return GcpCloudCostConnector(resource_name, opts=opts, __props__=__props__)
589
+
590
+ @property
591
+ @pulumi.getter(name="billingExportSpec")
592
+ def billing_export_spec(self) -> pulumi.Output[Optional['outputs.GcpCloudCostConnectorBillingExportSpec']]:
593
+ """
594
+ Returns billing details.
595
+ """
596
+ return pulumi.get(self, "billing_export_spec")
597
+
598
+ @property
599
+ @pulumi.getter
600
+ def description(self) -> pulumi.Output[Optional[str]]:
601
+ """
602
+ Description of the resource.
603
+ """
604
+ return pulumi.get(self, "description")
605
+
606
+ @property
607
+ @pulumi.getter(name="featuresEnableds")
608
+ def features_enableds(self) -> pulumi.Output[Sequence[str]]:
609
+ """
610
+ Indicates which features to enable among Billing, Optimization, Visibility and Governance.
611
+ """
612
+ return pulumi.get(self, "features_enableds")
613
+
614
+ @property
615
+ @pulumi.getter(name="gcpProjectId")
616
+ def gcp_project_id(self) -> pulumi.Output[str]:
617
+ """
618
+ GCP Project Id.
619
+ """
620
+ return pulumi.get(self, "gcp_project_id")
621
+
622
+ @property
623
+ @pulumi.getter
624
+ def identifier(self) -> pulumi.Output[str]:
625
+ """
626
+ Unique identifier of the resource.
627
+ """
628
+ return pulumi.get(self, "identifier")
629
+
630
+ @property
631
+ @pulumi.getter
632
+ def name(self) -> pulumi.Output[str]:
633
+ """
634
+ Name of the resource.
635
+ """
636
+ return pulumi.get(self, "name")
637
+
638
+ @property
639
+ @pulumi.getter(name="orgId")
640
+ def org_id(self) -> pulumi.Output[Optional[str]]:
641
+ """
642
+ Unique identifier of the organization.
643
+ """
644
+ return pulumi.get(self, "org_id")
645
+
646
+ @property
647
+ @pulumi.getter(name="projectId")
648
+ def project_id(self) -> pulumi.Output[Optional[str]]:
649
+ """
650
+ Unique identifier of the project.
651
+ """
652
+ return pulumi.get(self, "project_id")
653
+
654
+ @property
655
+ @pulumi.getter(name="serviceAccountEmail")
656
+ def service_account_email(self) -> pulumi.Output[str]:
657
+ """
658
+ Email corresponding to the Service Account.
659
+ """
660
+ return pulumi.get(self, "service_account_email")
661
+
662
+ @property
663
+ @pulumi.getter
664
+ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
665
+ """
666
+ Tags to associate with the resource.
667
+ """
668
+ return pulumi.get(self, "tags")
669
+