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