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,1173 @@
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__ = ['EnvironmentArgs', 'Environment']
20
+
21
+ @pulumi.input_type
22
+ class EnvironmentArgs:
23
+ def __init__(__self__, *,
24
+ identifier: pulumi.Input[str],
25
+ type: pulumi.Input[str],
26
+ color: Optional[pulumi.Input[str]] = None,
27
+ description: Optional[pulumi.Input[str]] = None,
28
+ force_delete: Optional[pulumi.Input[str]] = None,
29
+ git_details: Optional[pulumi.Input['EnvironmentGitDetailsArgs']] = 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
+ yaml: Optional[pulumi.Input[str]] = None):
35
+ """
36
+ The set of arguments for constructing a Environment resource.
37
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
38
+ :param pulumi.Input[str] type: The type of environment. Valid values are PreProduction, Production
39
+ :param pulumi.Input[str] color: Color of the environment.
40
+ :param pulumi.Input[str] description: Description of the resource.
41
+ :param pulumi.Input[str] force_delete: Enable this flag for force deletion of environments
42
+ :param pulumi.Input['EnvironmentGitDetailsArgs'] git_details: Contains Git Information for remote entities from Git for Create/Update/Import
43
+ :param pulumi.Input[str] name: Name of the resource.
44
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
45
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
46
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
47
+ :param pulumi.Input[str] yaml: Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org.
48
+ connectorId.
49
+ """
50
+ pulumi.set(__self__, "identifier", identifier)
51
+ pulumi.set(__self__, "type", type)
52
+ if color is not None:
53
+ pulumi.set(__self__, "color", color)
54
+ if description is not None:
55
+ pulumi.set(__self__, "description", description)
56
+ if force_delete is not None:
57
+ pulumi.set(__self__, "force_delete", force_delete)
58
+ if git_details is not None:
59
+ pulumi.set(__self__, "git_details", git_details)
60
+ if name is not None:
61
+ pulumi.set(__self__, "name", name)
62
+ if org_id is not None:
63
+ pulumi.set(__self__, "org_id", org_id)
64
+ if project_id is not None:
65
+ pulumi.set(__self__, "project_id", project_id)
66
+ if tags is not None:
67
+ pulumi.set(__self__, "tags", tags)
68
+ if yaml is not None:
69
+ pulumi.set(__self__, "yaml", yaml)
70
+
71
+ @property
72
+ @pulumi.getter
73
+ def identifier(self) -> pulumi.Input[str]:
74
+ """
75
+ Unique identifier of the resource.
76
+ """
77
+ return pulumi.get(self, "identifier")
78
+
79
+ @identifier.setter
80
+ def identifier(self, value: pulumi.Input[str]):
81
+ pulumi.set(self, "identifier", value)
82
+
83
+ @property
84
+ @pulumi.getter
85
+ def type(self) -> pulumi.Input[str]:
86
+ """
87
+ The type of environment. Valid values are PreProduction, Production
88
+ """
89
+ return pulumi.get(self, "type")
90
+
91
+ @type.setter
92
+ def type(self, value: pulumi.Input[str]):
93
+ pulumi.set(self, "type", value)
94
+
95
+ @property
96
+ @pulumi.getter
97
+ def color(self) -> Optional[pulumi.Input[str]]:
98
+ """
99
+ Color of the environment.
100
+ """
101
+ return pulumi.get(self, "color")
102
+
103
+ @color.setter
104
+ def color(self, value: Optional[pulumi.Input[str]]):
105
+ pulumi.set(self, "color", value)
106
+
107
+ @property
108
+ @pulumi.getter
109
+ def description(self) -> Optional[pulumi.Input[str]]:
110
+ """
111
+ Description of the resource.
112
+ """
113
+ return pulumi.get(self, "description")
114
+
115
+ @description.setter
116
+ def description(self, value: Optional[pulumi.Input[str]]):
117
+ pulumi.set(self, "description", value)
118
+
119
+ @property
120
+ @pulumi.getter(name="forceDelete")
121
+ def force_delete(self) -> Optional[pulumi.Input[str]]:
122
+ """
123
+ Enable this flag for force deletion of environments
124
+ """
125
+ return pulumi.get(self, "force_delete")
126
+
127
+ @force_delete.setter
128
+ def force_delete(self, value: Optional[pulumi.Input[str]]):
129
+ pulumi.set(self, "force_delete", value)
130
+
131
+ @property
132
+ @pulumi.getter(name="gitDetails")
133
+ def git_details(self) -> Optional[pulumi.Input['EnvironmentGitDetailsArgs']]:
134
+ """
135
+ Contains Git Information for remote entities from Git for Create/Update/Import
136
+ """
137
+ return pulumi.get(self, "git_details")
138
+
139
+ @git_details.setter
140
+ def git_details(self, value: Optional[pulumi.Input['EnvironmentGitDetailsArgs']]):
141
+ pulumi.set(self, "git_details", value)
142
+
143
+ @property
144
+ @pulumi.getter
145
+ def name(self) -> Optional[pulumi.Input[str]]:
146
+ """
147
+ Name of the resource.
148
+ """
149
+ return pulumi.get(self, "name")
150
+
151
+ @name.setter
152
+ def name(self, value: Optional[pulumi.Input[str]]):
153
+ pulumi.set(self, "name", value)
154
+
155
+ @property
156
+ @pulumi.getter(name="orgId")
157
+ def org_id(self) -> Optional[pulumi.Input[str]]:
158
+ """
159
+ Unique identifier of the organization.
160
+ """
161
+ return pulumi.get(self, "org_id")
162
+
163
+ @org_id.setter
164
+ def org_id(self, value: Optional[pulumi.Input[str]]):
165
+ pulumi.set(self, "org_id", value)
166
+
167
+ @property
168
+ @pulumi.getter(name="projectId")
169
+ def project_id(self) -> Optional[pulumi.Input[str]]:
170
+ """
171
+ Unique identifier of the project.
172
+ """
173
+ return pulumi.get(self, "project_id")
174
+
175
+ @project_id.setter
176
+ def project_id(self, value: Optional[pulumi.Input[str]]):
177
+ pulumi.set(self, "project_id", value)
178
+
179
+ @property
180
+ @pulumi.getter
181
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
182
+ """
183
+ Tags to associate with the resource.
184
+ """
185
+ return pulumi.get(self, "tags")
186
+
187
+ @tags.setter
188
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
189
+ pulumi.set(self, "tags", value)
190
+
191
+ @property
192
+ @pulumi.getter
193
+ def yaml(self) -> Optional[pulumi.Input[str]]:
194
+ """
195
+ Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org.
196
+ connectorId.
197
+ """
198
+ return pulumi.get(self, "yaml")
199
+
200
+ @yaml.setter
201
+ def yaml(self, value: Optional[pulumi.Input[str]]):
202
+ pulumi.set(self, "yaml", value)
203
+
204
+
205
+ @pulumi.input_type
206
+ class _EnvironmentState:
207
+ def __init__(__self__, *,
208
+ color: Optional[pulumi.Input[str]] = None,
209
+ description: Optional[pulumi.Input[str]] = None,
210
+ force_delete: Optional[pulumi.Input[str]] = None,
211
+ git_details: Optional[pulumi.Input['EnvironmentGitDetailsArgs']] = None,
212
+ identifier: Optional[pulumi.Input[str]] = None,
213
+ name: Optional[pulumi.Input[str]] = None,
214
+ org_id: Optional[pulumi.Input[str]] = None,
215
+ project_id: Optional[pulumi.Input[str]] = None,
216
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
217
+ type: Optional[pulumi.Input[str]] = None,
218
+ yaml: Optional[pulumi.Input[str]] = None):
219
+ """
220
+ Input properties used for looking up and filtering Environment resources.
221
+ :param pulumi.Input[str] color: Color of the environment.
222
+ :param pulumi.Input[str] description: Description of the resource.
223
+ :param pulumi.Input[str] force_delete: Enable this flag for force deletion of environments
224
+ :param pulumi.Input['EnvironmentGitDetailsArgs'] git_details: Contains Git Information for remote entities from Git for Create/Update/Import
225
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
226
+ :param pulumi.Input[str] name: Name of the resource.
227
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
228
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
229
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
230
+ :param pulumi.Input[str] type: The type of environment. Valid values are PreProduction, Production
231
+ :param pulumi.Input[str] yaml: Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org.
232
+ connectorId.
233
+ """
234
+ if color is not None:
235
+ pulumi.set(__self__, "color", color)
236
+ if description is not None:
237
+ pulumi.set(__self__, "description", description)
238
+ if force_delete is not None:
239
+ pulumi.set(__self__, "force_delete", force_delete)
240
+ if git_details is not None:
241
+ pulumi.set(__self__, "git_details", git_details)
242
+ if identifier is not None:
243
+ pulumi.set(__self__, "identifier", identifier)
244
+ if name is not None:
245
+ pulumi.set(__self__, "name", name)
246
+ if org_id is not None:
247
+ pulumi.set(__self__, "org_id", org_id)
248
+ if project_id is not None:
249
+ pulumi.set(__self__, "project_id", project_id)
250
+ if tags is not None:
251
+ pulumi.set(__self__, "tags", tags)
252
+ if type is not None:
253
+ pulumi.set(__self__, "type", type)
254
+ if yaml is not None:
255
+ pulumi.set(__self__, "yaml", yaml)
256
+
257
+ @property
258
+ @pulumi.getter
259
+ def color(self) -> Optional[pulumi.Input[str]]:
260
+ """
261
+ Color of the environment.
262
+ """
263
+ return pulumi.get(self, "color")
264
+
265
+ @color.setter
266
+ def color(self, value: Optional[pulumi.Input[str]]):
267
+ pulumi.set(self, "color", value)
268
+
269
+ @property
270
+ @pulumi.getter
271
+ def description(self) -> Optional[pulumi.Input[str]]:
272
+ """
273
+ Description of the resource.
274
+ """
275
+ return pulumi.get(self, "description")
276
+
277
+ @description.setter
278
+ def description(self, value: Optional[pulumi.Input[str]]):
279
+ pulumi.set(self, "description", value)
280
+
281
+ @property
282
+ @pulumi.getter(name="forceDelete")
283
+ def force_delete(self) -> Optional[pulumi.Input[str]]:
284
+ """
285
+ Enable this flag for force deletion of environments
286
+ """
287
+ return pulumi.get(self, "force_delete")
288
+
289
+ @force_delete.setter
290
+ def force_delete(self, value: Optional[pulumi.Input[str]]):
291
+ pulumi.set(self, "force_delete", value)
292
+
293
+ @property
294
+ @pulumi.getter(name="gitDetails")
295
+ def git_details(self) -> Optional[pulumi.Input['EnvironmentGitDetailsArgs']]:
296
+ """
297
+ Contains Git Information for remote entities from Git for Create/Update/Import
298
+ """
299
+ return pulumi.get(self, "git_details")
300
+
301
+ @git_details.setter
302
+ def git_details(self, value: Optional[pulumi.Input['EnvironmentGitDetailsArgs']]):
303
+ pulumi.set(self, "git_details", value)
304
+
305
+ @property
306
+ @pulumi.getter
307
+ def identifier(self) -> Optional[pulumi.Input[str]]:
308
+ """
309
+ Unique identifier of the resource.
310
+ """
311
+ return pulumi.get(self, "identifier")
312
+
313
+ @identifier.setter
314
+ def identifier(self, value: Optional[pulumi.Input[str]]):
315
+ pulumi.set(self, "identifier", value)
316
+
317
+ @property
318
+ @pulumi.getter
319
+ def name(self) -> Optional[pulumi.Input[str]]:
320
+ """
321
+ Name of the resource.
322
+ """
323
+ return pulumi.get(self, "name")
324
+
325
+ @name.setter
326
+ def name(self, value: Optional[pulumi.Input[str]]):
327
+ pulumi.set(self, "name", value)
328
+
329
+ @property
330
+ @pulumi.getter(name="orgId")
331
+ def org_id(self) -> Optional[pulumi.Input[str]]:
332
+ """
333
+ Unique identifier of the organization.
334
+ """
335
+ return pulumi.get(self, "org_id")
336
+
337
+ @org_id.setter
338
+ def org_id(self, value: Optional[pulumi.Input[str]]):
339
+ pulumi.set(self, "org_id", value)
340
+
341
+ @property
342
+ @pulumi.getter(name="projectId")
343
+ def project_id(self) -> Optional[pulumi.Input[str]]:
344
+ """
345
+ Unique identifier of the project.
346
+ """
347
+ return pulumi.get(self, "project_id")
348
+
349
+ @project_id.setter
350
+ def project_id(self, value: Optional[pulumi.Input[str]]):
351
+ pulumi.set(self, "project_id", value)
352
+
353
+ @property
354
+ @pulumi.getter
355
+ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
356
+ """
357
+ Tags to associate with the resource.
358
+ """
359
+ return pulumi.get(self, "tags")
360
+
361
+ @tags.setter
362
+ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
363
+ pulumi.set(self, "tags", value)
364
+
365
+ @property
366
+ @pulumi.getter
367
+ def type(self) -> Optional[pulumi.Input[str]]:
368
+ """
369
+ The type of environment. Valid values are PreProduction, Production
370
+ """
371
+ return pulumi.get(self, "type")
372
+
373
+ @type.setter
374
+ def type(self, value: Optional[pulumi.Input[str]]):
375
+ pulumi.set(self, "type", value)
376
+
377
+ @property
378
+ @pulumi.getter
379
+ def yaml(self) -> Optional[pulumi.Input[str]]:
380
+ """
381
+ Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org.
382
+ connectorId.
383
+ """
384
+ return pulumi.get(self, "yaml")
385
+
386
+ @yaml.setter
387
+ def yaml(self, value: Optional[pulumi.Input[str]]):
388
+ pulumi.set(self, "yaml", value)
389
+
390
+
391
+ class Environment(pulumi.CustomResource):
392
+ @overload
393
+ def __init__(__self__,
394
+ resource_name: str,
395
+ opts: Optional[pulumi.ResourceOptions] = None,
396
+ color: Optional[pulumi.Input[str]] = None,
397
+ description: Optional[pulumi.Input[str]] = None,
398
+ force_delete: Optional[pulumi.Input[str]] = None,
399
+ git_details: Optional[pulumi.Input[Union['EnvironmentGitDetailsArgs', 'EnvironmentGitDetailsArgsDict']]] = None,
400
+ identifier: Optional[pulumi.Input[str]] = None,
401
+ name: Optional[pulumi.Input[str]] = None,
402
+ org_id: Optional[pulumi.Input[str]] = None,
403
+ project_id: Optional[pulumi.Input[str]] = None,
404
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
405
+ type: Optional[pulumi.Input[str]] = None,
406
+ yaml: Optional[pulumi.Input[str]] = None,
407
+ __props__=None):
408
+ """
409
+ Resource for creating a Harness environment.
410
+
411
+ ## Example to create Environment at different levels (Org, Project, Account)
412
+
413
+ ### Account Level
414
+ ```python
415
+ import pulumi
416
+ import pulumi_harness as harness
417
+
418
+ example = harness.platform.Environment("example",
419
+ identifier="identifier",
420
+ name="name",
421
+ tags=[
422
+ "foo:bar",
423
+ "bar:foo",
424
+ ],
425
+ type="PreProduction",
426
+ description="env description",
427
+ yaml=\"\"\"environment:
428
+ name: name
429
+ identifier: identifier
430
+ type: PreProduction
431
+ tags:
432
+ foo: bar
433
+ bar: foo
434
+ variables:
435
+ - name: envVar1
436
+ type: String
437
+ value: v1
438
+ description: ""
439
+ - name: envVar2
440
+ type: String
441
+ value: v2
442
+ description: ""
443
+ overrides:
444
+ manifests:
445
+ - manifest:
446
+ identifier: manifestEnv
447
+ type: Values
448
+ spec:
449
+ store:
450
+ type: Git
451
+ spec:
452
+ connectorRef: <+input>
453
+ gitFetchType: Branch
454
+ paths:
455
+ - file1
456
+ repoName: <+input>
457
+ branch: master
458
+ configFiles:
459
+ - configFile:
460
+ identifier: configFileEnv
461
+ spec:
462
+ store:
463
+ type: Harness
464
+ spec:
465
+ files:
466
+ - account:/Add-ons/svcOverrideTest
467
+ secretFiles: []
468
+ \"\"\")
469
+ ```
470
+
471
+ ### Org Level
472
+ ```python
473
+ import pulumi
474
+ import pulumi_harness as harness
475
+
476
+ example = harness.platform.Environment("example",
477
+ identifier="identifier",
478
+ name="name",
479
+ org_id="org_id",
480
+ tags=[
481
+ "foo:bar",
482
+ "bar:foo",
483
+ ],
484
+ type="PreProduction",
485
+ description="env description",
486
+ yaml=\"\"\"environment:
487
+ name: name
488
+ identifier: identifier
489
+ orgIdentifier: org_id
490
+ type: PreProduction
491
+ tags:
492
+ foo: bar
493
+ bar: foo
494
+ variables:
495
+ - name: envVar1
496
+ type: String
497
+ value: v1
498
+ description: ""
499
+ - name: envVar2
500
+ type: String
501
+ value: v2
502
+ description: ""
503
+ overrides:
504
+ manifests:
505
+ - manifest:
506
+ identifier: manifestEnv
507
+ type: Values
508
+ spec:
509
+ store:
510
+ type: Git
511
+ spec:
512
+ connectorRef: <+input>
513
+ gitFetchType: Branch
514
+ paths:
515
+ - file1
516
+ repoName: <+input>
517
+ branch: master
518
+ configFiles:
519
+ - configFile:
520
+ identifier: configFileEnv
521
+ spec:
522
+ store:
523
+ type: Harness
524
+ spec:
525
+ files:
526
+ - account:/Add-ons/svcOverrideTest
527
+ secretFiles: []
528
+ \"\"\")
529
+ ```
530
+
531
+ ### Project Level
532
+ ```python
533
+ import pulumi
534
+ import pulumi_harness as harness
535
+
536
+ example = harness.platform.Environment("example",
537
+ identifier="identifier",
538
+ name="name",
539
+ org_id="org_id",
540
+ project_id="project_id",
541
+ tags=[
542
+ "foo:bar",
543
+ "bar:foo",
544
+ ],
545
+ type="PreProduction",
546
+ description="env description",
547
+ yaml=\"\"\"environment:
548
+ name: name
549
+ identifier: identifier
550
+ orgIdentifier: org_id
551
+ projectIdentifier: project_id
552
+ type: PreProduction
553
+ tags:
554
+ foo: bar
555
+ bar: foo
556
+ variables:
557
+ - name: envVar1
558
+ type: String
559
+ value: v1
560
+ description: ""
561
+ - name: envVar2
562
+ type: String
563
+ value: v2
564
+ description: ""
565
+ overrides:
566
+ manifests:
567
+ - manifest:
568
+ identifier: manifestEnv
569
+ type: Values
570
+ spec:
571
+ store:
572
+ type: Git
573
+ spec:
574
+ connectorRef: <+input>
575
+ gitFetchType: Branch
576
+ paths:
577
+ - file1
578
+ repoName: <+input>
579
+ branch: master
580
+ configFiles:
581
+ - configFile:
582
+ identifier: configFileEnv
583
+ spec:
584
+ store:
585
+ type: Harness
586
+ spec:
587
+ files:
588
+ - account:/Add-ons/svcOverrideTest
589
+ secretFiles: []
590
+ \"\"\")
591
+ ```
592
+
593
+ ### Creating Remote Environment
594
+ ```python
595
+ import pulumi
596
+ import pulumi_harness as harness
597
+
598
+ example = harness.platform.Environment("example",
599
+ identifier="identifier",
600
+ name="name",
601
+ description="test",
602
+ org_id="org_id",
603
+ project_id="project_id",
604
+ git_details={
605
+ "store_type": "REMOTE",
606
+ "connector_ref": "connector_ref",
607
+ "repo_name": "repo_name",
608
+ "file_path": "file_path",
609
+ "branch": "branch",
610
+ },
611
+ yaml=\"\"\"environment:
612
+ name: env
613
+ identifier: env
614
+ tags:
615
+ test: ""
616
+ type: PreProduction
617
+ orgIdentifier: default
618
+ projectIdentifier: proj1
619
+ variables:
620
+ - name: var1
621
+ type: String
622
+ value: abc
623
+ description: ""
624
+ required: false
625
+ overrides:
626
+ manifests:
627
+ - manifest:
628
+ identifier: Manifest1
629
+ type: Values
630
+ spec:
631
+ store:
632
+ type: Github
633
+ spec:
634
+ connectorRef: <+input>
635
+ gitFetchType: Branch
636
+ paths:
637
+ - .harness/
638
+ repoName: <+input>
639
+ branch: <+input>
640
+ \"\"\")
641
+ ```
642
+
643
+ ### Importing Environment From Git
644
+ ```python
645
+ import pulumi
646
+ import pulumi_harness as harness
647
+
648
+ example = harness.platform.Environment("example",
649
+ identifier="identifier",
650
+ name="name",
651
+ type="PreProduction",
652
+ git_details={
653
+ "store_type": "REMOTE",
654
+ "connector_ref": "connector_ref",
655
+ "repo_name": "repo_name",
656
+ "file_path": "file_path",
657
+ "branch": "branch",
658
+ "import_from_git": True,
659
+ })
660
+ ```
661
+
662
+ ## Import
663
+
664
+ Import account level environment id
665
+
666
+ ```sh
667
+ $ pulumi import harness:platform/environment:Environment example <environment_id>
668
+ ```
669
+
670
+ Import org level environment id
671
+
672
+ ```sh
673
+ $ pulumi import harness:platform/environment:Environment example <org_id>/<environment_id>
674
+ ```
675
+
676
+ Import project level environment id
677
+
678
+ ```sh
679
+ $ pulumi import harness:platform/environment:Environment example <org_id>/<project_id>/<environment_id>
680
+ ```
681
+
682
+ :param str resource_name: The name of the resource.
683
+ :param pulumi.ResourceOptions opts: Options for the resource.
684
+ :param pulumi.Input[str] color: Color of the environment.
685
+ :param pulumi.Input[str] description: Description of the resource.
686
+ :param pulumi.Input[str] force_delete: Enable this flag for force deletion of environments
687
+ :param pulumi.Input[Union['EnvironmentGitDetailsArgs', 'EnvironmentGitDetailsArgsDict']] git_details: Contains Git Information for remote entities from Git for Create/Update/Import
688
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
689
+ :param pulumi.Input[str] name: Name of the resource.
690
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
691
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
692
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
693
+ :param pulumi.Input[str] type: The type of environment. Valid values are PreProduction, Production
694
+ :param pulumi.Input[str] yaml: Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org.
695
+ connectorId.
696
+ """
697
+ ...
698
+ @overload
699
+ def __init__(__self__,
700
+ resource_name: str,
701
+ args: EnvironmentArgs,
702
+ opts: Optional[pulumi.ResourceOptions] = None):
703
+ """
704
+ Resource for creating a Harness environment.
705
+
706
+ ## Example to create Environment at different levels (Org, Project, Account)
707
+
708
+ ### Account Level
709
+ ```python
710
+ import pulumi
711
+ import pulumi_harness as harness
712
+
713
+ example = harness.platform.Environment("example",
714
+ identifier="identifier",
715
+ name="name",
716
+ tags=[
717
+ "foo:bar",
718
+ "bar:foo",
719
+ ],
720
+ type="PreProduction",
721
+ description="env description",
722
+ yaml=\"\"\"environment:
723
+ name: name
724
+ identifier: identifier
725
+ type: PreProduction
726
+ tags:
727
+ foo: bar
728
+ bar: foo
729
+ variables:
730
+ - name: envVar1
731
+ type: String
732
+ value: v1
733
+ description: ""
734
+ - name: envVar2
735
+ type: String
736
+ value: v2
737
+ description: ""
738
+ overrides:
739
+ manifests:
740
+ - manifest:
741
+ identifier: manifestEnv
742
+ type: Values
743
+ spec:
744
+ store:
745
+ type: Git
746
+ spec:
747
+ connectorRef: <+input>
748
+ gitFetchType: Branch
749
+ paths:
750
+ - file1
751
+ repoName: <+input>
752
+ branch: master
753
+ configFiles:
754
+ - configFile:
755
+ identifier: configFileEnv
756
+ spec:
757
+ store:
758
+ type: Harness
759
+ spec:
760
+ files:
761
+ - account:/Add-ons/svcOverrideTest
762
+ secretFiles: []
763
+ \"\"\")
764
+ ```
765
+
766
+ ### Org Level
767
+ ```python
768
+ import pulumi
769
+ import pulumi_harness as harness
770
+
771
+ example = harness.platform.Environment("example",
772
+ identifier="identifier",
773
+ name="name",
774
+ org_id="org_id",
775
+ tags=[
776
+ "foo:bar",
777
+ "bar:foo",
778
+ ],
779
+ type="PreProduction",
780
+ description="env description",
781
+ yaml=\"\"\"environment:
782
+ name: name
783
+ identifier: identifier
784
+ orgIdentifier: org_id
785
+ type: PreProduction
786
+ tags:
787
+ foo: bar
788
+ bar: foo
789
+ variables:
790
+ - name: envVar1
791
+ type: String
792
+ value: v1
793
+ description: ""
794
+ - name: envVar2
795
+ type: String
796
+ value: v2
797
+ description: ""
798
+ overrides:
799
+ manifests:
800
+ - manifest:
801
+ identifier: manifestEnv
802
+ type: Values
803
+ spec:
804
+ store:
805
+ type: Git
806
+ spec:
807
+ connectorRef: <+input>
808
+ gitFetchType: Branch
809
+ paths:
810
+ - file1
811
+ repoName: <+input>
812
+ branch: master
813
+ configFiles:
814
+ - configFile:
815
+ identifier: configFileEnv
816
+ spec:
817
+ store:
818
+ type: Harness
819
+ spec:
820
+ files:
821
+ - account:/Add-ons/svcOverrideTest
822
+ secretFiles: []
823
+ \"\"\")
824
+ ```
825
+
826
+ ### Project Level
827
+ ```python
828
+ import pulumi
829
+ import pulumi_harness as harness
830
+
831
+ example = harness.platform.Environment("example",
832
+ identifier="identifier",
833
+ name="name",
834
+ org_id="org_id",
835
+ project_id="project_id",
836
+ tags=[
837
+ "foo:bar",
838
+ "bar:foo",
839
+ ],
840
+ type="PreProduction",
841
+ description="env description",
842
+ yaml=\"\"\"environment:
843
+ name: name
844
+ identifier: identifier
845
+ orgIdentifier: org_id
846
+ projectIdentifier: project_id
847
+ type: PreProduction
848
+ tags:
849
+ foo: bar
850
+ bar: foo
851
+ variables:
852
+ - name: envVar1
853
+ type: String
854
+ value: v1
855
+ description: ""
856
+ - name: envVar2
857
+ type: String
858
+ value: v2
859
+ description: ""
860
+ overrides:
861
+ manifests:
862
+ - manifest:
863
+ identifier: manifestEnv
864
+ type: Values
865
+ spec:
866
+ store:
867
+ type: Git
868
+ spec:
869
+ connectorRef: <+input>
870
+ gitFetchType: Branch
871
+ paths:
872
+ - file1
873
+ repoName: <+input>
874
+ branch: master
875
+ configFiles:
876
+ - configFile:
877
+ identifier: configFileEnv
878
+ spec:
879
+ store:
880
+ type: Harness
881
+ spec:
882
+ files:
883
+ - account:/Add-ons/svcOverrideTest
884
+ secretFiles: []
885
+ \"\"\")
886
+ ```
887
+
888
+ ### Creating Remote Environment
889
+ ```python
890
+ import pulumi
891
+ import pulumi_harness as harness
892
+
893
+ example = harness.platform.Environment("example",
894
+ identifier="identifier",
895
+ name="name",
896
+ description="test",
897
+ org_id="org_id",
898
+ project_id="project_id",
899
+ git_details={
900
+ "store_type": "REMOTE",
901
+ "connector_ref": "connector_ref",
902
+ "repo_name": "repo_name",
903
+ "file_path": "file_path",
904
+ "branch": "branch",
905
+ },
906
+ yaml=\"\"\"environment:
907
+ name: env
908
+ identifier: env
909
+ tags:
910
+ test: ""
911
+ type: PreProduction
912
+ orgIdentifier: default
913
+ projectIdentifier: proj1
914
+ variables:
915
+ - name: var1
916
+ type: String
917
+ value: abc
918
+ description: ""
919
+ required: false
920
+ overrides:
921
+ manifests:
922
+ - manifest:
923
+ identifier: Manifest1
924
+ type: Values
925
+ spec:
926
+ store:
927
+ type: Github
928
+ spec:
929
+ connectorRef: <+input>
930
+ gitFetchType: Branch
931
+ paths:
932
+ - .harness/
933
+ repoName: <+input>
934
+ branch: <+input>
935
+ \"\"\")
936
+ ```
937
+
938
+ ### Importing Environment From Git
939
+ ```python
940
+ import pulumi
941
+ import pulumi_harness as harness
942
+
943
+ example = harness.platform.Environment("example",
944
+ identifier="identifier",
945
+ name="name",
946
+ type="PreProduction",
947
+ git_details={
948
+ "store_type": "REMOTE",
949
+ "connector_ref": "connector_ref",
950
+ "repo_name": "repo_name",
951
+ "file_path": "file_path",
952
+ "branch": "branch",
953
+ "import_from_git": True,
954
+ })
955
+ ```
956
+
957
+ ## Import
958
+
959
+ Import account level environment id
960
+
961
+ ```sh
962
+ $ pulumi import harness:platform/environment:Environment example <environment_id>
963
+ ```
964
+
965
+ Import org level environment id
966
+
967
+ ```sh
968
+ $ pulumi import harness:platform/environment:Environment example <org_id>/<environment_id>
969
+ ```
970
+
971
+ Import project level environment id
972
+
973
+ ```sh
974
+ $ pulumi import harness:platform/environment:Environment example <org_id>/<project_id>/<environment_id>
975
+ ```
976
+
977
+ :param str resource_name: The name of the resource.
978
+ :param EnvironmentArgs args: The arguments to use to populate this resource's properties.
979
+ :param pulumi.ResourceOptions opts: Options for the resource.
980
+ """
981
+ ...
982
+ def __init__(__self__, resource_name: str, *args, **kwargs):
983
+ resource_args, opts = _utilities.get_resource_args_opts(EnvironmentArgs, pulumi.ResourceOptions, *args, **kwargs)
984
+ if resource_args is not None:
985
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
986
+ else:
987
+ __self__._internal_init(resource_name, *args, **kwargs)
988
+
989
+ def _internal_init(__self__,
990
+ resource_name: str,
991
+ opts: Optional[pulumi.ResourceOptions] = None,
992
+ color: Optional[pulumi.Input[str]] = None,
993
+ description: Optional[pulumi.Input[str]] = None,
994
+ force_delete: Optional[pulumi.Input[str]] = None,
995
+ git_details: Optional[pulumi.Input[Union['EnvironmentGitDetailsArgs', 'EnvironmentGitDetailsArgsDict']]] = None,
996
+ identifier: Optional[pulumi.Input[str]] = None,
997
+ name: Optional[pulumi.Input[str]] = None,
998
+ org_id: Optional[pulumi.Input[str]] = None,
999
+ project_id: Optional[pulumi.Input[str]] = None,
1000
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1001
+ type: Optional[pulumi.Input[str]] = None,
1002
+ yaml: Optional[pulumi.Input[str]] = None,
1003
+ __props__=None):
1004
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1005
+ if not isinstance(opts, pulumi.ResourceOptions):
1006
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
1007
+ if opts.id is None:
1008
+ if __props__ is not None:
1009
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1010
+ __props__ = EnvironmentArgs.__new__(EnvironmentArgs)
1011
+
1012
+ __props__.__dict__["color"] = color
1013
+ __props__.__dict__["description"] = description
1014
+ __props__.__dict__["force_delete"] = force_delete
1015
+ __props__.__dict__["git_details"] = git_details
1016
+ if identifier is None and not opts.urn:
1017
+ raise TypeError("Missing required property 'identifier'")
1018
+ __props__.__dict__["identifier"] = identifier
1019
+ __props__.__dict__["name"] = name
1020
+ __props__.__dict__["org_id"] = org_id
1021
+ __props__.__dict__["project_id"] = project_id
1022
+ __props__.__dict__["tags"] = tags
1023
+ if type is None and not opts.urn:
1024
+ raise TypeError("Missing required property 'type'")
1025
+ __props__.__dict__["type"] = type
1026
+ __props__.__dict__["yaml"] = yaml
1027
+ super(Environment, __self__).__init__(
1028
+ 'harness:platform/environment:Environment',
1029
+ resource_name,
1030
+ __props__,
1031
+ opts)
1032
+
1033
+ @staticmethod
1034
+ def get(resource_name: str,
1035
+ id: pulumi.Input[str],
1036
+ opts: Optional[pulumi.ResourceOptions] = None,
1037
+ color: Optional[pulumi.Input[str]] = None,
1038
+ description: Optional[pulumi.Input[str]] = None,
1039
+ force_delete: Optional[pulumi.Input[str]] = None,
1040
+ git_details: Optional[pulumi.Input[Union['EnvironmentGitDetailsArgs', 'EnvironmentGitDetailsArgsDict']]] = None,
1041
+ identifier: Optional[pulumi.Input[str]] = None,
1042
+ name: Optional[pulumi.Input[str]] = None,
1043
+ org_id: Optional[pulumi.Input[str]] = None,
1044
+ project_id: Optional[pulumi.Input[str]] = None,
1045
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1046
+ type: Optional[pulumi.Input[str]] = None,
1047
+ yaml: Optional[pulumi.Input[str]] = None) -> 'Environment':
1048
+ """
1049
+ Get an existing Environment resource's state with the given name, id, and optional extra
1050
+ properties used to qualify the lookup.
1051
+
1052
+ :param str resource_name: The unique name of the resulting resource.
1053
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1054
+ :param pulumi.ResourceOptions opts: Options for the resource.
1055
+ :param pulumi.Input[str] color: Color of the environment.
1056
+ :param pulumi.Input[str] description: Description of the resource.
1057
+ :param pulumi.Input[str] force_delete: Enable this flag for force deletion of environments
1058
+ :param pulumi.Input[Union['EnvironmentGitDetailsArgs', 'EnvironmentGitDetailsArgsDict']] git_details: Contains Git Information for remote entities from Git for Create/Update/Import
1059
+ :param pulumi.Input[str] identifier: Unique identifier of the resource.
1060
+ :param pulumi.Input[str] name: Name of the resource.
1061
+ :param pulumi.Input[str] org_id: Unique identifier of the organization.
1062
+ :param pulumi.Input[str] project_id: Unique identifier of the project.
1063
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
1064
+ :param pulumi.Input[str] type: The type of environment. Valid values are PreProduction, Production
1065
+ :param pulumi.Input[str] yaml: Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org.
1066
+ connectorId.
1067
+ """
1068
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1069
+
1070
+ __props__ = _EnvironmentState.__new__(_EnvironmentState)
1071
+
1072
+ __props__.__dict__["color"] = color
1073
+ __props__.__dict__["description"] = description
1074
+ __props__.__dict__["force_delete"] = force_delete
1075
+ __props__.__dict__["git_details"] = git_details
1076
+ __props__.__dict__["identifier"] = identifier
1077
+ __props__.__dict__["name"] = name
1078
+ __props__.__dict__["org_id"] = org_id
1079
+ __props__.__dict__["project_id"] = project_id
1080
+ __props__.__dict__["tags"] = tags
1081
+ __props__.__dict__["type"] = type
1082
+ __props__.__dict__["yaml"] = yaml
1083
+ return Environment(resource_name, opts=opts, __props__=__props__)
1084
+
1085
+ @property
1086
+ @pulumi.getter
1087
+ def color(self) -> pulumi.Output[str]:
1088
+ """
1089
+ Color of the environment.
1090
+ """
1091
+ return pulumi.get(self, "color")
1092
+
1093
+ @property
1094
+ @pulumi.getter
1095
+ def description(self) -> pulumi.Output[Optional[str]]:
1096
+ """
1097
+ Description of the resource.
1098
+ """
1099
+ return pulumi.get(self, "description")
1100
+
1101
+ @property
1102
+ @pulumi.getter(name="forceDelete")
1103
+ def force_delete(self) -> pulumi.Output[str]:
1104
+ """
1105
+ Enable this flag for force deletion of environments
1106
+ """
1107
+ return pulumi.get(self, "force_delete")
1108
+
1109
+ @property
1110
+ @pulumi.getter(name="gitDetails")
1111
+ def git_details(self) -> pulumi.Output['outputs.EnvironmentGitDetails']:
1112
+ """
1113
+ Contains Git Information for remote entities from Git for Create/Update/Import
1114
+ """
1115
+ return pulumi.get(self, "git_details")
1116
+
1117
+ @property
1118
+ @pulumi.getter
1119
+ def identifier(self) -> pulumi.Output[str]:
1120
+ """
1121
+ Unique identifier of the resource.
1122
+ """
1123
+ return pulumi.get(self, "identifier")
1124
+
1125
+ @property
1126
+ @pulumi.getter
1127
+ def name(self) -> pulumi.Output[str]:
1128
+ """
1129
+ Name of the resource.
1130
+ """
1131
+ return pulumi.get(self, "name")
1132
+
1133
+ @property
1134
+ @pulumi.getter(name="orgId")
1135
+ def org_id(self) -> pulumi.Output[Optional[str]]:
1136
+ """
1137
+ Unique identifier of the organization.
1138
+ """
1139
+ return pulumi.get(self, "org_id")
1140
+
1141
+ @property
1142
+ @pulumi.getter(name="projectId")
1143
+ def project_id(self) -> pulumi.Output[Optional[str]]:
1144
+ """
1145
+ Unique identifier of the project.
1146
+ """
1147
+ return pulumi.get(self, "project_id")
1148
+
1149
+ @property
1150
+ @pulumi.getter
1151
+ def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
1152
+ """
1153
+ Tags to associate with the resource.
1154
+ """
1155
+ return pulumi.get(self, "tags")
1156
+
1157
+ @property
1158
+ @pulumi.getter
1159
+ def type(self) -> pulumi.Output[str]:
1160
+ """
1161
+ The type of environment. Valid values are PreProduction, Production
1162
+ """
1163
+ return pulumi.get(self, "type")
1164
+
1165
+ @property
1166
+ @pulumi.getter
1167
+ def yaml(self) -> pulumi.Output[Optional[str]]:
1168
+ """
1169
+ Environment YAML. In YAML, to reference an entity at the organization scope, prefix 'org' to the expression: org.{identifier}. To reference an entity at the account scope, prefix 'account` to the expression: account.{identifier}. For eg, to reference a connector with identifier 'connectorId' at the organization scope in a stage mention it as connectorRef: org.
1170
+ connectorId.
1171
+ """
1172
+ return pulumi.get(self, "yaml")
1173
+