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