pulumi-harness 0.8.0a1755712204__py3-none-any.whl → 0.8.0a1755714852__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 +67 -0
- pulumi_harness/add_user_to_group.py +4 -0
- pulumi_harness/application.py +4 -0
- pulumi_harness/application_git_sync.py +4 -0
- pulumi_harness/chaos/__init__.py +21 -0
- pulumi_harness/chaos/_inputs.py +2702 -0
- pulumi_harness/chaos/get_hub.py +324 -0
- pulumi_harness/chaos/get_image_registry.py +339 -0
- pulumi_harness/chaos/get_infrastructure_v2.py +684 -0
- pulumi_harness/chaos/get_security_governance_condition.py +261 -0
- pulumi_harness/chaos/get_security_governance_rule.py +261 -0
- pulumi_harness/chaos/hub.py +806 -0
- pulumi_harness/chaos/hub_sync.py +274 -0
- pulumi_harness/chaos/image_registry.py +730 -0
- pulumi_harness/chaos/infrastructure_v2.py +1670 -0
- pulumi_harness/chaos/outputs.py +2276 -0
- pulumi_harness/chaos/security_governance_condition.py +795 -0
- pulumi_harness/chaos/security_governance_rule.py +688 -0
- pulumi_harness/chaos_infrastructure.py +10 -4
- pulumi_harness/cloudprovider/aws.py +4 -0
- pulumi_harness/cloudprovider/azure.py +4 -0
- pulumi_harness/cloudprovider/datacenter.py +4 -0
- pulumi_harness/cloudprovider/kubernetes.py +4 -0
- pulumi_harness/cloudprovider/spot.py +4 -0
- pulumi_harness/cloudprovider/tanzu.py +4 -0
- pulumi_harness/cluster/_inputs.py +540 -0
- pulumi_harness/cluster/get_orchestrator_config.py +46 -6
- pulumi_harness/cluster/orchestrator.py +0 -16
- pulumi_harness/cluster/orchestrator_config.py +253 -5
- pulumi_harness/cluster/outputs.py +394 -0
- pulumi_harness/delegate_approval.py +4 -0
- pulumi_harness/encrypted_text.py +4 -0
- pulumi_harness/environment.py +4 -0
- pulumi_harness/get_current_account.py +3 -3
- pulumi_harness/git_connector.py +4 -0
- pulumi_harness/governance/rule.py +4 -0
- pulumi_harness/governance/rule_enforcement.py +4 -0
- pulumi_harness/infrastructure_definition.py +4 -0
- pulumi_harness/platform/_inputs.py +537 -469
- pulumi_harness/platform/app_dynamics_connector.py +4 -0
- pulumi_harness/platform/artifactory_connector.py +4 -0
- pulumi_harness/platform/aws_cc_connector.py +4 -0
- pulumi_harness/platform/aws_connector.py +11 -7
- pulumi_harness/platform/aws_kms_connector.py +70 -20
- pulumi_harness/platform/aws_secret_manager_connector.py +13 -9
- pulumi_harness/platform/azure_cloud_cost_connector.py +51 -0
- pulumi_harness/platform/azure_cloud_provider_connector.py +4 -0
- pulumi_harness/platform/azure_key_vault_connector.py +8 -0
- pulumi_harness/platform/bitbucket_connector.py +4 -0
- pulumi_harness/platform/connector_azure_artifacts.py +4 -2
- pulumi_harness/platform/connector_azure_repo.py +11 -16
- pulumi_harness/platform/connector_custom_secret_manager.py +51 -156
- pulumi_harness/platform/connector_customhealthsource.py +4 -0
- pulumi_harness/platform/connector_gcp_kms.py +4 -0
- pulumi_harness/platform/connector_jdbc.py +4 -0
- pulumi_harness/platform/connector_pdc.py +13 -13
- pulumi_harness/platform/connector_rancher.py +4 -0
- pulumi_harness/platform/dashboard_folders.py +2 -2
- pulumi_harness/platform/dashboards.py +10 -14
- pulumi_harness/platform/datadog_connector.py +4 -0
- pulumi_harness/platform/db_instance.py +4 -0
- pulumi_harness/platform/db_schema.py +25 -21
- pulumi_harness/platform/docker_connector.py +4 -4
- pulumi_harness/platform/dynatrace_connector.py +4 -0
- pulumi_harness/platform/elasticsearch_connector.py +19 -15
- pulumi_harness/platform/environment.py +25 -530
- pulumi_harness/platform/environment_clusters_mapping.py +8 -0
- pulumi_harness/platform/environment_group.py +13 -100
- pulumi_harness/platform/environment_service_overrides.py +20 -186
- pulumi_harness/platform/feature_flag_target_group.py +8 -8
- pulumi_harness/platform/file_store_file.py +11 -7
- pulumi_harness/platform/file_store_folder.py +11 -7
- pulumi_harness/platform/filters.py +8 -0
- pulumi_harness/platform/gcp_cloud_cost_connector.py +4 -0
- pulumi_harness/platform/gcp_connector.py +4 -0
- pulumi_harness/platform/gcp_secret_manager_connector.py +6 -92
- pulumi_harness/platform/get_api_key.py +8 -38
- pulumi_harness/platform/get_aws_kms_connector.py +16 -1
- pulumi_harness/platform/get_aws_secret_manager_connector.py +7 -3
- pulumi_harness/platform/get_azure_cloud_cost_connector.py +12 -1
- pulumi_harness/platform/get_connector_azure_repo.py +53 -2
- pulumi_harness/platform/get_connector_custom_secret_manager.py +28 -32
- pulumi_harness/platform/get_connector_pdc.py +3 -3
- pulumi_harness/platform/get_current_account.py +2 -20
- pulumi_harness/platform/get_dashboard_folders.py +16 -5
- pulumi_harness/platform/get_dashboards.py +15 -7
- pulumi_harness/platform/get_db_instance.py +5 -0
- pulumi_harness/platform/get_db_schema.py +12 -15
- pulumi_harness/platform/get_environment.py +5 -0
- pulumi_harness/platform/get_environment_list.py +12 -58
- pulumi_harness/platform/get_environment_service_overrides.py +6 -6
- pulumi_harness/platform/get_filters.py +4 -0
- pulumi_harness/platform/get_gcp_secret_manager_connector.py +4 -0
- pulumi_harness/platform/get_github_connector.py +3 -0
- pulumi_harness/platform/get_gitops_applications.py +8 -0
- pulumi_harness/platform/get_gitops_filters.py +25 -10
- pulumi_harness/platform/get_gitx_webhook.py +3 -3
- pulumi_harness/platform/get_har_registry.py +46 -10
- pulumi_harness/platform/get_iacm_default_pipeline.py +24 -0
- pulumi_harness/platform/get_infra_variable_set.py +34 -25
- pulumi_harness/platform/get_infrastructure.py +5 -0
- pulumi_harness/platform/get_manual_freeze.py +0 -24
- pulumi_harness/platform/get_monitored_service.py +22 -0
- pulumi_harness/platform/get_organization.py +4 -0
- pulumi_harness/platform/get_overrides.py +66 -2
- pulumi_harness/platform/get_pagerduty_connector.py +4 -0
- pulumi_harness/platform/get_pipeline_list.py +18 -63
- pulumi_harness/platform/get_project.py +4 -0
- pulumi_harness/platform/get_project_list.py +18 -63
- pulumi_harness/platform/get_provider.py +11 -2
- pulumi_harness/platform/get_resource_group.py +4 -0
- pulumi_harness/platform/get_role_assignments.py +6 -2
- pulumi_harness/platform/get_roles.py +4 -0
- pulumi_harness/platform/get_secret_file.py +4 -0
- pulumi_harness/platform/get_secret_sshkey.py +4 -0
- pulumi_harness/platform/get_service.py +5 -0
- pulumi_harness/platform/get_service_account.py +4 -0
- pulumi_harness/platform/get_service_list.py +22 -58
- pulumi_harness/platform/get_service_overrides_v2.py +42 -0
- pulumi_harness/platform/get_slo.py +22 -0
- pulumi_harness/platform/get_token.py +2 -0
- pulumi_harness/platform/get_user.py +4 -0
- pulumi_harness/platform/get_usergroup.py +4 -0
- pulumi_harness/platform/get_variables.py +4 -0
- pulumi_harness/platform/get_vault_connector.py +5 -1
- pulumi_harness/platform/get_workspace.py +8 -3
- pulumi_harness/platform/git_connector.py +4 -0
- pulumi_harness/platform/git_ops_agent.py +4 -0
- pulumi_harness/platform/git_ops_applications.py +4 -0
- pulumi_harness/platform/git_ops_cluster.py +51 -0
- pulumi_harness/platform/git_ops_gnupg.py +4 -0
- pulumi_harness/platform/git_ops_repo_cert.py +4 -0
- pulumi_harness/platform/git_ops_repo_cred.py +4 -0
- pulumi_harness/platform/git_ops_repository.py +4 -0
- pulumi_harness/platform/github_connector.py +11 -7
- pulumi_harness/platform/gitlab_connector.py +4 -0
- pulumi_harness/platform/gitops_app_project.py +4 -0
- pulumi_harness/platform/gitops_app_project_mapping.py +4 -0
- pulumi_harness/platform/gitops_applicationset.py +96 -0
- pulumi_harness/platform/gitops_filters.py +51 -179
- pulumi_harness/platform/gitx_webhook.py +4 -0
- pulumi_harness/platform/har_registry.py +42 -43
- pulumi_harness/platform/helm_connector.py +4 -0
- pulumi_harness/platform/iacm_default_pipeline.py +28 -0
- pulumi_harness/platform/infra_module.py +6 -2
- pulumi_harness/platform/infra_variable_set.py +38 -22
- pulumi_harness/platform/infrastructure.py +18 -240
- pulumi_harness/platform/input_set.py +4 -0
- pulumi_harness/platform/jenkins_connector.py +8 -0
- pulumi_harness/platform/jira_connector.py +4 -2
- pulumi_harness/platform/kubernetes_cloud_cost_connector.py +35 -11
- pulumi_harness/platform/kubernetes_connector.py +4 -0
- pulumi_harness/platform/manual_freeze.py +6 -154
- pulumi_harness/platform/monitored_service.py +16 -12
- pulumi_harness/platform/newrelic_connector.py +4 -0
- pulumi_harness/platform/nexus_connector.py +4 -4
- pulumi_harness/platform/notification_rule.py +4 -0
- pulumi_harness/platform/oci_helm_connector.py +4 -0
- pulumi_harness/platform/organization.py +8 -0
- pulumi_harness/platform/outputs.py +481 -219
- pulumi_harness/platform/overrides.py +48 -2
- pulumi_harness/platform/pagerduty_connector.py +8 -0
- pulumi_harness/platform/pipeline.py +18 -2
- pulumi_harness/platform/pipeline_filters.py +4 -0
- pulumi_harness/platform/policy.py +6 -26
- pulumi_harness/platform/policy_set.py +4 -0
- pulumi_harness/platform/project.py +8 -0
- pulumi_harness/platform/prometheus_connector.py +4 -0
- pulumi_harness/platform/provider.py +4 -2
- pulumi_harness/platform/repo.py +40 -0
- pulumi_harness/platform/resource_group.py +15 -7
- pulumi_harness/platform/role_assignments.py +20 -16
- pulumi_harness/platform/roles.py +8 -0
- pulumi_harness/platform/secret_file.py +8 -0
- pulumi_harness/platform/secret_sshkey.py +6 -2
- pulumi_harness/platform/secret_text.py +78 -0
- pulumi_harness/platform/service.py +13 -494
- pulumi_harness/platform/service_account.py +8 -0
- pulumi_harness/platform/service_now_connector.py +4 -2
- pulumi_harness/platform/service_overrides_v2.py +4 -204
- pulumi_harness/platform/slo.py +12 -18
- pulumi_harness/platform/splunk_connector.py +4 -0
- pulumi_harness/platform/spot_connector.py +4 -0
- pulumi_harness/platform/sumologic_connector.py +4 -0
- pulumi_harness/platform/tas_connector.py +4 -0
- pulumi_harness/platform/template.py +25 -21
- pulumi_harness/platform/template_filters.py +4 -0
- pulumi_harness/platform/terraform_cloud_connector.py +4 -0
- pulumi_harness/platform/token.py +6 -2
- pulumi_harness/platform/triggers.py +8 -0
- pulumi_harness/platform/user.py +13 -9
- pulumi_harness/platform/usergroup.py +71 -7
- pulumi_harness/platform/variables.py +8 -0
- pulumi_harness/platform/vault_connector.py +15 -7
- pulumi_harness/platform/workspace.py +19 -7
- pulumi_harness/platform_api_key.py +6 -66
- pulumi_harness/platform_ccm_filters.py +11 -7
- pulumi_harness/pulumi-plugin.json +1 -1
- pulumi_harness/service/__init__.py +4 -0
- pulumi_harness/service/_inputs.py +1729 -0
- pulumi_harness/service/ami.py +4 -0
- pulumi_harness/service/codedeploy.py +4 -0
- pulumi_harness/service/discovery_agent.py +1211 -0
- pulumi_harness/service/discovery_setting.py +384 -0
- pulumi_harness/service/ecs.py +4 -0
- pulumi_harness/service/get_discovery_agent.py +443 -0
- pulumi_harness/service/get_discovery_setting.py +199 -0
- pulumi_harness/service/helm.py +4 -0
- pulumi_harness/service/kubernetes.py +4 -0
- pulumi_harness/service/lambda_.py +4 -0
- pulumi_harness/service/outputs.py +2367 -117
- pulumi_harness/service/ssh.py +4 -0
- pulumi_harness/service/tanzu.py +4 -0
- pulumi_harness/service/winrm.py +4 -0
- pulumi_harness/ssh_credential.py +4 -0
- pulumi_harness/user.py +4 -0
- pulumi_harness/user_group.py +4 -0
- pulumi_harness/yaml_config.py +4 -0
- {pulumi_harness-0.8.0a1755712204.dist-info → pulumi_harness-0.8.0a1755714852.dist-info}/METADATA +1 -1
- pulumi_harness-0.8.0a1755714852.dist-info/RECORD +355 -0
- pulumi_harness-0.8.0a1755712204.dist-info/RECORD +0 -337
- {pulumi_harness-0.8.0a1755712204.dist-info → pulumi_harness-0.8.0a1755714852.dist-info}/WHEEL +0 -0
- {pulumi_harness-0.8.0a1755712204.dist-info → pulumi_harness-0.8.0a1755714852.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,795 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import builtins as _builtins
|
|
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__ = ['SecurityGovernanceConditionArgs', 'SecurityGovernanceCondition']
|
|
20
|
+
|
|
21
|
+
@pulumi.input_type
|
|
22
|
+
class SecurityGovernanceConditionArgs:
|
|
23
|
+
def __init__(__self__, *,
|
|
24
|
+
fault_spec: pulumi.Input['SecurityGovernanceConditionFaultSpecArgs'],
|
|
25
|
+
infra_type: pulumi.Input[_builtins.str],
|
|
26
|
+
org_id: pulumi.Input[_builtins.str],
|
|
27
|
+
project_id: pulumi.Input[_builtins.str],
|
|
28
|
+
description: Optional[pulumi.Input[_builtins.str]] = None,
|
|
29
|
+
k8s_spec: Optional[pulumi.Input['SecurityGovernanceConditionK8sSpecArgs']] = None,
|
|
30
|
+
machine_spec: Optional[pulumi.Input['SecurityGovernanceConditionMachineSpecArgs']] = None,
|
|
31
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
32
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
|
|
33
|
+
"""
|
|
34
|
+
The set of arguments for constructing a SecurityGovernanceCondition resource.
|
|
35
|
+
:param pulumi.Input['SecurityGovernanceConditionFaultSpecArgs'] fault_spec: Specification for faults to be included in the condition
|
|
36
|
+
:param pulumi.Input[_builtins.str] infra_type: Type of infrastructure (Kubernetes, KubernetesV2, Linux, Windows, CloudFoundry, Container)
|
|
37
|
+
:param pulumi.Input[_builtins.str] org_id: The organization ID of the security governance condition
|
|
38
|
+
:param pulumi.Input[_builtins.str] project_id: The project ID of the security governance condition
|
|
39
|
+
:param pulumi.Input[_builtins.str] description: Description of the security governance condition
|
|
40
|
+
:param pulumi.Input['SecurityGovernanceConditionK8sSpecArgs'] k8s_spec: Kubernetes specific configuration (required when infra*type is KUBERNETES or KUBERNETESV2)
|
|
41
|
+
:param pulumi.Input['SecurityGovernanceConditionMachineSpecArgs'] machine_spec: Machine specific configuration (required when infra*type is LINUX or WINDOWS)
|
|
42
|
+
:param pulumi.Input[_builtins.str] name: Name of the security governance condition
|
|
43
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: Tags for the security governance condition
|
|
44
|
+
"""
|
|
45
|
+
pulumi.set(__self__, "fault_spec", fault_spec)
|
|
46
|
+
pulumi.set(__self__, "infra_type", infra_type)
|
|
47
|
+
pulumi.set(__self__, "org_id", org_id)
|
|
48
|
+
pulumi.set(__self__, "project_id", project_id)
|
|
49
|
+
if description is not None:
|
|
50
|
+
pulumi.set(__self__, "description", description)
|
|
51
|
+
if k8s_spec is not None:
|
|
52
|
+
pulumi.set(__self__, "k8s_spec", k8s_spec)
|
|
53
|
+
if machine_spec is not None:
|
|
54
|
+
pulumi.set(__self__, "machine_spec", machine_spec)
|
|
55
|
+
if name is not None:
|
|
56
|
+
pulumi.set(__self__, "name", name)
|
|
57
|
+
if tags is not None:
|
|
58
|
+
pulumi.set(__self__, "tags", tags)
|
|
59
|
+
|
|
60
|
+
@_builtins.property
|
|
61
|
+
@pulumi.getter(name="faultSpec")
|
|
62
|
+
def fault_spec(self) -> pulumi.Input['SecurityGovernanceConditionFaultSpecArgs']:
|
|
63
|
+
"""
|
|
64
|
+
Specification for faults to be included in the condition
|
|
65
|
+
"""
|
|
66
|
+
return pulumi.get(self, "fault_spec")
|
|
67
|
+
|
|
68
|
+
@fault_spec.setter
|
|
69
|
+
def fault_spec(self, value: pulumi.Input['SecurityGovernanceConditionFaultSpecArgs']):
|
|
70
|
+
pulumi.set(self, "fault_spec", value)
|
|
71
|
+
|
|
72
|
+
@_builtins.property
|
|
73
|
+
@pulumi.getter(name="infraType")
|
|
74
|
+
def infra_type(self) -> pulumi.Input[_builtins.str]:
|
|
75
|
+
"""
|
|
76
|
+
Type of infrastructure (Kubernetes, KubernetesV2, Linux, Windows, CloudFoundry, Container)
|
|
77
|
+
"""
|
|
78
|
+
return pulumi.get(self, "infra_type")
|
|
79
|
+
|
|
80
|
+
@infra_type.setter
|
|
81
|
+
def infra_type(self, value: pulumi.Input[_builtins.str]):
|
|
82
|
+
pulumi.set(self, "infra_type", value)
|
|
83
|
+
|
|
84
|
+
@_builtins.property
|
|
85
|
+
@pulumi.getter(name="orgId")
|
|
86
|
+
def org_id(self) -> pulumi.Input[_builtins.str]:
|
|
87
|
+
"""
|
|
88
|
+
The organization ID of the security governance condition
|
|
89
|
+
"""
|
|
90
|
+
return pulumi.get(self, "org_id")
|
|
91
|
+
|
|
92
|
+
@org_id.setter
|
|
93
|
+
def org_id(self, value: pulumi.Input[_builtins.str]):
|
|
94
|
+
pulumi.set(self, "org_id", value)
|
|
95
|
+
|
|
96
|
+
@_builtins.property
|
|
97
|
+
@pulumi.getter(name="projectId")
|
|
98
|
+
def project_id(self) -> pulumi.Input[_builtins.str]:
|
|
99
|
+
"""
|
|
100
|
+
The project ID of the security governance condition
|
|
101
|
+
"""
|
|
102
|
+
return pulumi.get(self, "project_id")
|
|
103
|
+
|
|
104
|
+
@project_id.setter
|
|
105
|
+
def project_id(self, value: pulumi.Input[_builtins.str]):
|
|
106
|
+
pulumi.set(self, "project_id", value)
|
|
107
|
+
|
|
108
|
+
@_builtins.property
|
|
109
|
+
@pulumi.getter
|
|
110
|
+
def description(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
111
|
+
"""
|
|
112
|
+
Description of the security governance condition
|
|
113
|
+
"""
|
|
114
|
+
return pulumi.get(self, "description")
|
|
115
|
+
|
|
116
|
+
@description.setter
|
|
117
|
+
def description(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
118
|
+
pulumi.set(self, "description", value)
|
|
119
|
+
|
|
120
|
+
@_builtins.property
|
|
121
|
+
@pulumi.getter(name="k8sSpec")
|
|
122
|
+
def k8s_spec(self) -> Optional[pulumi.Input['SecurityGovernanceConditionK8sSpecArgs']]:
|
|
123
|
+
"""
|
|
124
|
+
Kubernetes specific configuration (required when infra*type is KUBERNETES or KUBERNETESV2)
|
|
125
|
+
"""
|
|
126
|
+
return pulumi.get(self, "k8s_spec")
|
|
127
|
+
|
|
128
|
+
@k8s_spec.setter
|
|
129
|
+
def k8s_spec(self, value: Optional[pulumi.Input['SecurityGovernanceConditionK8sSpecArgs']]):
|
|
130
|
+
pulumi.set(self, "k8s_spec", value)
|
|
131
|
+
|
|
132
|
+
@_builtins.property
|
|
133
|
+
@pulumi.getter(name="machineSpec")
|
|
134
|
+
def machine_spec(self) -> Optional[pulumi.Input['SecurityGovernanceConditionMachineSpecArgs']]:
|
|
135
|
+
"""
|
|
136
|
+
Machine specific configuration (required when infra*type is LINUX or WINDOWS)
|
|
137
|
+
"""
|
|
138
|
+
return pulumi.get(self, "machine_spec")
|
|
139
|
+
|
|
140
|
+
@machine_spec.setter
|
|
141
|
+
def machine_spec(self, value: Optional[pulumi.Input['SecurityGovernanceConditionMachineSpecArgs']]):
|
|
142
|
+
pulumi.set(self, "machine_spec", value)
|
|
143
|
+
|
|
144
|
+
@_builtins.property
|
|
145
|
+
@pulumi.getter
|
|
146
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
147
|
+
"""
|
|
148
|
+
Name of the security governance condition
|
|
149
|
+
"""
|
|
150
|
+
return pulumi.get(self, "name")
|
|
151
|
+
|
|
152
|
+
@name.setter
|
|
153
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
154
|
+
pulumi.set(self, "name", value)
|
|
155
|
+
|
|
156
|
+
@_builtins.property
|
|
157
|
+
@pulumi.getter
|
|
158
|
+
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
159
|
+
"""
|
|
160
|
+
Tags for the security governance condition
|
|
161
|
+
"""
|
|
162
|
+
return pulumi.get(self, "tags")
|
|
163
|
+
|
|
164
|
+
@tags.setter
|
|
165
|
+
def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
|
166
|
+
pulumi.set(self, "tags", value)
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
@pulumi.input_type
|
|
170
|
+
class _SecurityGovernanceConditionState:
|
|
171
|
+
def __init__(__self__, *,
|
|
172
|
+
description: Optional[pulumi.Input[_builtins.str]] = None,
|
|
173
|
+
fault_spec: Optional[pulumi.Input['SecurityGovernanceConditionFaultSpecArgs']] = None,
|
|
174
|
+
infra_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
175
|
+
k8s_spec: Optional[pulumi.Input['SecurityGovernanceConditionK8sSpecArgs']] = None,
|
|
176
|
+
machine_spec: Optional[pulumi.Input['SecurityGovernanceConditionMachineSpecArgs']] = None,
|
|
177
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
178
|
+
org_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
179
|
+
project_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
180
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
|
|
181
|
+
"""
|
|
182
|
+
Input properties used for looking up and filtering SecurityGovernanceCondition resources.
|
|
183
|
+
:param pulumi.Input[_builtins.str] description: Description of the security governance condition
|
|
184
|
+
:param pulumi.Input['SecurityGovernanceConditionFaultSpecArgs'] fault_spec: Specification for faults to be included in the condition
|
|
185
|
+
:param pulumi.Input[_builtins.str] infra_type: Type of infrastructure (Kubernetes, KubernetesV2, Linux, Windows, CloudFoundry, Container)
|
|
186
|
+
:param pulumi.Input['SecurityGovernanceConditionK8sSpecArgs'] k8s_spec: Kubernetes specific configuration (required when infra*type is KUBERNETES or KUBERNETESV2)
|
|
187
|
+
:param pulumi.Input['SecurityGovernanceConditionMachineSpecArgs'] machine_spec: Machine specific configuration (required when infra*type is LINUX or WINDOWS)
|
|
188
|
+
:param pulumi.Input[_builtins.str] name: Name of the security governance condition
|
|
189
|
+
:param pulumi.Input[_builtins.str] org_id: The organization ID of the security governance condition
|
|
190
|
+
:param pulumi.Input[_builtins.str] project_id: The project ID of the security governance condition
|
|
191
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: Tags for the security governance condition
|
|
192
|
+
"""
|
|
193
|
+
if description is not None:
|
|
194
|
+
pulumi.set(__self__, "description", description)
|
|
195
|
+
if fault_spec is not None:
|
|
196
|
+
pulumi.set(__self__, "fault_spec", fault_spec)
|
|
197
|
+
if infra_type is not None:
|
|
198
|
+
pulumi.set(__self__, "infra_type", infra_type)
|
|
199
|
+
if k8s_spec is not None:
|
|
200
|
+
pulumi.set(__self__, "k8s_spec", k8s_spec)
|
|
201
|
+
if machine_spec is not None:
|
|
202
|
+
pulumi.set(__self__, "machine_spec", machine_spec)
|
|
203
|
+
if name is not None:
|
|
204
|
+
pulumi.set(__self__, "name", name)
|
|
205
|
+
if org_id is not None:
|
|
206
|
+
pulumi.set(__self__, "org_id", org_id)
|
|
207
|
+
if project_id is not None:
|
|
208
|
+
pulumi.set(__self__, "project_id", project_id)
|
|
209
|
+
if tags is not None:
|
|
210
|
+
pulumi.set(__self__, "tags", tags)
|
|
211
|
+
|
|
212
|
+
@_builtins.property
|
|
213
|
+
@pulumi.getter
|
|
214
|
+
def description(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
215
|
+
"""
|
|
216
|
+
Description of the security governance condition
|
|
217
|
+
"""
|
|
218
|
+
return pulumi.get(self, "description")
|
|
219
|
+
|
|
220
|
+
@description.setter
|
|
221
|
+
def description(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
222
|
+
pulumi.set(self, "description", value)
|
|
223
|
+
|
|
224
|
+
@_builtins.property
|
|
225
|
+
@pulumi.getter(name="faultSpec")
|
|
226
|
+
def fault_spec(self) -> Optional[pulumi.Input['SecurityGovernanceConditionFaultSpecArgs']]:
|
|
227
|
+
"""
|
|
228
|
+
Specification for faults to be included in the condition
|
|
229
|
+
"""
|
|
230
|
+
return pulumi.get(self, "fault_spec")
|
|
231
|
+
|
|
232
|
+
@fault_spec.setter
|
|
233
|
+
def fault_spec(self, value: Optional[pulumi.Input['SecurityGovernanceConditionFaultSpecArgs']]):
|
|
234
|
+
pulumi.set(self, "fault_spec", value)
|
|
235
|
+
|
|
236
|
+
@_builtins.property
|
|
237
|
+
@pulumi.getter(name="infraType")
|
|
238
|
+
def infra_type(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
239
|
+
"""
|
|
240
|
+
Type of infrastructure (Kubernetes, KubernetesV2, Linux, Windows, CloudFoundry, Container)
|
|
241
|
+
"""
|
|
242
|
+
return pulumi.get(self, "infra_type")
|
|
243
|
+
|
|
244
|
+
@infra_type.setter
|
|
245
|
+
def infra_type(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
246
|
+
pulumi.set(self, "infra_type", value)
|
|
247
|
+
|
|
248
|
+
@_builtins.property
|
|
249
|
+
@pulumi.getter(name="k8sSpec")
|
|
250
|
+
def k8s_spec(self) -> Optional[pulumi.Input['SecurityGovernanceConditionK8sSpecArgs']]:
|
|
251
|
+
"""
|
|
252
|
+
Kubernetes specific configuration (required when infra*type is KUBERNETES or KUBERNETESV2)
|
|
253
|
+
"""
|
|
254
|
+
return pulumi.get(self, "k8s_spec")
|
|
255
|
+
|
|
256
|
+
@k8s_spec.setter
|
|
257
|
+
def k8s_spec(self, value: Optional[pulumi.Input['SecurityGovernanceConditionK8sSpecArgs']]):
|
|
258
|
+
pulumi.set(self, "k8s_spec", value)
|
|
259
|
+
|
|
260
|
+
@_builtins.property
|
|
261
|
+
@pulumi.getter(name="machineSpec")
|
|
262
|
+
def machine_spec(self) -> Optional[pulumi.Input['SecurityGovernanceConditionMachineSpecArgs']]:
|
|
263
|
+
"""
|
|
264
|
+
Machine specific configuration (required when infra*type is LINUX or WINDOWS)
|
|
265
|
+
"""
|
|
266
|
+
return pulumi.get(self, "machine_spec")
|
|
267
|
+
|
|
268
|
+
@machine_spec.setter
|
|
269
|
+
def machine_spec(self, value: Optional[pulumi.Input['SecurityGovernanceConditionMachineSpecArgs']]):
|
|
270
|
+
pulumi.set(self, "machine_spec", value)
|
|
271
|
+
|
|
272
|
+
@_builtins.property
|
|
273
|
+
@pulumi.getter
|
|
274
|
+
def name(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
275
|
+
"""
|
|
276
|
+
Name of the security governance condition
|
|
277
|
+
"""
|
|
278
|
+
return pulumi.get(self, "name")
|
|
279
|
+
|
|
280
|
+
@name.setter
|
|
281
|
+
def name(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
282
|
+
pulumi.set(self, "name", value)
|
|
283
|
+
|
|
284
|
+
@_builtins.property
|
|
285
|
+
@pulumi.getter(name="orgId")
|
|
286
|
+
def org_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
287
|
+
"""
|
|
288
|
+
The organization ID of the security governance condition
|
|
289
|
+
"""
|
|
290
|
+
return pulumi.get(self, "org_id")
|
|
291
|
+
|
|
292
|
+
@org_id.setter
|
|
293
|
+
def org_id(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
294
|
+
pulumi.set(self, "org_id", value)
|
|
295
|
+
|
|
296
|
+
@_builtins.property
|
|
297
|
+
@pulumi.getter(name="projectId")
|
|
298
|
+
def project_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
299
|
+
"""
|
|
300
|
+
The project ID of the security governance condition
|
|
301
|
+
"""
|
|
302
|
+
return pulumi.get(self, "project_id")
|
|
303
|
+
|
|
304
|
+
@project_id.setter
|
|
305
|
+
def project_id(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
306
|
+
pulumi.set(self, "project_id", value)
|
|
307
|
+
|
|
308
|
+
@_builtins.property
|
|
309
|
+
@pulumi.getter
|
|
310
|
+
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
|
|
311
|
+
"""
|
|
312
|
+
Tags for the security governance condition
|
|
313
|
+
"""
|
|
314
|
+
return pulumi.get(self, "tags")
|
|
315
|
+
|
|
316
|
+
@tags.setter
|
|
317
|
+
def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
|
|
318
|
+
pulumi.set(self, "tags", value)
|
|
319
|
+
|
|
320
|
+
|
|
321
|
+
@pulumi.type_token("harness:chaos/securityGovernanceCondition:SecurityGovernanceCondition")
|
|
322
|
+
class SecurityGovernanceCondition(pulumi.CustomResource):
|
|
323
|
+
@overload
|
|
324
|
+
def __init__(__self__,
|
|
325
|
+
resource_name: str,
|
|
326
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
327
|
+
description: Optional[pulumi.Input[_builtins.str]] = None,
|
|
328
|
+
fault_spec: Optional[pulumi.Input[Union['SecurityGovernanceConditionFaultSpecArgs', 'SecurityGovernanceConditionFaultSpecArgsDict']]] = None,
|
|
329
|
+
infra_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
330
|
+
k8s_spec: Optional[pulumi.Input[Union['SecurityGovernanceConditionK8sSpecArgs', 'SecurityGovernanceConditionK8sSpecArgsDict']]] = None,
|
|
331
|
+
machine_spec: Optional[pulumi.Input[Union['SecurityGovernanceConditionMachineSpecArgs', 'SecurityGovernanceConditionMachineSpecArgsDict']]] = None,
|
|
332
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
333
|
+
org_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
334
|
+
project_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
335
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
336
|
+
__props__=None):
|
|
337
|
+
"""
|
|
338
|
+
Resource for managing a Harness Chaos Security Governance Condition
|
|
339
|
+
|
|
340
|
+
## Example Usage
|
|
341
|
+
|
|
342
|
+
```python
|
|
343
|
+
import pulumi
|
|
344
|
+
import pulumi_harness as harness
|
|
345
|
+
|
|
346
|
+
# Example of a Kubernetes Security Governance Condition
|
|
347
|
+
k8s_condition = harness.chaos.SecurityGovernanceCondition("k8s_condition",
|
|
348
|
+
org_id=org_id,
|
|
349
|
+
project_id=project_id,
|
|
350
|
+
name="k8s-security-condition",
|
|
351
|
+
description="Security governance condition for Kubernetes workloads",
|
|
352
|
+
infra_type="KubernetesV2",
|
|
353
|
+
fault_spec={
|
|
354
|
+
"operator": "NOT_EQUAL_TO",
|
|
355
|
+
"faults": [
|
|
356
|
+
{
|
|
357
|
+
"fault_type": "FAULT",
|
|
358
|
+
"name": "pod-delete",
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
"fault_type": "FAULT",
|
|
362
|
+
"name": "pod-dns",
|
|
363
|
+
},
|
|
364
|
+
],
|
|
365
|
+
},
|
|
366
|
+
k8s_spec={
|
|
367
|
+
"infra_spec": {
|
|
368
|
+
"operator": "EQUAL_TO",
|
|
369
|
+
"infra_ids": [k8s_infra_id],
|
|
370
|
+
},
|
|
371
|
+
"application_spec": {
|
|
372
|
+
"operator": "EQUAL_TO",
|
|
373
|
+
"workloads": [{
|
|
374
|
+
"namespace": "default",
|
|
375
|
+
"kind": "deployment",
|
|
376
|
+
"label": "app=nginx",
|
|
377
|
+
"services": ["nginx-service"],
|
|
378
|
+
"application_map_id": "nginx-app",
|
|
379
|
+
}],
|
|
380
|
+
},
|
|
381
|
+
"chaos_service_account_spec": {
|
|
382
|
+
"operator": "EQUAL_TO",
|
|
383
|
+
"service_accounts": [
|
|
384
|
+
"default",
|
|
385
|
+
"chaos-service-account",
|
|
386
|
+
],
|
|
387
|
+
},
|
|
388
|
+
},
|
|
389
|
+
tags=[
|
|
390
|
+
"env:prod",
|
|
391
|
+
"team:security",
|
|
392
|
+
"platform:k8s",
|
|
393
|
+
])
|
|
394
|
+
# Example of a Windows Security Governance Condition
|
|
395
|
+
windows_condition = harness.chaos.SecurityGovernanceCondition("windows_condition",
|
|
396
|
+
org_id=org_id,
|
|
397
|
+
project_id=project_id,
|
|
398
|
+
name="windows-security-condition",
|
|
399
|
+
description="Security governance condition for Windows hosts",
|
|
400
|
+
infra_type="Windows",
|
|
401
|
+
fault_spec={
|
|
402
|
+
"operator": "NOT_EQUAL_TO",
|
|
403
|
+
"faults": [
|
|
404
|
+
{
|
|
405
|
+
"fault_type": "FAULT",
|
|
406
|
+
"name": "process-kill",
|
|
407
|
+
},
|
|
408
|
+
{
|
|
409
|
+
"fault_type": "FAULT",
|
|
410
|
+
"name": "cpu-hog",
|
|
411
|
+
},
|
|
412
|
+
],
|
|
413
|
+
},
|
|
414
|
+
machine_spec={
|
|
415
|
+
"infra_spec": {
|
|
416
|
+
"operator": "EQUAL_TO",
|
|
417
|
+
"infra_ids": [windows_infra_id],
|
|
418
|
+
},
|
|
419
|
+
},
|
|
420
|
+
tags=[
|
|
421
|
+
"env:prod",
|
|
422
|
+
"team:security",
|
|
423
|
+
"platform:windows",
|
|
424
|
+
])
|
|
425
|
+
# Example of a Linux Security Governance Condition
|
|
426
|
+
linux_condition = harness.chaos.SecurityGovernanceCondition("linux_condition",
|
|
427
|
+
org_id=org_id,
|
|
428
|
+
project_id=project_id,
|
|
429
|
+
name="linux-security-condition",
|
|
430
|
+
description="Security governance condition for Linux hosts",
|
|
431
|
+
infra_type="Linux",
|
|
432
|
+
fault_spec={
|
|
433
|
+
"operator": "NOT_EQUAL_TO",
|
|
434
|
+
"faults": [
|
|
435
|
+
{
|
|
436
|
+
"fault_type": "FAULT",
|
|
437
|
+
"name": "process-kill",
|
|
438
|
+
},
|
|
439
|
+
{
|
|
440
|
+
"fault_type": "FAULT",
|
|
441
|
+
"name": "memory-hog",
|
|
442
|
+
},
|
|
443
|
+
],
|
|
444
|
+
},
|
|
445
|
+
machine_spec={
|
|
446
|
+
"infra_spec": {
|
|
447
|
+
"operator": "EQUAL_TO",
|
|
448
|
+
"infra_ids": [linux_infra_id],
|
|
449
|
+
},
|
|
450
|
+
},
|
|
451
|
+
tags=[
|
|
452
|
+
"env:prod",
|
|
453
|
+
"team:security",
|
|
454
|
+
"platform:linux",
|
|
455
|
+
])
|
|
456
|
+
pulumi.export("k8sConditionId", k8s_condition.id)
|
|
457
|
+
pulumi.export("windowsConditionId", windows_condition.id)
|
|
458
|
+
pulumi.export("linuxConditionId", linux_condition.id)
|
|
459
|
+
```
|
|
460
|
+
|
|
461
|
+
## Import
|
|
462
|
+
|
|
463
|
+
The `pulumi import` command can be used, for example:
|
|
464
|
+
|
|
465
|
+
Import Project level Chaos Security Governance Condition
|
|
466
|
+
|
|
467
|
+
```sh
|
|
468
|
+
$ pulumi import harness:chaos/securityGovernanceCondition:SecurityGovernanceCondition example org_id/project_id/condition_id
|
|
469
|
+
```
|
|
470
|
+
|
|
471
|
+
:param str resource_name: The name of the resource.
|
|
472
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
473
|
+
:param pulumi.Input[_builtins.str] description: Description of the security governance condition
|
|
474
|
+
:param pulumi.Input[Union['SecurityGovernanceConditionFaultSpecArgs', 'SecurityGovernanceConditionFaultSpecArgsDict']] fault_spec: Specification for faults to be included in the condition
|
|
475
|
+
:param pulumi.Input[_builtins.str] infra_type: Type of infrastructure (Kubernetes, KubernetesV2, Linux, Windows, CloudFoundry, Container)
|
|
476
|
+
:param pulumi.Input[Union['SecurityGovernanceConditionK8sSpecArgs', 'SecurityGovernanceConditionK8sSpecArgsDict']] k8s_spec: Kubernetes specific configuration (required when infra*type is KUBERNETES or KUBERNETESV2)
|
|
477
|
+
:param pulumi.Input[Union['SecurityGovernanceConditionMachineSpecArgs', 'SecurityGovernanceConditionMachineSpecArgsDict']] machine_spec: Machine specific configuration (required when infra*type is LINUX or WINDOWS)
|
|
478
|
+
:param pulumi.Input[_builtins.str] name: Name of the security governance condition
|
|
479
|
+
:param pulumi.Input[_builtins.str] org_id: The organization ID of the security governance condition
|
|
480
|
+
:param pulumi.Input[_builtins.str] project_id: The project ID of the security governance condition
|
|
481
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: Tags for the security governance condition
|
|
482
|
+
"""
|
|
483
|
+
...
|
|
484
|
+
@overload
|
|
485
|
+
def __init__(__self__,
|
|
486
|
+
resource_name: str,
|
|
487
|
+
args: SecurityGovernanceConditionArgs,
|
|
488
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
489
|
+
"""
|
|
490
|
+
Resource for managing a Harness Chaos Security Governance Condition
|
|
491
|
+
|
|
492
|
+
## Example Usage
|
|
493
|
+
|
|
494
|
+
```python
|
|
495
|
+
import pulumi
|
|
496
|
+
import pulumi_harness as harness
|
|
497
|
+
|
|
498
|
+
# Example of a Kubernetes Security Governance Condition
|
|
499
|
+
k8s_condition = harness.chaos.SecurityGovernanceCondition("k8s_condition",
|
|
500
|
+
org_id=org_id,
|
|
501
|
+
project_id=project_id,
|
|
502
|
+
name="k8s-security-condition",
|
|
503
|
+
description="Security governance condition for Kubernetes workloads",
|
|
504
|
+
infra_type="KubernetesV2",
|
|
505
|
+
fault_spec={
|
|
506
|
+
"operator": "NOT_EQUAL_TO",
|
|
507
|
+
"faults": [
|
|
508
|
+
{
|
|
509
|
+
"fault_type": "FAULT",
|
|
510
|
+
"name": "pod-delete",
|
|
511
|
+
},
|
|
512
|
+
{
|
|
513
|
+
"fault_type": "FAULT",
|
|
514
|
+
"name": "pod-dns",
|
|
515
|
+
},
|
|
516
|
+
],
|
|
517
|
+
},
|
|
518
|
+
k8s_spec={
|
|
519
|
+
"infra_spec": {
|
|
520
|
+
"operator": "EQUAL_TO",
|
|
521
|
+
"infra_ids": [k8s_infra_id],
|
|
522
|
+
},
|
|
523
|
+
"application_spec": {
|
|
524
|
+
"operator": "EQUAL_TO",
|
|
525
|
+
"workloads": [{
|
|
526
|
+
"namespace": "default",
|
|
527
|
+
"kind": "deployment",
|
|
528
|
+
"label": "app=nginx",
|
|
529
|
+
"services": ["nginx-service"],
|
|
530
|
+
"application_map_id": "nginx-app",
|
|
531
|
+
}],
|
|
532
|
+
},
|
|
533
|
+
"chaos_service_account_spec": {
|
|
534
|
+
"operator": "EQUAL_TO",
|
|
535
|
+
"service_accounts": [
|
|
536
|
+
"default",
|
|
537
|
+
"chaos-service-account",
|
|
538
|
+
],
|
|
539
|
+
},
|
|
540
|
+
},
|
|
541
|
+
tags=[
|
|
542
|
+
"env:prod",
|
|
543
|
+
"team:security",
|
|
544
|
+
"platform:k8s",
|
|
545
|
+
])
|
|
546
|
+
# Example of a Windows Security Governance Condition
|
|
547
|
+
windows_condition = harness.chaos.SecurityGovernanceCondition("windows_condition",
|
|
548
|
+
org_id=org_id,
|
|
549
|
+
project_id=project_id,
|
|
550
|
+
name="windows-security-condition",
|
|
551
|
+
description="Security governance condition for Windows hosts",
|
|
552
|
+
infra_type="Windows",
|
|
553
|
+
fault_spec={
|
|
554
|
+
"operator": "NOT_EQUAL_TO",
|
|
555
|
+
"faults": [
|
|
556
|
+
{
|
|
557
|
+
"fault_type": "FAULT",
|
|
558
|
+
"name": "process-kill",
|
|
559
|
+
},
|
|
560
|
+
{
|
|
561
|
+
"fault_type": "FAULT",
|
|
562
|
+
"name": "cpu-hog",
|
|
563
|
+
},
|
|
564
|
+
],
|
|
565
|
+
},
|
|
566
|
+
machine_spec={
|
|
567
|
+
"infra_spec": {
|
|
568
|
+
"operator": "EQUAL_TO",
|
|
569
|
+
"infra_ids": [windows_infra_id],
|
|
570
|
+
},
|
|
571
|
+
},
|
|
572
|
+
tags=[
|
|
573
|
+
"env:prod",
|
|
574
|
+
"team:security",
|
|
575
|
+
"platform:windows",
|
|
576
|
+
])
|
|
577
|
+
# Example of a Linux Security Governance Condition
|
|
578
|
+
linux_condition = harness.chaos.SecurityGovernanceCondition("linux_condition",
|
|
579
|
+
org_id=org_id,
|
|
580
|
+
project_id=project_id,
|
|
581
|
+
name="linux-security-condition",
|
|
582
|
+
description="Security governance condition for Linux hosts",
|
|
583
|
+
infra_type="Linux",
|
|
584
|
+
fault_spec={
|
|
585
|
+
"operator": "NOT_EQUAL_TO",
|
|
586
|
+
"faults": [
|
|
587
|
+
{
|
|
588
|
+
"fault_type": "FAULT",
|
|
589
|
+
"name": "process-kill",
|
|
590
|
+
},
|
|
591
|
+
{
|
|
592
|
+
"fault_type": "FAULT",
|
|
593
|
+
"name": "memory-hog",
|
|
594
|
+
},
|
|
595
|
+
],
|
|
596
|
+
},
|
|
597
|
+
machine_spec={
|
|
598
|
+
"infra_spec": {
|
|
599
|
+
"operator": "EQUAL_TO",
|
|
600
|
+
"infra_ids": [linux_infra_id],
|
|
601
|
+
},
|
|
602
|
+
},
|
|
603
|
+
tags=[
|
|
604
|
+
"env:prod",
|
|
605
|
+
"team:security",
|
|
606
|
+
"platform:linux",
|
|
607
|
+
])
|
|
608
|
+
pulumi.export("k8sConditionId", k8s_condition.id)
|
|
609
|
+
pulumi.export("windowsConditionId", windows_condition.id)
|
|
610
|
+
pulumi.export("linuxConditionId", linux_condition.id)
|
|
611
|
+
```
|
|
612
|
+
|
|
613
|
+
## Import
|
|
614
|
+
|
|
615
|
+
The `pulumi import` command can be used, for example:
|
|
616
|
+
|
|
617
|
+
Import Project level Chaos Security Governance Condition
|
|
618
|
+
|
|
619
|
+
```sh
|
|
620
|
+
$ pulumi import harness:chaos/securityGovernanceCondition:SecurityGovernanceCondition example org_id/project_id/condition_id
|
|
621
|
+
```
|
|
622
|
+
|
|
623
|
+
:param str resource_name: The name of the resource.
|
|
624
|
+
:param SecurityGovernanceConditionArgs args: The arguments to use to populate this resource's properties.
|
|
625
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
626
|
+
"""
|
|
627
|
+
...
|
|
628
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
629
|
+
resource_args, opts = _utilities.get_resource_args_opts(SecurityGovernanceConditionArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
630
|
+
if resource_args is not None:
|
|
631
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
632
|
+
else:
|
|
633
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
634
|
+
|
|
635
|
+
def _internal_init(__self__,
|
|
636
|
+
resource_name: str,
|
|
637
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
638
|
+
description: Optional[pulumi.Input[_builtins.str]] = None,
|
|
639
|
+
fault_spec: Optional[pulumi.Input[Union['SecurityGovernanceConditionFaultSpecArgs', 'SecurityGovernanceConditionFaultSpecArgsDict']]] = None,
|
|
640
|
+
infra_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
641
|
+
k8s_spec: Optional[pulumi.Input[Union['SecurityGovernanceConditionK8sSpecArgs', 'SecurityGovernanceConditionK8sSpecArgsDict']]] = None,
|
|
642
|
+
machine_spec: Optional[pulumi.Input[Union['SecurityGovernanceConditionMachineSpecArgs', 'SecurityGovernanceConditionMachineSpecArgsDict']]] = None,
|
|
643
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
644
|
+
org_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
645
|
+
project_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
646
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
|
|
647
|
+
__props__=None):
|
|
648
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
649
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
650
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
651
|
+
if opts.id is None:
|
|
652
|
+
if __props__ is not None:
|
|
653
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
654
|
+
__props__ = SecurityGovernanceConditionArgs.__new__(SecurityGovernanceConditionArgs)
|
|
655
|
+
|
|
656
|
+
__props__.__dict__["description"] = description
|
|
657
|
+
if fault_spec is None and not opts.urn:
|
|
658
|
+
raise TypeError("Missing required property 'fault_spec'")
|
|
659
|
+
__props__.__dict__["fault_spec"] = fault_spec
|
|
660
|
+
if infra_type is None and not opts.urn:
|
|
661
|
+
raise TypeError("Missing required property 'infra_type'")
|
|
662
|
+
__props__.__dict__["infra_type"] = infra_type
|
|
663
|
+
__props__.__dict__["k8s_spec"] = k8s_spec
|
|
664
|
+
__props__.__dict__["machine_spec"] = machine_spec
|
|
665
|
+
__props__.__dict__["name"] = name
|
|
666
|
+
if org_id is None and not opts.urn:
|
|
667
|
+
raise TypeError("Missing required property 'org_id'")
|
|
668
|
+
__props__.__dict__["org_id"] = org_id
|
|
669
|
+
if project_id is None and not opts.urn:
|
|
670
|
+
raise TypeError("Missing required property 'project_id'")
|
|
671
|
+
__props__.__dict__["project_id"] = project_id
|
|
672
|
+
__props__.__dict__["tags"] = tags
|
|
673
|
+
super(SecurityGovernanceCondition, __self__).__init__(
|
|
674
|
+
'harness:chaos/securityGovernanceCondition:SecurityGovernanceCondition',
|
|
675
|
+
resource_name,
|
|
676
|
+
__props__,
|
|
677
|
+
opts)
|
|
678
|
+
|
|
679
|
+
@staticmethod
|
|
680
|
+
def get(resource_name: str,
|
|
681
|
+
id: pulumi.Input[str],
|
|
682
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
683
|
+
description: Optional[pulumi.Input[_builtins.str]] = None,
|
|
684
|
+
fault_spec: Optional[pulumi.Input[Union['SecurityGovernanceConditionFaultSpecArgs', 'SecurityGovernanceConditionFaultSpecArgsDict']]] = None,
|
|
685
|
+
infra_type: Optional[pulumi.Input[_builtins.str]] = None,
|
|
686
|
+
k8s_spec: Optional[pulumi.Input[Union['SecurityGovernanceConditionK8sSpecArgs', 'SecurityGovernanceConditionK8sSpecArgsDict']]] = None,
|
|
687
|
+
machine_spec: Optional[pulumi.Input[Union['SecurityGovernanceConditionMachineSpecArgs', 'SecurityGovernanceConditionMachineSpecArgsDict']]] = None,
|
|
688
|
+
name: Optional[pulumi.Input[_builtins.str]] = None,
|
|
689
|
+
org_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
690
|
+
project_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
691
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None) -> 'SecurityGovernanceCondition':
|
|
692
|
+
"""
|
|
693
|
+
Get an existing SecurityGovernanceCondition resource's state with the given name, id, and optional extra
|
|
694
|
+
properties used to qualify the lookup.
|
|
695
|
+
|
|
696
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
697
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
698
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
699
|
+
:param pulumi.Input[_builtins.str] description: Description of the security governance condition
|
|
700
|
+
:param pulumi.Input[Union['SecurityGovernanceConditionFaultSpecArgs', 'SecurityGovernanceConditionFaultSpecArgsDict']] fault_spec: Specification for faults to be included in the condition
|
|
701
|
+
:param pulumi.Input[_builtins.str] infra_type: Type of infrastructure (Kubernetes, KubernetesV2, Linux, Windows, CloudFoundry, Container)
|
|
702
|
+
:param pulumi.Input[Union['SecurityGovernanceConditionK8sSpecArgs', 'SecurityGovernanceConditionK8sSpecArgsDict']] k8s_spec: Kubernetes specific configuration (required when infra*type is KUBERNETES or KUBERNETESV2)
|
|
703
|
+
:param pulumi.Input[Union['SecurityGovernanceConditionMachineSpecArgs', 'SecurityGovernanceConditionMachineSpecArgsDict']] machine_spec: Machine specific configuration (required when infra*type is LINUX or WINDOWS)
|
|
704
|
+
:param pulumi.Input[_builtins.str] name: Name of the security governance condition
|
|
705
|
+
:param pulumi.Input[_builtins.str] org_id: The organization ID of the security governance condition
|
|
706
|
+
:param pulumi.Input[_builtins.str] project_id: The project ID of the security governance condition
|
|
707
|
+
:param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: Tags for the security governance condition
|
|
708
|
+
"""
|
|
709
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
710
|
+
|
|
711
|
+
__props__ = _SecurityGovernanceConditionState.__new__(_SecurityGovernanceConditionState)
|
|
712
|
+
|
|
713
|
+
__props__.__dict__["description"] = description
|
|
714
|
+
__props__.__dict__["fault_spec"] = fault_spec
|
|
715
|
+
__props__.__dict__["infra_type"] = infra_type
|
|
716
|
+
__props__.__dict__["k8s_spec"] = k8s_spec
|
|
717
|
+
__props__.__dict__["machine_spec"] = machine_spec
|
|
718
|
+
__props__.__dict__["name"] = name
|
|
719
|
+
__props__.__dict__["org_id"] = org_id
|
|
720
|
+
__props__.__dict__["project_id"] = project_id
|
|
721
|
+
__props__.__dict__["tags"] = tags
|
|
722
|
+
return SecurityGovernanceCondition(resource_name, opts=opts, __props__=__props__)
|
|
723
|
+
|
|
724
|
+
@_builtins.property
|
|
725
|
+
@pulumi.getter
|
|
726
|
+
def description(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
727
|
+
"""
|
|
728
|
+
Description of the security governance condition
|
|
729
|
+
"""
|
|
730
|
+
return pulumi.get(self, "description")
|
|
731
|
+
|
|
732
|
+
@_builtins.property
|
|
733
|
+
@pulumi.getter(name="faultSpec")
|
|
734
|
+
def fault_spec(self) -> pulumi.Output['outputs.SecurityGovernanceConditionFaultSpec']:
|
|
735
|
+
"""
|
|
736
|
+
Specification for faults to be included in the condition
|
|
737
|
+
"""
|
|
738
|
+
return pulumi.get(self, "fault_spec")
|
|
739
|
+
|
|
740
|
+
@_builtins.property
|
|
741
|
+
@pulumi.getter(name="infraType")
|
|
742
|
+
def infra_type(self) -> pulumi.Output[_builtins.str]:
|
|
743
|
+
"""
|
|
744
|
+
Type of infrastructure (Kubernetes, KubernetesV2, Linux, Windows, CloudFoundry, Container)
|
|
745
|
+
"""
|
|
746
|
+
return pulumi.get(self, "infra_type")
|
|
747
|
+
|
|
748
|
+
@_builtins.property
|
|
749
|
+
@pulumi.getter(name="k8sSpec")
|
|
750
|
+
def k8s_spec(self) -> pulumi.Output[Optional['outputs.SecurityGovernanceConditionK8sSpec']]:
|
|
751
|
+
"""
|
|
752
|
+
Kubernetes specific configuration (required when infra*type is KUBERNETES or KUBERNETESV2)
|
|
753
|
+
"""
|
|
754
|
+
return pulumi.get(self, "k8s_spec")
|
|
755
|
+
|
|
756
|
+
@_builtins.property
|
|
757
|
+
@pulumi.getter(name="machineSpec")
|
|
758
|
+
def machine_spec(self) -> pulumi.Output[Optional['outputs.SecurityGovernanceConditionMachineSpec']]:
|
|
759
|
+
"""
|
|
760
|
+
Machine specific configuration (required when infra*type is LINUX or WINDOWS)
|
|
761
|
+
"""
|
|
762
|
+
return pulumi.get(self, "machine_spec")
|
|
763
|
+
|
|
764
|
+
@_builtins.property
|
|
765
|
+
@pulumi.getter
|
|
766
|
+
def name(self) -> pulumi.Output[_builtins.str]:
|
|
767
|
+
"""
|
|
768
|
+
Name of the security governance condition
|
|
769
|
+
"""
|
|
770
|
+
return pulumi.get(self, "name")
|
|
771
|
+
|
|
772
|
+
@_builtins.property
|
|
773
|
+
@pulumi.getter(name="orgId")
|
|
774
|
+
def org_id(self) -> pulumi.Output[_builtins.str]:
|
|
775
|
+
"""
|
|
776
|
+
The organization ID of the security governance condition
|
|
777
|
+
"""
|
|
778
|
+
return pulumi.get(self, "org_id")
|
|
779
|
+
|
|
780
|
+
@_builtins.property
|
|
781
|
+
@pulumi.getter(name="projectId")
|
|
782
|
+
def project_id(self) -> pulumi.Output[_builtins.str]:
|
|
783
|
+
"""
|
|
784
|
+
The project ID of the security governance condition
|
|
785
|
+
"""
|
|
786
|
+
return pulumi.get(self, "project_id")
|
|
787
|
+
|
|
788
|
+
@_builtins.property
|
|
789
|
+
@pulumi.getter
|
|
790
|
+
def tags(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
|
|
791
|
+
"""
|
|
792
|
+
Tags for the security governance condition
|
|
793
|
+
"""
|
|
794
|
+
return pulumi.get(self, "tags")
|
|
795
|
+
|