@pulumi/harness 0.11.4 → 0.11.5

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 (53) hide show
  1. package/autostopping/alert.d.ts +113 -0
  2. package/autostopping/alert.js +68 -0
  3. package/autostopping/alert.js.map +1 -0
  4. package/autostopping/awsProxy.d.ts +16 -0
  5. package/autostopping/awsProxy.js +4 -0
  6. package/autostopping/awsProxy.js.map +1 -1
  7. package/autostopping/azureProxy.d.ts +16 -0
  8. package/autostopping/azureProxy.js +4 -0
  9. package/autostopping/azureProxy.js.map +1 -1
  10. package/autostopping/gcpProxy.d.ts +16 -0
  11. package/autostopping/gcpProxy.js +4 -0
  12. package/autostopping/gcpProxy.js.map +1 -1
  13. package/autostopping/getAlert.d.ts +106 -0
  14. package/autostopping/getAlert.js +38 -0
  15. package/autostopping/getAlert.js.map +1 -0
  16. package/autostopping/getAwsProxy.d.ts +8 -0
  17. package/autostopping/getAwsProxy.js.map +1 -1
  18. package/autostopping/getAzureProxy.d.ts +8 -0
  19. package/autostopping/getAzureProxy.js.map +1 -1
  20. package/autostopping/getGcpProxy.d.ts +8 -0
  21. package/autostopping/getGcpProxy.js.map +1 -1
  22. package/autostopping/getRuleEcs.d.ts +1 -1
  23. package/autostopping/getRuleK8s.d.ts +134 -0
  24. package/autostopping/getRuleK8s.js +46 -0
  25. package/autostopping/getRuleK8s.js.map +1 -0
  26. package/autostopping/getRuleRds.d.ts +1 -1
  27. package/autostopping/getRuleScaleGroup.d.ts +1 -1
  28. package/autostopping/getRuleVm.d.ts +7 -1
  29. package/autostopping/getRuleVm.js.map +1 -1
  30. package/autostopping/getRules.d.ts +127 -0
  31. package/autostopping/getRules.js +102 -0
  32. package/autostopping/getRules.js.map +1 -0
  33. package/autostopping/index.d.ts +15 -0
  34. package/autostopping/index.js +20 -1
  35. package/autostopping/index.js.map +1 -1
  36. package/autostopping/ruleEcs.d.ts +2 -2
  37. package/autostopping/ruleK8s.d.ts +145 -0
  38. package/autostopping/ruleK8s.js +80 -0
  39. package/autostopping/ruleK8s.js.map +1 -0
  40. package/autostopping/ruleRds.d.ts +2 -2
  41. package/autostopping/ruleScaleGroup.d.ts +2 -2
  42. package/autostopping/ruleVm.d.ts +14 -2
  43. package/autostopping/ruleVm.js +2 -0
  44. package/autostopping/ruleVm.js.map +1 -1
  45. package/package.json +2 -2
  46. package/platform/harRegistry.d.ts +13 -0
  47. package/platform/harRegistry.js +13 -0
  48. package/platform/harRegistry.js.map +1 -1
  49. package/platform/resourceGroup.d.ts +213 -2
  50. package/platform/resourceGroup.js +213 -2
  51. package/platform/resourceGroup.js.map +1 -1
  52. package/types/input.d.ts +92 -8
  53. package/types/output.d.ts +80 -6
