@pulumi/datadog 4.61.0-alpha.1764800788 → 4.61.0-alpha.1764913250

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 (67) hide show
  1. package/actionConnection.d.ts +65 -0
  2. package/actionConnection.js +65 -0
  3. package/actionConnection.js.map +1 -1
  4. package/apmRetentionFilter.d.ts +16 -0
  5. package/apmRetentionFilter.js +16 -0
  6. package/apmRetentionFilter.js.map +1 -1
  7. package/apmRetentionFilterOrder.d.ts +18 -0
  8. package/apmRetentionFilterOrder.js +18 -0
  9. package/apmRetentionFilterOrder.js.map +1 -1
  10. package/appsecWafCustomRule.d.ts +58 -0
  11. package/appsecWafCustomRule.js +58 -0
  12. package/appsecWafCustomRule.js.map +1 -1
  13. package/awsCurConfig.d.ts +21 -0
  14. package/awsCurConfig.js +21 -0
  15. package/awsCurConfig.js.map +1 -1
  16. package/azureUcConfig.d.ts +24 -0
  17. package/azureUcConfig.js +24 -0
  18. package/azureUcConfig.js.map +1 -1
  19. package/csmThreatsAgentRule.d.ts +23 -0
  20. package/csmThreatsAgentRule.js +23 -0
  21. package/csmThreatsAgentRule.js.map +1 -1
  22. package/customAllocationRule.d.ts +27 -0
  23. package/customAllocationRule.js +27 -0
  24. package/customAllocationRule.js.map +1 -1
  25. package/customAllocationRules.d.ts +69 -0
  26. package/customAllocationRules.js +69 -0
  27. package/customAllocationRules.js.map +1 -1
  28. package/downtimeSchedule.d.ts +35 -0
  29. package/downtimeSchedule.js +35 -0
  30. package/downtimeSchedule.js.map +1 -1
  31. package/monitorNotificationRule.d.ts +17 -0
  32. package/monitorNotificationRule.js +17 -0
  33. package/monitorNotificationRule.js.map +1 -1
  34. package/observabilityPipeline.d.ts +66 -0
  35. package/observabilityPipeline.js +66 -0
  36. package/observabilityPipeline.js.map +1 -1
  37. package/onCallSchedule.d.ts +28 -0
  38. package/onCallSchedule.js +28 -0
  39. package/onCallSchedule.js.map +1 -1
  40. package/onCallTeamRoutingRules.d.ts +33 -0
  41. package/onCallTeamRoutingRules.js +33 -0
  42. package/onCallTeamRoutingRules.js.map +1 -1
  43. package/openapiApi.d.ts +13 -0
  44. package/openapiApi.js +13 -0
  45. package/openapiApi.js.map +1 -1
  46. package/package.json +2 -2
  47. package/rumMetric.d.ts +26 -0
  48. package/rumMetric.js +26 -0
  49. package/rumMetric.js.map +1 -1
  50. package/rumRetentionFiltersOrder.d.ts +45 -0
  51. package/rumRetentionFiltersOrder.js +45 -0
  52. package/rumRetentionFiltersOrder.js.map +1 -1
  53. package/securityMonitoringRuleJson.d.ts +45 -0
  54. package/securityMonitoringRuleJson.js +45 -0
  55. package/securityMonitoringRuleJson.js.map +1 -1
  56. package/securityNotificationRule.d.ts +35 -0
  57. package/securityNotificationRule.js +35 -0
  58. package/securityNotificationRule.js.map +1 -1
  59. package/spansMetric.d.ts +22 -0
  60. package/spansMetric.js +22 -0
  61. package/spansMetric.js.map +1 -1
  62. package/tagPipelineRuleset.d.ts +58 -0
  63. package/tagPipelineRuleset.js +58 -0
  64. package/tagPipelineRuleset.js.map +1 -1
  65. package/tagPipelineRulesets.d.ts +167 -0
  66. package/tagPipelineRulesets.js +167 -0
  67. package/tagPipelineRulesets.js.map +1 -1
@@ -6,6 +6,64 @@ import * as outputs from "./types/output";
6
6
  *
7
7
  * ## Example Usage
8
8
  *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as datadog from "@pulumi/datadog";
