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,446 @@
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
+ app_id: pulumi.Input[str],
25
+ type: pulumi.Input[str],
26
+ description: Optional[pulumi.Input[str]] = None,
27
+ name: Optional[pulumi.Input[str]] = None,
28
+ variable_overrides: Optional[pulumi.Input[Sequence[pulumi.Input['EnvironmentVariableOverrideArgs']]]] = None):
29
+ """
30
+ The set of arguments for constructing a Environment resource.
31
+ :param pulumi.Input[str] app_id: The id of the application.
32
+ :param pulumi.Input[str] type: The type of the environment. Valid values are `PROD` and `NON_PROD`
33
+ :param pulumi.Input[str] description: The description of the environment.
34
+ :param pulumi.Input[str] name: The name of the environment.
35
+ :param pulumi.Input[Sequence[pulumi.Input['EnvironmentVariableOverrideArgs']]] variable_overrides: Override for a service variable
36
+ """
37
+ pulumi.set(__self__, "app_id", app_id)
38
+ pulumi.set(__self__, "type", type)
39
+ if description is not None:
40
+ pulumi.set(__self__, "description", description)
41
+ if name is not None:
42
+ pulumi.set(__self__, "name", name)
43
+ if variable_overrides is not None:
44
+ pulumi.set(__self__, "variable_overrides", variable_overrides)
45
+
46
+ @property
47
+ @pulumi.getter(name="appId")
48
+ def app_id(self) -> pulumi.Input[str]:
49
+ """
50
+ The id of the application.
51
+ """
52
+ return pulumi.get(self, "app_id")
53
+
54
+ @app_id.setter
55
+ def app_id(self, value: pulumi.Input[str]):
56
+ pulumi.set(self, "app_id", value)
57
+
58
+ @property
59
+ @pulumi.getter
60
+ def type(self) -> pulumi.Input[str]:
61
+ """
62
+ The type of the environment. Valid values are `PROD` and `NON_PROD`
63
+ """
64
+ return pulumi.get(self, "type")
65
+
66
+ @type.setter
67
+ def type(self, value: pulumi.Input[str]):
68
+ pulumi.set(self, "type", value)
69
+
70
+ @property
71
+ @pulumi.getter
72
+ def description(self) -> Optional[pulumi.Input[str]]:
73
+ """
74
+ The description of the environment.
75
+ """
76
+ return pulumi.get(self, "description")
77
+
78
+ @description.setter
79
+ def description(self, value: Optional[pulumi.Input[str]]):
80
+ pulumi.set(self, "description", value)
81
+
82
+ @property
83
+ @pulumi.getter
84
+ def name(self) -> Optional[pulumi.Input[str]]:
85
+ """
86
+ The name of the environment.
87
+ """
88
+ return pulumi.get(self, "name")
89
+
90
+ @name.setter
91
+ def name(self, value: Optional[pulumi.Input[str]]):
92
+ pulumi.set(self, "name", value)
93
+
94
+ @property
95
+ @pulumi.getter(name="variableOverrides")
96
+ def variable_overrides(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['EnvironmentVariableOverrideArgs']]]]:
97
+ """
98
+ Override for a service variable
99
+ """
100
+ return pulumi.get(self, "variable_overrides")
101
+
102
+ @variable_overrides.setter
103
+ def variable_overrides(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['EnvironmentVariableOverrideArgs']]]]):
104
+ pulumi.set(self, "variable_overrides", value)
105
+
106
+
107
+ @pulumi.input_type
108
+ class _EnvironmentState:
109
+ def __init__(__self__, *,
110
+ app_id: Optional[pulumi.Input[str]] = None,
111
+ description: Optional[pulumi.Input[str]] = None,
112
+ name: Optional[pulumi.Input[str]] = None,
113
+ type: Optional[pulumi.Input[str]] = None,
114
+ variable_overrides: Optional[pulumi.Input[Sequence[pulumi.Input['EnvironmentVariableOverrideArgs']]]] = None):
115
+ """
116
+ Input properties used for looking up and filtering Environment resources.
117
+ :param pulumi.Input[str] app_id: The id of the application.
118
+ :param pulumi.Input[str] description: The description of the environment.
119
+ :param pulumi.Input[str] name: The name of the environment.
120
+ :param pulumi.Input[str] type: The type of the environment. Valid values are `PROD` and `NON_PROD`
121
+ :param pulumi.Input[Sequence[pulumi.Input['EnvironmentVariableOverrideArgs']]] variable_overrides: Override for a service variable
122
+ """
123
+ if app_id is not None:
124
+ pulumi.set(__self__, "app_id", app_id)
125
+ if description is not None:
126
+ pulumi.set(__self__, "description", description)
127
+ if name is not None:
128
+ pulumi.set(__self__, "name", name)
129
+ if type is not None:
130
+ pulumi.set(__self__, "type", type)
131
+ if variable_overrides is not None:
132
+ pulumi.set(__self__, "variable_overrides", variable_overrides)
133
+
134
+ @property
135
+ @pulumi.getter(name="appId")
136
+ def app_id(self) -> Optional[pulumi.Input[str]]:
137
+ """
138
+ The id of the application.
139
+ """
140
+ return pulumi.get(self, "app_id")
141
+
142
+ @app_id.setter
143
+ def app_id(self, value: Optional[pulumi.Input[str]]):
144
+ pulumi.set(self, "app_id", value)
145
+
146
+ @property
147
+ @pulumi.getter
148
+ def description(self) -> Optional[pulumi.Input[str]]:
149
+ """
150
+ The description of the environment.
151
+ """
152
+ return pulumi.get(self, "description")
153
+
154
+ @description.setter
155
+ def description(self, value: Optional[pulumi.Input[str]]):
156
+ pulumi.set(self, "description", value)
157
+
158
+ @property
159
+ @pulumi.getter
160
+ def name(self) -> Optional[pulumi.Input[str]]:
161
+ """
162
+ The name of the environment.
163
+ """
164
+ return pulumi.get(self, "name")
165
+
166
+ @name.setter
167
+ def name(self, value: Optional[pulumi.Input[str]]):
168
+ pulumi.set(self, "name", value)
169
+
170
+ @property
171
+ @pulumi.getter
172
+ def type(self) -> Optional[pulumi.Input[str]]:
173
+ """
174
+ The type of the environment. Valid values are `PROD` and `NON_PROD`
175
+ """
176
+ return pulumi.get(self, "type")
177
+
178
+ @type.setter
179
+ def type(self, value: Optional[pulumi.Input[str]]):
180
+ pulumi.set(self, "type", value)
181
+
182
+ @property
183
+ @pulumi.getter(name="variableOverrides")
184
+ def variable_overrides(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['EnvironmentVariableOverrideArgs']]]]:
185
+ """
186
+ Override for a service variable
187
+ """
188
+ return pulumi.get(self, "variable_overrides")
189
+
190
+ @variable_overrides.setter
191
+ def variable_overrides(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['EnvironmentVariableOverrideArgs']]]]):
192
+ pulumi.set(self, "variable_overrides", value)
193
+
194
+
195
+ class Environment(pulumi.CustomResource):
196
+ @overload
197
+ def __init__(__self__,
198
+ resource_name: str,
199
+ opts: Optional[pulumi.ResourceOptions] = None,
200
+ app_id: Optional[pulumi.Input[str]] = None,
201
+ description: Optional[pulumi.Input[str]] = None,
202
+ name: Optional[pulumi.Input[str]] = None,
203
+ type: Optional[pulumi.Input[str]] = None,
204
+ variable_overrides: Optional[pulumi.Input[Sequence[pulumi.Input[Union['EnvironmentVariableOverrideArgs', 'EnvironmentVariableOverrideArgsDict']]]]] = None,
205
+ __props__=None):
206
+ """
207
+ Resource for creating an environment
208
+
209
+ ## Example Usage
210
+
211
+ ```python
212
+ import pulumi
213
+ import pulumi_harness as harness
214
+
215
+ test = harness.Application("test", name="%[1]s")
216
+ test_kubernetes = harness.service.Kubernetes("test",
217
+ app_id=test.id,
218
+ name="%[1]s",
219
+ helm_version="V2",
220
+ description="description",
221
+ variables=[
222
+ {
223
+ "name": "test",
224
+ "value": "test_value",
225
+ "type": "TEXT",
226
+ },
227
+ {
228
+ "name": "test2",
229
+ "value": "test_value2",
230
+ "type": "TEXT",
231
+ },
232
+ ])
233
+ test_environment = harness.Environment("test",
234
+ app_id=test.id,
235
+ name="%[1]s",
236
+ type="%[2]s",
237
+ variable_overrides=[
238
+ {
239
+ "service_name": test_kubernetes.name,
240
+ "name": "test",
241
+ "value": "override",
242
+ "type": "TEXT",
243
+ },
244
+ {
245
+ "service_name": test_kubernetes.name,
246
+ "name": "test2",
247
+ "value": "override2",
248
+ "type": "TEXT",
249
+ },
250
+ ])
251
+ ```
252
+
253
+ ## Import
254
+
255
+ Import using the Harness application id and environment id.
256
+
257
+ ```sh
258
+ $ pulumi import harness:index/environment:Environment dev <application_id>/<environment_id>
259
+ ```
260
+
261
+ :param str resource_name: The name of the resource.
262
+ :param pulumi.ResourceOptions opts: Options for the resource.
263
+ :param pulumi.Input[str] app_id: The id of the application.
264
+ :param pulumi.Input[str] description: The description of the environment.
265
+ :param pulumi.Input[str] name: The name of the environment.
266
+ :param pulumi.Input[str] type: The type of the environment. Valid values are `PROD` and `NON_PROD`
267
+ :param pulumi.Input[Sequence[pulumi.Input[Union['EnvironmentVariableOverrideArgs', 'EnvironmentVariableOverrideArgsDict']]]] variable_overrides: Override for a service variable
268
+ """
269
+ ...
270
+ @overload
271
+ def __init__(__self__,
272
+ resource_name: str,
273
+ args: EnvironmentArgs,
274
+ opts: Optional[pulumi.ResourceOptions] = None):
275
+ """
276
+ Resource for creating an environment
277
+
278
+ ## Example Usage
279
+
280
+ ```python
281
+ import pulumi
282
+ import pulumi_harness as harness
283
+
284
+ test = harness.Application("test", name="%[1]s")
285
+ test_kubernetes = harness.service.Kubernetes("test",
286
+ app_id=test.id,
287
+ name="%[1]s",
288
+ helm_version="V2",
289
+ description="description",
290
+ variables=[
291
+ {
292
+ "name": "test",
293
+ "value": "test_value",
294
+ "type": "TEXT",
295
+ },
296
+ {
297
+ "name": "test2",
298
+ "value": "test_value2",
299
+ "type": "TEXT",
300
+ },
301
+ ])
302
+ test_environment = harness.Environment("test",
303
+ app_id=test.id,
304
+ name="%[1]s",
305
+ type="%[2]s",
306
+ variable_overrides=[
307
+ {
308
+ "service_name": test_kubernetes.name,
309
+ "name": "test",
310
+ "value": "override",
311
+ "type": "TEXT",
312
+ },
313
+ {
314
+ "service_name": test_kubernetes.name,
315
+ "name": "test2",
316
+ "value": "override2",
317
+ "type": "TEXT",
318
+ },
319
+ ])
320
+ ```
321
+
322
+ ## Import
323
+
324
+ Import using the Harness application id and environment id.
325
+
326
+ ```sh
327
+ $ pulumi import harness:index/environment:Environment dev <application_id>/<environment_id>
328
+ ```
329
+
330
+ :param str resource_name: The name of the resource.
331
+ :param EnvironmentArgs args: The arguments to use to populate this resource's properties.
332
+ :param pulumi.ResourceOptions opts: Options for the resource.
333
+ """
334
+ ...
335
+ def __init__(__self__, resource_name: str, *args, **kwargs):
336
+ resource_args, opts = _utilities.get_resource_args_opts(EnvironmentArgs, pulumi.ResourceOptions, *args, **kwargs)
337
+ if resource_args is not None:
338
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
339
+ else:
340
+ __self__._internal_init(resource_name, *args, **kwargs)
341
+
342
+ def _internal_init(__self__,
343
+ resource_name: str,
344
+ opts: Optional[pulumi.ResourceOptions] = None,
345
+ app_id: Optional[pulumi.Input[str]] = None,
346
+ description: Optional[pulumi.Input[str]] = None,
347
+ name: Optional[pulumi.Input[str]] = None,
348
+ type: Optional[pulumi.Input[str]] = None,
349
+ variable_overrides: Optional[pulumi.Input[Sequence[pulumi.Input[Union['EnvironmentVariableOverrideArgs', 'EnvironmentVariableOverrideArgsDict']]]]] = None,
350
+ __props__=None):
351
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
352
+ if not isinstance(opts, pulumi.ResourceOptions):
353
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
354
+ if opts.id is None:
355
+ if __props__ is not None:
356
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
357
+ __props__ = EnvironmentArgs.__new__(EnvironmentArgs)
358
+
359
+ if app_id is None and not opts.urn:
360
+ raise TypeError("Missing required property 'app_id'")
361
+ __props__.__dict__["app_id"] = app_id
362
+ __props__.__dict__["description"] = description
363
+ __props__.__dict__["name"] = name
364
+ if type is None and not opts.urn:
365
+ raise TypeError("Missing required property 'type'")
366
+ __props__.__dict__["type"] = type
367
+ __props__.__dict__["variable_overrides"] = variable_overrides
368
+ super(Environment, __self__).__init__(
369
+ 'harness:index/environment:Environment',
370
+ resource_name,
371
+ __props__,
372
+ opts)
373
+
374
+ @staticmethod
375
+ def get(resource_name: str,
376
+ id: pulumi.Input[str],
377
+ opts: Optional[pulumi.ResourceOptions] = None,
378
+ app_id: Optional[pulumi.Input[str]] = None,
379
+ description: Optional[pulumi.Input[str]] = None,
380
+ name: Optional[pulumi.Input[str]] = None,
381
+ type: Optional[pulumi.Input[str]] = None,
382
+ variable_overrides: Optional[pulumi.Input[Sequence[pulumi.Input[Union['EnvironmentVariableOverrideArgs', 'EnvironmentVariableOverrideArgsDict']]]]] = None) -> 'Environment':
383
+ """
384
+ Get an existing Environment resource's state with the given name, id, and optional extra
385
+ properties used to qualify the lookup.
386
+
387
+ :param str resource_name: The unique name of the resulting resource.
388
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
389
+ :param pulumi.ResourceOptions opts: Options for the resource.
390
+ :param pulumi.Input[str] app_id: The id of the application.
391
+ :param pulumi.Input[str] description: The description of the environment.
392
+ :param pulumi.Input[str] name: The name of the environment.
393
+ :param pulumi.Input[str] type: The type of the environment. Valid values are `PROD` and `NON_PROD`
394
+ :param pulumi.Input[Sequence[pulumi.Input[Union['EnvironmentVariableOverrideArgs', 'EnvironmentVariableOverrideArgsDict']]]] variable_overrides: Override for a service variable
395
+ """
396
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
397
+
398
+ __props__ = _EnvironmentState.__new__(_EnvironmentState)
399
+
400
+ __props__.__dict__["app_id"] = app_id
401
+ __props__.__dict__["description"] = description
402
+ __props__.__dict__["name"] = name
403
+ __props__.__dict__["type"] = type
404
+ __props__.__dict__["variable_overrides"] = variable_overrides
405
+ return Environment(resource_name, opts=opts, __props__=__props__)
406
+
407
+ @property
408
+ @pulumi.getter(name="appId")
409
+ def app_id(self) -> pulumi.Output[str]:
410
+ """
411
+ The id of the application.
412
+ """
413
+ return pulumi.get(self, "app_id")
414
+
415
+ @property
416
+ @pulumi.getter
417
+ def description(self) -> pulumi.Output[Optional[str]]:
418
+ """
419
+ The description of the environment.
420
+ """
421
+ return pulumi.get(self, "description")
422
+
423
+ @property
424
+ @pulumi.getter
425
+ def name(self) -> pulumi.Output[str]:
426
+ """
427
+ The name of the environment.
428
+ """
429
+ return pulumi.get(self, "name")
430
+
431
+ @property
432
+ @pulumi.getter
433
+ def type(self) -> pulumi.Output[str]:
434
+ """
435
+ The type of the environment. Valid values are `PROD` and `NON_PROD`
436
+ """
437
+ return pulumi.get(self, "type")
438
+
439
+ @property
440
+ @pulumi.getter(name="variableOverrides")
441
+ def variable_overrides(self) -> pulumi.Output[Optional[Sequence['outputs.EnvironmentVariableOverride']]]:
442
+ """
443
+ Override for a service variable
444
+ """
445
+ return pulumi.get(self, "variable_overrides")
446
+
@@ -0,0 +1,180 @@
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__ = [
18
+ 'GetApplicationResult',
19
+ 'AwaitableGetApplicationResult',
20
+ 'get_application',
21
+ 'get_application_output',
22
+ ]
23
+
24
+ @pulumi.output_type
25
+ class GetApplicationResult:
26
+ """
27
+ A collection of values returned by getApplication.
28
+ """
29
+ def __init__(__self__, description=None, git_sync_connector_id=None, git_sync_enabled=None, id=None, is_manual_trigger_authorized=None, name=None):
30
+ if description and not isinstance(description, str):
31
+ raise TypeError("Expected argument 'description' to be a str")
32
+ pulumi.set(__self__, "description", description)
33
+ if git_sync_connector_id and not isinstance(git_sync_connector_id, str):
34
+ raise TypeError("Expected argument 'git_sync_connector_id' to be a str")
35
+ pulumi.set(__self__, "git_sync_connector_id", git_sync_connector_id)
36
+ if git_sync_enabled and not isinstance(git_sync_enabled, bool):
37
+ raise TypeError("Expected argument 'git_sync_enabled' to be a bool")
38
+ pulumi.set(__self__, "git_sync_enabled", git_sync_enabled)
39
+ if id and not isinstance(id, str):
40
+ raise TypeError("Expected argument 'id' to be a str")
41
+ pulumi.set(__self__, "id", id)
42
+ if is_manual_trigger_authorized and not isinstance(is_manual_trigger_authorized, bool):
43
+ raise TypeError("Expected argument 'is_manual_trigger_authorized' to be a bool")
44
+ pulumi.set(__self__, "is_manual_trigger_authorized", is_manual_trigger_authorized)
45
+ if name and not isinstance(name, str):
46
+ raise TypeError("Expected argument 'name' to be a str")
47
+ pulumi.set(__self__, "name", name)
48
+
49
+ @property
50
+ @pulumi.getter
51
+ def description(self) -> Optional[str]:
52
+ """
53
+ The application description
54
+ """
55
+ return pulumi.get(self, "description")
56
+
57
+ @property
58
+ @pulumi.getter(name="gitSyncConnectorId")
59
+ def git_sync_connector_id(self) -> Optional[str]:
60
+ """
61
+ The id of the git sync connector
62
+ """
63
+ return pulumi.get(self, "git_sync_connector_id")
64
+
65
+ @property
66
+ @pulumi.getter(name="gitSyncEnabled")
67
+ def git_sync_enabled(self) -> Optional[bool]:
68
+ """
69
+ True if git sync is enabled on this application
70
+ """
71
+ return pulumi.get(self, "git_sync_enabled")
72
+
73
+ @property
74
+ @pulumi.getter
75
+ def id(self) -> Optional[str]:
76
+ """
77
+ Unique identifier of the application
78
+ """
79
+ return pulumi.get(self, "id")
80
+
81
+ @property
82
+ @pulumi.getter(name="isManualTriggerAuthorized")
83
+ def is_manual_trigger_authorized(self) -> Optional[bool]:
84
+ """
85
+ When this is set to true, all manual triggers will require API Key authorization
86
+ """
87
+ return pulumi.get(self, "is_manual_trigger_authorized")
88
+
89
+ @property
90
+ @pulumi.getter
91
+ def name(self) -> Optional[str]:
92
+ """
93
+ The name of the application
94
+ """
95
+ return pulumi.get(self, "name")
96
+
97
+
98
+ class AwaitableGetApplicationResult(GetApplicationResult):
99
+ # pylint: disable=using-constant-test
100
+ def __await__(self):
101
+ if False:
102
+ yield self
103
+ return GetApplicationResult(
104
+ description=self.description,
105
+ git_sync_connector_id=self.git_sync_connector_id,
106
+ git_sync_enabled=self.git_sync_enabled,
107
+ id=self.id,
108
+ is_manual_trigger_authorized=self.is_manual_trigger_authorized,
109
+ name=self.name)
110
+
111
+
112
+ def get_application(description: Optional[str] = None,
113
+ git_sync_connector_id: Optional[str] = None,
114
+ git_sync_enabled: Optional[bool] = None,
115
+ id: Optional[str] = None,
116
+ is_manual_trigger_authorized: Optional[bool] = None,
117
+ name: Optional[str] = None,
118
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetApplicationResult:
119
+ """
120
+ Data source for retrieving a Harness application
121
+
122
+
123
+ :param str description: The application description
124
+ :param str git_sync_connector_id: The id of the git sync connector
125
+ :param bool git_sync_enabled: True if git sync is enabled on this application
126
+ :param str id: Unique identifier of the application
127
+ :param bool is_manual_trigger_authorized: When this is set to true, all manual triggers will require API Key authorization
128
+ :param str name: The name of the application
129
+ """
130
+ __args__ = dict()
131
+ __args__['description'] = description
132
+ __args__['gitSyncConnectorId'] = git_sync_connector_id
133
+ __args__['gitSyncEnabled'] = git_sync_enabled
134
+ __args__['id'] = id
135
+ __args__['isManualTriggerAuthorized'] = is_manual_trigger_authorized
136
+ __args__['name'] = name
137
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
138
+ __ret__ = pulumi.runtime.invoke('harness:index/getApplication:getApplication', __args__, opts=opts, typ=GetApplicationResult).value
139
+
140
+ return AwaitableGetApplicationResult(
141
+ description=pulumi.get(__ret__, 'description'),
142
+ git_sync_connector_id=pulumi.get(__ret__, 'git_sync_connector_id'),
143
+ git_sync_enabled=pulumi.get(__ret__, 'git_sync_enabled'),
144
+ id=pulumi.get(__ret__, 'id'),
145
+ is_manual_trigger_authorized=pulumi.get(__ret__, 'is_manual_trigger_authorized'),
146
+ name=pulumi.get(__ret__, 'name'))
147
+ def get_application_output(description: Optional[pulumi.Input[Optional[str]]] = None,
148
+ git_sync_connector_id: Optional[pulumi.Input[Optional[str]]] = None,
149
+ git_sync_enabled: Optional[pulumi.Input[Optional[bool]]] = None,
150
+ id: Optional[pulumi.Input[Optional[str]]] = None,
151
+ is_manual_trigger_authorized: Optional[pulumi.Input[Optional[bool]]] = None,
152
+ name: Optional[pulumi.Input[Optional[str]]] = None,
153
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetApplicationResult]:
154
+ """
155
+ Data source for retrieving a Harness application
156
+
157
+
158
+ :param str description: The application description
159
+ :param str git_sync_connector_id: The id of the git sync connector
160
+ :param bool git_sync_enabled: True if git sync is enabled on this application
161
+ :param str id: Unique identifier of the application
162
+ :param bool is_manual_trigger_authorized: When this is set to true, all manual triggers will require API Key authorization
163
+ :param str name: The name of the application
164
+ """
165
+ __args__ = dict()
166
+ __args__['description'] = description
167
+ __args__['gitSyncConnectorId'] = git_sync_connector_id
168
+ __args__['gitSyncEnabled'] = git_sync_enabled
169
+ __args__['id'] = id
170
+ __args__['isManualTriggerAuthorized'] = is_manual_trigger_authorized
171
+ __args__['name'] = name
172
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
173
+ __ret__ = pulumi.runtime.invoke_output('harness:index/getApplication:getApplication', __args__, opts=opts, typ=GetApplicationResult)
174
+ return __ret__.apply(lambda __response__: GetApplicationResult(
175
+ description=pulumi.get(__response__, 'description'),
176
+ git_sync_connector_id=pulumi.get(__response__, 'git_sync_connector_id'),
177
+ git_sync_enabled=pulumi.get(__response__, 'git_sync_enabled'),
178
+ id=pulumi.get(__response__, 'id'),
179
+ is_manual_trigger_authorized=pulumi.get(__response__, 'is_manual_trigger_authorized'),
180
+ name=pulumi.get(__response__, 'name')))