@@ -6,7 +6,14 @@ exports.ResourceGroup = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("../utilities");
8
8
  /**
9
- * Resource for creating a Harness Resource Group
9
+ * A **Resource Group** defines the **set of Harness resources** that fall within an RBAC boundary (for example, all pipelines, selected connectors, or specific secrets), along with the **scopes** (account, organization, or project) where the group applies.
10
+ *
11
+ * When configuring a resource group, you typically control access using two dimensions:
12
+ *
13
+ * * **Scopes** – where the resource group applies (`includedScopes`)
14
+ * * **Resources** – what resources are included (`resourceFilter`)
15
+ *
16
+ * ***
10
17
  *
11
18
  * ## Example Usage
12
19
  *
@@ -14,7 +21,7 @@ const utilities = require("../utilities");
14
21
  * import * as pulumi from "@pulumi/pulumi";
15
22
  * import * as harness from "@pulumi/harness";
16
23
  *
17
- * const test = new harness.platform.ResourceGroup("test", {
24
+ * const example = new harness.platform.ResourceGroup("example", {
18
25
  * identifier: "identifier",
19
26
  * name: "name",
20
27
  * description: "test",
@@ -38,6 +45,210 @@ const utilities = require("../utilities");
38
45
  * });
39
46
  * ```
40
47
  *
48
+ * ***
49
+ *
50
+ * ## Scopes: `includedScopes`
51
+ *
52
+ * The `includedScopes` block defines the scope boundaries covered by this resource group.
53
+ *
54
+ * You can define scope using:
55
+ *
56
+ * * `accountId` → Account-level scope
57
+ * * `accountId` + `orgId` → Organization-level scope
58
+ * * `accountId` + `orgId` + `projectId` → Project-level scope
59
+ *
60
+ * ### `included_scopes.filter` (Required)
61
+ *
62
+ * Controls whether child scopes are included automatically:
63
+ *
64
+ * * `EXCLUDING_CHILD_SCOPES`
65
+ * Includes only the explicitly specified scope.
66
+ * Example: Account only (does not automatically include its organizations or projects).
67
+ *
68
+ * * `INCLUDING_CHILD_SCOPES`
69
+ * Includes the specified scope and all nested child scopes.
70
+ * Example: Account plus all organizations and projects under it.
71
+ *
72
+ * ***
73
+ *
74
+ * ## Resources: `resourceFilter`
75
+ *
76
+ * The `resourceFilter` block determines which resources within the included scopes are part of the resource group.
77
+ *
78
+ * ### `includeAllResources`
79
+ *
80
+ * * `true` – Includes all resources within the defined scopes.
81
+ * * `false` – Includes only the resources explicitly defined under `resources`.
82
+ *
83
+ * ### `resources`
84
+ *
85
+ * Each `resources` block selects a set of resources using:
86
+ *
87
+ * * `resourceType` (**required**)
88
+ * * `attributeFilter` (optional rule-based filtering)
89
+ * * `identifiers` (optional explicit allowlist):
90
+ *
91
+ * 1. You can only use `identifiers` when the resource group operates in **static scope**. This happens when:
92
+ * * `includedScopes` points to that **same scope**
93
+ * * `filter = EXCLUDING_CHILD_SCOPES`
94
+ *
95
+ * In this case, the set of resources is fixed, so you can select specific resources such as:
96
+ * * `"pipelineA"`
97
+ * * `"connectorX"`
98
+ *
99
+ * 2. You cannot use `identifiers` when the resource group is in **dynamic scope**. This happens when:
100
+ * * `filter = INCLUDING_CHILD_SCOPES`
101
+ * * `includedScopes` points to a child scope.
102
+ *
103
+ * In dynamic scope, the matching resources can change over time as child scopes are added or removed. Because of this, you can only select resources by `resourceType` (and optionally `attributeFilter`), not by specific identifiers.
104
+ *
105
+ * If you attempt to use `identifiers` in this case, you will receive:
106
+ * ```
107
+ * Cannot provide specific identifiers in resource filter for a dynamic scope
108
+ * ```
109
+ * ***
110
+ *
111
+ * ## Supported `resourceType` Values
112
+ *
113
+ * The following values are supported for `resourceType`:
114
+ *
115
+ * | Category | Resource Types |
116
+ * | ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
117
+ * | **Core Platform** | `ACCOUNT`, `ORGANIZATION`, `PROJECT`, `USER`, `USERGROUP`, `ROLE`, `RESOURCEGROUP`, `SERVICEACCOUNT`, `LICENSE`, `SETTING`, `AUTHSETTING`, `ACCESS_POLICIES`, `BANNER` |
118
+ * | **Pipelines & Delivery** | `PIPELINE`, `INPUT_SET`, `SERVICE`, `ENVIRONMENT`, `ENVIRONMENT_GROUP`, `DEPLOYMENTFREEZE`, `TEMPLATE`, `FILE`, `VARIABLE`, `ARTIFACT_REGISTRY`, `PROVIDER` |
119
+ * | **Connectors & Infrastructure** | `CONNECTOR`, `DELEGATE`, `DELEGATECONFIGURATION`, `CERTIFICATE`, `CODE_REPOSITORY`, `NETWORK_MAP` |
120
+ * | **Secrets & Security** | `SECRET`, `FEATUREFLAG`, `FF_PROXYAPIKEY`, `SSCA_REMEDIATION_TRACKER`, `SSCA_ENFORCEMENT_EXEMPTION`, `STO_TESTTARGET`, `STO_EXEMPTION`, `STO_ISSUE`, `STO_SCAN` |
121
+ * | **Governance & Policy** | `GOVERNANCEPOLICY`, `GOVERNANCEPOLICYSETS`, `AUDIT` |
122
+ * | **Monitoring & Reliability** | `MONITOREDSERVICE`, `SLO`, `DOWNTIME`, `MONITORING_AGENT`, `METRIC_SOURCE`, `NOTIFICATION`, `NOTIFICATION_CHANNEL`, `NOTIFICATION_RULE` |
123
+ * | **GitOps** | `GITOPS_AGENT`, `GITOPS_APP`, `GITOPS_REPOSITORY`, `GITOPS_CLUSTER`, `GITOPS_GPGKEY`, `GITOPS_CERT` |
124
+ * | **Chaos Engineering** | `CHAOS_IMAGE_REGISTRY`, `CHAOS_HUB`, `CHAOS_INFRASTRUCTURE`, `CHAOS_EXPERIMENT`, `CHAOS_GAMEDAY`, `CHAOS_PROBE`, `CHAOS_SECURITY_GOVERNANCE` |
125
+ * | **Cloud Cost Management (CCM)** | `CCM_OVERVIEW`, `CCM_PERSPECTIVE`, `CCM_DATA_SCOPE`, `CCM_FOLDER`, `CCM_BUDGET`, `CCM_COSTCATEGORY`, `CCM_AUTOSTOPPINGRULE`, `CCM_LOADBALANCER`, `CCM_CURRENCYPREFERENCE`, `CCM_CLOUD_ASSET_GOVERNANCE_RULE`, `CCM_CLOUD_ASSET_GOVERNANCE_RULE_SET`, `CCM_CLOUD_ASSET_GOVERNANCE_RULE_ENFORCEMENT`, `CCM_ANOMALIES`, `CCM_RECOMMENDATIONS`, `CCM_COMMITMENT_ORCHESTRATOR` |
126
+ * | **Internal Developer Portal (IDP)** | `IDP_CATALOG`, `IDP_WORKFLOW`, `IDP_PLUGIN`, `IDP_SCORECARD`, `IDP_LAYOUT`, `IDP_CATALOG_ACCESS_POLICY`, `IDP_INTEGRATION`, `IDP_ADVANCED_CONFIGURATION` |
127
+ * | **Incident Response (IRO)** | `IRO_MANAGER`, `IRO_ALERT`, `IRO_ALERT_RULE`, `IRO_INCIDENT`, `IRO_CONNECT_WORKSPACE`, `IRO_RUNBOOK` |
128
+ * | **Continuous Engineering Tools (CET)** | `CET_AGENT`, `CET_TOKEN`, `CET_CRITICAL_EVENT` |
129
+ * | **Infrastructure as Code (IAC)** | `IAC_WORKSPACE`, `IAC_REGISTRY`, `IAC_VARIABLE_SET` |
130
+ * | **Software Engineering Insights (SEI)** | `SEI_CONFIGURATION_SETTINGS`, `SEI_COLLECTIONS`, `SEI_INSIGHTS`, `SEI_PANORAMA` |
131
+ * | **Feature Management & Experimentation (FME)** | `FME_ENVIRONMENT`, `FME_TRAFFIC_TYPE`, `FME_FEATURE_FLAG`, `FME_SEGMENT`, `FME_LARGE_SEGMENT`, `FME_METRIC`, `FME_EXPERIMENT` |
132
+ * | **Databases** | `DB_SCHEMA`, `DB_INSTANCE` |
133
+ * | **Targets & Deployment** | `TARGET`, `TARGETGROUP`, `TICKET`, `SMTP`, `STREAMING_DESTINATION` |
134
+ * | **Dashboards & Reporting** | `DASHBOARDS` |
135
+ *
136
+ * ***
137
+ *
138
+ * ## Attribute Filtering (`attributeFilter`)
139
+ *
140
+ * Use `attributeFilter` to include resources dynamically based on defined rules instead of explicit identifiers.
141
+ *
142
+ * ### Valid `attributeName` Values
143
+ *
144
+ * * `category`
145
+ * * `type`
146
+ * * `labels`
147
+ * * `tag` or `tags`
148
+ *
149
+ * ### `attributeValues` Constraints
150
+ *
151
+ * * For `category`, supported values include:
152
+ * `ARTIFACTORY`, `CLOUD_COST`, `CLOUD_PROVIDER`, `CODE_REPO`, `MONITORING`, `SECRET_MANAGER`, `TICKETING`
153
+ *
154
+ * * For `type`, supported values include:
155
+ * `Production`, `PreProduction`
156
+ *
157
+ * * For `labels`, use the format:
158
+ * `label:value`
159
+ *
160
+ * * For `tag` or `tags`, any string value is supported.
161
+ *
162
+ * ***
163
+ *
164
+ * ## Common Configuration Patterns
165
+ *
166
+ * ### Common Configuration Examples
167
+ *
168
+ * 1. Add Specific Resources at the Current Scope (Static Scope)
169
+ *
170
+ * Use this when you want to allow only certain resources (for example, specific pipelines or connectors) in the same scope where the resource group is created.
171
+ *
172
+ * This works because the scope is static (EXCLUDING_CHILD_SCOPES).
173
+ *
174
+ * ```typescript
175
+ * import * as pulumi from "@pulumi/pulumi";
176
+ * import * as harness from "@pulumi/harness";
177
+ *
178
+ * const staticExample = new harness.platform.ResourceGroup("static_example", {
179
+ * identifier: "static_rg",
180
+ * name: "Static Resource Group",
181
+ * accountId: "account_id",
182
+ * allowedScopeLevels: ["account"],
183
+ * includedScopes: [{
184
+ * filter: "EXCLUDING_CHILD_SCOPES",
185
+ * accountId: "account_id",
186
+ * }],
187
+ * resourceFilters: [{
188
+ * includeAllResources: false,
189
+ * resources: [{
190
+ * resourceType: "PIPELINE",
191
+ * identifiers: [
192
+ * "pipeline_a",
193
+ * "pipeline_b",
194
+ * ],
195
+ * }],
196
+ * }],
197
+ * });
198
+ * ```
199
+ *
200
+ * 2. Add All Resources at the Current Scope
201
+ *
202
+ * This includes all resources within the defined included_scopes. If you want to include everything at a specific scope:
203
+ *
204
+ * ```typescript
205
+ * import * as pulumi from "@pulumi/pulumi";
206
+ * import * as harness from "@pulumi/harness";
207
+ *
208
+ * const allResourcesAccount = new harness.platform.ResourceGroup("all_resources_account", {
209
+ * identifier: "all_resources_account",
210
+ * name: "All Resources - Account Level",
211
+ * description: "Includes all resources at the account scope",
212
+ * accountId: "account_id",
213
+ * allowedScopeLevels: ["account"],
214
+ * includedScopes: [{
215
+ * filter: "EXCLUDING_CHILD_SCOPES",
216
+ * accountId: "account_id",
217
+ * }],
218
+ * resourceFilters: [{
219
+ * includeAllResources: true,
220
+ * }],
221
+ * });
222
+ * ```
223
+ *
224
+ * 3. Add All Resources Across Child Scopes (Dynamic Scope)
225
+ *
226
+ * Use this when you want all resources across an account and its child orgs/projects.
227
+ *
228
+ * ```typescript
229
+ * import * as pulumi from "@pulumi/pulumi";
230
+ * import * as harness from "@pulumi/harness";
231
+ *
232
+ * const dynamicExample = new harness.platform.ResourceGroup("dynamic_example", {
233
+ * identifier: "dynamic_rg",
234
+ * name: "Dynamic Resource Group",
235
+ * accountId: "account_id",
236
+ * allowedScopeLevels: ["account"],
237
+ * includedScopes: [{
238
+ * filter: "INCLUDING_CHILD_SCOPES",
239
+ * accountId: "account_id",
240
+ * }],
241
+ * resourceFilters: [{
242
+ * includeAllResources: false,
243
+ * resources: [{
244
+ * resourceType: "PIPELINE",
245
+ * }],
246
+ * }],
247
+ * });
248
+ * ```
249
+ *
250
+ * ***
251
+ *
41
252
  * ## Import
42
253
  *
43
254
  * The `pulumi import` command can be used, for example:
@@ -1 +1 @@
1
- {"version":3,"file":"resourceGroup.js","sourceRoot":"","sources":["../../platform/resourceGroup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resourceGroup.js","sourceRoot":"","sources":["../../platform/resourceGroup.ts"],"names":[],"mappings":"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"}
package/types/input.d.ts CHANGED
@@ -841,6 +841,16 @@ export interface UserGroupSamlSettings {
841
841
  ssoProviderId?: pulumi.Input<string>;
842
842
  }
843
843
  export declare namespace autostopping {
844
+ interface AlertRecipients {
845
+ /**
846
+ * List of email addresses to notify. Required if `slack` is not set.
847
+ */
848
+ emails?: pulumi.Input<pulumi.Input<string>[]>;
849
+ /**
850
+ * List of Slack webhook URLs or channel identifiers to notify. Required if `email` is not set.
851
+ */
852
+ slacks?: pulumi.Input<pulumi.Input<string>[]>;
853
+ }
844
854
  interface AwsProxyCertificates {
845
855
  /**
846
856
  * Certificate secret ID
@@ -871,6 +881,26 @@ export declare namespace autostopping {
871
881
  */
872
882
  keySecretId: pulumi.Input<string>;
873
883
  }
