pulumi-pulumiservice 0.33.0a1763486569__tar.gz → 0.34.0__tar.gz

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.
Files changed (46) hide show
  1. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/PKG-INFO +1 -1
  2. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/__init__.py +4 -0
  3. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/_enums.py +38 -0
  4. pulumi_pulumiservice-0.34.0/pulumi_pulumiservice/get_insights_account.py +188 -0
  5. pulumi_pulumiservice-0.34.0/pulumi_pulumiservice/get_insights_accounts.py +70 -0
  6. pulumi_pulumiservice-0.34.0/pulumi_pulumiservice/insights_account.py +331 -0
  7. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/outputs.py +111 -0
  8. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/policy_group.py +29 -0
  9. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/pulumi-plugin.json +1 -1
  10. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice.egg-info/PKG-INFO +1 -1
  11. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice.egg-info/SOURCES.txt +3 -0
  12. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pyproject.toml +1 -1
  13. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/README.md +0 -0
  14. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/_inputs.py +0 -0
  15. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/_utilities.py +0 -0
  16. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/access_token.py +0 -0
  17. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/agent_pool.py +0 -0
  18. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/approval_rule.py +0 -0
  19. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/config/__init__.py +0 -0
  20. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/config/__init__.pyi +0 -0
  21. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/config/vars.py +0 -0
  22. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/deployment_schedule.py +0 -0
  23. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/deployment_settings.py +0 -0
  24. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/drift_schedule.py +0 -0
  25. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/environment.py +0 -0
  26. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/environment_rotation_schedule.py +0 -0
  27. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/environment_version_tag.py +0 -0
  28. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/get_policy_pack.py +0 -0
  29. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/get_policy_packs.py +0 -0
  30. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/oidc_issuer.py +0 -0
  31. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/org_access_token.py +0 -0
  32. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/provider.py +0 -0
  33. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/py.typed +0 -0
  34. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/stack.py +0 -0
  35. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/stack_tag.py +0 -0
  36. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/team.py +0 -0
  37. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/team_access_token.py +0 -0
  38. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/team_environment_permission.py +0 -0
  39. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/team_stack_permission.py +0 -0
  40. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/template_source.py +0 -0
  41. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/ttl_schedule.py +0 -0
  42. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice/webhook.py +0 -0
  43. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice.egg-info/dependency_links.txt +0 -0
  44. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice.egg-info/requires.txt +0 -0
  45. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/pulumi_pulumiservice.egg-info/top_level.txt +0 -0
  46. {pulumi_pulumiservice-0.33.0a1763486569 → pulumi_pulumiservice-0.34.0}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pulumi_pulumiservice
3
- Version: 0.33.0a1763486569
3
+ Version: 0.34.0
4
4
  Summary: A native Pulumi package for creating and managing Pulumi Cloud constructs
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.com
@@ -16,8 +16,11 @@ from .drift_schedule import *
16
16
  from .environment import *
17
17
  from .environment_rotation_schedule import *
18
18
  from .environment_version_tag import *
19
+ from .get_insights_account import *
20
+ from .get_insights_accounts import *
19
21
  from .get_policy_pack import *
20
22
  from .get_policy_packs import *
23
+ from .insights_account import *
21
24
  from .oidc_issuer import *
22
25
  from .org_access_token import *
23
26
  from .policy_group import *
