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.
- pulumi_harness/__init__.py +1257 -0
- pulumi_harness/_inputs.py +4025 -0
- pulumi_harness/_utilities.py +327 -0
- pulumi_harness/add_user_to_group.py +241 -0
- pulumi_harness/application.py +393 -0
- pulumi_harness/application_git_sync.py +411 -0
- pulumi_harness/autostopping/__init__.py +27 -0
- pulumi_harness/autostopping/_inputs.py +2688 -0
- pulumi_harness/autostopping/aws_alb.py +640 -0
- pulumi_harness/autostopping/aws_proxy.py +760 -0
- pulumi_harness/autostopping/azure_gateway.py +798 -0
- pulumi_harness/autostopping/azure_proxy.py +855 -0
- pulumi_harness/autostopping/gcp_proxy.py +779 -0
- pulumi_harness/autostopping/get_aws_alb.py +278 -0
- pulumi_harness/autostopping/get_aws_proxy.py +335 -0
- pulumi_harness/autostopping/get_azure_gateway.py +343 -0
- pulumi_harness/autostopping/get_azure_proxy.py +375 -0
- pulumi_harness/autostopping/get_gcp_proxy.py +340 -0
- pulumi_harness/autostopping/get_rule_ecs.py +225 -0
- pulumi_harness/autostopping/get_rule_rds.py +205 -0
- pulumi_harness/autostopping/get_rule_vm.py +265 -0
- pulumi_harness/autostopping/get_schedule.py +193 -0
- pulumi_harness/autostopping/outputs.py +1971 -0
- pulumi_harness/autostopping/rule_ecs.py +450 -0
- pulumi_harness/autostopping/rule_rds.py +448 -0
- pulumi_harness/autostopping/rule_vm.py +663 -0
- pulumi_harness/autostopping/schedule.py +465 -0
- pulumi_harness/cloudprovider/__init__.py +17 -0
- pulumi_harness/cloudprovider/_inputs.py +777 -0
- pulumi_harness/cloudprovider/aws.py +586 -0
- pulumi_harness/cloudprovider/azure.py +393 -0
- pulumi_harness/cloudprovider/datacenter.py +233 -0
- pulumi_harness/cloudprovider/gcp.py +340 -0
- pulumi_harness/cloudprovider/get_delegate_ids.py +148 -0
- pulumi_harness/cloudprovider/kubernetes.py +310 -0
- pulumi_harness/cloudprovider/outputs.py +657 -0
- pulumi_harness/cloudprovider/spot.py +296 -0
- pulumi_harness/cloudprovider/tanzu.py +441 -0
- pulumi_harness/cluster/__init__.py +9 -0
- pulumi_harness/cluster/get_orchestrator.py +134 -0
- pulumi_harness/cluster/orchestrator.py +286 -0
- pulumi_harness/config/__init__.py +8 -0
- pulumi_harness/config/__init__.pyi +40 -0
- pulumi_harness/config/vars.py +54 -0
- pulumi_harness/delegate_approval.py +267 -0
- pulumi_harness/encrypted_text.py +499 -0
- pulumi_harness/environment.py +446 -0
- pulumi_harness/get_application.py +180 -0
- pulumi_harness/get_current_account.py +108 -0
- pulumi_harness/get_delegate.py +280 -0
- pulumi_harness/get_encrypted_text.py +136 -0
- pulumi_harness/get_environment.py +184 -0
- pulumi_harness/get_git_connector.py +255 -0
- pulumi_harness/get_secret_manager.py +142 -0
- pulumi_harness/get_service.py +198 -0
- pulumi_harness/get_ssh_credential.py +122 -0
- pulumi_harness/get_sso_provider.py +114 -0
- pulumi_harness/get_trigger.py +177 -0
- pulumi_harness/get_user.py +184 -0
- pulumi_harness/get_user_group.py +100 -0
- pulumi_harness/get_yaml_config.py +142 -0
- pulumi_harness/git_connector.py +738 -0
- pulumi_harness/governance/__init__.py +13 -0
- pulumi_harness/governance/get_rule.py +168 -0
- pulumi_harness/governance/get_rule_enforcement.py +266 -0
- pulumi_harness/governance/get_rule_set.py +150 -0
- pulumi_harness/governance/rule.py +337 -0
- pulumi_harness/governance/rule_enforcement.py +668 -0
- pulumi_harness/governance/rule_set.py +321 -0
- pulumi_harness/infrastructure_definition.py +1246 -0
- pulumi_harness/outputs.py +3306 -0
- pulumi_harness/platform/__init__.py +220 -0
- pulumi_harness/platform/_inputs.py +22314 -0
- pulumi_harness/platform/app_dynamics_connector.py +733 -0
- pulumi_harness/platform/artifactory_connector.py +748 -0
- pulumi_harness/platform/aws_cc_connector.py +716 -0
- pulumi_harness/platform/aws_connector.py +851 -0
- pulumi_harness/platform/aws_kms_connector.py +619 -0
- pulumi_harness/platform/aws_secret_manager_connector.py +712 -0
- pulumi_harness/platform/azure_cloud_cost_connector.py +675 -0
- pulumi_harness/platform/azure_cloud_provider_connector.py +826 -0
- pulumi_harness/platform/azure_key_vault_connector.py +843 -0
- pulumi_harness/platform/bitbucket_connector.py +713 -0
- pulumi_harness/platform/connector_azure_artifacts.py +529 -0
- pulumi_harness/platform/connector_custom_secret_manager.py +887 -0
- pulumi_harness/platform/connector_customhealthsource.py +807 -0
- pulumi_harness/platform/connector_jdbc.py +609 -0
- pulumi_harness/platform/connector_pdc.py +527 -0
- pulumi_harness/platform/connector_rancher.py +617 -0
- pulumi_harness/platform/datadog_connector.py +651 -0
- pulumi_harness/platform/db_instance.py +636 -0
- pulumi_harness/platform/db_schema.py +547 -0
- pulumi_harness/platform/delegatetoken.py +520 -0
- pulumi_harness/platform/docker_connector.py +669 -0
- pulumi_harness/platform/dynatrace_connector.py +601 -0
- pulumi_harness/platform/elasticsearch_connector.py +744 -0
- pulumi_harness/platform/environment.py +1173 -0
- pulumi_harness/platform/environment_clusters_mapping.py +454 -0
- pulumi_harness/platform/environment_group.py +560 -0
- pulumi_harness/platform/environment_service_overrides.py +688 -0
- pulumi_harness/platform/feature_flag.py +724 -0
- pulumi_harness/platform/feature_flag_api_key.py +550 -0
- pulumi_harness/platform/feature_flag_target.py +473 -0
- pulumi_harness/platform/feature_flag_target_group.py +577 -0
- pulumi_harness/platform/file_store_file.py +822 -0
- pulumi_harness/platform/file_store_folder.py +628 -0
- pulumi_harness/platform/filters.py +511 -0
- pulumi_harness/platform/gcp_cloud_cost_connector.py +669 -0
- pulumi_harness/platform/gcp_connector.py +663 -0
- pulumi_harness/platform/gcp_secret_manager_connector.py +594 -0
- pulumi_harness/platform/get_api_key.py +292 -0
- pulumi_harness/platform/get_app_dynamics_connector.py +271 -0
- pulumi_harness/platform/get_artifactory_connector.py +243 -0
- pulumi_harness/platform/get_aws_cc_connector.py +271 -0
- pulumi_harness/platform/get_aws_connector.py +313 -0
- pulumi_harness/platform/get_aws_kms_connector.py +253 -0
- pulumi_harness/platform/get_aws_secret_manager_connector.py +267 -0
- pulumi_harness/platform/get_azure_cloud_cost_connector.py +257 -0
- pulumi_harness/platform/get_azure_cloud_provider_connector.py +257 -0
- pulumi_harness/platform/get_azure_key_vault_connector.py +308 -0
- pulumi_harness/platform/get_bitbucket_connector.py +285 -0
- pulumi_harness/platform/get_ccm_filters.py +221 -0
- pulumi_harness/platform/get_connector_custom_secret_manager.py +330 -0
- pulumi_harness/platform/get_connector_customhealthsource.py +281 -0
- pulumi_harness/platform/get_connector_jdbc.py +243 -0
- pulumi_harness/platform/get_connector_pdc.py +229 -0
- pulumi_harness/platform/get_connector_rancher.py +236 -0
- pulumi_harness/platform/get_current_account.py +126 -0
- pulumi_harness/platform/get_current_user.py +252 -0
- pulumi_harness/platform/get_datadog_connector.py +262 -0
- pulumi_harness/platform/get_db_instance.py +268 -0
- pulumi_harness/platform/get_db_schema.py +233 -0
- pulumi_harness/platform/get_delegatetoken.py +214 -0
- pulumi_harness/platform/get_docker_connector.py +257 -0
- pulumi_harness/platform/get_dynatrace_connector.py +242 -0
- pulumi_harness/platform/get_elasticsearch_connector.py +257 -0
- pulumi_harness/platform/get_environment.py +263 -0
- pulumi_harness/platform/get_environment_clusters_mapping.py +262 -0
- pulumi_harness/platform/get_environment_group.py +190 -0
- pulumi_harness/platform/get_environment_list.py +172 -0
- pulumi_harness/platform/get_environment_service_overrides.py +212 -0
- pulumi_harness/platform/get_file_store_file.py +327 -0
- pulumi_harness/platform/get_file_store_folder.py +271 -0
- pulumi_harness/platform/get_filters.py +217 -0
- pulumi_harness/platform/get_gcp_cloud_cost_connector.py +257 -0
- pulumi_harness/platform/get_gcp_connector.py +243 -0
- pulumi_harness/platform/get_gcp_secret_manager_connector.py +238 -0
- pulumi_harness/platform/get_git_connector.py +271 -0
- pulumi_harness/platform/get_github_connector.py +296 -0
- pulumi_harness/platform/get_gitlab_connector.py +285 -0
- pulumi_harness/platform/get_gitops_agent.py +303 -0
- pulumi_harness/platform/get_gitops_agent_deploy_yaml.py +257 -0
- pulumi_harness/platform/get_gitops_app_project.py +191 -0
- pulumi_harness/platform/get_gitops_app_project_mapping.py +189 -0
- pulumi_harness/platform/get_gitops_applications.py +351 -0
- pulumi_harness/platform/get_gitops_cluster.py +216 -0
- pulumi_harness/platform/get_gitops_gnupg.py +219 -0
- pulumi_harness/platform/get_gitops_repo_cert.py +155 -0
- pulumi_harness/platform/get_gitops_repo_cred.py +223 -0
- pulumi_harness/platform/get_gitops_repository.py +230 -0
- pulumi_harness/platform/get_gitx_webhook.py +194 -0
- pulumi_harness/platform/get_helm_connector.py +243 -0
- pulumi_harness/platform/get_iacm_default_pipeline.py +168 -0
- pulumi_harness/platform/get_infra_module.py +320 -0
- pulumi_harness/platform/get_infrastructure.py +287 -0
- pulumi_harness/platform/get_input_set.py +238 -0
- pulumi_harness/platform/get_jenkins_connector.py +243 -0
- pulumi_harness/platform/get_jira_connector.py +285 -0
- pulumi_harness/platform/get_kubernetes_cloud_cost_connector.py +228 -0
- pulumi_harness/platform/get_kubernetes_connector.py +285 -0
- pulumi_harness/platform/get_manual_freeze.py +305 -0
- pulumi_harness/platform/get_monitored_service.py +134 -0
- pulumi_harness/platform/get_nexus_connector.py +257 -0
- pulumi_harness/platform/get_notification_rule.py +156 -0
- pulumi_harness/platform/get_oci_helm_connector.py +243 -0
- pulumi_harness/platform/get_organization.py +156 -0
- pulumi_harness/platform/get_overrides.py +198 -0
- pulumi_harness/platform/get_pagerduty_connector.py +224 -0
- pulumi_harness/platform/get_permissions.py +149 -0
- pulumi_harness/platform/get_pipeline.py +268 -0
- pulumi_harness/platform/get_pipeline_filters.py +197 -0
- pulumi_harness/platform/get_pipeline_list.py +269 -0
- pulumi_harness/platform/get_policy.py +220 -0
- pulumi_harness/platform/get_policy_set.py +298 -0
- pulumi_harness/platform/get_project.py +210 -0
- pulumi_harness/platform/get_project_list.py +249 -0
- pulumi_harness/platform/get_prometheus_connector.py +271 -0
- pulumi_harness/platform/get_provider.py +85 -0
- pulumi_harness/platform/get_repo.py +362 -0
- pulumi_harness/platform/get_repo_rule_branch.py +312 -0
- pulumi_harness/platform/get_repo_webhook.py +316 -0
- pulumi_harness/platform/get_resource_group.py +267 -0
- pulumi_harness/platform/get_role_assignments.py +223 -0
- pulumi_harness/platform/get_roles.py +240 -0
- pulumi_harness/platform/get_secret_file.py +224 -0
- pulumi_harness/platform/get_secret_sshkey.py +239 -0
- pulumi_harness/platform/get_secret_text.py +264 -0
- pulumi_harness/platform/get_service.py +235 -0
- pulumi_harness/platform/get_service_account.py +224 -0
- pulumi_harness/platform/get_service_list.py +172 -0
- pulumi_harness/platform/get_service_now_connector.py +285 -0
- pulumi_harness/platform/get_service_overrides_v2.py +220 -0
- pulumi_harness/platform/get_slo.py +134 -0
- pulumi_harness/platform/get_splunk_connector.py +270 -0
- pulumi_harness/platform/get_spot_connector.py +215 -0
- pulumi_harness/platform/get_sumologic_connector.py +256 -0
- pulumi_harness/platform/get_tas_connector.py +243 -0
- pulumi_harness/platform/get_template.py +386 -0
- pulumi_harness/platform/get_template_filters.py +221 -0
- pulumi_harness/platform/get_terraform_cloud_connector.py +233 -0
- pulumi_harness/platform/get_token.py +430 -0
- pulumi_harness/platform/get_triggers.py +260 -0
- pulumi_harness/platform/get_user.py +222 -0
- pulumi_harness/platform/get_usergroup.py +340 -0
- pulumi_harness/platform/get_variables.py +209 -0
- pulumi_harness/platform/get_vault_connector.py +574 -0
- pulumi_harness/platform/get_workspace.py +411 -0
- pulumi_harness/platform/get_workspace_output_value.py +168 -0
- pulumi_harness/platform/git_connector.py +713 -0
- pulumi_harness/platform/git_ops_agent.py +727 -0
- pulumi_harness/platform/git_ops_applications.py +1090 -0
- pulumi_harness/platform/git_ops_cluster.py +438 -0
- pulumi_harness/platform/git_ops_gnupg.py +453 -0
- pulumi_harness/platform/git_ops_repo_cert.py +437 -0
- pulumi_harness/platform/git_ops_repo_cred.py +533 -0
- pulumi_harness/platform/git_ops_repository.py +831 -0
- pulumi_harness/platform/github_connector.py +807 -0
- pulumi_harness/platform/gitlab_connector.py +713 -0
- pulumi_harness/platform/gitops_app_project.py +485 -0
- pulumi_harness/platform/gitops_app_project_mapping.py +423 -0
- pulumi_harness/platform/gitx_webhook.py +616 -0
- pulumi_harness/platform/helm_connector.py +617 -0
- pulumi_harness/platform/iacm_default_pipeline.py +343 -0
- pulumi_harness/platform/infra_module.py +755 -0
- pulumi_harness/platform/infrastructure.py +937 -0
- pulumi_harness/platform/input_set.py +689 -0
- pulumi_harness/platform/jenkins_connector.py +566 -0
- pulumi_harness/platform/jira_connector.py +714 -0
- pulumi_harness/platform/kubernetes_cloud_cost_connector.py +558 -0
- pulumi_harness/platform/kubernetes_connector.py +895 -0
- pulumi_harness/platform/manual_freeze.py +835 -0
- pulumi_harness/platform/monitored_service.py +1984 -0
- pulumi_harness/platform/newrelic_connector.py +651 -0
- pulumi_harness/platform/nexus_connector.py +622 -0
- pulumi_harness/platform/notification_rule.py +526 -0
- pulumi_harness/platform/oci_helm_connector.py +617 -0
- pulumi_harness/platform/organization.py +336 -0
- pulumi_harness/platform/outputs.py +23361 -0
- pulumi_harness/platform/overrides.py +669 -0
- pulumi_harness/platform/pagerduty_connector.py +547 -0
- pulumi_harness/platform/pipeline.py +991 -0
- pulumi_harness/platform/pipeline_filters.py +711 -0
- pulumi_harness/platform/policy.py +944 -0
- pulumi_harness/platform/policy_set.py +594 -0
- pulumi_harness/platform/project.py +453 -0
- pulumi_harness/platform/prometheus_connector.py +710 -0
- pulumi_harness/platform/provider.py +349 -0
- pulumi_harness/platform/repo.py +737 -0
- pulumi_harness/platform/repo_rule_branch.py +645 -0
- pulumi_harness/platform/repo_webhook.py +664 -0
- pulumi_harness/platform/resource_group.py +718 -0
- pulumi_harness/platform/role_assignments.py +524 -0
- pulumi_harness/platform/roles.py +546 -0
- pulumi_harness/platform/secret_file.py +548 -0
- pulumi_harness/platform/secret_sshkey.py +569 -0
- pulumi_harness/platform/secret_text.py +620 -0
- pulumi_harness/platform/service.py +1195 -0
- pulumi_harness/platform/service_account.py +548 -0
- pulumi_harness/platform/service_now_connector.py +714 -0
- pulumi_harness/platform/service_overrides_v2.py +915 -0
- pulumi_harness/platform/slo.py +462 -0
- pulumi_harness/platform/splunk_connector.py +701 -0
- pulumi_harness/platform/spot_connector.py +452 -0
- pulumi_harness/platform/sumologic_connector.py +651 -0
- pulumi_harness/platform/tas_connector.py +570 -0
- pulumi_harness/platform/template.py +861 -0
- pulumi_harness/platform/template_filters.py +515 -0
- pulumi_harness/platform/terraform_cloud_connector.py +545 -0
- pulumi_harness/platform/token.py +977 -0
- pulumi_harness/platform/triggers.py +680 -0
- pulumi_harness/platform/user.py +522 -0
- pulumi_harness/platform/usergroup.py +1104 -0
- pulumi_harness/platform/variables.py +509 -0
- pulumi_harness/platform/vault_connector.py +1919 -0
- pulumi_harness/platform/workspace.py +1145 -0
- pulumi_harness/platform_api_key.py +617 -0
- pulumi_harness/platform_ccm_filters.py +515 -0
- pulumi_harness/provider.py +227 -0
- pulumi_harness/pulumi-plugin.json +6 -0
- pulumi_harness/py.typed +0 -0
- pulumi_harness/service/__init__.py +18 -0
- pulumi_harness/service/_inputs.py +660 -0
- pulumi_harness/service/ami.py +336 -0
- pulumi_harness/service/codedeploy.py +336 -0
- pulumi_harness/service/ecs.py +336 -0
- pulumi_harness/service/helm.py +336 -0
- pulumi_harness/service/kubernetes.py +409 -0
- pulumi_harness/service/lambda_.py +336 -0
- pulumi_harness/service/outputs.py +388 -0
- pulumi_harness/service/ssh.py +386 -0
- pulumi_harness/service/tanzu.py +336 -0
- pulumi_harness/service/winrm.py +386 -0
- pulumi_harness/ssh_credential.py +361 -0
- pulumi_harness/user.py +423 -0
- pulumi_harness/user_group.py +713 -0
- pulumi_harness/user_group_permissions.py +247 -0
- pulumi_harness/yaml_config.py +336 -0
- pulumi_harness-0.5.0a1736833425.dist-info/METADATA +69 -0
- pulumi_harness-0.5.0a1736833425.dist-info/RECORD +311 -0
- pulumi_harness-0.5.0a1736833425.dist-info/WHEEL +5 -0
- pulumi_harness-0.5.0a1736833425.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,716 @@
|
|
|
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__ = ['AwsCCConnectorArgs', 'AwsCCConnector']
|
|
20
|
+
|
|
21
|
+
@pulumi.input_type
|
|
22
|
+
class AwsCCConnectorArgs:
|
|
23
|
+
def __init__(__self__, *,
|
|
24
|
+
account_id: pulumi.Input[str],
|
|
25
|
+
cross_account_access: pulumi.Input['AwsCCConnectorCrossAccountAccessArgs'],
|
|
26
|
+
features_enableds: pulumi.Input[Sequence[pulumi.Input[str]]],
|
|
27
|
+
identifier: pulumi.Input[str],
|
|
28
|
+
description: Optional[pulumi.Input[str]] = None,
|
|
29
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
30
|
+
org_id: Optional[pulumi.Input[str]] = None,
|
|
31
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
|
32
|
+
report_name: Optional[pulumi.Input[str]] = None,
|
|
33
|
+
s3_bucket: Optional[pulumi.Input[str]] = None,
|
|
34
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
|
35
|
+
"""
|
|
36
|
+
The set of arguments for constructing a AwsCCConnector resource.
|
|
37
|
+
:param pulumi.Input[str] account_id: The AWS account id.
|
|
38
|
+
:param pulumi.Input['AwsCCConnectorCrossAccountAccessArgs'] cross_account_access: Harness uses the secure cross-account role to access your AWS account. The role includes a restricted policy to access the cost and usage reports and resources for the sole purpose of cost analysis and cost optimization.
|
|
39
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] features_enableds: The features enabled for the connector. Valid values are BILLING, OPTIMIZATION, VISIBILITY, GOVERNANCE.
|
|
40
|
+
:param pulumi.Input[str] identifier: Unique identifier of the resource.
|
|
41
|
+
:param pulumi.Input[str] description: Description of the resource.
|
|
42
|
+
:param pulumi.Input[str] name: Name of the resource.
|
|
43
|
+
:param pulumi.Input[str] org_id: Unique identifier of the organization.
|
|
44
|
+
:param pulumi.Input[str] project_id: Unique identifier of the project.
|
|
45
|
+
:param pulumi.Input[str] report_name: The cost and usage report name. Provided in the delivery options when the template is opened in the AWS console.
|
|
46
|
+
:param pulumi.Input[str] s3_bucket: The name of s3 bucket.
|
|
47
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
|
|
48
|
+
"""
|
|
49
|
+
pulumi.set(__self__, "account_id", account_id)
|
|
50
|
+
pulumi.set(__self__, "cross_account_access", cross_account_access)
|
|
51
|
+
pulumi.set(__self__, "features_enableds", features_enableds)
|
|
52
|
+
pulumi.set(__self__, "identifier", identifier)
|
|
53
|
+
if description is not None:
|
|
54
|
+
pulumi.set(__self__, "description", description)
|
|
55
|
+
if name is not None:
|
|
56
|
+
pulumi.set(__self__, "name", name)
|
|
57
|
+
if org_id is not None:
|
|
58
|
+
pulumi.set(__self__, "org_id", org_id)
|
|
59
|
+
if project_id is not None:
|
|
60
|
+
pulumi.set(__self__, "project_id", project_id)
|
|
61
|
+
if report_name is not None:
|
|
62
|
+
pulumi.set(__self__, "report_name", report_name)
|
|
63
|
+
if s3_bucket is not None:
|
|
64
|
+
pulumi.set(__self__, "s3_bucket", s3_bucket)
|
|
65
|
+
if tags is not None:
|
|
66
|
+
pulumi.set(__self__, "tags", tags)
|
|
67
|
+
|
|
68
|
+
@property
|
|
69
|
+
@pulumi.getter(name="accountId")
|
|
70
|
+
def account_id(self) -> pulumi.Input[str]:
|
|
71
|
+
"""
|
|
72
|
+
The AWS account id.
|
|
73
|
+
"""
|
|
74
|
+
return pulumi.get(self, "account_id")
|
|
75
|
+
|
|
76
|
+
@account_id.setter
|
|
77
|
+
def account_id(self, value: pulumi.Input[str]):
|
|
78
|
+
pulumi.set(self, "account_id", value)
|
|
79
|
+
|
|
80
|
+
@property
|
|
81
|
+
@pulumi.getter(name="crossAccountAccess")
|
|
82
|
+
def cross_account_access(self) -> pulumi.Input['AwsCCConnectorCrossAccountAccessArgs']:
|
|
83
|
+
"""
|
|
84
|
+
Harness uses the secure cross-account role to access your AWS account. The role includes a restricted policy to access the cost and usage reports and resources for the sole purpose of cost analysis and cost optimization.
|
|
85
|
+
"""
|
|
86
|
+
return pulumi.get(self, "cross_account_access")
|
|
87
|
+
|
|
88
|
+
@cross_account_access.setter
|
|
89
|
+
def cross_account_access(self, value: pulumi.Input['AwsCCConnectorCrossAccountAccessArgs']):
|
|
90
|
+
pulumi.set(self, "cross_account_access", value)
|
|
91
|
+
|
|
92
|
+
@property
|
|
93
|
+
@pulumi.getter(name="featuresEnableds")
|
|
94
|
+
def features_enableds(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
|
|
95
|
+
"""
|
|
96
|
+
The features enabled for the connector. Valid values are BILLING, OPTIMIZATION, VISIBILITY, GOVERNANCE.
|
|
97
|
+
"""
|
|
98
|
+
return pulumi.get(self, "features_enableds")
|
|
99
|
+
|
|
100
|
+
@features_enableds.setter
|
|
101
|
+
def features_enableds(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
|
|
102
|
+
pulumi.set(self, "features_enableds", value)
|
|
103
|
+
|
|
104
|
+
@property
|
|
105
|
+
@pulumi.getter
|
|
106
|
+
def identifier(self) -> pulumi.Input[str]:
|
|
107
|
+
"""
|
|
108
|
+
Unique identifier of the resource.
|
|
109
|
+
"""
|
|
110
|
+
return pulumi.get(self, "identifier")
|
|
111
|
+
|
|
112
|
+
@identifier.setter
|
|
113
|
+
def identifier(self, value: pulumi.Input[str]):
|
|
114
|
+
pulumi.set(self, "identifier", value)
|
|
115
|
+
|
|
116
|
+
@property
|
|
117
|
+
@pulumi.getter
|
|
118
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
|
119
|
+
"""
|
|
120
|
+
Description of the resource.
|
|
121
|
+
"""
|
|
122
|
+
return pulumi.get(self, "description")
|
|
123
|
+
|
|
124
|
+
@description.setter
|
|
125
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
|
126
|
+
pulumi.set(self, "description", value)
|
|
127
|
+
|
|
128
|
+
@property
|
|
129
|
+
@pulumi.getter
|
|
130
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
131
|
+
"""
|
|
132
|
+
Name of the resource.
|
|
133
|
+
"""
|
|
134
|
+
return pulumi.get(self, "name")
|
|
135
|
+
|
|
136
|
+
@name.setter
|
|
137
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
138
|
+
pulumi.set(self, "name", value)
|
|
139
|
+
|
|
140
|
+
@property
|
|
141
|
+
@pulumi.getter(name="orgId")
|
|
142
|
+
def org_id(self) -> Optional[pulumi.Input[str]]:
|
|
143
|
+
"""
|
|
144
|
+
Unique identifier of the organization.
|
|
145
|
+
"""
|
|
146
|
+
return pulumi.get(self, "org_id")
|
|
147
|
+
|
|
148
|
+
@org_id.setter
|
|
149
|
+
def org_id(self, value: Optional[pulumi.Input[str]]):
|
|
150
|
+
pulumi.set(self, "org_id", value)
|
|
151
|
+
|
|
152
|
+
@property
|
|
153
|
+
@pulumi.getter(name="projectId")
|
|
154
|
+
def project_id(self) -> Optional[pulumi.Input[str]]:
|
|
155
|
+
"""
|
|
156
|
+
Unique identifier of the project.
|
|
157
|
+
"""
|
|
158
|
+
return pulumi.get(self, "project_id")
|
|
159
|
+
|
|
160
|
+
@project_id.setter
|
|
161
|
+
def project_id(self, value: Optional[pulumi.Input[str]]):
|
|
162
|
+
pulumi.set(self, "project_id", value)
|
|
163
|
+
|
|
164
|
+
@property
|
|
165
|
+
@pulumi.getter(name="reportName")
|
|
166
|
+
def report_name(self) -> Optional[pulumi.Input[str]]:
|
|
167
|
+
"""
|
|
168
|
+
The cost and usage report name. Provided in the delivery options when the template is opened in the AWS console.
|
|
169
|
+
"""
|
|
170
|
+
return pulumi.get(self, "report_name")
|
|
171
|
+
|
|
172
|
+
@report_name.setter
|
|
173
|
+
def report_name(self, value: Optional[pulumi.Input[str]]):
|
|
174
|
+
pulumi.set(self, "report_name", value)
|
|
175
|
+
|
|
176
|
+
@property
|
|
177
|
+
@pulumi.getter(name="s3Bucket")
|
|
178
|
+
def s3_bucket(self) -> Optional[pulumi.Input[str]]:
|
|
179
|
+
"""
|
|
180
|
+
The name of s3 bucket.
|
|
181
|
+
"""
|
|
182
|
+
return pulumi.get(self, "s3_bucket")
|
|
183
|
+
|
|
184
|
+
@s3_bucket.setter
|
|
185
|
+
def s3_bucket(self, value: Optional[pulumi.Input[str]]):
|
|
186
|
+
pulumi.set(self, "s3_bucket", value)
|
|
187
|
+
|
|
188
|
+
@property
|
|
189
|
+
@pulumi.getter
|
|
190
|
+
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
191
|
+
"""
|
|
192
|
+
Tags to associate with the resource.
|
|
193
|
+
"""
|
|
194
|
+
return pulumi.get(self, "tags")
|
|
195
|
+
|
|
196
|
+
@tags.setter
|
|
197
|
+
def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
198
|
+
pulumi.set(self, "tags", value)
|
|
199
|
+
|
|
200
|
+
|
|
201
|
+
@pulumi.input_type
|
|
202
|
+
class _AwsCCConnectorState:
|
|
203
|
+
def __init__(__self__, *,
|
|
204
|
+
account_id: Optional[pulumi.Input[str]] = None,
|
|
205
|
+
cross_account_access: Optional[pulumi.Input['AwsCCConnectorCrossAccountAccessArgs']] = None,
|
|
206
|
+
description: Optional[pulumi.Input[str]] = None,
|
|
207
|
+
features_enableds: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
208
|
+
identifier: Optional[pulumi.Input[str]] = None,
|
|
209
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
210
|
+
org_id: Optional[pulumi.Input[str]] = None,
|
|
211
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
|
212
|
+
report_name: Optional[pulumi.Input[str]] = None,
|
|
213
|
+
s3_bucket: Optional[pulumi.Input[str]] = None,
|
|
214
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
|
215
|
+
"""
|
|
216
|
+
Input properties used for looking up and filtering AwsCCConnector resources.
|
|
217
|
+
:param pulumi.Input[str] account_id: The AWS account id.
|
|
218
|
+
:param pulumi.Input['AwsCCConnectorCrossAccountAccessArgs'] cross_account_access: Harness uses the secure cross-account role to access your AWS account. The role includes a restricted policy to access the cost and usage reports and resources for the sole purpose of cost analysis and cost optimization.
|
|
219
|
+
:param pulumi.Input[str] description: Description of the resource.
|
|
220
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] features_enableds: The features enabled for the connector. Valid values are BILLING, OPTIMIZATION, VISIBILITY, GOVERNANCE.
|
|
221
|
+
:param pulumi.Input[str] identifier: Unique identifier of the resource.
|
|
222
|
+
:param pulumi.Input[str] name: Name of the resource.
|
|
223
|
+
:param pulumi.Input[str] org_id: Unique identifier of the organization.
|
|
224
|
+
:param pulumi.Input[str] project_id: Unique identifier of the project.
|
|
225
|
+
:param pulumi.Input[str] report_name: The cost and usage report name. Provided in the delivery options when the template is opened in the AWS console.
|
|
226
|
+
:param pulumi.Input[str] s3_bucket: The name of s3 bucket.
|
|
227
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
|
|
228
|
+
"""
|
|
229
|
+
if account_id is not None:
|
|
230
|
+
pulumi.set(__self__, "account_id", account_id)
|
|
231
|
+
if cross_account_access is not None:
|
|
232
|
+
pulumi.set(__self__, "cross_account_access", cross_account_access)
|
|
233
|
+
if description is not None:
|
|
234
|
+
pulumi.set(__self__, "description", description)
|
|
235
|
+
if features_enableds is not None:
|
|
236
|
+
pulumi.set(__self__, "features_enableds", features_enableds)
|
|
237
|
+
if identifier is not None:
|
|
238
|
+
pulumi.set(__self__, "identifier", identifier)
|
|
239
|
+
if name is not None:
|
|
240
|
+
pulumi.set(__self__, "name", name)
|
|
241
|
+
if org_id is not None:
|
|
242
|
+
pulumi.set(__self__, "org_id", org_id)
|
|
243
|
+
if project_id is not None:
|
|
244
|
+
pulumi.set(__self__, "project_id", project_id)
|
|
245
|
+
if report_name is not None:
|
|
246
|
+
pulumi.set(__self__, "report_name", report_name)
|
|
247
|
+
if s3_bucket is not None:
|
|
248
|
+
pulumi.set(__self__, "s3_bucket", s3_bucket)
|
|
249
|
+
if tags is not None:
|
|
250
|
+
pulumi.set(__self__, "tags", tags)
|
|
251
|
+
|
|
252
|
+
@property
|
|
253
|
+
@pulumi.getter(name="accountId")
|
|
254
|
+
def account_id(self) -> Optional[pulumi.Input[str]]:
|
|
255
|
+
"""
|
|
256
|
+
The AWS account id.
|
|
257
|
+
"""
|
|
258
|
+
return pulumi.get(self, "account_id")
|
|
259
|
+
|
|
260
|
+
@account_id.setter
|
|
261
|
+
def account_id(self, value: Optional[pulumi.Input[str]]):
|
|
262
|
+
pulumi.set(self, "account_id", value)
|
|
263
|
+
|
|
264
|
+
@property
|
|
265
|
+
@pulumi.getter(name="crossAccountAccess")
|
|
266
|
+
def cross_account_access(self) -> Optional[pulumi.Input['AwsCCConnectorCrossAccountAccessArgs']]:
|
|
267
|
+
"""
|
|
268
|
+
Harness uses the secure cross-account role to access your AWS account. The role includes a restricted policy to access the cost and usage reports and resources for the sole purpose of cost analysis and cost optimization.
|
|
269
|
+
"""
|
|
270
|
+
return pulumi.get(self, "cross_account_access")
|
|
271
|
+
|
|
272
|
+
@cross_account_access.setter
|
|
273
|
+
def cross_account_access(self, value: Optional[pulumi.Input['AwsCCConnectorCrossAccountAccessArgs']]):
|
|
274
|
+
pulumi.set(self, "cross_account_access", value)
|
|
275
|
+
|
|
276
|
+
@property
|
|
277
|
+
@pulumi.getter
|
|
278
|
+
def description(self) -> Optional[pulumi.Input[str]]:
|
|
279
|
+
"""
|
|
280
|
+
Description of the resource.
|
|
281
|
+
"""
|
|
282
|
+
return pulumi.get(self, "description")
|
|
283
|
+
|
|
284
|
+
@description.setter
|
|
285
|
+
def description(self, value: Optional[pulumi.Input[str]]):
|
|
286
|
+
pulumi.set(self, "description", value)
|
|
287
|
+
|
|
288
|
+
@property
|
|
289
|
+
@pulumi.getter(name="featuresEnableds")
|
|
290
|
+
def features_enableds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
291
|
+
"""
|
|
292
|
+
The features enabled for the connector. Valid values are BILLING, OPTIMIZATION, VISIBILITY, GOVERNANCE.
|
|
293
|
+
"""
|
|
294
|
+
return pulumi.get(self, "features_enableds")
|
|
295
|
+
|
|
296
|
+
@features_enableds.setter
|
|
297
|
+
def features_enableds(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
298
|
+
pulumi.set(self, "features_enableds", value)
|
|
299
|
+
|
|
300
|
+
@property
|
|
301
|
+
@pulumi.getter
|
|
302
|
+
def identifier(self) -> Optional[pulumi.Input[str]]:
|
|
303
|
+
"""
|
|
304
|
+
Unique identifier of the resource.
|
|
305
|
+
"""
|
|
306
|
+
return pulumi.get(self, "identifier")
|
|
307
|
+
|
|
308
|
+
@identifier.setter
|
|
309
|
+
def identifier(self, value: Optional[pulumi.Input[str]]):
|
|
310
|
+
pulumi.set(self, "identifier", value)
|
|
311
|
+
|
|
312
|
+
@property
|
|
313
|
+
@pulumi.getter
|
|
314
|
+
def name(self) -> Optional[pulumi.Input[str]]:
|
|
315
|
+
"""
|
|
316
|
+
Name of the resource.
|
|
317
|
+
"""
|
|
318
|
+
return pulumi.get(self, "name")
|
|
319
|
+
|
|
320
|
+
@name.setter
|
|
321
|
+
def name(self, value: Optional[pulumi.Input[str]]):
|
|
322
|
+
pulumi.set(self, "name", value)
|
|
323
|
+
|
|
324
|
+
@property
|
|
325
|
+
@pulumi.getter(name="orgId")
|
|
326
|
+
def org_id(self) -> Optional[pulumi.Input[str]]:
|
|
327
|
+
"""
|
|
328
|
+
Unique identifier of the organization.
|
|
329
|
+
"""
|
|
330
|
+
return pulumi.get(self, "org_id")
|
|
331
|
+
|
|
332
|
+
@org_id.setter
|
|
333
|
+
def org_id(self, value: Optional[pulumi.Input[str]]):
|
|
334
|
+
pulumi.set(self, "org_id", value)
|
|
335
|
+
|
|
336
|
+
@property
|
|
337
|
+
@pulumi.getter(name="projectId")
|
|
338
|
+
def project_id(self) -> Optional[pulumi.Input[str]]:
|
|
339
|
+
"""
|
|
340
|
+
Unique identifier of the project.
|
|
341
|
+
"""
|
|
342
|
+
return pulumi.get(self, "project_id")
|
|
343
|
+
|
|
344
|
+
@project_id.setter
|
|
345
|
+
def project_id(self, value: Optional[pulumi.Input[str]]):
|
|
346
|
+
pulumi.set(self, "project_id", value)
|
|
347
|
+
|
|
348
|
+
@property
|
|
349
|
+
@pulumi.getter(name="reportName")
|
|
350
|
+
def report_name(self) -> Optional[pulumi.Input[str]]:
|
|
351
|
+
"""
|
|
352
|
+
The cost and usage report name. Provided in the delivery options when the template is opened in the AWS console.
|
|
353
|
+
"""
|
|
354
|
+
return pulumi.get(self, "report_name")
|
|
355
|
+
|
|
356
|
+
@report_name.setter
|
|
357
|
+
def report_name(self, value: Optional[pulumi.Input[str]]):
|
|
358
|
+
pulumi.set(self, "report_name", value)
|
|
359
|
+
|
|
360
|
+
@property
|
|
361
|
+
@pulumi.getter(name="s3Bucket")
|
|
362
|
+
def s3_bucket(self) -> Optional[pulumi.Input[str]]:
|
|
363
|
+
"""
|
|
364
|
+
The name of s3 bucket.
|
|
365
|
+
"""
|
|
366
|
+
return pulumi.get(self, "s3_bucket")
|
|
367
|
+
|
|
368
|
+
@s3_bucket.setter
|
|
369
|
+
def s3_bucket(self, value: Optional[pulumi.Input[str]]):
|
|
370
|
+
pulumi.set(self, "s3_bucket", value)
|
|
371
|
+
|
|
372
|
+
@property
|
|
373
|
+
@pulumi.getter
|
|
374
|
+
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
375
|
+
"""
|
|
376
|
+
Tags to associate with the resource.
|
|
377
|
+
"""
|
|
378
|
+
return pulumi.get(self, "tags")
|
|
379
|
+
|
|
380
|
+
@tags.setter
|
|
381
|
+
def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
382
|
+
pulumi.set(self, "tags", value)
|
|
383
|
+
|
|
384
|
+
|
|
385
|
+
class AwsCCConnector(pulumi.CustomResource):
|
|
386
|
+
@overload
|
|
387
|
+
def __init__(__self__,
|
|
388
|
+
resource_name: str,
|
|
389
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
390
|
+
account_id: Optional[pulumi.Input[str]] = None,
|
|
391
|
+
cross_account_access: Optional[pulumi.Input[Union['AwsCCConnectorCrossAccountAccessArgs', 'AwsCCConnectorCrossAccountAccessArgsDict']]] = None,
|
|
392
|
+
description: Optional[pulumi.Input[str]] = None,
|
|
393
|
+
features_enableds: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
394
|
+
identifier: Optional[pulumi.Input[str]] = None,
|
|
395
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
396
|
+
org_id: Optional[pulumi.Input[str]] = None,
|
|
397
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
|
398
|
+
report_name: Optional[pulumi.Input[str]] = None,
|
|
399
|
+
s3_bucket: Optional[pulumi.Input[str]] = None,
|
|
400
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
401
|
+
__props__=None):
|
|
402
|
+
"""
|
|
403
|
+
Resource for creating an AWS Cloud Cost connector.
|
|
404
|
+
|
|
405
|
+
## Example Usage
|
|
406
|
+
|
|
407
|
+
```python
|
|
408
|
+
import pulumi
|
|
409
|
+
import pulumi_harness as harness
|
|
410
|
+
|
|
411
|
+
test = harness.platform.AwsCCConnector("test",
|
|
412
|
+
identifier="identifier",
|
|
413
|
+
name="name",
|
|
414
|
+
description="test",
|
|
415
|
+
tags=["foo:bar"],
|
|
416
|
+
account_id="account_id",
|
|
417
|
+
report_name="report_name",
|
|
418
|
+
s3_bucket="s3bucket",
|
|
419
|
+
features_enableds=[
|
|
420
|
+
"OPTIMIZATION",
|
|
421
|
+
"VISIBILITY",
|
|
422
|
+
"BILLING",
|
|
423
|
+
],
|
|
424
|
+
cross_account_access={
|
|
425
|
+
"role_arn": "role_arn",
|
|
426
|
+
"external_id": "external_id",
|
|
427
|
+
})
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
## Import
|
|
431
|
+
|
|
432
|
+
Import account level aws cloud cost connector
|
|
433
|
+
|
|
434
|
+
```sh
|
|
435
|
+
$ pulumi import harness:platform/awsCCConnector:AwsCCConnector example <connector_id>
|
|
436
|
+
```
|
|
437
|
+
|
|
438
|
+
Import org level aws cloud cost connector
|
|
439
|
+
|
|
440
|
+
```sh
|
|
441
|
+
$ pulumi import harness:platform/awsCCConnector:AwsCCConnector example <ord_id>/<connector_id>
|
|
442
|
+
```
|
|
443
|
+
|
|
444
|
+
Import project level aws cloud cost connector
|
|
445
|
+
|
|
446
|
+
```sh
|
|
447
|
+
$ pulumi import harness:platform/awsCCConnector:AwsCCConnector example <org_id>/<project_id>/<connector_id>
|
|
448
|
+
```
|
|
449
|
+
|
|
450
|
+
:param str resource_name: The name of the resource.
|
|
451
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
452
|
+
:param pulumi.Input[str] account_id: The AWS account id.
|
|
453
|
+
:param pulumi.Input[Union['AwsCCConnectorCrossAccountAccessArgs', 'AwsCCConnectorCrossAccountAccessArgsDict']] cross_account_access: Harness uses the secure cross-account role to access your AWS account. The role includes a restricted policy to access the cost and usage reports and resources for the sole purpose of cost analysis and cost optimization.
|
|
454
|
+
:param pulumi.Input[str] description: Description of the resource.
|
|
455
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] features_enableds: The features enabled for the connector. Valid values are BILLING, OPTIMIZATION, VISIBILITY, GOVERNANCE.
|
|
456
|
+
:param pulumi.Input[str] identifier: Unique identifier of the resource.
|
|
457
|
+
:param pulumi.Input[str] name: Name of the resource.
|
|
458
|
+
:param pulumi.Input[str] org_id: Unique identifier of the organization.
|
|
459
|
+
:param pulumi.Input[str] project_id: Unique identifier of the project.
|
|
460
|
+
:param pulumi.Input[str] report_name: The cost and usage report name. Provided in the delivery options when the template is opened in the AWS console.
|
|
461
|
+
:param pulumi.Input[str] s3_bucket: The name of s3 bucket.
|
|
462
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
|
|
463
|
+
"""
|
|
464
|
+
...
|
|
465
|
+
@overload
|
|
466
|
+
def __init__(__self__,
|
|
467
|
+
resource_name: str,
|
|
468
|
+
args: AwsCCConnectorArgs,
|
|
469
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
470
|
+
"""
|
|
471
|
+
Resource for creating an AWS Cloud Cost connector.
|
|
472
|
+
|
|
473
|
+
## Example Usage
|
|
474
|
+
|
|
475
|
+
```python
|
|
476
|
+
import pulumi
|
|
477
|
+
import pulumi_harness as harness
|
|
478
|
+
|
|
479
|
+
test = harness.platform.AwsCCConnector("test",
|
|
480
|
+
identifier="identifier",
|
|
481
|
+
name="name",
|
|
482
|
+
description="test",
|
|
483
|
+
tags=["foo:bar"],
|
|
484
|
+
account_id="account_id",
|
|
485
|
+
report_name="report_name",
|
|
486
|
+
s3_bucket="s3bucket",
|
|
487
|
+
features_enableds=[
|
|
488
|
+
"OPTIMIZATION",
|
|
489
|
+
"VISIBILITY",
|
|
490
|
+
"BILLING",
|
|
491
|
+
],
|
|
492
|
+
cross_account_access={
|
|
493
|
+
"role_arn": "role_arn",
|
|
494
|
+
"external_id": "external_id",
|
|
495
|
+
})
|
|
496
|
+
```
|
|
497
|
+
|
|
498
|
+
## Import
|
|
499
|
+
|
|
500
|
+
Import account level aws cloud cost connector
|
|
501
|
+
|
|
502
|
+
```sh
|
|
503
|
+
$ pulumi import harness:platform/awsCCConnector:AwsCCConnector example <connector_id>
|
|
504
|
+
```
|
|
505
|
+
|
|
506
|
+
Import org level aws cloud cost connector
|
|
507
|
+
|
|
508
|
+
```sh
|
|
509
|
+
$ pulumi import harness:platform/awsCCConnector:AwsCCConnector example <ord_id>/<connector_id>
|
|
510
|
+
```
|
|
511
|
+
|
|
512
|
+
Import project level aws cloud cost connector
|
|
513
|
+
|
|
514
|
+
```sh
|
|
515
|
+
$ pulumi import harness:platform/awsCCConnector:AwsCCConnector example <org_id>/<project_id>/<connector_id>
|
|
516
|
+
```
|
|
517
|
+
|
|
518
|
+
:param str resource_name: The name of the resource.
|
|
519
|
+
:param AwsCCConnectorArgs args: The arguments to use to populate this resource's properties.
|
|
520
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
521
|
+
"""
|
|
522
|
+
...
|
|
523
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
524
|
+
resource_args, opts = _utilities.get_resource_args_opts(AwsCCConnectorArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
525
|
+
if resource_args is not None:
|
|
526
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
527
|
+
else:
|
|
528
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
529
|
+
|
|
530
|
+
def _internal_init(__self__,
|
|
531
|
+
resource_name: str,
|
|
532
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
533
|
+
account_id: Optional[pulumi.Input[str]] = None,
|
|
534
|
+
cross_account_access: Optional[pulumi.Input[Union['AwsCCConnectorCrossAccountAccessArgs', 'AwsCCConnectorCrossAccountAccessArgsDict']]] = None,
|
|
535
|
+
description: Optional[pulumi.Input[str]] = None,
|
|
536
|
+
features_enableds: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
537
|
+
identifier: Optional[pulumi.Input[str]] = None,
|
|
538
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
539
|
+
org_id: Optional[pulumi.Input[str]] = None,
|
|
540
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
|
541
|
+
report_name: Optional[pulumi.Input[str]] = None,
|
|
542
|
+
s3_bucket: Optional[pulumi.Input[str]] = None,
|
|
543
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
544
|
+
__props__=None):
|
|
545
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
546
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
547
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
548
|
+
if opts.id is None:
|
|
549
|
+
if __props__ is not None:
|
|
550
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
551
|
+
__props__ = AwsCCConnectorArgs.__new__(AwsCCConnectorArgs)
|
|
552
|
+
|
|
553
|
+
if account_id is None and not opts.urn:
|
|
554
|
+
raise TypeError("Missing required property 'account_id'")
|
|
555
|
+
__props__.__dict__["account_id"] = account_id
|
|
556
|
+
if cross_account_access is None and not opts.urn:
|
|
557
|
+
raise TypeError("Missing required property 'cross_account_access'")
|
|
558
|
+
__props__.__dict__["cross_account_access"] = cross_account_access
|
|
559
|
+
__props__.__dict__["description"] = description
|
|
560
|
+
if features_enableds is None and not opts.urn:
|
|
561
|
+
raise TypeError("Missing required property 'features_enableds'")
|
|
562
|
+
__props__.__dict__["features_enableds"] = features_enableds
|
|
563
|
+
if identifier is None and not opts.urn:
|
|
564
|
+
raise TypeError("Missing required property 'identifier'")
|
|
565
|
+
__props__.__dict__["identifier"] = identifier
|
|
566
|
+
__props__.__dict__["name"] = name
|
|
567
|
+
__props__.__dict__["org_id"] = org_id
|
|
568
|
+
__props__.__dict__["project_id"] = project_id
|
|
569
|
+
__props__.__dict__["report_name"] = report_name
|
|
570
|
+
__props__.__dict__["s3_bucket"] = s3_bucket
|
|
571
|
+
__props__.__dict__["tags"] = tags
|
|
572
|
+
super(AwsCCConnector, __self__).__init__(
|
|
573
|
+
'harness:platform/awsCCConnector:AwsCCConnector',
|
|
574
|
+
resource_name,
|
|
575
|
+
__props__,
|
|
576
|
+
opts)
|
|
577
|
+
|
|
578
|
+
@staticmethod
|
|
579
|
+
def get(resource_name: str,
|
|
580
|
+
id: pulumi.Input[str],
|
|
581
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
582
|
+
account_id: Optional[pulumi.Input[str]] = None,
|
|
583
|
+
cross_account_access: Optional[pulumi.Input[Union['AwsCCConnectorCrossAccountAccessArgs', 'AwsCCConnectorCrossAccountAccessArgsDict']]] = None,
|
|
584
|
+
description: Optional[pulumi.Input[str]] = None,
|
|
585
|
+
features_enableds: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
586
|
+
identifier: Optional[pulumi.Input[str]] = None,
|
|
587
|
+
name: Optional[pulumi.Input[str]] = None,
|
|
588
|
+
org_id: Optional[pulumi.Input[str]] = None,
|
|
589
|
+
project_id: Optional[pulumi.Input[str]] = None,
|
|
590
|
+
report_name: Optional[pulumi.Input[str]] = None,
|
|
591
|
+
s3_bucket: Optional[pulumi.Input[str]] = None,
|
|
592
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'AwsCCConnector':
|
|
593
|
+
"""
|
|
594
|
+
Get an existing AwsCCConnector resource's state with the given name, id, and optional extra
|
|
595
|
+
properties used to qualify the lookup.
|
|
596
|
+
|
|
597
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
598
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
599
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
600
|
+
:param pulumi.Input[str] account_id: The AWS account id.
|
|
601
|
+
:param pulumi.Input[Union['AwsCCConnectorCrossAccountAccessArgs', 'AwsCCConnectorCrossAccountAccessArgsDict']] cross_account_access: Harness uses the secure cross-account role to access your AWS account. The role includes a restricted policy to access the cost and usage reports and resources for the sole purpose of cost analysis and cost optimization.
|
|
602
|
+
:param pulumi.Input[str] description: Description of the resource.
|
|
603
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] features_enableds: The features enabled for the connector. Valid values are BILLING, OPTIMIZATION, VISIBILITY, GOVERNANCE.
|
|
604
|
+
:param pulumi.Input[str] identifier: Unique identifier of the resource.
|
|
605
|
+
:param pulumi.Input[str] name: Name of the resource.
|
|
606
|
+
:param pulumi.Input[str] org_id: Unique identifier of the organization.
|
|
607
|
+
:param pulumi.Input[str] project_id: Unique identifier of the project.
|
|
608
|
+
:param pulumi.Input[str] report_name: The cost and usage report name. Provided in the delivery options when the template is opened in the AWS console.
|
|
609
|
+
:param pulumi.Input[str] s3_bucket: The name of s3 bucket.
|
|
610
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] tags: Tags to associate with the resource.
|
|
611
|
+
"""
|
|
612
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
613
|
+
|
|
614
|
+
__props__ = _AwsCCConnectorState.__new__(_AwsCCConnectorState)
|
|
615
|
+
|
|
616
|
+
__props__.__dict__["account_id"] = account_id
|
|
617
|
+
__props__.__dict__["cross_account_access"] = cross_account_access
|
|
618
|
+
__props__.__dict__["description"] = description
|
|
619
|
+
__props__.__dict__["features_enableds"] = features_enableds
|
|
620
|
+
__props__.__dict__["identifier"] = identifier
|
|
621
|
+
__props__.__dict__["name"] = name
|
|
622
|
+
__props__.__dict__["org_id"] = org_id
|
|
623
|
+
__props__.__dict__["project_id"] = project_id
|
|
624
|
+
__props__.__dict__["report_name"] = report_name
|
|
625
|
+
__props__.__dict__["s3_bucket"] = s3_bucket
|
|
626
|
+
__props__.__dict__["tags"] = tags
|
|
627
|
+
return AwsCCConnector(resource_name, opts=opts, __props__=__props__)
|
|
628
|
+
|
|
629
|
+
@property
|
|
630
|
+
@pulumi.getter(name="accountId")
|
|
631
|
+
def account_id(self) -> pulumi.Output[str]:
|
|
632
|
+
"""
|
|
633
|
+
The AWS account id.
|
|
634
|
+
"""
|
|
635
|
+
return pulumi.get(self, "account_id")
|
|
636
|
+
|
|
637
|
+
@property
|
|
638
|
+
@pulumi.getter(name="crossAccountAccess")
|
|
639
|
+
def cross_account_access(self) -> pulumi.Output['outputs.AwsCCConnectorCrossAccountAccess']:
|
|
640
|
+
"""
|
|
641
|
+
Harness uses the secure cross-account role to access your AWS account. The role includes a restricted policy to access the cost and usage reports and resources for the sole purpose of cost analysis and cost optimization.
|
|
642
|
+
"""
|
|
643
|
+
return pulumi.get(self, "cross_account_access")
|
|
644
|
+
|
|
645
|
+
@property
|
|
646
|
+
@pulumi.getter
|
|
647
|
+
def description(self) -> pulumi.Output[Optional[str]]:
|
|
648
|
+
"""
|
|
649
|
+
Description of the resource.
|
|
650
|
+
"""
|
|
651
|
+
return pulumi.get(self, "description")
|
|
652
|
+
|
|
653
|
+
@property
|
|
654
|
+
@pulumi.getter(name="featuresEnableds")
|
|
655
|
+
def features_enableds(self) -> pulumi.Output[Sequence[str]]:
|
|
656
|
+
"""
|
|
657
|
+
The features enabled for the connector. Valid values are BILLING, OPTIMIZATION, VISIBILITY, GOVERNANCE.
|
|
658
|
+
"""
|
|
659
|
+
return pulumi.get(self, "features_enableds")
|
|
660
|
+
|
|
661
|
+
@property
|
|
662
|
+
@pulumi.getter
|
|
663
|
+
def identifier(self) -> pulumi.Output[str]:
|
|
664
|
+
"""
|
|
665
|
+
Unique identifier of the resource.
|
|
666
|
+
"""
|
|
667
|
+
return pulumi.get(self, "identifier")
|
|
668
|
+
|
|
669
|
+
@property
|
|
670
|
+
@pulumi.getter
|
|
671
|
+
def name(self) -> pulumi.Output[str]:
|
|
672
|
+
"""
|
|
673
|
+
Name of the resource.
|
|
674
|
+
"""
|
|
675
|
+
return pulumi.get(self, "name")
|
|
676
|
+
|
|
677
|
+
@property
|
|
678
|
+
@pulumi.getter(name="orgId")
|
|
679
|
+
def org_id(self) -> pulumi.Output[Optional[str]]:
|
|
680
|
+
"""
|
|
681
|
+
Unique identifier of the organization.
|
|
682
|
+
"""
|
|
683
|
+
return pulumi.get(self, "org_id")
|
|
684
|
+
|
|
685
|
+
@property
|
|
686
|
+
@pulumi.getter(name="projectId")
|
|
687
|
+
def project_id(self) -> pulumi.Output[Optional[str]]:
|
|
688
|
+
"""
|
|
689
|
+
Unique identifier of the project.
|
|
690
|
+
"""
|
|
691
|
+
return pulumi.get(self, "project_id")
|
|
692
|
+
|
|
693
|
+
@property
|
|
694
|
+
@pulumi.getter(name="reportName")
|
|
695
|
+
def report_name(self) -> pulumi.Output[Optional[str]]:
|
|
696
|
+
"""
|
|
697
|
+
The cost and usage report name. Provided in the delivery options when the template is opened in the AWS console.
|
|
698
|
+
"""
|
|
699
|
+
return pulumi.get(self, "report_name")
|
|
700
|
+
|
|
701
|
+
@property
|
|
702
|
+
@pulumi.getter(name="s3Bucket")
|
|
703
|
+
def s3_bucket(self) -> pulumi.Output[Optional[str]]:
|
|
704
|
+
"""
|
|
705
|
+
The name of s3 bucket.
|
|
706
|
+
"""
|
|
707
|
+
return pulumi.get(self, "s3_bucket")
|
|
708
|
+
|
|
709
|
+
@property
|
|
710
|
+
@pulumi.getter
|
|
711
|
+
def tags(self) -> pulumi.Output[Optional[Sequence[str]]]:
|
|
712
|
+
"""
|
|
713
|
+
Tags to associate with the resource.
|
|
714
|
+
"""
|
|
715
|
+
return pulumi.get(self, "tags")
|
|
716
|
+
|