884
+ interface GetAlertRecipients {
885
+ /**
886
+ * List of email addresses.
887
+ */
888
+ emails?: string[];
889
+ /**
890
+ * List of Slack webhook URLs or channel identifiers.
891
+ */
892
+ slacks?: string[];
893
+ }
894
+ interface GetAlertRecipientsArgs {
895
+ /**
896
+ * List of email addresses.
897
+ */
898
+ emails?: pulumi.Input<pulumi.Input<string>[]>;
899
+ /**
900
+ * List of Slack webhook URLs or channel identifiers.
901
+ */
902
+ slacks?: pulumi.Input<pulumi.Input<string>[]>;
903
+ }
874
904
  interface GetAwsProxyCertificates {
875
905
  /**
876
906
  * Certificate secret ID
@@ -999,6 +1029,26 @@ export declare namespace autostopping {
999
1029
  */
1000
1030
  proxyId: pulumi.Input<string>;
1001
1031
  }
1032
+ interface GetRuleK8sDepend {
1033
+ /**
1034
+ * Number of seconds the rule should wait after warming up the dependent rule
1035
+ */
1036
+ delayInSec?: number;
1037
+ /**
1038
+ * Rule id of the dependent rule
1039
+ */
1040
+ ruleId: number;
1041
+ }
1042
+ interface GetRuleK8sDependArgs {
1043
+ /**
1044
+ * Number of seconds the rule should wait after warming up the dependent rule
1045
+ */
1046
+ delayInSec?: pulumi.Input<number>;
1047
+ /**
1048
+ * Rule id of the dependent rule
1049
+ */
1050
+ ruleId: pulumi.Input<number>;
1051
+ }
1002
1052
  interface GetRuleRdsDatabase {
1003
1053
  /**
1004
1054
  * ID of the database
@@ -1181,9 +1231,13 @@ export declare namespace autostopping {
1181
1231
  }
1182
1232
  interface GetRuleScaleGroupHttpRouting {
1183
1233
  /**
1184
- * Organization Identifier for the Entity
1234
+ * Action to take for the routing rule
1185
1235
  */
1186
1236
  action?: string;
1237
+ /**
1238
+ * Path to use for the proxy
1239
+ */
1240
+ path?: string;
1187
1241
  /**
1188
1242
  * Port on the proxy
1189
1243
  */
@@ -1203,9 +1257,13 @@ export declare namespace autostopping {
1203
1257
  }
1204
1258
  interface GetRuleScaleGroupHttpRoutingArgs {
1205
1259
  /**
1206
- * Organization Identifier for the Entity
1260
+ * Action to take for the routing rule
1207
1261
  */
1208
1262
  action?: pulumi.Input<string>;
1263
+ /**
1264
+ * Path to use for the proxy
1265
+ */
1266
+ path?: pulumi.Input<string>;
1209
1267
  /**
1210
1268
  * Port on the proxy
1211
1269
  */
@@ -1437,9 +1495,13 @@ export declare namespace autostopping {
1437
1495
  }
1438
1496
  interface GetRuleVmHttpRouting {
1439
1497
  /**
1440
- * Organization Identifier for the Entity
1498
+ * Action to take for the routing rule
1441
1499
  */
1442
1500
  action?: string;
1501
+ /**
1502
+ * Path to use for the proxy
1503
+ */
1504
+ path?: string;
1443
1505
  /**
1444
1506
  * Port on the proxy
1445
1507
  */
@@ -1459,9 +1521,13 @@ export declare namespace autostopping {
1459
1521
  }
1460
1522
  interface GetRuleVmHttpRoutingArgs {
1461
1523
  /**
1462
- * Organization Identifier for the Entity
1524
+ * Action to take for the routing rule
1463
1525
  */
1464
1526
  action?: pulumi.Input<string>;
1527
+ /**
1528
+ * Path to use for the proxy
1529
+ */
1530
+ path?: pulumi.Input<string>;
1465
1531
  /**
1466
1532
  * Port on the proxy
1467
1533
  */
@@ -1609,6 +1675,16 @@ export declare namespace autostopping {
1609
1675
  */
1610
1676
  proxyId: pulumi.Input<string>;
1611
1677
  }
1678
+ interface RuleK8sDepend {
1679
+ /**
1680
+ * Number of seconds the rule should wait after warming up the dependent rule
1681
+ */
1682
+ delayInSec?: pulumi.Input<number>;
1683
+ /**
1684
+ * Rule id of the dependent rule
1685
+ */
1686
+ ruleId: pulumi.Input<number>;
1687
+ }
1612
1688
  interface RuleRdsDatabase {
1613
1689
  /**
1614
1690
  * ID of the database
@@ -1701,9 +1777,13 @@ export declare namespace autostopping {
1701
1777
  }
1702
1778
  interface RuleScaleGroupHttpRouting {
1703
1779
  /**
1704
- * Organization Identifier for the Entity
1780
+ * Action to take for the routing rule
1705
1781
  */
1706
1782
  action?: pulumi.Input<string>;
1783
+ /**
1784
+ * Path to use for the proxy
1785
+ */
1786
+ path?: pulumi.Input<string>;
1707
1787
  /**
1708
1788
  * Port on the proxy
1709
1789
  */
@@ -1829,9 +1909,13 @@ export declare namespace autostopping {
1829
1909
  }
1830
1910
  interface RuleVmHttpRouting {
1831
1911
  /**
1832
- * Organization Identifier for the Entity
1912
+ * Action to take for the routing rule
1833
1913
  */
1834
1914
  action?: pulumi.Input<string>;
1915
+ /**
1916
+ * Path to use for the proxy
1917
+ */
1918
+ path?: pulumi.Input<string>;
1835
1919
  /**
1836
1920
  * Port on the proxy
1837
1921
  */
@@ -34219,7 +34303,7 @@ export declare namespace platform {
34219
34303
  */
34220
34304
  accountId?: pulumi.Input<string>;
34221
34305
  /**
34222
- * Can be one of these 2 EXCLUDING*CHILD*SCOPES or INCLUDING*CHILD*SCOPES
34306
+ * Can be one of these 2 EXCLUDING_CHILD_SCOPES or INCLUDING_CHILD_SCOPES
34223
34307
  */
34224
34308
  filter: pulumi.Input<string>;
34225
34309
  /**
@@ -34261,7 +34345,7 @@ export declare namespace platform {
34261
34345
  */
34262
34346
  attributeName?: pulumi.Input<string>;
34263
34347
  /**
34264
- * Value of the attributes.Valid values for `category` are [ARTIFACTORY,CLOUD*COST,CLOUD*PROVIDER,CODE*REPO,MONITORING,SECRET*MANAGER,TICKETING], for `type` are [Production,PreProduction], for `labels`, it can be using the syntax 'label:value', for `tag` or `tags` it can be any string.
34348
+ * Value of the attributes.Valid values for `category` are [ARTIFACTORY,CLOUD_COST,CLOUD_PROVIDER,CODE_REPO,MONITORING,SECRET_MANAGER,TICKETING], for `type` are [Production,PreProduction], for `labels`, it can be using the syntax 'label:value', for `tag` or `tags` it can be any string.
34265
34349
  */
34266
34350
  attributeValues?: pulumi.Input<pulumi.Input<string>[]>;
34267
34351
  }
package/types/output.d.ts CHANGED
@@ -832,6 +832,16 @@ export interface UserGroupSamlSettings {
832
832
  ssoProviderId?: string;
833
833
  }
834
834
  export declare namespace autostopping {
835
+ interface AlertRecipients {
836
+ /**
837
+ * List of email addresses to notify. Required if `slack` is not set.
838
+ */
839
+ emails?: string[];
840
+ /**
841
+ * List of Slack webhook URLs or channel identifiers to notify. Required if `email` is not set.
842
+ */
843
+ slacks?: string[];
844
+ }
835
845
  interface AwsProxyCertificates {
836
846
  /**
837
847
  * Certificate secret ID
@@ -862,6 +872,16 @@ export declare namespace autostopping {
862
872
  */
863
873
  keySecretId: string;
864
874
  }
875
+ interface GetAlertRecipients {
876
+ /**
877
+ * List of email addresses.
878
+ */
879
+ emails?: string[];
880
+ /**
881
+ * List of Slack webhook URLs or channel identifiers.
882
+ */
883
+ slacks?: string[];
884
+ }
865
885
  interface GetAwsProxyCertificates {
866
886
  /**
867
887
  * Certificate secret ID
@@ -926,6 +946,16 @@ export declare namespace autostopping {
926
946
  */
927
947
  proxyId: string;
928
948
  }
949
+ interface GetRuleK8sDepend {
950
+ /**
951
+ * Number of seconds the rule should wait after warming up the dependent rule
952
+ */
953
+ delayInSec?: number;
954
+ /**
955
+ * Rule id of the dependent rule
956
+ */
957
+ ruleId: number;
958
+ }
929
959
  interface GetRuleRdsDatabase {
930
960
  /**
931
961
  * ID of the database
@@ -1018,9 +1048,13 @@ export declare namespace autostopping {
1018
1048
  }
1019
1049
  interface GetRuleScaleGroupHttpRouting {
1020
1050
  /**
1021
- * Organization Identifier for the Entity
1051
+ * Action to take for the routing rule
1022
1052
  */
1023
1053
  action?: string;
1054
+ /**
1055
+ * Path to use for the proxy
1056
+ */
1057
+ path?: string;
1024
1058
  /**
1025
1059
  * Port on the proxy
1026
1060
  */
@@ -1146,9 +1180,13 @@ export declare namespace autostopping {
1146
1180
  }
1147
1181
  interface GetRuleVmHttpRouting {
1148
1182
  /**
1149
- * Organization Identifier for the Entity
1183
+ * Action to take for the routing rule
1150
1184
  */
1151
1185
  action?: string;
1186
+ /**
1187
+ * Path to use for the proxy
1188
+ */
1189
+ path?: string;
1152
1190
  /**
1153
1191
  * Port on the proxy
1154
1192
  */
@@ -1214,6 +1252,24 @@ export declare namespace autostopping {
1214
1252
  */
1215
1253
  port?: number;
1216
1254
  }
1255
+ interface GetRulesRule {
1256
+ /**
1257
+ * Id of the cloud connector.
1258
+ */
1259
+ cloudConnectorId: string;
1260
+ /**
1261
+ * Unique identifier of the rule.
1262
+ */
1263
+ id: number;
1264
+ /**
1265
+ * Kind of the rule.
1266
+ */
1267
+ kind: string;
1268
+ /**
1269
+ * Name of the rule.
1270
+ */
1271
+ name: string;
1272
+ }
1217
1273
  interface GetScheduleRepeat {
1218
1274
  /**
1219
1275
  * List of days on which schedule need to be active. Valid values are SUN, MON, TUE, WED, THU, FRI and SAT.
@@ -1262,6 +1318,16 @@ export declare namespace autostopping {
1262
1318
  */
1263
1319
  proxyId: string;
1264
1320
  }
1321
+ interface RuleK8sDepend {
1322
+ /**
1323
+ * Number of seconds the rule should wait after warming up the dependent rule
1324
+ */
1325
+ delayInSec?: number;
1326
+ /**
1327
+ * Rule id of the dependent rule
1328
+ */
1329
+ ruleId: number;
1330
+ }
1265
1331
  interface RuleRdsDatabase {
1266
1332
  /**
1267
1333
  * ID of the database
@@ -1354,9 +1420,13 @@ export declare namespace autostopping {
1354
1420
  }
1355
1421
  interface RuleScaleGroupHttpRouting {
1356
1422
  /**
1357
- * Organization Identifier for the Entity
1423
+ * Action to take for the routing rule
1358
1424
  */
1359
1425
  action?: string;
1426
+ /**
1427
+ * Path to use for the proxy
1428
+ */
1429
+ path?: string;
1360
1430
  /**
1361
1431
  * Port on the proxy
1362
1432
  */
@@ -1482,9 +1552,13 @@ export declare namespace autostopping {
1482
1552
  }
1483
1553
  interface RuleVmHttpRouting {
1484
1554
  /**
1485
- * Organization Identifier for the Entity
1555
+ * Action to take for the routing rule
1486
1556
  */
1487
1557
  action?: string;
1558
+ /**
1559
+ * Path to use for the proxy
1560
+ */
1561
+ path?: string;
1488
1562
  /**
1489
1563
  * Port on the proxy
1490
1564
  */
@@ -35593,7 +35667,7 @@ export declare namespace platform {
35593
35667
  */
35594
35668
  accountId?: string;
35595
35669
  /**
35596
- * Can be one of these 2 EXCLUDING*CHILD*SCOPES or INCLUDING*CHILD*SCOPES
35670
+ * Can be one of these 2 EXCLUDING_CHILD_SCOPES or INCLUDING_CHILD_SCOPES
35597
35671
  */
35598
35672
  filter: string;
35599
35673
  /**
@@ -35635,7 +35709,7 @@ export declare namespace platform {
35635
35709
  */
35636
35710
  attributeName?: string;
35637
35711
  /**
35638
- * Value of the attributes.Valid values for `category` are [ARTIFACTORY,CLOUD*COST,CLOUD*PROVIDER,CODE*REPO,MONITORING,SECRET*MANAGER,TICKETING], for `type` are [Production,PreProduction], for `labels`, it can be using the syntax 'label:value', for `tag` or `tags` it can be any string.
35712
+ * Value of the attributes.Valid values for `category` are [ARTIFACTORY,CLOUD_COST,CLOUD_PROVIDER,CODE_REPO,MONITORING,SECRET_MANAGER,TICKETING], for `type` are [Production,PreProduction], for `labels`, it can be using the syntax 'label:value', for `tag` or `tags` it can be any string.
35639
35713
  */
35640
35714
  attributeValues?: string[];
35641
35715
  }