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,548 @@
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
+
17
+ __all__ = ['ServiceAccountArgs', 'ServiceAccount']
18
+
19
+ @pulumi.input_type
20
+ class ServiceAccountArgs:
21
+ def __init__(__self__, *,
22
+ account_id: pulumi.Input[str],
23
+ email: pulumi.Input[str],
24
+ identifier: pulumi.Input[str],
25
+ description: Optional[pulumi.Input[str]] = None,
26
+ name: Optional[pulumi.Input[str]] = None,
27
+ org_id: Optional[pulumi.Input[str]] = None,
28
+ project_id: Optional[pulumi.Input[str]] = None,
29
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
30
+ """
31
+ The set of arguments for constructing a ServiceAccount resource.
32
+ :param pulumi.Input[str] account_id: Account Identifier for the Entity.
33
+ :param pulumi.Input[str] email: Email of the Service Account.
34
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
35
+ :param pulumi.Input[str] description: Description of the resource.
36
+ :param pulumi.Input[str] name: Name of the resource.
37
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
38
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
39
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
40
+ """
41
+ pulumi.set(__self__, "account_id", account_id)
42
+ pulumi.set(__self__, "email", email)
43
+ pulumi.set(__self__, "identifier", identifier)
44
+ if description is not None:
45
+ pulumi.set(__self__, "description", description)
46
+ if name is not None:
47
+ pulumi.set(__self__, "name", name)
48
+ if org_id is not None:
49
+ pulumi.set(__self__, "org_id", org_id)
50
+ if project_id is not None:
51
+ pulumi.set(__self__, "project_id", project_id)
52
+ if tags is not None:
53
+ pulumi.set(__self__, "tags", tags)
54
+
55
+ @property
56
+ @pulumi.getter(name="accountId")
57
+ def account_id(self) -> pulumi.Input[str]:
58
+ """
59
+ Account Identifier for the Entity.
60
+ """
61
+ return pulumi.get(self, "account_id")
62
+
63
+ @account_id.setter
64
+ def account_id(self, value: pulumi.Input[str]):
65
+ pulumi.set(self, "account_id", value)
66
+
67
+ @property
68
+ @pulumi.getter
69
+ def email(self) -> pulumi.Input[str]:
70
+ """
71
+ Email of the Service Account.
72
+ """
73
+ return pulumi.get(self, "email")
74
+
75
+ @email.setter
76
+ def email(self, value: pulumi.Input[str]):
77
+ pulumi.set(self, "email", value)
78
+
79
+ @property
80
+ @pulumi.getter
81
+ def identifier(self) -> pulumi.Input[str]:
82
+ """
83
+ Unique identifier of the resource.
84
+ """
85
+ return pulumi.get(self, "identifier")
86
+
87
+ @identifier.setter
88
+ def identifier(self, value: pulumi.Input[str]):
89
+ pulumi.set(self, "identifier", value)
90
+
91
+ @property
92
+ @pulumi.getter
93
+ def description(self) -> Optional[pulumi.Input[str]]:
94
+ """
95
+ Description of the resource.
96
+ """
97
+ return pulumi.get(self, "description")
98
+
99
+ @description.setter
100
+ def description(self, value: Optional[pulumi.Input[str]]):
101
+ pulumi.set(self, "description", value)
102
+
103
+ @property
104
+ @pulumi.getter
105
+ def name(self) -> Optional[pulumi.Input[str]]:
106
+ """
107
+ Name of the resource.
108
+ """
109
+ return pulumi.get(self, "name")
110
+
111
+ @name.setter
112
+ def name(self, value: Optional[pulumi.Input[str]]):
113
+ pulumi.set(self, "name", value)
114
+
115
+ @property
116
+ @pulumi.getter(name="orgId")
117
+ def org_id(self) -> Optional[pulumi.Input[str]]:
118
+ """
119
+ Unique identifier of the organization.
120
+ """
121
+ return pulumi.get(self, "org_id")
122
+
123
+ @org_id.setter
124
+ def org_id(self, value: Optional[pulumi.Input[str]]):
125
+ pulumi.set(self, "org_id", value)
126
+
127
+ @property
128
+ @pulumi.getter(name="projectId")
129
+ def project_id(self) -> Optional[pulumi.Input[str]]:
130
+ """
131
+ Unique identifier of the project.
132
+ """
133
+ return pulumi.get(self, "project_id")
134
+
135
+ @project_id.setter
136
+ def project_id(self, value: Optional[pulumi.Input[str]]):
137
+ pulumi.set(self, "project_id", value)
138
+
139
+ @property
140
+ @pulumi.getter
141
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
142
+ """
143
+ Tags to associate with the resource.
144
+ """
145
+ return pulumi.get(self, "tags")
146
+
147
+ @tags.setter
148
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
149
+ pulumi.set(self, "tags", value)
150
+
151
+
152
+ @pulumi.input_type
153
+ class _ServiceAccountState:
154
+ def __init__(__self__, *,
155
+ account_id: Optional[pulumi.Input[str]] = None,
156
+ description: Optional[pulumi.Input[str]] = None,
157
+ email: Optional[pulumi.Input[str]] = None,
158
+ identifier: Optional[pulumi.Input[str]] = None,
159
+ name: Optional[pulumi.Input[str]] = None,
160
+ org_id: Optional[pulumi.Input[str]] = None,
161
+ project_id: Optional[pulumi.Input[str]] = None,
162
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
163
+ """
164
+ Input properties used for looking up and filtering ServiceAccount resources.
165
+ :param pulumi.Input[str] account_id: Account Identifier for the Entity.
166
+ :param pulumi.Input[str] description: Description of the resource.
167
+ :param pulumi.Input[str] email: Email of the Service Account.
168
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
169
+ :param pulumi.Input[str] name: Name of the resource.
170
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
171
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
172
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
173
+ """
174
+ if account_id is not None:
175
+ pulumi.set(__self__, "account_id", account_id)
176
+ if description is not None:
177
+ pulumi.set(__self__, "description", description)
178
+ if email is not None:
179
+ pulumi.set(__self__, "email", email)
180
+ if identifier is not None:
181
+ pulumi.set(__self__, "identifier", identifier)
182
+ if name is not None:
183
+ pulumi.set(__self__, "name", name)
184
+ if org_id is not None:
185
+ pulumi.set(__self__, "org_id", org_id)
186
+ if project_id is not None:
187
+ pulumi.set(__self__, "project_id", project_id)
188
+ if tags is not None:
189
+ pulumi.set(__self__, "tags", tags)
190
+
191
+ @property
192
+ @pulumi.getter(name="accountId")
193
+ def account_id(self) -> Optional[pulumi.Input[str]]:
194
+ """
195
+ Account Identifier for the Entity.
196
+ """
197
+ return pulumi.get(self, "account_id")
198
+
199
+ @account_id.setter
200
+ def account_id(self, value: Optional[pulumi.Input[str]]):
201
+ pulumi.set(self, "account_id", value)
202
+
203
+ @property
204
+ @pulumi.getter
205
+ def description(self) -> Optional[pulumi.Input[str]]:
206
+ """
207
+ Description of the resource.
208
+ """
209
+ return pulumi.get(self, "description")
210
+
211
+ @description.setter
212
+ def description(self, value: Optional[pulumi.Input[str]]):
213
+ pulumi.set(self, "description", value)
214
+
215
+ @property
216
+ @pulumi.getter
217
+ def email(self) -> Optional[pulumi.Input[str]]:
218
+ """
219
+ Email of the Service Account.
220
+ """
221
+ return pulumi.get(self, "email")
222
+
223
+ @email.setter
224
+ def email(self, value: Optional[pulumi.Input[str]]):
225
+ pulumi.set(self, "email", value)
226
+
227
+ @property
228
+ @pulumi.getter
229
+ def identifier(self) -> Optional[pulumi.Input[str]]:
230
+ """
231
+ Unique identifier of the resource.
232
+ """
233
+ return pulumi.get(self, "identifier")
234
+
235
+ @identifier.setter
236
+ def identifier(self, value: Optional[pulumi.Input[str]]):
237
+ pulumi.set(self, "identifier", value)
238
+
239
+ @property
240
+ @pulumi.getter
241
+ def name(self) -> Optional[pulumi.Input[str]]:
242
+ """
243
+ Name of the resource.
244
+ """
245
+ return pulumi.get(self, "name")
246
+
247
+ @name.setter
248
+ def name(self, value: Optional[pulumi.Input[str]]):
249
+ pulumi.set(self, "name", value)
250
+
251
+ @property
252
+ @pulumi.getter(name="orgId")
253
+ def org_id(self) -> Optional[pulumi.Input[str]]:
254
+ """
255
+ Unique identifier of the organization.
256
+ """
257
+ return pulumi.get(self, "org_id")
258
+
259
+ @org_id.setter
260
+ def org_id(self, value: Optional[pulumi.Input[str]]):
261
+ pulumi.set(self, "org_id", value)
262
+
263
+ @property
264
+ @pulumi.getter(name="projectId")
265
+ def project_id(self) -> Optional[pulumi.Input[str]]:
266
+ """
267
+ Unique identifier of the project.
268
+ """
269
+ return pulumi.get(self, "project_id")
270
+
271
+ @project_id.setter
272
+ def project_id(self, value: Optional[pulumi.Input[str]]):
273
+ pulumi.set(self, "project_id", value)
274
+
275
+ @property
276
+ @pulumi.getter
277
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
278
+ """
279
+ Tags to associate with the resource.
280
+ """
281
+ return pulumi.get(self, "tags")
282
+
283
+ @tags.setter
284
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
285
+ pulumi.set(self, "tags", value)
286
+
287
+
288
+ class ServiceAccount(pulumi.CustomResource):
289
+ @overload
290
+ def __init__(__self__,
291
+ resource_name: str,
292
+ opts: Optional[pulumi.ResourceOptions] = None,
293
+ account_id: Optional[pulumi.Input[str]] = None,
294
+ description: Optional[pulumi.Input[str]] = None,
295
+ email: Optional[pulumi.Input[str]] = None,
296
+ identifier: Optional[pulumi.Input[str]] = None,
297
+ name: Optional[pulumi.Input[str]] = None,
298
+ org_id: Optional[pulumi.Input[str]] = None,
299
+ project_id: Optional[pulumi.Input[str]] = None,
300
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
301
+ __props__=None):
302
+ """
303
+ ## Example Usage
304
+
305
+ ```python
306
+ import pulumi
307
+ import pulumi_harness as harness
308
+
309
+ example = harness.platform.ServiceAccount("example",
310
+ identifier="identifier",
311
+ name="name",
312
+ email="email@service.harness.io",
313
+ description="test",
314
+ tags=["foo:bar"],
315
+ account_id="account_id")
316
+ ```
317
+
318
+ ## Import
319
+
320
+ Import account level service account
321
+
322
+ ```sh
323
+ $ pulumi import harness:platform/serviceAccount:ServiceAccount example <service_account_id>
324
+ ```
325
+
326
+ Import org level service account
327
+
328
+ ```sh
329
+ $ pulumi import harness:platform/serviceAccount:ServiceAccount example <ord_id>/<service_account_id>
330
+ ```
331
+
332
+ Import project level service account
333
+
334
+ ```sh
335
+ $ pulumi import harness:platform/serviceAccount:ServiceAccount example <org_id>/<project_id>/<service_account_id>
336
+ ```
337
+
338
+ :param str resource_name: The name of the resource.
339
+ :param pulumi.ResourceOptions opts: Options for the resource.
340
+ :param pulumi.Input[str] account_id: Account Identifier for the Entity.
341
+ :param pulumi.Input[str] description: Description of the resource.
342
+ :param pulumi.Input[str] email: Email of the Service Account.
343
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
344
+ :param pulumi.Input[str] name: Name of the resource.
345
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
346
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
347
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
348
+ """
349
+ ...
350
+ @overload
351
+ def __init__(__self__,
352
+ resource_name: str,
353
+ args: ServiceAccountArgs,
354
+ opts: Optional[pulumi.ResourceOptions] = None):
355
+ """
356
+ ## Example Usage
357
+
358
+ ```python
359
+ import pulumi
360
+ import pulumi_harness as harness
361
+
362
+ example = harness.platform.ServiceAccount("example",
363
+ identifier="identifier",
364
+ name="name",
365
+ email="email@service.harness.io",
366
+ description="test",
367
+ tags=["foo:bar"],
368
+ account_id="account_id")
369
+ ```
370
+
371
+ ## Import
372
+
373
+ Import account level service account
374
+
375
+ ```sh
376
+ $ pulumi import harness:platform/serviceAccount:ServiceAccount example <service_account_id>
377
+ ```
378
+
379
+ Import org level service account
380
+
381
+ ```sh
382
+ $ pulumi import harness:platform/serviceAccount:ServiceAccount example <ord_id>/<service_account_id>
383
+ ```
384
+
385
+ Import project level service account
386
+
387
+ ```sh
388
+ $ pulumi import harness:platform/serviceAccount:ServiceAccount example <org_id>/<project_id>/<service_account_id>
389
+ ```
390
+
391
+ :param str resource_name: The name of the resource.
392
+ :param ServiceAccountArgs args: The arguments to use to populate this resource's properties.
393
+ :param pulumi.ResourceOptions opts: Options for the resource.
394
+ """
395
+ ...
396
+ def __init__(__self__, resource_name: str, *args, **kwargs):
397
+ resource_args, opts = _utilities.get_resource_args_opts(ServiceAccountArgs, pulumi.ResourceOptions, *args, **kwargs)
398
+ if resource_args is not None:
399
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
400
+ else:
401
+ __self__._internal_init(resource_name, *args, **kwargs)
402
+
403
+ def _internal_init(__self__,
404
+ resource_name: str,
405
+ opts: Optional[pulumi.ResourceOptions] = None,
406
+ account_id: Optional[pulumi.Input[str]] = None,
407
+ description: Optional[pulumi.Input[str]] = None,
408
+ email: Optional[pulumi.Input[str]] = None,
409
+ identifier: Optional[pulumi.Input[str]] = None,
410
+ name: Optional[pulumi.Input[str]] = None,
411
+ org_id: Optional[pulumi.Input[str]] = None,
412
+ project_id: Optional[pulumi.Input[str]] = None,
413
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
414
+ __props__=None):
415
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
416
+ if not isinstance(opts, pulumi.ResourceOptions):
417
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
418
+ if opts.id is None:
419
+ if __props__ is not None:
420
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
421
+ __props__ = ServiceAccountArgs.__new__(ServiceAccountArgs)
422
+
423
+ if account_id is None and not opts.urn:
424
+ raise TypeError("Missing required property 'account_id'")
425
+ __props__.__dict__["account_id"] = account_id
426
+ __props__.__dict__["description"] = description
427
+ if email is None and not opts.urn:
428
+ raise TypeError("Missing required property 'email'")
429
+ __props__.__dict__["email"] = email
430
+ if identifier is None and not opts.urn:
431
+ raise TypeError("Missing required property 'identifier'")
432
+ __props__.__dict__["identifier"] = identifier
433
+ __props__.__dict__["name"] = name
434
+ __props__.__dict__["org_id"] = org_id
435
+ __props__.__dict__["project_id"] = project_id
436
+ __props__.__dict__["tags"] = tags
437
+ super(ServiceAccount, __self__).__init__(
438
+ 'harness:platform/serviceAccount:ServiceAccount',
439
+ resource_name,
440
+ __props__,
441
+ opts)
442
+
443
+ @staticmethod
444
+ def get(resource_name: str,
445
+ id: pulumi.Input[str],
446
+ opts: Optional[pulumi.ResourceOptions] = None,
447
+ account_id: Optional[pulumi.Input[str]] = None,
448
+ description: Optional[pulumi.Input[str]] = None,
449
+ email: Optional[pulumi.Input[str]] = None,
450
+ identifier: Optional[pulumi.Input[str]] = None,
451
+ name: Optional[pulumi.Input[str]] = None,
452
+ org_id: Optional[pulumi.Input[str]] = None,
453
+ project_id: Optional[pulumi.Input[str]] = None,
454
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'ServiceAccount':
455
+ """
456
+ Get an existing ServiceAccount resource's state with the given name, id, and optional extra
457
+ properties used to qualify the lookup.
458
+
459
+ :param str resource_name: The unique name of the resulting resource.
460
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
461
+ :param pulumi.ResourceOptions opts: Options for the resource.
462
+ :param pulumi.Input[str] account_id: Account Identifier for the Entity.
463
+ :param pulumi.Input[str] description: Description of the resource.
464
+ :param pulumi.Input[str] email: Email of the Service Account.
465
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
466
+ :param pulumi.Input[str] name: Name of the resource.
467
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
468
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
469
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
470
+ """
471
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
472
+
473
+ __props__ = _ServiceAccountState.__new__(_ServiceAccountState)
474
+
475
+ __props__.__dict__["account_id"] = account_id
476
+ __props__.__dict__["description"] = description
477
+ __props__.__dict__["email"] = email
478
+ __props__.__dict__["identifier"] = identifier
479
+ __props__.__dict__["name"] = name
480
+ __props__.__dict__["org_id"] = org_id
481
+ __props__.__dict__["project_id"] = project_id
482
+ __props__.__dict__["tags"] = tags
483
+ return ServiceAccount(resource_name, opts=opts, __props__=__props__)
484
+
485
+ @property
486
+ @pulumi.getter(name="accountId")
487
+ def account_id(self) -> pulumi.Output[str]:
488
+ """
489
+ Account Identifier for the Entity.
490
+ """
491
+ return pulumi.get(self, "account_id")
492
+
493
+ @property
494
+ @pulumi.getter
495
+ def description(self) -> pulumi.Output[Optional[str]]:
496
+ """
497
+ Description of the resource.
498
+ """
499
+ return pulumi.get(self, "description")
500
+
501
+ @property
502
+ @pulumi.getter
503
+ def email(self) -> pulumi.Output[str]:
504
+ """
505
+ Email of the Service Account.
506
+ """
507
+ return pulumi.get(self, "email")
508
+
509
+ @property
510
+ @pulumi.getter
511
+ def identifier(self) -> pulumi.Output[str]:
512
+ """
513
+ Unique identifier of the resource.
514
+ """
515
+ return pulumi.get(self, "identifier")
516
+
517
+ @property
518
+ @pulumi.getter
519
+ def name(self) -> pulumi.Output[str]:
520
+ """
521
+ Name of the resource.
522
+ """
523
+ return pulumi.get(self, "name")
524
+
525
+ @property
526
+ @pulumi.getter(name="orgId")
527
+ def org_id(self) -> pulumi.Output[Optional[str]]:
528
+ """
529
+ Unique identifier of the organization.
530
+ """
531
+ return pulumi.get(self, "org_id")
532
+
533
+ @property
534
+ @pulumi.getter(name="projectId")
535
+ def project_id(self) -> pulumi.Output[Optional[str]]:
536
+ """
537
+ Unique identifier of the project.
538
+ """
539
+ return pulumi.get(self, "project_id")
540
+
541
+ @property
542
+ @pulumi.getter
543
+ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
544
+ """
545
+ Tags to associate with the resource.
546
+ """
547
+ return pulumi.get(self, "tags")
548
+