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,760 @@
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__ = ['AwsProxyArgs', 'AwsProxy']
20
+
21
+ @pulumi.input_type
22
+ class AwsProxyArgs:
23
+ def __init__(__self__, *,
24
+ api_key: pulumi.Input[str],
25
+ cloud_connector_id: pulumi.Input[str],
26
+ delete_cloud_resources_on_destroy: pulumi.Input[bool],
27
+ host_name: pulumi.Input[str],
28
+ machine_type: pulumi.Input[str],
29
+ region: pulumi.Input[str],
30
+ vpc: pulumi.Input[str],
31
+ allocate_static_ip: Optional[pulumi.Input[bool]] = None,
32
+ certificates: Optional[pulumi.Input['AwsProxyCertificatesArgs']] = None,
33
+ keypair: Optional[pulumi.Input[str]] = None,
34
+ name: Optional[pulumi.Input[str]] = None,
35
+ route53_hosted_zone_id: Optional[pulumi.Input[str]] = None,
36
+ security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
37
+ """
38
+ The set of arguments for constructing a AwsProxy resource.
39
+ :param pulumi.Input[str] api_key: Harness NG API key
40
+ :param pulumi.Input[str] cloud_connector_id: Id of the cloud connector
41
+ :param pulumi.Input[str] host_name: Hostname for the proxy
42
+ :param pulumi.Input[str] machine_type: Machine instance type
43
+ :param pulumi.Input[str] region: Region in which cloud resources are hosted
44
+ :param pulumi.Input[str] vpc: VPC in which cloud resources are hosted
45
+ :param pulumi.Input[bool] allocate_static_ip: Boolean value to indicate if proxy vm needs to have static IP
46
+ :param pulumi.Input[str] name: Name of the proxy
47
+ :param pulumi.Input[str] route53_hosted_zone_id: Route 53 hosted zone id
48
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: Security Group to define the security rules that determine the inbound and outbound traffic
49
+ """
50
+ pulumi.set(__self__, "api_key", api_key)
51
+ pulumi.set(__self__, "cloud_connector_id", cloud_connector_id)
52
+ pulumi.set(__self__, "delete_cloud_resources_on_destroy", delete_cloud_resources_on_destroy)
53
+ pulumi.set(__self__, "host_name", host_name)
54
+ pulumi.set(__self__, "machine_type", machine_type)
55
+ pulumi.set(__self__, "region", region)
56
+ pulumi.set(__self__, "vpc", vpc)
57
+ if allocate_static_ip is not None:
58
+ pulumi.set(__self__, "allocate_static_ip", allocate_static_ip)
59
+ if certificates is not None:
60
+ pulumi.set(__self__, "certificates", certificates)
61
+ if keypair is not None:
62
+ pulumi.set(__self__, "keypair", keypair)
63
+ if name is not None:
64
+ pulumi.set(__self__, "name", name)
65
+ if route53_hosted_zone_id is not None:
66
+ pulumi.set(__self__, "route53_hosted_zone_id", route53_hosted_zone_id)
67
+ if security_groups is not None:
68
+ pulumi.set(__self__, "security_groups", security_groups)
69
+
70
+ @property
71
+ @pulumi.getter(name="apiKey")
72
+ def api_key(self) -> pulumi.Input[str]:
73
+ """
74
+ Harness NG API key
75
+ """
76
+ return pulumi.get(self, "api_key")
77
+
78
+ @api_key.setter
79
+ def api_key(self, value: pulumi.Input[str]):
80
+ pulumi.set(self, "api_key", value)
81
+
82
+ @property
83
+ @pulumi.getter(name="cloudConnectorId")
84
+ def cloud_connector_id(self) -> pulumi.Input[str]:
85
+ """
86
+ Id of the cloud connector
87
+ """
88
+ return pulumi.get(self, "cloud_connector_id")
89
+
90
+ @cloud_connector_id.setter
91
+ def cloud_connector_id(self, value: pulumi.Input[str]):
92
+ pulumi.set(self, "cloud_connector_id", value)
93
+
94
+ @property
95
+ @pulumi.getter(name="deleteCloudResourcesOnDestroy")
96
+ def delete_cloud_resources_on_destroy(self) -> pulumi.Input[bool]:
97
+ return pulumi.get(self, "delete_cloud_resources_on_destroy")
98
+
99
+ @delete_cloud_resources_on_destroy.setter
100
+ def delete_cloud_resources_on_destroy(self, value: pulumi.Input[bool]):
101
+ pulumi.set(self, "delete_cloud_resources_on_destroy", value)
102
+
103
+ @property
104
+ @pulumi.getter(name="hostName")
105
+ def host_name(self) -> pulumi.Input[str]:
106
+ """
107
+ Hostname for the proxy
108
+ """
109
+ return pulumi.get(self, "host_name")
110
+
111
+ @host_name.setter
112
+ def host_name(self, value: pulumi.Input[str]):
113
+ pulumi.set(self, "host_name", value)
114
+
115
+ @property
116
+ @pulumi.getter(name="machineType")
117
+ def machine_type(self) -> pulumi.Input[str]:
118
+ """
119
+ Machine instance type
120
+ """
121
+ return pulumi.get(self, "machine_type")
122
+
123
+ @machine_type.setter
124
+ def machine_type(self, value: pulumi.Input[str]):
125
+ pulumi.set(self, "machine_type", value)
126
+
127
+ @property
128
+ @pulumi.getter
129
+ def region(self) -> pulumi.Input[str]:
130
+ """
131
+ Region in which cloud resources are hosted
132
+ """
133
+ return pulumi.get(self, "region")
134
+
135
+ @region.setter
136
+ def region(self, value: pulumi.Input[str]):
137
+ pulumi.set(self, "region", value)
138
+
139
+ @property
140
+ @pulumi.getter
141
+ def vpc(self) -> pulumi.Input[str]:
142
+ """
143
+ VPC in which cloud resources are hosted
144
+ """
145
+ return pulumi.get(self, "vpc")
146
+
147
+ @vpc.setter
148
+ def vpc(self, value: pulumi.Input[str]):
149
+ pulumi.set(self, "vpc", value)
150
+
151
+ @property
152
+ @pulumi.getter(name="allocateStaticIp")
153
+ def allocate_static_ip(self) -> Optional[pulumi.Input[bool]]:
154
+ """
155
+ Boolean value to indicate if proxy vm needs to have static IP
156
+ """
157
+ return pulumi.get(self, "allocate_static_ip")
158
+
159
+ @allocate_static_ip.setter
160
+ def allocate_static_ip(self, value: Optional[pulumi.Input[bool]]):
161
+ pulumi.set(self, "allocate_static_ip", value)
162
+
163
+ @property
164
+ @pulumi.getter
165
+ def certificates(self) -> Optional[pulumi.Input['AwsProxyCertificatesArgs']]:
166
+ return pulumi.get(self, "certificates")
167
+
168
+ @certificates.setter
169
+ def certificates(self, value: Optional[pulumi.Input['AwsProxyCertificatesArgs']]):
170
+ pulumi.set(self, "certificates", value)
171
+
172
+ @property
173
+ @pulumi.getter
174
+ def keypair(self) -> Optional[pulumi.Input[str]]:
175
+ return pulumi.get(self, "keypair")
176
+
177
+ @keypair.setter
178
+ def keypair(self, value: Optional[pulumi.Input[str]]):
179
+ pulumi.set(self, "keypair", value)
180
+
181
+ @property
182
+ @pulumi.getter
183
+ def name(self) -> Optional[pulumi.Input[str]]:
184
+ """
185
+ Name of the proxy
186
+ """
187
+ return pulumi.get(self, "name")
188
+
189
+ @name.setter
190
+ def name(self, value: Optional[pulumi.Input[str]]):
191
+ pulumi.set(self, "name", value)
192
+
193
+ @property
194
+ @pulumi.getter(name="route53HostedZoneId")
195
+ def route53_hosted_zone_id(self) -> Optional[pulumi.Input[str]]:
196
+ """
197
+ Route 53 hosted zone id
198
+ """
199
+ return pulumi.get(self, "route53_hosted_zone_id")
200
+
201
+ @route53_hosted_zone_id.setter
202
+ def route53_hosted_zone_id(self, value: Optional[pulumi.Input[str]]):
203
+ pulumi.set(self, "route53_hosted_zone_id", value)
204
+
205
+ @property
206
+ @pulumi.getter(name="securityGroups")
207
+ def security_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
208
+ """
209
+ Security Group to define the security rules that determine the inbound and outbound traffic
210
+ """
211
+ return pulumi.get(self, "security_groups")
212
+
213
+ @security_groups.setter
214
+ def security_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
215
+ pulumi.set(self, "security_groups", value)
216
+
217
+
218
+ @pulumi.input_type
219
+ class _AwsProxyState:
220
+ def __init__(__self__, *,
221
+ allocate_static_ip: Optional[pulumi.Input[bool]] = None,
222
+ api_key: Optional[pulumi.Input[str]] = None,
223
+ certificates: Optional[pulumi.Input['AwsProxyCertificatesArgs']] = None,
224
+ cloud_connector_id: Optional[pulumi.Input[str]] = None,
225
+ delete_cloud_resources_on_destroy: Optional[pulumi.Input[bool]] = None,
226
+ host_name: Optional[pulumi.Input[str]] = None,
227
+ identifier: Optional[pulumi.Input[str]] = None,
228
+ keypair: Optional[pulumi.Input[str]] = None,
229
+ machine_type: Optional[pulumi.Input[str]] = None,
230
+ name: Optional[pulumi.Input[str]] = None,
231
+ region: Optional[pulumi.Input[str]] = None,
232
+ route53_hosted_zone_id: Optional[pulumi.Input[str]] = None,
233
+ security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
234
+ vpc: Optional[pulumi.Input[str]] = None):
235
+ """
236
+ Input properties used for looking up and filtering AwsProxy resources.
237
+ :param pulumi.Input[bool] allocate_static_ip: Boolean value to indicate if proxy vm needs to have static IP
238
+ :param pulumi.Input[str] api_key: Harness NG API key
239
+ :param pulumi.Input[str] cloud_connector_id: Id of the cloud connector
240
+ :param pulumi.Input[str] host_name: Hostname for the proxy
241
+ :param pulumi.Input[str] identifier: Unique identifier of the resource
242
+ :param pulumi.Input[str] machine_type: Machine instance type
243
+ :param pulumi.Input[str] name: Name of the proxy
244
+ :param pulumi.Input[str] region: Region in which cloud resources are hosted
245
+ :param pulumi.Input[str] route53_hosted_zone_id: Route 53 hosted zone id
246
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: Security Group to define the security rules that determine the inbound and outbound traffic
247
+ :param pulumi.Input[str] vpc: VPC in which cloud resources are hosted
248
+ """
249
+ if allocate_static_ip is not None:
250
+ pulumi.set(__self__, "allocate_static_ip", allocate_static_ip)
251
+ if api_key is not None:
252
+ pulumi.set(__self__, "api_key", api_key)
253
+ if certificates is not None:
254
+ pulumi.set(__self__, "certificates", certificates)
255
+ if cloud_connector_id is not None:
256
+ pulumi.set(__self__, "cloud_connector_id", cloud_connector_id)
257
+ if delete_cloud_resources_on_destroy is not None:
258
+ pulumi.set(__self__, "delete_cloud_resources_on_destroy", delete_cloud_resources_on_destroy)
259
+ if host_name is not None:
260
+ pulumi.set(__self__, "host_name", host_name)
261
+ if identifier is not None:
262
+ pulumi.set(__self__, "identifier", identifier)
263
+ if keypair is not None:
264
+ pulumi.set(__self__, "keypair", keypair)
265
+ if machine_type is not None:
266
+ pulumi.set(__self__, "machine_type", machine_type)
267
+ if name is not None:
268
+ pulumi.set(__self__, "name", name)
269
+ if region is not None:
270
+ pulumi.set(__self__, "region", region)
271
+ if route53_hosted_zone_id is not None:
272
+ pulumi.set(__self__, "route53_hosted_zone_id", route53_hosted_zone_id)
273
+ if security_groups is not None:
274
+ pulumi.set(__self__, "security_groups", security_groups)
275
+ if vpc is not None:
276
+ pulumi.set(__self__, "vpc", vpc)
277
+
278
+ @property
279
+ @pulumi.getter(name="allocateStaticIp")
280
+ def allocate_static_ip(self) -> Optional[pulumi.Input[bool]]:
281
+ """
282
+ Boolean value to indicate if proxy vm needs to have static IP
283
+ """
284
+ return pulumi.get(self, "allocate_static_ip")
285
+
286
+ @allocate_static_ip.setter
287
+ def allocate_static_ip(self, value: Optional[pulumi.Input[bool]]):
288
+ pulumi.set(self, "allocate_static_ip", value)
289
+
290
+ @property
291
+ @pulumi.getter(name="apiKey")
292
+ def api_key(self) -> Optional[pulumi.Input[str]]:
293
+ """
294
+ Harness NG API key
295
+ """
296
+ return pulumi.get(self, "api_key")
297
+
298
+ @api_key.setter
299
+ def api_key(self, value: Optional[pulumi.Input[str]]):
300
+ pulumi.set(self, "api_key", value)
301
+
302
+ @property
303
+ @pulumi.getter
304
+ def certificates(self) -> Optional[pulumi.Input['AwsProxyCertificatesArgs']]:
305
+ return pulumi.get(self, "certificates")
306
+
307
+ @certificates.setter
308
+ def certificates(self, value: Optional[pulumi.Input['AwsProxyCertificatesArgs']]):
309
+ pulumi.set(self, "certificates", value)
310
+
311
+ @property
312
+ @pulumi.getter(name="cloudConnectorId")
313
+ def cloud_connector_id(self) -> Optional[pulumi.Input[str]]:
314
+ """
315
+ Id of the cloud connector
316
+ """
317
+ return pulumi.get(self, "cloud_connector_id")
318
+
319
+ @cloud_connector_id.setter
320
+ def cloud_connector_id(self, value: Optional[pulumi.Input[str]]):
321
+ pulumi.set(self, "cloud_connector_id", value)
322
+
323
+ @property
324
+ @pulumi.getter(name="deleteCloudResourcesOnDestroy")
325
+ def delete_cloud_resources_on_destroy(self) -> Optional[pulumi.Input[bool]]:
326
+ return pulumi.get(self, "delete_cloud_resources_on_destroy")
327
+
328
+ @delete_cloud_resources_on_destroy.setter
329
+ def delete_cloud_resources_on_destroy(self, value: Optional[pulumi.Input[bool]]):
330
+ pulumi.set(self, "delete_cloud_resources_on_destroy", value)
331
+
332
+ @property
333
+ @pulumi.getter(name="hostName")
334
+ def host_name(self) -> Optional[pulumi.Input[str]]:
335
+ """
336
+ Hostname for the proxy
337
+ """
338
+ return pulumi.get(self, "host_name")
339
+
340
+ @host_name.setter
341
+ def host_name(self, value: Optional[pulumi.Input[str]]):
342
+ pulumi.set(self, "host_name", value)
343
+
344
+ @property
345
+ @pulumi.getter
346
+ def identifier(self) -> Optional[pulumi.Input[str]]:
347
+ """
348
+ Unique identifier of the resource
349
+ """
350
+ return pulumi.get(self, "identifier")
351
+
352
+ @identifier.setter
353
+ def identifier(self, value: Optional[pulumi.Input[str]]):
354
+ pulumi.set(self, "identifier", value)
355
+
356
+ @property
357
+ @pulumi.getter
358
+ def keypair(self) -> Optional[pulumi.Input[str]]:
359
+ return pulumi.get(self, "keypair")
360
+
361
+ @keypair.setter
362
+ def keypair(self, value: Optional[pulumi.Input[str]]):
363
+ pulumi.set(self, "keypair", value)
364
+
365
+ @property
366
+ @pulumi.getter(name="machineType")
367
+ def machine_type(self) -> Optional[pulumi.Input[str]]:
368
+ """
369
+ Machine instance type
370
+ """
371
+ return pulumi.get(self, "machine_type")
372
+
373
+ @machine_type.setter
374
+ def machine_type(self, value: Optional[pulumi.Input[str]]):
375
+ pulumi.set(self, "machine_type", value)
376
+
377
+ @property
378
+ @pulumi.getter
379
+ def name(self) -> Optional[pulumi.Input[str]]:
380
+ """
381
+ Name of the proxy
382
+ """
383
+ return pulumi.get(self, "name")
384
+
385
+ @name.setter
386
+ def name(self, value: Optional[pulumi.Input[str]]):
387
+ pulumi.set(self, "name", value)
388
+
389
+ @property
390
+ @pulumi.getter
391
+ def region(self) -> Optional[pulumi.Input[str]]:
392
+ """
393
+ Region in which cloud resources are hosted
394
+ """
395
+ return pulumi.get(self, "region")
396
+
397
+ @region.setter
398
+ def region(self, value: Optional[pulumi.Input[str]]):
399
+ pulumi.set(self, "region", value)
400
+
401
+ @property
402
+ @pulumi.getter(name="route53HostedZoneId")
403
+ def route53_hosted_zone_id(self) -> Optional[pulumi.Input[str]]:
404
+ """
405
+ Route 53 hosted zone id
406
+ """
407
+ return pulumi.get(self, "route53_hosted_zone_id")
408
+
409
+ @route53_hosted_zone_id.setter
410
+ def route53_hosted_zone_id(self, value: Optional[pulumi.Input[str]]):
411
+ pulumi.set(self, "route53_hosted_zone_id", value)
412
+
413
+ @property
414
+ @pulumi.getter(name="securityGroups")
415
+ def security_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
416
+ """
417
+ Security Group to define the security rules that determine the inbound and outbound traffic
418
+ """
419
+ return pulumi.get(self, "security_groups")
420
+
421
+ @security_groups.setter
422
+ def security_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
423
+ pulumi.set(self, "security_groups", value)
424
+
425
+ @property
426
+ @pulumi.getter
427
+ def vpc(self) -> Optional[pulumi.Input[str]]:
428
+ """
429
+ VPC in which cloud resources are hosted
430
+ """
431
+ return pulumi.get(self, "vpc")
432
+
433
+ @vpc.setter
434
+ def vpc(self, value: Optional[pulumi.Input[str]]):
435
+ pulumi.set(self, "vpc", value)
436
+
437
+
438
+ class AwsProxy(pulumi.CustomResource):
439
+ @overload
440
+ def __init__(__self__,
441
+ resource_name: str,
442
+ opts: Optional[pulumi.ResourceOptions] = None,
443
+ allocate_static_ip: Optional[pulumi.Input[bool]] = None,
444
+ api_key: Optional[pulumi.Input[str]] = None,
445
+ certificates: Optional[pulumi.Input[Union['AwsProxyCertificatesArgs', 'AwsProxyCertificatesArgsDict']]] = None,
446
+ cloud_connector_id: Optional[pulumi.Input[str]] = None,
447
+ delete_cloud_resources_on_destroy: Optional[pulumi.Input[bool]] = None,
448
+ host_name: Optional[pulumi.Input[str]] = None,
449
+ keypair: Optional[pulumi.Input[str]] = None,
450
+ machine_type: Optional[pulumi.Input[str]] = None,
451
+ name: Optional[pulumi.Input[str]] = None,
452
+ region: Optional[pulumi.Input[str]] = None,
453
+ route53_hosted_zone_id: Optional[pulumi.Input[str]] = None,
454
+ security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
455
+ vpc: Optional[pulumi.Input[str]] = None,
456
+ __props__=None):
457
+ """
458
+ Resource for creating an AWS Autostopping proxy
459
+
460
+ ## Example Usage
461
+
462
+ ```python
463
+ import pulumi
464
+ import pulumi_harness as harness
465
+
466
+ test = harness.autostopping.AwsProxy("test",
467
+ name="name",
468
+ cloud_connector_id="cloud_connector_id",
469
+ host_name="host_name",
470
+ region="region",
471
+ vpc="vpc",
472
+ security_groups=[
473
+ "sg1",
474
+ "sg2",
475
+ ],
476
+ route53_hosted_zone_id="/hostedzone/zone_id",
477
+ machine_type="t2.medium",
478
+ api_key="",
479
+ allocate_static_ip=True,
480
+ delete_cloud_resources_on_destroy=True)
481
+ ```
482
+
483
+ :param str resource_name: The name of the resource.
484
+ :param pulumi.ResourceOptions opts: Options for the resource.
485
+ :param pulumi.Input[bool] allocate_static_ip: Boolean value to indicate if proxy vm needs to have static IP
486
+ :param pulumi.Input[str] api_key: Harness NG API key
487
+ :param pulumi.Input[str] cloud_connector_id: Id of the cloud connector
488
+ :param pulumi.Input[str] host_name: Hostname for the proxy
489
+ :param pulumi.Input[str] machine_type: Machine instance type
490
+ :param pulumi.Input[str] name: Name of the proxy
491
+ :param pulumi.Input[str] region: Region in which cloud resources are hosted
492
+ :param pulumi.Input[str] route53_hosted_zone_id: Route 53 hosted zone id
493
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: Security Group to define the security rules that determine the inbound and outbound traffic
494
+ :param pulumi.Input[str] vpc: VPC in which cloud resources are hosted
495
+ """
496
+ ...
497
+ @overload
498
+ def __init__(__self__,
499
+ resource_name: str,
500
+ args: AwsProxyArgs,
501
+ opts: Optional[pulumi.ResourceOptions] = None):
502
+ """
503
+ Resource for creating an AWS Autostopping proxy
504
+
505
+ ## Example Usage
506
+
507
+ ```python
508
+ import pulumi
509
+ import pulumi_harness as harness
510
+
511
+ test = harness.autostopping.AwsProxy("test",
512
+ name="name",
513
+ cloud_connector_id="cloud_connector_id",
514
+ host_name="host_name",
515
+ region="region",
516
+ vpc="vpc",
517
+ security_groups=[
518
+ "sg1",
519
+ "sg2",
520
+ ],
521
+ route53_hosted_zone_id="/hostedzone/zone_id",
522
+ machine_type="t2.medium",
523
+ api_key="",
524
+ allocate_static_ip=True,
525
+ delete_cloud_resources_on_destroy=True)
526
+ ```
527
+
528
+ :param str resource_name: The name of the resource.
529
+ :param AwsProxyArgs args: The arguments to use to populate this resource's properties.
530
+ :param pulumi.ResourceOptions opts: Options for the resource.
531
+ """
532
+ ...
533
+ def __init__(__self__, resource_name: str, *args, **kwargs):
534
+ resource_args, opts = _utilities.get_resource_args_opts(AwsProxyArgs, pulumi.ResourceOptions, *args, **kwargs)
535
+ if resource_args is not None:
536
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
537
+ else:
538
+ __self__._internal_init(resource_name, *args, **kwargs)
539
+
540
+ def _internal_init(__self__,
541
+ resource_name: str,
542
+ opts: Optional[pulumi.ResourceOptions] = None,
543
+ allocate_static_ip: Optional[pulumi.Input[bool]] = None,
544
+ api_key: Optional[pulumi.Input[str]] = None,
545
+ certificates: Optional[pulumi.Input[Union['AwsProxyCertificatesArgs', 'AwsProxyCertificatesArgsDict']]] = None,
546
+ cloud_connector_id: Optional[pulumi.Input[str]] = None,
547
+ delete_cloud_resources_on_destroy: Optional[pulumi.Input[bool]] = None,
548
+ host_name: Optional[pulumi.Input[str]] = None,
549
+ keypair: Optional[pulumi.Input[str]] = None,
550
+ machine_type: Optional[pulumi.Input[str]] = None,
551
+ name: Optional[pulumi.Input[str]] = None,
552
+ region: Optional[pulumi.Input[str]] = None,
553
+ route53_hosted_zone_id: Optional[pulumi.Input[str]] = None,
554
+ security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
555
+ vpc: Optional[pulumi.Input[str]] = None,
556
+ __props__=None):
557
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
558
+ if not isinstance(opts, pulumi.ResourceOptions):
559
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
560
+ if opts.id is None:
561
+ if __props__ is not None:
562
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
563
+ __props__ = AwsProxyArgs.__new__(AwsProxyArgs)
564
+
565
+ __props__.__dict__["allocate_static_ip"] = allocate_static_ip
566
+ if api_key is None and not opts.urn:
567
+ raise TypeError("Missing required property 'api_key'")
568
+ __props__.__dict__["api_key"] = None if api_key is None else pulumi.Output.secret(api_key)
569
+ __props__.__dict__["certificates"] = certificates
570
+ if cloud_connector_id is None and not opts.urn:
571
+ raise TypeError("Missing required property 'cloud_connector_id'")
572
+ __props__.__dict__["cloud_connector_id"] = cloud_connector_id
573
+ if delete_cloud_resources_on_destroy is None and not opts.urn:
574
+ raise TypeError("Missing required property 'delete_cloud_resources_on_destroy'")
575
+ __props__.__dict__["delete_cloud_resources_on_destroy"] = delete_cloud_resources_on_destroy
576
+ if host_name is None and not opts.urn:
577
+ raise TypeError("Missing required property 'host_name'")
578
+ __props__.__dict__["host_name"] = host_name
579
+ __props__.__dict__["keypair"] = keypair
580
+ if machine_type is None and not opts.urn:
581
+ raise TypeError("Missing required property 'machine_type'")
582
+ __props__.__dict__["machine_type"] = machine_type
583
+ __props__.__dict__["name"] = name
584
+ if region is None and not opts.urn:
585
+ raise TypeError("Missing required property 'region'")
586
+ __props__.__dict__["region"] = region
587
+ __props__.__dict__["route53_hosted_zone_id"] = route53_hosted_zone_id
588
+ __props__.__dict__["security_groups"] = security_groups
589
+ if vpc is None and not opts.urn:
590
+ raise TypeError("Missing required property 'vpc'")
591
+ __props__.__dict__["vpc"] = vpc
592
+ __props__.__dict__["identifier"] = None
593
+ secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["apiKey"])
594
+ opts = pulumi.ResourceOptions.merge(opts, secret_opts)
595
+ super(AwsProxy, __self__).__init__(
596
+ 'harness:autostopping/awsProxy:AwsProxy',
597
+ resource_name,
598
+ __props__,
599
+ opts)
600
+
601
+ @staticmethod
602
+ def get(resource_name: str,
603
+ id: pulumi.Input[str],
604
+ opts: Optional[pulumi.ResourceOptions] = None,
605
+ allocate_static_ip: Optional[pulumi.Input[bool]] = None,
606
+ api_key: Optional[pulumi.Input[str]] = None,
607
+ certificates: Optional[pulumi.Input[Union['AwsProxyCertificatesArgs', 'AwsProxyCertificatesArgsDict']]] = None,
608
+ cloud_connector_id: Optional[pulumi.Input[str]] = None,
609
+ delete_cloud_resources_on_destroy: Optional[pulumi.Input[bool]] = None,
610
+ host_name: Optional[pulumi.Input[str]] = None,
611
+ identifier: Optional[pulumi.Input[str]] = None,
612
+ keypair: Optional[pulumi.Input[str]] = None,
613
+ machine_type: Optional[pulumi.Input[str]] = None,
614
+ name: Optional[pulumi.Input[str]] = None,
615
+ region: Optional[pulumi.Input[str]] = None,
616
+ route53_hosted_zone_id: Optional[pulumi.Input[str]] = None,
617
+ security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
618
+ vpc: Optional[pulumi.Input[str]] = None) -> 'AwsProxy':
619
+ """
620
+ Get an existing AwsProxy resource's state with the given name, id, and optional extra
621
+ properties used to qualify the lookup.
622
+
623
+ :param str resource_name: The unique name of the resulting resource.
624
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
625
+ :param pulumi.ResourceOptions opts: Options for the resource.
626
+ :param pulumi.Input[bool] allocate_static_ip: Boolean value to indicate if proxy vm needs to have static IP
627
+ :param pulumi.Input[str] api_key: Harness NG API key
628
+ :param pulumi.Input[str] cloud_connector_id: Id of the cloud connector
629
+ :param pulumi.Input[str] host_name: Hostname for the proxy
630
+ :param pulumi.Input[str] identifier: Unique identifier of the resource
631
+ :param pulumi.Input[str] machine_type: Machine instance type
632
+ :param pulumi.Input[str] name: Name of the proxy
633
+ :param pulumi.Input[str] region: Region in which cloud resources are hosted
634
+ :param pulumi.Input[str] route53_hosted_zone_id: Route 53 hosted zone id
635
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: Security Group to define the security rules that determine the inbound and outbound traffic
636
+ :param pulumi.Input[str] vpc: VPC in which cloud resources are hosted
637
+ """
638
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
639
+
640
+ __props__ = _AwsProxyState.__new__(_AwsProxyState)
641
+
642
+ __props__.__dict__["allocate_static_ip"] = allocate_static_ip
643
+ __props__.__dict__["api_key"] = api_key
644
+ __props__.__dict__["certificates"] = certificates
645
+ __props__.__dict__["cloud_connector_id"] = cloud_connector_id
646
+ __props__.__dict__["delete_cloud_resources_on_destroy"] = delete_cloud_resources_on_destroy
647
+ __props__.__dict__["host_name"] = host_name
648
+ __props__.__dict__["identifier"] = identifier
649
+ __props__.__dict__["keypair"] = keypair
650
+ __props__.__dict__["machine_type"] = machine_type
651
+ __props__.__dict__["name"] = name
652
+ __props__.__dict__["region"] = region
653
+ __props__.__dict__["route53_hosted_zone_id"] = route53_hosted_zone_id
654
+ __props__.__dict__["security_groups"] = security_groups
655
+ __props__.__dict__["vpc"] = vpc
656
+ return AwsProxy(resource_name, opts=opts, __props__=__props__)
657
+
658
+ @property
659
+ @pulumi.getter(name="allocateStaticIp")
660
+ def allocate_static_ip(self) -> pulumi.Output[Optional[bool]]:
661
+ """
662
+ Boolean value to indicate if proxy vm needs to have static IP
663
+ """
664
+ return pulumi.get(self, "allocate_static_ip")
665
+
666
+ @property
667
+ @pulumi.getter(name="apiKey")
668
+ def api_key(self) -> pulumi.Output[str]:
669
+ """
670
+ Harness NG API key
671
+ """
672
+ return pulumi.get(self, "api_key")
673
+
674
+ @property
675
+ @pulumi.getter
676
+ def certificates(self) -> pulumi.Output[Optional['outputs.AwsProxyCertificates']]:
677
+ return pulumi.get(self, "certificates")
678
+
679
+ @property
680
+ @pulumi.getter(name="cloudConnectorId")
681
+ def cloud_connector_id(self) -> pulumi.Output[str]:
682
+ """
683
+ Id of the cloud connector
684
+ """
685
+ return pulumi.get(self, "cloud_connector_id")
686
+
687
+ @property
688
+ @pulumi.getter(name="deleteCloudResourcesOnDestroy")
689
+ def delete_cloud_resources_on_destroy(self) -> pulumi.Output[bool]:
690
+ return pulumi.get(self, "delete_cloud_resources_on_destroy")
691
+
692
+ @property
693
+ @pulumi.getter(name="hostName")
694
+ def host_name(self) -> pulumi.Output[str]:
695
+ """
696
+ Hostname for the proxy
697
+ """
698
+ return pulumi.get(self, "host_name")
699
+
700
+ @property
701
+ @pulumi.getter
702
+ def identifier(self) -> pulumi.Output[str]:
703
+ """
704
+ Unique identifier of the resource
705
+ """
706
+ return pulumi.get(self, "identifier")
707
+
708
+ @property
709
+ @pulumi.getter
710
+ def keypair(self) -> pulumi.Output[Optional[str]]:
711
+ return pulumi.get(self, "keypair")
712
+
713
+ @property
714
+ @pulumi.getter(name="machineType")
715
+ def machine_type(self) -> pulumi.Output[str]:
716
+ """
717
+ Machine instance type
718
+ """
719
+ return pulumi.get(self, "machine_type")
720
+
721
+ @property
722
+ @pulumi.getter
723
+ def name(self) -> pulumi.Output[str]:
724
+ """
725
+ Name of the proxy
726
+ """
727
+ return pulumi.get(self, "name")
728
+
729
+ @property
730
+ @pulumi.getter
731
+ def region(self) -> pulumi.Output[str]:
732
+ """
733
+ Region in which cloud resources are hosted
734
+ """
735
+ return pulumi.get(self, "region")
736
+
737
+ @property
738
+ @pulumi.getter(name="route53HostedZoneId")
739
+ def route53_hosted_zone_id(self) -> pulumi.Output[Optional[str]]:
740
+ """
741
+ Route 53 hosted zone id
742
+ """
743
+ return pulumi.get(self, "route53_hosted_zone_id")
744
+
745
+ @property
746
+ @pulumi.getter(name="securityGroups")
747
+ def security_groups(self) -> pulumi.Output[Optional[Sequence[str]]]:
748
+ """
749
+ Security Group to define the security rules that determine the inbound and outbound traffic
750
+ """
751
+ return pulumi.get(self, "security_groups")
752
+
753
+ @property
754
+ @pulumi.getter
755
+ def vpc(self) -> pulumi.Output[str]:
756
+ """
757
+ VPC in which cloud resources are hosted
758
+ """
759
+ return pulumi.get(self, "vpc")
760
+