@@ -58,6 +61,7 @@ _utilities.register(
58
61
  "pulumiservice:index:Environment": "Environment",
59
62
  "pulumiservice:index:EnvironmentRotationSchedule": "EnvironmentRotationSchedule",
60
63
  "pulumiservice:index:EnvironmentVersionTag": "EnvironmentVersionTag",
64
+ "pulumiservice:index:InsightsAccount": "InsightsAccount",
61
65
  "pulumiservice:index:OidcIssuer": "OidcIssuer",
62
66
  "pulumiservice:index:OrgAccessToken": "OrgAccessToken",
63
67
  "pulumiservice:index:PolicyGroup": "PolicyGroup",
@@ -10,9 +10,11 @@ __all__ = [
10
10
  'AuthPolicyDecision',
11
11
  'AuthPolicyPermissionLevel',
12
12
  'AuthPolicyTokenType',
13
+ 'CloudProvider',
13
14
  'EnvironmentPermission',
14
15
  'PulumiOperation',
15
16
  'RbacPermission',
17
+ 'ScanSchedule',
16
18
  'TargetActionType',
17
19
  'TeamStackPermissionScope',
18
20
  'WebhookFilters',
@@ -65,6 +67,30 @@ class AuthPolicyTokenType(_builtins.str, Enum):
65
67
  """
66
68
 
67
69
 
70
+ @pulumi.type_token("pulumiservice:index:CloudProvider")
71
+ class CloudProvider(_builtins.str, Enum):
72
+ AWS = "aws"
73
+ """
74
+ Amazon Web Services
75
+ """
76
+ AZURE_NATIVE = "azure-native"
77
+ """
78
+ Microsoft Azure
79
+ """
80
+ GCP = "gcp"
81
+ """
82
+ Google Cloud Platform
83
+ """
84
+ KUBERNETES = "kubernetes"
85
+ """
86
+ Kubernetes
87
+ """
88
+ OCI = "oci"
89
+ """
90
+ Oracle Cloud Infrastructure
91
+ """
92
+
93
+
68
94
  @pulumi.type_token("pulumiservice:index:EnvironmentPermission")
69
95
  class EnvironmentPermission(_builtins.str, Enum):
70
96
  NONE = "none"
@@ -141,6 +167,18 @@ class RbacPermission(_builtins.str, Enum):
141
167
  """
142
168
 
143
169
 
170
+ @pulumi.type_token("pulumiservice:index:ScanSchedule")
171
+ class ScanSchedule(_builtins.str, Enum):
172
+ NONE = "none"
173
+ """
174
+ Disable automated scanning.
175
+ """
176
+ DAILY = "daily"
177
+ """
178
+ Run automated scans once per day.
179
+ """
180
+
181
+
144
182
  @pulumi.type_token("pulumiservice:index:TargetActionType")
145
183
  class TargetActionType(_builtins.str, Enum):
146
184
  UPDATE = "update"
@@ -0,0 +1,188 @@
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 ._enums import *
17
+
18
+ __all__ = [
19
+ 'GetInsightsAccountResult',
20
+ 'AwaitableGetInsightsAccountResult',
21
+ 'get_insights_account',
22
+ 'get_insights_account_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetInsightsAccountResult:
27
+ def __init__(__self__, account_name=None, environment=None, insights_account_id=None, organization_name=None, provider=None, provider_config=None, scan_schedule=None, scheduled_scan_enabled=None, tags=None):
28
+ if account_name and not isinstance(account_name, str):
29
+ raise TypeError("Expected argument 'account_name' to be a str")
30
+ pulumi.set(__self__, "account_name", account_name)
31
+ if environment and not isinstance(environment, str):
32
+ raise TypeError("Expected argument 'environment' to be a str")
33
+ pulumi.set(__self__, "environment", environment)
34
+ if insights_account_id and not isinstance(insights_account_id, str):
35
+ raise TypeError("Expected argument 'insights_account_id' to be a str")
36
+ pulumi.set(__self__, "insights_account_id", insights_account_id)
37
+ if organization_name and not isinstance(organization_name, str):
38
+ raise TypeError("Expected argument 'organization_name' to be a str")
39
+ pulumi.set(__self__, "organization_name", organization_name)
40
+ if provider and not isinstance(provider, str):
41
+ raise TypeError("Expected argument 'provider' to be a str")
42
+ pulumi.set(__self__, "provider", provider)
43
+ if provider_config and not isinstance(provider_config, dict):
44
+ raise TypeError("Expected argument 'provider_config' to be a dict")
45
+ pulumi.set(__self__, "provider_config", provider_config)
46
+ if scan_schedule and not isinstance(scan_schedule, str):
47
+ raise TypeError("Expected argument 'scan_schedule' to be a str")
48
+ pulumi.set(__self__, "scan_schedule", scan_schedule)
49
+ if scheduled_scan_enabled and not isinstance(scheduled_scan_enabled, bool):
50
+ raise TypeError("Expected argument 'scheduled_scan_enabled' to be a bool")
51
+ pulumi.set(__self__, "scheduled_scan_enabled", scheduled_scan_enabled)
52
+ if tags and not isinstance(tags, dict):
53
+ raise TypeError("Expected argument 'tags' to be a dict")
54
+ pulumi.set(__self__, "tags", tags)
55
+
56
+ @_builtins.property
57
+ @pulumi.getter(name="accountName")
58
+ def account_name(self) -> _builtins.str:
59
+ """
60
+ Name of the insights account.
61
+ """
62
+ return pulumi.get(self, "account_name")
63
+
64
+ @_builtins.property
65
+ @pulumi.getter
66
+ def environment(self) -> _builtins.str:
67
+ """
68
+ The ESC environment used for provider credentials. Format: 'project/environment' with optional '@version' suffix (e.g., 'my-project/prod-env' or 'my-project/prod-env@v1.0').
69
+ """
70
+ return pulumi.get(self, "environment")
71
+
72
+ @_builtins.property
73
+ @pulumi.getter(name="insightsAccountId")
74
+ def insights_account_id(self) -> _builtins.str:
75
+ """
76
+ The insights account identifier.
77
+ """
78
+ return pulumi.get(self, "insights_account_id")
79
+
80
+ @_builtins.property
81
+ @pulumi.getter(name="organizationName")
82
+ def organization_name(self) -> _builtins.str:
83
+ """
84
+ The organization's name.
85
+ """
86
+ return pulumi.get(self, "organization_name")
87
+
88
+ @_builtins.property
89
+ @pulumi.getter
90
+ def provider(self) -> 'CloudProvider':
91
+ """
92
+ The cloud provider for scanning.
93
+ """
94
+ return pulumi.get(self, "provider")
95
+
96
+ @_builtins.property
97
+ @pulumi.getter(name="providerConfig")
98
+ def provider_config(self) -> Optional[Mapping[str, Any]]:
99
+ """
100
+ Provider-specific configuration as a JSON object. For AWS, specify regions to scan: {"regions": ["us-west-1", "us-west-2"]}.
101
+ """
102
+ return pulumi.get(self, "provider_config")
103
+
104
+ @_builtins.property
105
+ @pulumi.getter(name="scanSchedule")
106
+ def scan_schedule(self) -> 'ScanSchedule':
107
+ """
108
+ Schedule for automated scanning. Use 'daily' to enable daily scans, or 'none' to disable scheduled scanning. Defaults to 'none'.
109
+ """
110
+ return pulumi.get(self, "scan_schedule")
111
+
112
+ @_builtins.property
113
+ @pulumi.getter(name="scheduledScanEnabled")
114
+ def scheduled_scan_enabled(self) -> _builtins.bool:
115
+ """
116
+ Whether scheduled scanning is enabled.
117
+ """
118
+ return pulumi.get(self, "scheduled_scan_enabled")
119
+
120
+ @_builtins.property
121
+ @pulumi.getter
122
+ def tags(self) -> Optional[Mapping[str, _builtins.str]]:
123
+ """
124
+ Key-value tags to associate with the insights account.
125
+ """
126
+ return pulumi.get(self, "tags")
127
+
128
+
129
+ class AwaitableGetInsightsAccountResult(GetInsightsAccountResult):
130
+ # pylint: disable=using-constant-test
131
+ def __await__(self):
132
+ if False:
133
+ yield self
134
+ return GetInsightsAccountResult(
135
+ account_name=self.account_name,
136
+ environment=self.environment,
137
+ insights_account_id=self.insights_account_id,
138
+ organization_name=self.organization_name,
139
+ provider=self.provider,
140
+ provider_config=self.provider_config,
141
+ scan_schedule=self.scan_schedule,
142
+ scheduled_scan_enabled=self.scheduled_scan_enabled,
143
+ tags=self.tags)
144
+
145
+
146
+ def get_insights_account(account_name: Optional[_builtins.str] = None,
147
+ organization_name: Optional[_builtins.str] = None,
148
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetInsightsAccountResult:
149
+ """
150
+ Get details about a specific Insights account.
151
+ """
152
+ __args__ = dict()
153
+ __args__['accountName'] = account_name
154
+ __args__['organizationName'] = organization_name
155
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
156
+ __ret__ = pulumi.runtime.invoke('pulumiservice:index:getInsightsAccount', __args__, opts=opts, typ=GetInsightsAccountResult).value
157
+
158
+ return AwaitableGetInsightsAccountResult(
159
+ account_name=pulumi.get(__ret__, 'account_name'),
160
+ environment=pulumi.get(__ret__, 'environment'),
161
+ insights_account_id=pulumi.get(__ret__, 'insights_account_id'),
162
+ organization_name=pulumi.get(__ret__, 'organization_name'),
163
+ provider=pulumi.get(__ret__, 'provider'),
164
+ provider_config=pulumi.get(__ret__, 'provider_config'),
165
+ scan_schedule=pulumi.get(__ret__, 'scan_schedule'),
166
+ scheduled_scan_enabled=pulumi.get(__ret__, 'scheduled_scan_enabled'),
167
+ tags=pulumi.get(__ret__, 'tags'))
168
+ def get_insights_account_output(account_name: Optional[pulumi.Input[_builtins.str]] = None,
169
+ organization_name: Optional[pulumi.Input[_builtins.str]] = None,
170
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetInsightsAccountResult]:
171
+ """
172
+ Get details about a specific Insights account.
173
+ """
174
+ __args__ = dict()
175
+ __args__['accountName'] = account_name
176
+ __args__['organizationName'] = organization_name
177
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
178
+ __ret__ = pulumi.runtime.invoke_output('pulumiservice:index:getInsightsAccount', __args__, opts=opts, typ=GetInsightsAccountResult)
179
+ return __ret__.apply(lambda __response__: GetInsightsAccountResult(
180
+ account_name=pulumi.get(__response__, 'account_name'),
181
+ environment=pulumi.get(__response__, 'environment'),
182
+ insights_account_id=pulumi.get(__response__, 'insights_account_id'),
183
+ organization_name=pulumi.get(__response__, 'organization_name'),
184
+ provider=pulumi.get(__response__, 'provider'),
185
+ provider_config=pulumi.get(__response__, 'provider_config'),
186
+ scan_schedule=pulumi.get(__response__, 'scan_schedule'),
187
+ scheduled_scan_enabled=pulumi.get(__response__, 'scheduled_scan_enabled'),
188
+ tags=pulumi.get(__response__, 'tags')))
@@ -0,0 +1,70 @@
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 ._enums import *
18
+
19
+ __all__ = [
20
+ 'GetInsightsAccountsResult',
21
+ 'AwaitableGetInsightsAccountsResult',
22
+ 'get_insights_accounts',
23
+ 'get_insights_accounts_output',
24
+ ]
25
+
26
+ @pulumi.output_type
27
+ class GetInsightsAccountsResult:
28
+ def __init__(__self__, accounts=None):
29
+ if accounts and not isinstance(accounts, list):
30
+ raise TypeError("Expected argument 'accounts' to be a list")
31
+ pulumi.set(__self__, "accounts", accounts)
32
+
33
+ @_builtins.property
34
+ @pulumi.getter
35
+ def accounts(self) -> Sequence['outputs.InsightsAccountState']:
36
+ return pulumi.get(self, "accounts")
37
+
38
+
39
+ class AwaitableGetInsightsAccountsResult(GetInsightsAccountsResult):
40
+ # pylint: disable=using-constant-test
41
+ def __await__(self):
42
+ if False:
43
+ yield self
44
+ return GetInsightsAccountsResult(
45
+ accounts=self.accounts)
46
+
47
+
48
+ def get_insights_accounts(organization_name: Optional[_builtins.str] = None,
49
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetInsightsAccountsResult:
50
+ """
51
+ Get a list of all Insights accounts for an organization.
52
+ """
53
+ __args__ = dict()
54
+ __args__['organizationName'] = organization_name
55
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
56
+ __ret__ = pulumi.runtime.invoke('pulumiservice:index:getInsightsAccounts', __args__, opts=opts, typ=GetInsightsAccountsResult).value
57
+
58
+ return AwaitableGetInsightsAccountsResult(
59
+ accounts=pulumi.get(__ret__, 'accounts'))
60
+ def get_insights_accounts_output(organization_name: Optional[pulumi.Input[_builtins.str]] = None,
61
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetInsightsAccountsResult]:
62
+ """
63
+ Get a list of all Insights accounts for an organization.
64
+ """
65
+ __args__ = dict()
66
+ __args__['organizationName'] = organization_name
67
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
68
+ __ret__ = pulumi.runtime.invoke_output('pulumiservice:index:getInsightsAccounts', __args__, opts=opts, typ=GetInsightsAccountsResult)
69
+ return __ret__.apply(lambda __response__: GetInsightsAccountsResult(
70
+ accounts=pulumi.get(__response__, 'accounts')))
@@ -0,0 +1,331 @@
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 ._enums import *
17
+
18
+ __all__ = ['InsightsAccountArgs', 'InsightsAccount']
19
+
20
+ @pulumi.input_type
21
+ class InsightsAccountArgs:
22
+ def __init__(__self__, *,
23
+ account_name: pulumi.Input[_builtins.str],
24
+ environment: pulumi.Input[_builtins.str],
25
+ organization_name: pulumi.Input[_builtins.str],
26
+ provider: pulumi.Input['CloudProvider'],
27
+ scan_schedule: Optional[pulumi.Input['ScanSchedule']] = None,
28
+ provider_config: Optional[pulumi.Input[Mapping[str, Any]]] = None,
29
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None):
30
+ """
31
+ The set of arguments for constructing a InsightsAccount resource.
32
+ :param pulumi.Input[_builtins.str] account_name: Name of the insights account.
33
+ :param pulumi.Input[_builtins.str] environment: The ESC environment used for provider credentials. Format: 'project/environment' with optional '@version' suffix (e.g., 'my-project/prod-env' or 'my-project/prod-env@v1.0').
34
+ :param pulumi.Input[_builtins.str] organization_name: The organization's name.
35
+ :param pulumi.Input['CloudProvider'] provider: The cloud provider for scanning.
36
+ :param pulumi.Input['ScanSchedule'] scan_schedule: Schedule for automated scanning. Use 'daily' to enable daily scans, or 'none' to disable scheduled scanning. Defaults to 'none'.
37
+ :param pulumi.Input[Mapping[str, Any]] provider_config: Provider-specific configuration as a JSON object. For AWS, specify regions to scan: {"regions": ["us-west-1", "us-west-2"]}.
38
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Key-value tags to associate with the insights account.
39
+ """
40
+ pulumi.set(__self__, "account_name", account_name)
41
+ pulumi.set(__self__, "environment", environment)
42
+ pulumi.set(__self__, "organization_name", organization_name)
43
+ pulumi.set(__self__, "provider", provider)
44
+ if scan_schedule is None:
45
+ scan_schedule = 'none'
46
+ pulumi.set(__self__, "scan_schedule", scan_schedule)
47
+ if provider_config is not None:
48
+ pulumi.set(__self__, "provider_config", provider_config)
49
+ if tags is not None:
50
+ pulumi.set(__self__, "tags", tags)
51
+
52
+ @_builtins.property
53
+ @pulumi.getter(name="accountName")
54
+ def account_name(self) -> pulumi.Input[_builtins.str]:
55
+ """
56
+ Name of the insights account.
57
+ """
58
+ return pulumi.get(self, "account_name")
59
+
60
+ @account_name.setter
61
+ def account_name(self, value: pulumi.Input[_builtins.str]):
62
+ pulumi.set(self, "account_name", value)
63
+
64
+ @_builtins.property
65
+ @pulumi.getter
66
+ def environment(self) -> pulumi.Input[_builtins.str]:
67
+ """
68
+ The ESC environment used for provider credentials. Format: 'project/environment' with optional '@version' suffix (e.g., 'my-project/prod-env' or 'my-project/prod-env@v1.0').
69
+ """
70
+ return pulumi.get(self, "environment")
71
+
72
+ @environment.setter
73
+ def environment(self, value: pulumi.Input[_builtins.str]):
74
+ pulumi.set(self, "environment", value)
75
+
76
+ @_builtins.property
77
+ @pulumi.getter(name="organizationName")
78
+ def organization_name(self) -> pulumi.Input[_builtins.str]:
79
+ """
80
+ The organization's name.
81
+ """
82
+ return pulumi.get(self, "organization_name")
83
+
84
+ @organization_name.setter
85
+ def organization_name(self, value: pulumi.Input[_builtins.str]):
86
+ pulumi.set(self, "organization_name", value)
87
+
88
+ @_builtins.property
89
+ @pulumi.getter
90
+ def provider(self) -> pulumi.Input['CloudProvider']:
91
+ """
92
+ The cloud provider for scanning.
93
+ """
94
+ return pulumi.get(self, "provider")
95
+
96
+ @provider.setter
97
+ def provider(self, value: pulumi.Input['CloudProvider']):
98
+ pulumi.set(self, "provider", value)
99
+
100
+ @_builtins.property
101
+ @pulumi.getter(name="scanSchedule")
102
+ def scan_schedule(self) -> pulumi.Input['ScanSchedule']:
103
+ """
104
+ Schedule for automated scanning. Use 'daily' to enable daily scans, or 'none' to disable scheduled scanning. Defaults to 'none'.
105
+ """
106
+ return pulumi.get(self, "scan_schedule")
107
+
108
+ @scan_schedule.setter
109
+ def scan_schedule(self, value: pulumi.Input['ScanSchedule']):
110
+ pulumi.set(self, "scan_schedule", value)
111
+
112
+ @_builtins.property
113
+ @pulumi.getter(name="providerConfig")
114
+ def provider_config(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
115
+ """
116
+ Provider-specific configuration as a JSON object. For AWS, specify regions to scan: {"regions": ["us-west-1", "us-west-2"]}.
117
+ """
118
+ return pulumi.get(self, "provider_config")
119
+
120
+ @provider_config.setter
121
+ def provider_config(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
122
+ pulumi.set(self, "provider_config", value)
123
+
124
+ @_builtins.property
125
+ @pulumi.getter
126
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
127
+ """
128
+ Key-value tags to associate with the insights account.
129
+ """
130
+ return pulumi.get(self, "tags")
131
+
132
+ @tags.setter
133
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
134
+ pulumi.set(self, "tags", value)
135
+
136
+
137
+ @pulumi.type_token("pulumiservice:index:InsightsAccount")
138
+ class InsightsAccount(pulumi.CustomResource):
139
+ @overload
140
+ def __init__(__self__,
141
+ resource_name: str,
142
+ opts: Optional[pulumi.ResourceOptions] = None,
143
+ account_name: Optional[pulumi.Input[_builtins.str]] = None,
144
+ environment: Optional[pulumi.Input[_builtins.str]] = None,
145
+ organization_name: Optional[pulumi.Input[_builtins.str]] = None,
146
+ provider: Optional[pulumi.Input['CloudProvider']] = None,
147
+ provider_config: Optional[pulumi.Input[Mapping[str, Any]]] = None,
148
+ scan_schedule: Optional[pulumi.Input['ScanSchedule']] = None,
149
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
150
+ __props__=None):
151
+ """
152
+ Insights Account for cloud resource scanning and analysis across AWS, Azure, and GCP.
153
+
154
+ :param str resource_name: The name of the resource.
155
+ :param pulumi.ResourceOptions opts: Options for the resource.
156
+ :param pulumi.Input[_builtins.str] account_name: Name of the insights account.
157
+ :param pulumi.Input[_builtins.str] environment: The ESC environment used for provider credentials. Format: 'project/environment' with optional '@version' suffix (e.g., 'my-project/prod-env' or 'my-project/prod-env@v1.0').
158
+ :param pulumi.Input[_builtins.str] organization_name: The organization's name.
159
+ :param pulumi.Input['CloudProvider'] provider: The cloud provider for scanning.
160
+ :param pulumi.Input[Mapping[str, Any]] provider_config: Provider-specific configuration as a JSON object. For AWS, specify regions to scan: {"regions": ["us-west-1", "us-west-2"]}.
161
+ :param pulumi.Input['ScanSchedule'] scan_schedule: Schedule for automated scanning. Use 'daily' to enable daily scans, or 'none' to disable scheduled scanning. Defaults to 'none'.
162
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Key-value tags to associate with the insights account.
163
+ """
164
+ ...
165
+ @overload
166
+ def __init__(__self__,
167
+ resource_name: str,
168
+ args: InsightsAccountArgs,
169
+ opts: Optional[pulumi.ResourceOptions] = None):
170
+ """
171
+ Insights Account for cloud resource scanning and analysis across AWS, Azure, and GCP.
172
+
173
+ :param str resource_name: The name of the resource.
174
+ :param InsightsAccountArgs args: The arguments to use to populate this resource's properties.
175
+ :param pulumi.ResourceOptions opts: Options for the resource.
176
+ """
177
+ ...
178
+ def __init__(__self__, resource_name: str, *args, **kwargs):
179
+ resource_args, opts = _utilities.get_resource_args_opts(InsightsAccountArgs, pulumi.ResourceOptions, *args, **kwargs)
180
+ if resource_args is not None:
181
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
182
+ else:
183
+ __self__._internal_init(resource_name, *args, **kwargs)
184
+
185
+ def _internal_init(__self__,
186
+ resource_name: str,
187
+ opts: Optional[pulumi.ResourceOptions] = None,
188
+ account_name: Optional[pulumi.Input[_builtins.str]] = None,
189
+ environment: Optional[pulumi.Input[_builtins.str]] = None,
190
+ organization_name: Optional[pulumi.Input[_builtins.str]] = None,
191
+ provider: Optional[pulumi.Input['CloudProvider']] = None,
192
+ provider_config: Optional[pulumi.Input[Mapping[str, Any]]] = None,
193
+ scan_schedule: Optional[pulumi.Input['ScanSchedule']] = None,
194
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
195
+ __props__=None):
196
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
197
+ if not isinstance(opts, pulumi.ResourceOptions):
198
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
199
+ if opts.id is None:
200
+ if __props__ is not None:
201
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
202
+ __props__ = InsightsAccountArgs.__new__(InsightsAccountArgs)
203
+
204
+ if account_name is None and not opts.urn:
205
+ raise TypeError("Missing required property 'account_name'")
206
+ __props__.__dict__["account_name"] = account_name
207
+ if environment is None and not opts.urn:
208
+ raise TypeError("Missing required property 'environment'")
209
+ __props__.__dict__["environment"] = environment
210
+ if organization_name is None and not opts.urn:
211
+ raise TypeError("Missing required property 'organization_name'")
212
+ __props__.__dict__["organization_name"] = organization_name
213
+ if provider is None and not opts.urn:
214
+ raise TypeError("Missing required property 'provider'")
215
+ __props__.__dict__["provider"] = provider
216
+ __props__.__dict__["provider_config"] = provider_config
217
+ if scan_schedule is None:
218
+ scan_schedule = 'none'
219
+ if scan_schedule is None and not opts.urn:
220
+ raise TypeError("Missing required property 'scan_schedule'")
221
+ __props__.__dict__["scan_schedule"] = scan_schedule
222
+ __props__.__dict__["tags"] = tags
223
+ __props__.__dict__["insights_account_id"] = None
224
+ __props__.__dict__["scheduled_scan_enabled"] = None
225
+ replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["accountName", "organizationName", "provider"])
226
+ opts = pulumi.ResourceOptions.merge(opts, replace_on_changes)
227
+ super(InsightsAccount, __self__).__init__(
228
+ 'pulumiservice:index:InsightsAccount',
229
+ resource_name,
230
+ __props__,
231
+ opts)
232
+
233
+ @staticmethod
234
+ def get(resource_name: str,
235
+ id: pulumi.Input[str],
236
+ opts: Optional[pulumi.ResourceOptions] = None) -> 'InsightsAccount':
237
+ """
238
+ Get an existing InsightsAccount resource's state with the given name, id, and optional extra
239
+ properties used to qualify the lookup.
240
+
241
+ :param str resource_name: The unique name of the resulting resource.
242
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
243
+ :param pulumi.ResourceOptions opts: Options for the resource.
244
+ """
245
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
246
+
247
+ __props__ = InsightsAccountArgs.__new__(InsightsAccountArgs)
248
+
249
+ __props__.__dict__["account_name"] = None
250
+ __props__.__dict__["environment"] = None
251
+ __props__.__dict__["insights_account_id"] = None
252
+ __props__.__dict__["organization_name"] = None
253
+ __props__.__dict__["provider"] = None
254
+ __props__.__dict__["provider_config"] = None
255
+ __props__.__dict__["scan_schedule"] = None
256
+ __props__.__dict__["scheduled_scan_enabled"] = None
257
+ __props__.__dict__["tags"] = None
258
+ return InsightsAccount(resource_name, opts=opts, __props__=__props__)
259
+
260
+ @_builtins.property
261
+ @pulumi.getter(name="accountName")
262
+ def account_name(self) -> pulumi.Output[_builtins.str]:
263
+ """
264
+ Name of the insights account.
265
+ """
266
+ return pulumi.get(self, "account_name")
267
+
268
+ @_builtins.property
269
+ @pulumi.getter
270
+ def environment(self) -> pulumi.Output[_builtins.str]:
271
+ """
272
+ The ESC environment used for provider credentials. Format: 'project/environment' with optional '@version' suffix (e.g., 'my-project/prod-env' or 'my-project/prod-env@v1.0').
273
+ """
274
+ return pulumi.get(self, "environment")
275
+
276
+ @_builtins.property
277
+ @pulumi.getter(name="insightsAccountId")
278
+ def insights_account_id(self) -> pulumi.Output[_builtins.str]:
279
+ """
280
+ The insights account identifier.
281
+ """
282
+ return pulumi.get(self, "insights_account_id")
283
+
284
+ @_builtins.property
285
+ @pulumi.getter(name="organizationName")
286
+ def organization_name(self) -> pulumi.Output[_builtins.str]:
287
+ """
288
+ The organization's name.
289
+ """
290
+ return pulumi.get(self, "organization_name")
291
+
292
+ @_builtins.property
293
+ @pulumi.getter
294
+ def provider(self) -> pulumi.Output['CloudProvider']:
295
+ """
296
+ The cloud provider for scanning.
297
+ """
298
+ return pulumi.get(self, "provider")
299
+
300
+ @_builtins.property
301
+ @pulumi.getter(name="providerConfig")
302
+ def provider_config(self) -> pulumi.Output[Optional[Mapping[str, Any]]]:
303
+ """
304
+ Provider-specific configuration as a JSON object. For AWS, specify regions to scan: {"regions": ["us-west-1", "us-west-2"]}.
305
+ """
306
+ return pulumi.get(self, "provider_config")
307
+
308
+ @_builtins.property
309
+ @pulumi.getter(name="scanSchedule")
310
+ def scan_schedule(self) -> pulumi.Output['ScanSchedule']:
311
+ """
312
+ Schedule for automated scanning. Use 'daily' to enable daily scans, or 'none' to disable scheduled scanning. Defaults to 'none'.
313
+ """
314
+ return pulumi.get(self, "scan_schedule")
315
+
316
+ @_builtins.property
317
+ @pulumi.getter(name="scheduledScanEnabled")
318
+ def scheduled_scan_enabled(self) -> pulumi.Output[_builtins.bool]:
319
+ """
320
+ Whether scheduled scanning is enabled.
321
+ """
322
+ return pulumi.get(self, "scheduled_scan_enabled")
323
+
324
+ @_builtins.property
325
+ @pulumi.getter
326
+ def tags(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
327
+ """
328
+ Key-value tags to associate with the insights account.
329
+ """
330
+ return pulumi.get(self, "tags")
331
+
@@ -33,6 +33,7 @@ __all__ = [
33
33
  'EligibleApprover',
34
34
  'EnvironmentIdentifier',
35
35
  'GCPOIDCConfiguration',
36
+ 'InsightsAccountState',
36
37
  'OperationContextOIDC',
37
38
  'OperationContextOptions',
38
39
  'PolicyGroupPolicyPackReference',
@@ -1057,6 +1058,116 @@ class GCPOIDCConfiguration(dict):
1057
1058
  return pulumi.get(self, "token_lifetime")
1058
1059
 
1059
1060
 
1061
+ @pulumi.output_type
1062
+ class InsightsAccountState(dict):
1063
+ def __init__(__self__, *,
1064
+ account_name: _builtins.str,
1065
+ environment: _builtins.str,
1066
+ insights_account_id: _builtins.str,
1067
+ organization_name: _builtins.str,
1068
+ provider: 'CloudProvider',
1069
+ scan_schedule: Optional['ScanSchedule'] = None,
1070
+ scheduled_scan_enabled: _builtins.bool,
1071
+ provider_config: Optional[Mapping[str, Any]] = None,
1072
+ tags: Optional[Mapping[str, _builtins.str]] = None):
1073
+ """
1074
+ :param _builtins.str account_name: Name of the insights account.
1075
+ :param _builtins.str environment: The ESC environment used for provider credentials. Format: 'project/environment' with optional '@version' suffix (e.g., 'my-project/prod-env' or 'my-project/prod-env@v1.0').
1076
+ :param _builtins.str insights_account_id: The insights account identifier.
1077
+ :param _builtins.str organization_name: The organization's name.
1078
+ :param 'CloudProvider' provider: The cloud provider for scanning.
1079
+ :param 'ScanSchedule' scan_schedule: Schedule for automated scanning. Use 'daily' to enable daily scans, or 'none' to disable scheduled scanning. Defaults to 'none'.
1080
+ :param _builtins.bool scheduled_scan_enabled: Whether scheduled scanning is enabled.
1081
+ :param Mapping[str, Any] provider_config: Provider-specific configuration as a JSON object. For AWS, specify regions to scan: {"regions": ["us-west-1", "us-west-2"]}.
1082
+ :param Mapping[str, _builtins.str] tags: Key-value tags to associate with the insights account.
1083
+ """
1084
+ pulumi.set(__self__, "account_name", account_name)
1085
+ pulumi.set(__self__, "environment", environment)
1086
+ pulumi.set(__self__, "insights_account_id", insights_account_id)
1087
+ pulumi.set(__self__, "organization_name", organization_name)
1088
+ pulumi.set(__self__, "provider", provider)
1089
+ if scan_schedule is None:
1090
+ scan_schedule = 'none'
1091
+ pulumi.set(__self__, "scan_schedule", scan_schedule)
1092
+ pulumi.set(__self__, "scheduled_scan_enabled", scheduled_scan_enabled)
1093
+ if provider_config is not None:
1094
+ pulumi.set(__self__, "provider_config", provider_config)
1095
+ if tags is not None:
1096
+ pulumi.set(__self__, "tags", tags)
1097
+
1098
+ @_builtins.property
1099
+ @pulumi.getter(name="accountName")
1100
+ def account_name(self) -> _builtins.str:
1101
+ """
1102
+ Name of the insights account.
1103
+ """
1104
+ return pulumi.get(self, "account_name")
1105
+
1106
+ @_builtins.property
1107
+ @pulumi.getter
1108
+ def environment(self) -> _builtins.str:
1109
+ """
1110
+ The ESC environment used for provider credentials. Format: 'project/environment' with optional '@version' suffix (e.g., 'my-project/prod-env' or 'my-project/prod-env@v1.0').
1111
+ """
1112
+ return pulumi.get(self, "environment")
1113
+
1114
+ @_builtins.property
1115
+ @pulumi.getter(name="insightsAccountId")
1116
+ def insights_account_id(self) -> _builtins.str:
1117
+ """
1118
+ The insights account identifier.
1119
+ """
1120
+ return pulumi.get(self, "insights_account_id")
1121
+
1122
+ @_builtins.property
1123
+ @pulumi.getter(name="organizationName")
1124
+ def organization_name(self) -> _builtins.str:
1125
+ """
1126
+ The organization's name.
1127
+ """
1128
+ return pulumi.get(self, "organization_name")
1129
+
1130
+ @_builtins.property
1131
+ @pulumi.getter
1132
+ def provider(self) -> 'CloudProvider':
1133
+ """
1134
+ The cloud provider for scanning.
1135
+ """
1136
+ return pulumi.get(self, "provider")
1137
+
1138
+ @_builtins.property
1139
+ @pulumi.getter(name="scanSchedule")
1140
+ def scan_schedule(self) -> 'ScanSchedule':
1141
+ """
1142
+ Schedule for automated scanning. Use 'daily' to enable daily scans, or 'none' to disable scheduled scanning. Defaults to 'none'.
1143
+ """
1144
+ return pulumi.get(self, "scan_schedule")
1145
+
1146
+ @_builtins.property
1147
+ @pulumi.getter(name="scheduledScanEnabled")
1148
+ def scheduled_scan_enabled(self) -> _builtins.bool:
1149
+ """
1150
+ Whether scheduled scanning is enabled.
1151
+ """
1152
+ return pulumi.get(self, "scheduled_scan_enabled")
1153
+
1154
+ @_builtins.property
1155
+ @pulumi.getter(name="providerConfig")
1156
+ def provider_config(self) -> Optional[Mapping[str, Any]]:
1157
+ """
1158
+ Provider-specific configuration as a JSON object. For AWS, specify regions to scan: {"regions": ["us-west-1", "us-west-2"]}.
1159
+ """
1160
+ return pulumi.get(self, "provider_config")
1161
+
1162
+ @_builtins.property
1163
+ @pulumi.getter
1164
+ def tags(self) -> Optional[Mapping[str, _builtins.str]]:
1165
+ """
1166
+ Key-value tags to associate with the insights account.
1167
+ """
1168
+ return pulumi.get(self, "tags")
1169
+
1170
+
1060
1171
  @pulumi.output_type
1061
1172
  class OperationContextOIDC(dict):
1062
1173
  def __init__(__self__, *,
@@ -23,6 +23,7 @@ class PolicyGroupArgs:
23
23
  def __init__(__self__, *,
24
24
  name: pulumi.Input[_builtins.str],
25
25
  organization_name: pulumi.Input[_builtins.str],
26
+ accounts: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
26
27
  entity_type: Optional[pulumi.Input[_builtins.str]] = None,
27
28
  mode: Optional[pulumi.Input[_builtins.str]] = None,
28
29
  policy_packs: Optional[pulumi.Input[Sequence[pulumi.Input['PolicyGroupPolicyPackReferenceArgs']]]] = None,
@@ -31,6 +32,7 @@ class PolicyGroupArgs:
31
32
  The set of arguments for constructing a PolicyGroup resource.
32
33
  :param pulumi.Input[_builtins.str] name: The name of the policy group.
33
34
  :param pulumi.Input[_builtins.str] organization_name: The name of the Pulumi organization the policy group belongs to.
35
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] accounts: List of accounts that belong to this policy group.
34
36
  :param pulumi.Input[_builtins.str] entity_type: The entity type for the policy group. Valid values are 'stacks' or 'accounts'. Defaults to 'stacks'.
35
37
  :param pulumi.Input[_builtins.str] mode: The mode for the policy group. Valid values are 'audit' (reports violations) or 'preventative' (blocks operations). Defaults to 'audit'.
36
38
  :param pulumi.Input[Sequence[pulumi.Input['PolicyGroupPolicyPackReferenceArgs']]] policy_packs: List of policy packs applied to this policy group.
@@ -38,6 +40,8 @@ class PolicyGroupArgs:
38
40
  """
39
41
  pulumi.set(__self__, "name", name)
40
42
  pulumi.set(__self__, "organization_name", organization_name)
43
+ if accounts is not None:
44
+ pulumi.set(__self__, "accounts", accounts)
41
45
  if entity_type is None:
42
46
  entity_type = 'stacks'
43
47
  if entity_type is not None:
@@ -75,6 +79,18 @@ class PolicyGroupArgs:
75
79
  def organization_name(self, value: pulumi.Input[_builtins.str]):
76
80
  pulumi.set(self, "organization_name", value)
77
81
 
82
+ @_builtins.property
83
+ @pulumi.getter
84
+ def accounts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
85
+ """
86
+ List of accounts that belong to this policy group.
87
+ """
88
+ return pulumi.get(self, "accounts")
89
+
90
+ @accounts.setter
91
+ def accounts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
92
+ pulumi.set(self, "accounts", value)
93
+
78
94
  @_builtins.property
79
95
  @pulumi.getter(name="entityType")
80
96
  def entity_type(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -130,6 +146,7 @@ class PolicyGroup(pulumi.CustomResource):
130
146
  def __init__(__self__,
131
147
  resource_name: str,
132
148
  opts: Optional[pulumi.ResourceOptions] = None,
149
+ accounts: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
133
150
  entity_type: Optional[pulumi.Input[_builtins.str]] = None,
134
151
  mode: Optional[pulumi.Input[_builtins.str]] = None,
135
152
  name: Optional[pulumi.Input[_builtins.str]] = None,
@@ -142,6 +159,7 @@ class PolicyGroup(pulumi.CustomResource):
142
159
 
143
160
  :param str resource_name: The name of the resource.
144
161
  :param pulumi.ResourceOptions opts: Options for the resource.
162
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] accounts: List of accounts that belong to this policy group.
145
163
  :param pulumi.Input[_builtins.str] entity_type: The entity type for the policy group. Valid values are 'stacks' or 'accounts'. Defaults to 'stacks'.
146
164
  :param pulumi.Input[_builtins.str] mode: The mode for the policy group. Valid values are 'audit' (reports violations) or 'preventative' (blocks operations). Defaults to 'audit'.
147
165
  :param pulumi.Input[_builtins.str] name: The name of the policy group.
@@ -173,6 +191,7 @@ class PolicyGroup(pulumi.CustomResource):
173
191
  def _internal_init(__self__,
174
192
  resource_name: str,
175
193
  opts: Optional[pulumi.ResourceOptions] = None,
194
+ accounts: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
176
195
  entity_type: Optional[pulumi.Input[_builtins.str]] = None,
177
196
  mode: Optional[pulumi.Input[_builtins.str]] = None,
178
197
  name: Optional[pulumi.Input[_builtins.str]] = None,
@@ -188,6 +207,7 @@ class PolicyGroup(pulumi.CustomResource):
188
207
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
189
208
  __props__ = PolicyGroupArgs.__new__(PolicyGroupArgs)
190
209
 
210
+ __props__.__dict__["accounts"] = accounts
191
211
  if entity_type is None:
192
212
  entity_type = 'stacks'
193
213
  __props__.__dict__["entity_type"] = entity_type
@@ -224,6 +244,7 @@ class PolicyGroup(pulumi.CustomResource):
224
244
 
225
245
  __props__ = PolicyGroupArgs.__new__(PolicyGroupArgs)
226
246
 
247
+ __props__.__dict__["accounts"] = None
227
248
  __props__.__dict__["entity_type"] = None
228
249
  __props__.__dict__["mode"] = None
229
250
  __props__.__dict__["name"] = None
@@ -232,6 +253,14 @@ class PolicyGroup(pulumi.CustomResource):
232
253
  __props__.__dict__["stacks"] = None
233
254
  return PolicyGroup(resource_name, opts=opts, __props__=__props__)
234
255
 
256
+ @_builtins.property
257
+ @pulumi.getter
258
+ def accounts(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
259
+ """
260
+ List of accounts that belong to this policy group.
261
+ """
262
+ return pulumi.get(self, "accounts")
263
+
235
264
  @_builtins.property
236
265
  @pulumi.getter(name="entityType")
237
266
  def entity_type(self) -> pulumi.Output[_builtins.str]:
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "pulumiservice",
4
- "version": "0.33.0-alpha.1763486569"
4
+ "version": "0.34.0"
5
5
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pulumi_pulumiservice
3
- Version: 0.33.0a1763486569
3
+ Version: 0.34.0
4
4
  Summary: A native Pulumi package for creating and managing Pulumi Cloud constructs
5
5
  License: Apache-2.0
6
6
  Project-URL: Homepage, https://pulumi.com
@@ -13,8 +13,11 @@ pulumi_pulumiservice/drift_schedule.py
13
13
  pulumi_pulumiservice/environment.py
14
14
  pulumi_pulumiservice/environment_rotation_schedule.py
15
15
  pulumi_pulumiservice/environment_version_tag.py
16
+ pulumi_pulumiservice/get_insights_account.py
17
+ pulumi_pulumiservice/get_insights_accounts.py
16
18
  pulumi_pulumiservice/get_policy_pack.py
17
19
  pulumi_pulumiservice/get_policy_packs.py
20
+ pulumi_pulumiservice/insights_account.py
18
21
  pulumi_pulumiservice/oidc_issuer.py
19
22
  pulumi_pulumiservice/org_access_token.py
20
23
  pulumi_pulumiservice/outputs.py
@@ -5,7 +5,7 @@
5
5
  keywords = ["pulumi", "kind/native", "category/infrastructure"]
6
6
  readme = "README.md"
7
7
  requires-python = ">=3.9"
8
- version = "0.33.0a1763486569"
8
+ version = "0.34.0"
9
9
  [project.license]
10
10
  text = "Apache-2.0"
11
11
  [project.urls]