12
+ *
13
+ * const example = new datadog.TagPipelineRuleset("example", {
14
+ * name: "Complete Tag Pipeline Example",
15
+ * enabled: true,
16
+ * rules: [
17
+ * {
18
+ * name: "standardize-environment",
19
+ * enabled: true,
20
+ * mapping: [{
21
+ * destinationKey: "env",
22
+ * ifNotExists: true,
23
+ * sourceKeys: [
24
+ * "environment",
25
+ * "stage",
26
+ * "tier",
27
+ * ],
28
+ * }],
29
+ * },
30
+ * {
31
+ * name: "assign-team-tags",
32
+ * enabled: true,
33
+ * query: [{
34
+ * query: "service:web* OR service:frontend*",
35
+ * caseInsensitivity: true,
36
+ * ifNotExists: true,
37
+ * addition: [{
38
+ * key: "team",
39
+ * value: "frontend",
40
+ * }],
41
+ * }],
42
+ * },
43
+ * {
44
+ * name: "enrich-service-metadata",
45
+ * enabled: true,
46
+ * referenceTable: [{
47
+ * tableName: "service_catalog",
48
+ * caseInsensitivity: true,
49
+ * ifNotExists: true,
50
+ * sourceKeys: ["service"],
51
+ * fieldPairs: [
52
+ * {
53
+ * inputColumn: "owner_team",
54
+ * outputKey: "owner",
55
+ * },
56
+ * {
57
+ * inputColumn: "business_unit",
58
+ * outputKey: "business_unit",
59
+ * },
60
+ * ],
61
+ * }],
62
+ * },
63
+ * ],
64
+ * });
65
+ * ```
66
+ *
9
67
  * ## Import
10
68
  *
11
69
  * The `pulumi import` command can be used, for example:
@@ -10,6 +10,64 @@ const utilities = require("./utilities");
10
10
  *
11
11
  * ## Example Usage
12
12
  *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as datadog from "@pulumi/datadog";
16
+ *
17
+ * const example = new datadog.TagPipelineRuleset("example", {
18
+ * name: "Complete Tag Pipeline Example",
19
+ * enabled: true,
20
+ * rules: [
21
+ * {
22
+ * name: "standardize-environment",
23
+ * enabled: true,
24
+ * mapping: [{
25
+ * destinationKey: "env",
26
+ * ifNotExists: true,
27
+ * sourceKeys: [
28
+ * "environment",
29
+ * "stage",
30
+ * "tier",
31
+ * ],
32
+ * }],
33
+ * },
34
+ * {
35
+ * name: "assign-team-tags",
36
+ * enabled: true,
37
+ * query: [{
38
+ * query: "service:web* OR service:frontend*",
39
+ * caseInsensitivity: true,
40
+ * ifNotExists: true,
41
+ * addition: [{
42
+ * key: "team",
43
+ * value: "frontend",
44
+ * }],
45
+ * }],
46
+ * },
47
+ * {
48
+ * name: "enrich-service-metadata",
49
+ * enabled: true,
50
+ * referenceTable: [{
51
+ * tableName: "service_catalog",
52
+ * caseInsensitivity: true,
53
+ * ifNotExists: true,
54
+ * sourceKeys: ["service"],
55
+ * fieldPairs: [
56
+ * {
57
+ * inputColumn: "owner_team",
58
+ * outputKey: "owner",
59
+ * },
60
+ * {
61
+ * inputColumn: "business_unit",
62
+ * outputKey: "business_unit",
63
+ * },
64
+ * ],
65
+ * }],
66
+ * },
67
+ * ],
68
+ * });
69
+ * ```
70
+ *
13
71
  * ## Import
14
72
  *
15
73
  * The `pulumi import` command can be used, for example:
@@ -1 +1 @@
1
- {"version":3,"file":"tagPipelineRuleset.js","sourceRoot":"","sources":["../tagPipelineRuleset.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;GAYG;AACH,MAAa,kBAAmB,SAAQ,MAAM,CAAC,cAAc;IACzD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA+B,EAAE,IAAmC;QAC7H,OAAO,IAAI,kBAAkB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACzE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,kBAAkB,CAAC,YAAY,CAAC;IACnE,CAAC;IA+BD,YAAY,IAAY,EAAE,WAA8D,EAAE,IAAmC;QACzH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAkD,CAAC;YACjE,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC;YAC7C,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;YACvC,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;SAC9C;aAAM;YACH,MAAM,IAAI,GAAG,WAAiD,CAAC;YAC/D,IAAI,IAAI,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACvD;YACD,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC;YACtC,cAAc,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC/C,cAAc,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACjD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;;AAhFL,gDAiFC;AAnEG,gBAAgB;AACO,+BAAY,GAAG,qDAAqD,CAAC"}
1
+ {"version":3,"file":"tagPipelineRuleset.js","sourceRoot":"","sources":["../tagPipelineRuleset.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAGzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsEG;AACH,MAAa,kBAAmB,SAAQ,MAAM,CAAC,cAAc;IACzD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA+B,EAAE,IAAmC;QAC7H,OAAO,IAAI,kBAAkB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACzE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,kBAAkB,CAAC,YAAY,CAAC;IACnE,CAAC;IA+BD,YAAY,IAAY,EAAE,WAA8D,EAAE,IAAmC;QACzH,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAkD,CAAC;YACjE,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,EAAE,QAAQ,CAAC;YAC7C,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;YACvC,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;SAC9C;aAAM;YACH,MAAM,IAAI,GAAG,WAAiD,CAAC;YAC/D,IAAI,IAAI,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACvD;YACD,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC;YACtC,cAAc,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC/C,cAAc,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SACjD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;;AAhFL,gDAiFC;AAnEG,gBAAgB;AACO,+BAAY,GAAG,qDAAqD,CAAC"}
@@ -4,6 +4,173 @@ import * as pulumi from "@pulumi/pulumi";
4
4
  *
5
5
  * ## Example Usage
6
6
  *
7
+ * ```typescript
8
+ * import * as pulumi from "@pulumi/pulumi";
9
+ * import * as datadog from "@pulumi/datadog";
10
+ *
11
+ * // ============================================================================
12
+ * // Example 1: Basic Usage - Manage the order of tag pipeline rulesets
13
+ * // ============================================================================
14
+ * // This example shows the default behavior where UI-defined rulesets that are
15
+ * // not in Terraform will be preserved at the end of the order.
16
+ * const first = new datadog.TagPipelineRuleset("first", {
17
+ * name: "Standardize Environment Tags",
18
+ * enabled: true,
19
+ * rules: [{
20
+ * name: "map-env",
21
+ * enabled: true,
22
+ * mapping: [{
23
+ * destinationKey: "env",
24
+ * ifNotExists: true,
25
+ * sourceKeys: [
26
+ * "environment",
27
+ * "stage",
28
+ * ],
29
+ * }],
30
+ * }],
31
+ * });
32
+ * const second = new datadog.TagPipelineRuleset("second", {
33
+ * name: "Assign Team Tags",
34
+ * enabled: true,
35
+ * rules: [{
36
+ * name: "assign-team",
37
+ * enabled: true,
38
+ * query: [{
39
+ * query: "service:web* OR service:api*",
40
+ * ifNotExists: false,
41
+ * addition: [{
42
+ * key: "team",
43
+ * value: "backend",
44
+ * }],
45
+ * }],
46
+ * }],
47
+ * });
48
+ * const third = new datadog.TagPipelineRuleset("third", {
49
+ * name: "Enrich Service Metadata",
50
+ * enabled: true,
51
+ * rules: [{
52
+ * name: "lookup-service",
53
+ * enabled: true,
54
+ * referenceTable: [{
55
+ * tableName: "service_catalog",
56
+ * caseInsensitivity: true,
57
+ * ifNotExists: true,
58
+ * sourceKeys: ["service"],
59
+ * fieldPairs: [{
60
+ * inputColumn: "owner_team",
61
+ * outputKey: "owner",
62
+ * }],
63
+ * }],
64
+ * }],
65
+ * });
66
+ * // Manage the order of tag pipeline rulesets
67
+ * // Rulesets are executed in the order specified in ruleset_ids
68
+ * // UI-defined rulesets not in this list will be preserved at the end
69
+ * const order = new datadog.TagPipelineRulesets("order", {rulesetIds: [
70
+ * first.id,
71
+ * second.id,
72
+ * third.id,
73
+ * ]});
74
+ * // ============================================================================
75
+ * // Example 2: Override UI-defined rulesets (override_ui_defined_resources = true)
76
+ * // ============================================================================
77
+ * // When set to true, any rulesets created via the UI that are not defined in Terraform
78
+ * // will be automatically deleted during pulumi up.
79
+ * const managedFirst = new datadog.TagPipelineRuleset("managed_first", {
80
+ * name: "Standardize Environment Tags",
81
+ * enabled: true,
82
+ * rules: [{
83
+ * name: "map-env",
84
+ * enabled: true,
85
+ * mapping: [{
86
+ * destinationKey: "env",
87
+ * ifNotExists: true,
88
+ * sourceKeys: [
89
+ * "environment",
90
+ * "stage",
91
+ * ],
92
+ * }],
93
+ * }],
94
+ * });
95
+ * const managedSecond = new datadog.TagPipelineRuleset("managed_second", {
96
+ * name: "Assign Team Tags",
97
+ * enabled: true,
98
+ * rules: [{
99
+ * name: "assign-team",
100
+ * enabled: true,
101
+ * query: [{
102
+ * query: "service:web*",
103
+ * ifNotExists: false,
104
+ * addition: [{
105
+ * key: "team",
106
+ * value: "frontend",
107
+ * }],
108
+ * }],
109
+ * }],
110
+ * });
111
+ * // Manage order with override_ui_defined_resources = true
112
+ * // This will delete any rulesets created via the UI that are not in this list
113
+ * const orderOverride = new datadog.TagPipelineRulesets("order_override", {
114
+ * overrideUiDefinedResources: true,
115
+ * rulesetIds: [
116
+ * managedFirst.id,
117
+ * managedSecond.id,
118
+ * ],
119
+ * });
120
+ * // ============================================================================
121
+ * // Example 3: Preserve UI-defined rulesets (override_ui_defined_resources = false)
122
+ * // ============================================================================
123
+ * // When set to false (default), UI-defined rulesets that are not in Terraform
124
+ * // will be preserved at the end of the order. However, if unmanaged rulesets
125
+ * // are in the middle of the order, Terraform will error and require you to either:
126
+ * // 1. Import the unmanaged rulesets
127
+ * // 2. Set override_ui_defined_resources = true
128
+ * // 3. Manually reorder or delete them in the Datadog UI
129
+ * const preserveFirst = new datadog.TagPipelineRuleset("preserve_first", {
130
+ * name: "Standardize Environment Tags",
131
+ * enabled: true,
132
+ * rules: [{
133
+ * name: "map-env",
134
+ * enabled: true,
135
+ * mapping: [{
136
+ * destinationKey: "env",
137
+ * ifNotExists: true,
138
+ * sourceKeys: [
139
+ * "environment",
140
+ * "stage",
141
+ * ],
142
+ * }],
143
+ * }],
144
+ * });
145
+ * const preserveSecond = new datadog.TagPipelineRuleset("preserve_second", {
146
+ * name: "Assign Team Tags",
147
+ * enabled: true,
148
+ * rules: [{
149
+ * name: "assign-team",
150
+ * enabled: true,
151
+ * query: [{
152
+ * query: "service:web*",
153
+ * ifNotExists: false,
154
+ * addition: [{
155
+ * key: "team",
156
+ * value: "frontend",
157
+ * }],
158
+ * }],
159
+ * }],
160
+ * });
161
+ * // Manage order with override_ui_defined_resources = false (default)
162
+ * // UI-defined rulesets will be preserved at the end of the order
163
+ * // Terraform will warn if unmanaged rulesets exist at the end
164
+ * // Terraform will error if unmanaged rulesets are in the middle
165
+ * const orderPreserve = new datadog.TagPipelineRulesets("order_preserve", {
166
+ * overrideUiDefinedResources: false,
167
+ * rulesetIds: [
168
+ * preserveFirst.id,
169
+ * preserveSecond.id,
170
+ * ],
171
+ * });
172
+ * ```
173
+ *
7
174
  * ## Import
8
175
  *
9
176
  * The `pulumi import` command can be used, for example:
@@ -10,6 +10,173 @@ const utilities = require("./utilities");
10
10
  *
11
11
  * ## Example Usage
12
12
  *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as datadog from "@pulumi/datadog";
16
+ *
17
+ * // ============================================================================
18
+ * // Example 1: Basic Usage - Manage the order of tag pipeline rulesets
19
+ * // ============================================================================
20
+ * // This example shows the default behavior where UI-defined rulesets that are
21
+ * // not in Terraform will be preserved at the end of the order.
22
+ * const first = new datadog.TagPipelineRuleset("first", {
23
+ * name: "Standardize Environment Tags",
24
+ * enabled: true,
25
+ * rules: [{
26
+ * name: "map-env",
27
+ * enabled: true,
28
+ * mapping: [{
29
+ * destinationKey: "env",
30
+ * ifNotExists: true,
31
+ * sourceKeys: [
32
+ * "environment",
33
+ * "stage",
34
+ * ],
35
+ * }],
36
+ * }],
37
+ * });
38
+ * const second = new datadog.TagPipelineRuleset("second", {
39
+ * name: "Assign Team Tags",
40
+ * enabled: true,
41
+ * rules: [{
42
+ * name: "assign-team",
43
+ * enabled: true,
44
+ * query: [{
45
+ * query: "service:web* OR service:api*",
46
+ * ifNotExists: false,
47
+ * addition: [{
48
+ * key: "team",
49
+ * value: "backend",
50
+ * }],
51
+ * }],
52
+ * }],
53
+ * });
54
+ * const third = new datadog.TagPipelineRuleset("third", {
55
+ * name: "Enrich Service Metadata",
56
+ * enabled: true,
57
+ * rules: [{
58
+ * name: "lookup-service",
59
+ * enabled: true,
60
+ * referenceTable: [{
61
+ * tableName: "service_catalog",
62
+ * caseInsensitivity: true,
63
+ * ifNotExists: true,
64
+ * sourceKeys: ["service"],
65
+ * fieldPairs: [{
66
+ * inputColumn: "owner_team",
67
+ * outputKey: "owner",
68
+ * }],
69
+ * }],
70
+ * }],
71
+ * });
72
+ * // Manage the order of tag pipeline rulesets
73
+ * // Rulesets are executed in the order specified in ruleset_ids
74
+ * // UI-defined rulesets not in this list will be preserved at the end
75
+ * const order = new datadog.TagPipelineRulesets("order", {rulesetIds: [
76
+ * first.id,
77
+ * second.id,
78
+ * third.id,
79
+ * ]});
80
+ * // ============================================================================
81
+ * // Example 2: Override UI-defined rulesets (override_ui_defined_resources = true)
82
+ * // ============================================================================
83
+ * // When set to true, any rulesets created via the UI that are not defined in Terraform
84
+ * // will be automatically deleted during pulumi up.
85
+ * const managedFirst = new datadog.TagPipelineRuleset("managed_first", {
86
+ * name: "Standardize Environment Tags",
87
+ * enabled: true,
88
+ * rules: [{
89
+ * name: "map-env",
90
+ * enabled: true,
91
+ * mapping: [{
92
+ * destinationKey: "env",
93
+ * ifNotExists: true,
94
+ * sourceKeys: [
95
+ * "environment",
96
+ * "stage",
97
+ * ],
98
+ * }],
99
+ * }],
100
+ * });
101
+ * const managedSecond = new datadog.TagPipelineRuleset("managed_second", {
102
+ * name: "Assign Team Tags",
103
+ * enabled: true,
104
+ * rules: [{
105
+ * name: "assign-team",
106
+ * enabled: true,
107
+ * query: [{
108
+ * query: "service:web*",
109
+ * ifNotExists: false,
110
+ * addition: [{
111
+ * key: "team",
112
+ * value: "frontend",
113
+ * }],
114
+ * }],
115
+ * }],
116
+ * });
117
+ * // Manage order with override_ui_defined_resources = true
118
+ * // This will delete any rulesets created via the UI that are not in this list
119
+ * const orderOverride = new datadog.TagPipelineRulesets("order_override", {
120
+ * overrideUiDefinedResources: true,
121
+ * rulesetIds: [
122
+ * managedFirst.id,
123
+ * managedSecond.id,
124
+ * ],
125
+ * });
126
+ * // ============================================================================
127
+ * // Example 3: Preserve UI-defined rulesets (override_ui_defined_resources = false)
128
+ * // ============================================================================
129
+ * // When set to false (default), UI-defined rulesets that are not in Terraform
130
+ * // will be preserved at the end of the order. However, if unmanaged rulesets
131
+ * // are in the middle of the order, Terraform will error and require you to either:
132
+ * // 1. Import the unmanaged rulesets
133
+ * // 2. Set override_ui_defined_resources = true
134
+ * // 3. Manually reorder or delete them in the Datadog UI
135
+ * const preserveFirst = new datadog.TagPipelineRuleset("preserve_first", {
136
+ * name: "Standardize Environment Tags",
137
+ * enabled: true,
138
+ * rules: [{
139
+ * name: "map-env",
140
+ * enabled: true,
141
+ * mapping: [{
142
+ * destinationKey: "env",
143
+ * ifNotExists: true,
144
+ * sourceKeys: [
145
+ * "environment",
146
+ * "stage",
147
+ * ],
148
+ * }],
149
+ * }],
150
+ * });
151
+ * const preserveSecond = new datadog.TagPipelineRuleset("preserve_second", {
152
+ * name: "Assign Team Tags",
153
+ * enabled: true,
154
+ * rules: [{
155
+ * name: "assign-team",
156
+ * enabled: true,
157
+ * query: [{
158
+ * query: "service:web*",
159
+ * ifNotExists: false,
160
+ * addition: [{
161
+ * key: "team",
162
+ * value: "frontend",
163
+ * }],
164
+ * }],
165
+ * }],
166
+ * });
167
+ * // Manage order with override_ui_defined_resources = false (default)
168
+ * // UI-defined rulesets will be preserved at the end of the order
169
+ * // Terraform will warn if unmanaged rulesets exist at the end
170
+ * // Terraform will error if unmanaged rulesets are in the middle
171
+ * const orderPreserve = new datadog.TagPipelineRulesets("order_preserve", {
172
+ * overrideUiDefinedResources: false,
173
+ * rulesetIds: [
174
+ * preserveFirst.id,
175
+ * preserveSecond.id,
176
+ * ],
177
+ * });
178
+ * ```
179
+ *
13
180
  * ## Import
14
181
  *
15
182
  * The `pulumi import` command can be used, for example:
@@ -1 +1 @@
1
- {"version":3,"file":"tagPipelineRulesets.js","sourceRoot":"","sources":["../tagPipelineRulesets.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;GAYG;AACH,MAAa,mBAAoB,SAAQ,MAAM,CAAC,cAAc;IAC1D;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAgC,EAAE,IAAmC;QAC9H,OAAO,IAAI,mBAAmB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,mBAAmB,CAAC,YAAY,CAAC;IACpE,CAAC;IAgBD,YAAY,IAAY,EAAE,WAAgE,EAAE,IAAmC;QAC3H,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAmD,CAAC;YAClE,cAAc,CAAC,4BAA4B,CAAC,GAAG,KAAK,EAAE,0BAA0B,CAAC;YACjF,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;SACpD;aAAM;YACH,MAAM,IAAI,GAAG,WAAkD,CAAC;YAChE,IAAI,IAAI,EAAE,UAAU,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,cAAc,CAAC,4BAA4B,CAAC,GAAG,IAAI,EAAE,0BAA0B,CAAC;YAChF,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;SACnD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACxE,CAAC;;AA3DL,kDA4DC;AA9CG,gBAAgB;AACO,gCAAY,GAAG,uDAAuD,CAAC"}
1
+ {"version":3,"file":"tagPipelineRulesets.js","sourceRoot":"","sources":["../tagPipelineRulesets.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmLG;AACH,MAAa,mBAAoB,SAAQ,MAAM,CAAC,cAAc;IAC1D;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAgC,EAAE,IAAmC;QAC9H,OAAO,IAAI,mBAAmB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC1E,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,mBAAmB,CAAC,YAAY,CAAC;IACpE,CAAC;IAgBD,YAAY,IAAY,EAAE,WAAgE,EAAE,IAAmC;QAC3H,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAmD,CAAC;YAClE,cAAc,CAAC,4BAA4B,CAAC,GAAG,KAAK,EAAE,0BAA0B,CAAC;YACjF,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;SACpD;aAAM;YACH,MAAM,IAAI,GAAG,WAAkD,CAAC;YAChE,IAAI,IAAI,EAAE,UAAU,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,cAAc,CAAC,4BAA4B,CAAC,GAAG,IAAI,EAAE,0BAA0B,CAAC;YAChF,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;SACnD;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,mBAAmB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACxE,CAAC;;AA3DL,kDA4DC;AA9CG,gBAAgB;AACO,gCAAY,GAAG,uDAAuD,CAAC"}