@pulumi/datadog 4.58.0-alpha.1760375617 → 4.58.0-alpha.1760585632

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 (69) hide show
  1. package/applicationKey.d.ts +13 -2
  2. package/applicationKey.js +13 -2
  3. package/applicationKey.js.map +1 -1
  4. package/aws/getIntegrationIamPermissionsStandard.d.ts +22 -0
  5. package/aws/getIntegrationIamPermissionsStandard.js +24 -0
  6. package/aws/getIntegrationIamPermissionsStandard.js.map +1 -0
  7. package/aws/index.d.ts +3 -0
  8. package/aws/index.js +4 -1
  9. package/aws/index.js.map +1 -1
  10. package/awsCurConfig.d.ts +40 -0
  11. package/awsCurConfig.js +10 -0
  12. package/awsCurConfig.js.map +1 -1
  13. package/azureUcConfig.d.ts +151 -0
  14. package/azureUcConfig.js +89 -0
  15. package/azureUcConfig.js.map +1 -0
  16. package/customAllocationRule.d.ts +141 -0
  17. package/customAllocationRule.js +91 -0
  18. package/customAllocationRule.js.map +1 -0
  19. package/customAllocationRules.d.ts +61 -0
  20. package/customAllocationRules.js +65 -0
  21. package/customAllocationRules.js.map +1 -0
  22. package/gcpUcConfig.d.ts +192 -0
  23. package/gcpUcConfig.js +116 -0
  24. package/gcpUcConfig.js.map +1 -0
  25. package/getAzureUcConfig.d.ts +98 -0
  26. package/getAzureUcConfig.js +32 -0
  27. package/getAzureUcConfig.js.map +1 -0
  28. package/getCustomAllocationRule.d.ts +88 -0
  29. package/getCustomAllocationRule.js +34 -0
  30. package/getCustomAllocationRule.js.map +1 -0
  31. package/getGcpUcConfig.d.ts +88 -0
  32. package/getGcpUcConfig.js +28 -0
  33. package/getGcpUcConfig.js.map +1 -0
  34. package/getPermissions.d.ts +26 -2
  35. package/getPermissions.js +26 -2
  36. package/getPermissions.js.map +1 -1
  37. package/getRole.d.ts +4 -4
  38. package/getRole.js +4 -4
  39. package/getRoleUsers.d.ts +32 -0
  40. package/getRoleUsers.js +32 -0
  41. package/getRoleUsers.js.map +1 -1
  42. package/getRoles.d.ts +4 -4
  43. package/getRoles.js +4 -4
  44. package/getTagPipelineRuleset.d.ts +66 -0
  45. package/getTagPipelineRuleset.js +30 -0
  46. package/getTagPipelineRuleset.js.map +1 -0
  47. package/index.d.ts +30 -0
  48. package/index.js +47 -5
  49. package/index.js.map +1 -1
  50. package/package.json +2 -2
  51. package/role.d.ts +6 -6
  52. package/role.js +6 -6
  53. package/serviceAccountApplicationKey.d.ts +15 -3
  54. package/serviceAccountApplicationKey.js +15 -3
  55. package/serviceAccountApplicationKey.js.map +1 -1
  56. package/syntheticsPrivateLocation.d.ts +8 -0
  57. package/syntheticsPrivateLocation.js +2 -0
  58. package/syntheticsPrivateLocation.js.map +1 -1
  59. package/tagPipelineRuleset.d.ts +103 -0
  60. package/tagPipelineRuleset.js +73 -0
  61. package/tagPipelineRuleset.js.map +1 -0
  62. package/tagPipelineRulesets.d.ts +73 -0
  63. package/tagPipelineRulesets.js +77 -0
  64. package/tagPipelineRulesets.js.map +1 -0
  65. package/types/input.d.ts +798 -0
  66. package/types/output.d.ts +588 -0
  67. package/userRole.d.ts +16 -8
  68. package/userRole.js +16 -8
  69. package/userRole.js.map +1 -1
@@ -0,0 +1,141 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "./types/input";
3
+ import * as outputs from "./types/output";
4
+ /**
5
+ * Provides a Datadog Custom Allocation Rule resource. Custom allocation rules allow you to allocate cloud costs based on tags and filters.
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ## Import
10
+ *
11
+ * The `pulumi import` command can be used, for example:
12
+ *
13
+ * ```sh
14
+ * $ pulumi import datadog:index/customAllocationRule:CustomAllocationRule new_list <rule_id>
15
+ * ```
16
+ */
17
+ export declare class CustomAllocationRule extends pulumi.CustomResource {
18
+ /**
19
+ * Get an existing CustomAllocationRule resource's state with the given name, ID, and optional extra
20
+ * properties used to qualify the lookup.
21
+ *
22
+ * @param name The _unique_ name of the resulting resource.
23
+ * @param id The _unique_ provider ID of the resource to lookup.
24
+ * @param state Any extra arguments used during the lookup.
25
+ * @param opts Optional settings to control the behavior of the CustomResource.
26
+ */
27
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CustomAllocationRuleState, opts?: pulumi.CustomResourceOptions): CustomAllocationRule;
28
+ /**
29
+ * Returns true if the given object is an instance of CustomAllocationRule. This is designed to work even
30
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
31
+ */
32
+ static isInstance(obj: any): obj is CustomAllocationRule;
33
+ readonly costsToAllocates: pulumi.Output<outputs.CustomAllocationRuleCostsToAllocate[] | undefined>;
34
+ /**
35
+ * The timestamp (in ISO 8601 format) when the rule was created.
36
+ */
37
+ readonly created: pulumi.Output<string>;
38
+ /**
39
+ * Whether the custom allocation rule is enabled.
40
+ */
41
+ readonly enabled: pulumi.Output<boolean>;
42
+ /**
43
+ * The UUID of the user who last modified the rule.
44
+ */
45
+ readonly lastModifiedUserUuid: pulumi.Output<string>;
46
+ /**
47
+ * The order of the rule in the list of custom allocation rules. This field is read-only. Use the `datadog.CustomAllocationRules` resource to manage rule order.
48
+ */
49
+ readonly orderId: pulumi.Output<number>;
50
+ /**
51
+ * List of cloud providers the rule applies to. Valid values include `aws`, `azure`, and `gcp`.
52
+ */
53
+ readonly providernames: pulumi.Output<string[]>;
54
+ /**
55
+ * Whether the rule was rejected by the API during creation due to validation errors. This field is read-only.
56
+ */
57
+ readonly rejected: pulumi.Output<boolean>;
58
+ /**
59
+ * The name of the custom allocation rule. This field is immutable - changing it will force replacement of the resource.
60
+ */
61
+ readonly ruleName: pulumi.Output<string>;
62
+ readonly strategy: pulumi.Output<outputs.CustomAllocationRuleStrategy | undefined>;
63
+ /**
64
+ * The timestamp (in ISO 8601 format) when the rule was last updated.
65
+ */
66
+ readonly updated: pulumi.Output<string>;
67
+ /**
68
+ * The version number of the rule. This increments each time the rule is updated.
69
+ */
70
+ readonly version: pulumi.Output<number>;
71
+ /**
72
+ * Create a CustomAllocationRule resource with the given unique name, arguments, and options.
73
+ *
74
+ * @param name The _unique_ name of the resource.
75
+ * @param args The arguments to use to populate this resource's properties.
76
+ * @param opts A bag of options that control this resource's behavior.
77
+ */
78
+ constructor(name: string, args: CustomAllocationRuleArgs, opts?: pulumi.CustomResourceOptions);
79
+ }
80
+ /**
81
+ * Input properties used for looking up and filtering CustomAllocationRule resources.
82
+ */
83
+ export interface CustomAllocationRuleState {
84
+ costsToAllocates?: pulumi.Input<pulumi.Input<inputs.CustomAllocationRuleCostsToAllocate>[]>;
85
+ /**
86
+ * The timestamp (in ISO 8601 format) when the rule was created.
87
+ */
88
+ created?: pulumi.Input<string>;
89
+ /**
90
+ * Whether the custom allocation rule is enabled.
91
+ */
92
+ enabled?: pulumi.Input<boolean>;
93
+ /**
94
+ * The UUID of the user who last modified the rule.
95
+ */
96
+ lastModifiedUserUuid?: pulumi.Input<string>;
97
+ /**
98
+ * The order of the rule in the list of custom allocation rules. This field is read-only. Use the `datadog.CustomAllocationRules` resource to manage rule order.
99
+ */
100
+ orderId?: pulumi.Input<number>;
101
+ /**
102
+ * List of cloud providers the rule applies to. Valid values include `aws`, `azure`, and `gcp`.
103
+ */
104
+ providernames?: pulumi.Input<pulumi.Input<string>[]>;
105
+ /**
106
+ * Whether the rule was rejected by the API during creation due to validation errors. This field is read-only.
107
+ */
108
+ rejected?: pulumi.Input<boolean>;
109
+ /**
110
+ * The name of the custom allocation rule. This field is immutable - changing it will force replacement of the resource.
111
+ */
112
+ ruleName?: pulumi.Input<string>;
113
+ strategy?: pulumi.Input<inputs.CustomAllocationRuleStrategy>;
114
+ /**
115
+ * The timestamp (in ISO 8601 format) when the rule was last updated.
116
+ */
117
+ updated?: pulumi.Input<string>;
118
+ /**
119
+ * The version number of the rule. This increments each time the rule is updated.
120
+ */
121
+ version?: pulumi.Input<number>;
122
+ }
123
+ /**
124
+ * The set of arguments for constructing a CustomAllocationRule resource.
125
+ */
126
+ export interface CustomAllocationRuleArgs {
127
+ costsToAllocates?: pulumi.Input<pulumi.Input<inputs.CustomAllocationRuleCostsToAllocate>[]>;
128
+ /**
129
+ * Whether the custom allocation rule is enabled.
130
+ */
131
+ enabled: pulumi.Input<boolean>;
132
+ /**
133
+ * List of cloud providers the rule applies to. Valid values include `aws`, `azure`, and `gcp`.
134
+ */
135
+ providernames: pulumi.Input<pulumi.Input<string>[]>;
136
+ /**
137
+ * The name of the custom allocation rule. This field is immutable - changing it will force replacement of the resource.
138
+ */
139
+ ruleName: pulumi.Input<string>;
140
+ strategy?: pulumi.Input<inputs.CustomAllocationRuleStrategy>;
141
+ }
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by pulumi-language-nodejs. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.CustomAllocationRule = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * Provides a Datadog Custom Allocation Rule resource. Custom allocation rules allow you to allocate cloud costs based on tags and filters.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ## Import
14
+ *
15
+ * The `pulumi import` command can be used, for example:
16
+ *
17
+ * ```sh
18
+ * $ pulumi import datadog:index/customAllocationRule:CustomAllocationRule new_list <rule_id>
19
+ * ```
20
+ */
21
+ class CustomAllocationRule extends pulumi.CustomResource {
22
+ /**
23
+ * Get an existing CustomAllocationRule resource's state with the given name, ID, and optional extra
24
+ * properties used to qualify the lookup.
25
+ *
26
+ * @param name The _unique_ name of the resulting resource.
27
+ * @param id The _unique_ provider ID of the resource to lookup.
28
+ * @param state Any extra arguments used during the lookup.
29
+ * @param opts Optional settings to control the behavior of the CustomResource.
30
+ */
31
+ static get(name, id, state, opts) {
32
+ return new CustomAllocationRule(name, state, { ...opts, id: id });
33
+ }
34
+ /**
35
+ * Returns true if the given object is an instance of CustomAllocationRule. This is designed to work even
36
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
37
+ */
38
+ static isInstance(obj) {
39
+ if (obj === undefined || obj === null) {
40
+ return false;
41
+ }
42
+ return obj['__pulumiType'] === CustomAllocationRule.__pulumiType;
43
+ }
44
+ constructor(name, argsOrState, opts) {
45
+ let resourceInputs = {};
46
+ opts = opts || {};
47
+ if (opts.id) {
48
+ const state = argsOrState;
49
+ resourceInputs["costsToAllocates"] = state?.costsToAllocates;
50
+ resourceInputs["created"] = state?.created;
51
+ resourceInputs["enabled"] = state?.enabled;
52
+ resourceInputs["lastModifiedUserUuid"] = state?.lastModifiedUserUuid;
53
+ resourceInputs["orderId"] = state?.orderId;
54
+ resourceInputs["providernames"] = state?.providernames;
55
+ resourceInputs["rejected"] = state?.rejected;
56
+ resourceInputs["ruleName"] = state?.ruleName;
57
+ resourceInputs["strategy"] = state?.strategy;
58
+ resourceInputs["updated"] = state?.updated;
59
+ resourceInputs["version"] = state?.version;
60
+ }
61
+ else {
62
+ const args = argsOrState;
63
+ if (args?.enabled === undefined && !opts.urn) {
64
+ throw new Error("Missing required property 'enabled'");
65
+ }
66
+ if (args?.providernames === undefined && !opts.urn) {
67
+ throw new Error("Missing required property 'providernames'");
68
+ }
69
+ if (args?.ruleName === undefined && !opts.urn) {
70
+ throw new Error("Missing required property 'ruleName'");
71
+ }
72
+ resourceInputs["costsToAllocates"] = args?.costsToAllocates;
73
+ resourceInputs["enabled"] = args?.enabled;
74
+ resourceInputs["providernames"] = args?.providernames;
75
+ resourceInputs["ruleName"] = args?.ruleName;
76
+ resourceInputs["strategy"] = args?.strategy;
77
+ resourceInputs["created"] = undefined /*out*/;
78
+ resourceInputs["lastModifiedUserUuid"] = undefined /*out*/;
79
+ resourceInputs["orderId"] = undefined /*out*/;
80
+ resourceInputs["rejected"] = undefined /*out*/;
81
+ resourceInputs["updated"] = undefined /*out*/;
82
+ resourceInputs["version"] = undefined /*out*/;
83
+ }
84
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
85
+ super(CustomAllocationRule.__pulumiType, name, resourceInputs, opts);
86
+ }
87
+ }
88
+ exports.CustomAllocationRule = CustomAllocationRule;
89
+ /** @internal */
90
+ CustomAllocationRule.__pulumiType = 'datadog:index/customAllocationRule:CustomAllocationRule';
91
+ //# sourceMappingURL=customAllocationRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customAllocationRule.js","sourceRoot":"","sources":["../customAllocationRule.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Provides a Datadog Custom Allocation Rule Order API resource. This can be used to manage the order of Datadog Custom Allocation Rules.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * ## Import
8
+ *
9
+ * The `pulumi import` command can be used, for example:
10
+ *
11
+ * ```sh
12
+ * $ pulumi import datadog:index/customAllocationRules:CustomAllocationRules order order
13
+ * ```
14
+ */
15
+ export declare class CustomAllocationRules extends pulumi.CustomResource {
16
+ /**
17
+ * Get an existing CustomAllocationRules resource's state with the given name, ID, and optional extra
18
+ * properties used to qualify the lookup.
19
+ *
20
+ * @param name The _unique_ name of the resulting resource.
21
+ * @param id The _unique_ provider ID of the resource to lookup.
22
+ * @param state Any extra arguments used during the lookup.
23
+ * @param opts Optional settings to control the behavior of the CustomResource.
24
+ */
25
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CustomAllocationRulesState, opts?: pulumi.CustomResourceOptions): CustomAllocationRules;
26
+ /**
27
+ * Returns true if the given object is an instance of CustomAllocationRules. This is designed to work even
28
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
29
+ */
30
+ static isInstance(obj: any): obj is CustomAllocationRules;
31
+ /**
32
+ * The list of Custom Allocation Rule IDs, in order. Rules are executed in the order specified in this list. Comes from the `id` field on a `datadog.CustomAllocationRule` resource.
33
+ */
34
+ readonly ruleIds: pulumi.Output<string[]>;
35
+ /**
36
+ * Create a CustomAllocationRules resource with the given unique name, arguments, and options.
37
+ *
38
+ * @param name The _unique_ name of the resource.
39
+ * @param args The arguments to use to populate this resource's properties.
40
+ * @param opts A bag of options that control this resource's behavior.
41
+ */
42
+ constructor(name: string, args: CustomAllocationRulesArgs, opts?: pulumi.CustomResourceOptions);
43
+ }
44
+ /**
45
+ * Input properties used for looking up and filtering CustomAllocationRules resources.
46
+ */
47
+ export interface CustomAllocationRulesState {
48
+ /**
49
+ * The list of Custom Allocation Rule IDs, in order. Rules are executed in the order specified in this list. Comes from the `id` field on a `datadog.CustomAllocationRule` resource.
50
+ */
51
+ ruleIds?: pulumi.Input<pulumi.Input<string>[]>;
52
+ }
53
+ /**
54
+ * The set of arguments for constructing a CustomAllocationRules resource.
55
+ */
56
+ export interface CustomAllocationRulesArgs {
57
+ /**
58
+ * The list of Custom Allocation Rule IDs, in order. Rules are executed in the order specified in this list. Comes from the `id` field on a `datadog.CustomAllocationRule` resource.
59
+ */
60
+ ruleIds: pulumi.Input<pulumi.Input<string>[]>;
61
+ }
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by pulumi-language-nodejs. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.CustomAllocationRules = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * Provides a Datadog Custom Allocation Rule Order API resource. This can be used to manage the order of Datadog Custom Allocation Rules.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ## Import
14
+ *
15
+ * The `pulumi import` command can be used, for example:
16
+ *
17
+ * ```sh
18
+ * $ pulumi import datadog:index/customAllocationRules:CustomAllocationRules order order
19
+ * ```
20
+ */
21
+ class CustomAllocationRules extends pulumi.CustomResource {
22
+ /**
23
+ * Get an existing CustomAllocationRules resource's state with the given name, ID, and optional extra
24
+ * properties used to qualify the lookup.
25
+ *
26
+ * @param name The _unique_ name of the resulting resource.
27
+ * @param id The _unique_ provider ID of the resource to lookup.
28
+ * @param state Any extra arguments used during the lookup.
29
+ * @param opts Optional settings to control the behavior of the CustomResource.
30
+ */
31
+ static get(name, id, state, opts) {
32
+ return new CustomAllocationRules(name, state, { ...opts, id: id });
33
+ }
34
+ /**
35
+ * Returns true if the given object is an instance of CustomAllocationRules. This is designed to work even
36
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
37
+ */
38
+ static isInstance(obj) {
39
+ if (obj === undefined || obj === null) {
40
+ return false;
41
+ }
42
+ return obj['__pulumiType'] === CustomAllocationRules.__pulumiType;
43
+ }
44
+ constructor(name, argsOrState, opts) {
45
+ let resourceInputs = {};
46
+ opts = opts || {};
47
+ if (opts.id) {
48
+ const state = argsOrState;
49
+ resourceInputs["ruleIds"] = state?.ruleIds;
50
+ }
51
+ else {
52
+ const args = argsOrState;
53
+ if (args?.ruleIds === undefined && !opts.urn) {
54
+ throw new Error("Missing required property 'ruleIds'");
55
+ }
56
+ resourceInputs["ruleIds"] = args?.ruleIds;
57
+ }
58
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
59
+ super(CustomAllocationRules.__pulumiType, name, resourceInputs, opts);
60
+ }
61
+ }
62
+ exports.CustomAllocationRules = CustomAllocationRules;
63
+ /** @internal */
64
+ CustomAllocationRules.__pulumiType = 'datadog:index/customAllocationRules:CustomAllocationRules';
65
+ //# sourceMappingURL=customAllocationRules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"customAllocationRules.js","sourceRoot":"","sources":["../customAllocationRules.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;GAYG;AACH,MAAa,qBAAsB,SAAQ,MAAM,CAAC,cAAc;IAC5D;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAkC,EAAE,IAAmC;QAChI,OAAO,IAAI,qBAAqB,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAC5E,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,qBAAqB,CAAC,YAAY,CAAC;IACtE,CAAC;IAeD,YAAY,IAAY,EAAE,WAAoE,EAAE,IAAmC;QAC/H,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAqD,CAAC;YACpE,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;SAC9C;aAAM;YACH,MAAM,IAAI,GAAG,WAAoD,CAAC;YAClE,IAAI,IAAI,EAAE,OAAO,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC1C,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;aAC1D;YACD,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;SAC7C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,qBAAqB,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1E,CAAC;;AAxDL,sDAyDC;AA3CG,gBAAgB;AACO,kCAAY,GAAG,2DAA2D,CAAC"}
@@ -0,0 +1,192 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Provides a Datadog GcpUcConfig resource. This can be used to create and manage Datadog gcp_uc_config.
4
+ *
5
+ * ## Example Usage
6
+ *
7
+ * ```typescript
8
+ * import * as pulumi from "@pulumi/pulumi";
9
+ * import * as datadog from "@pulumi/datadog";
10
+ *
11
+ * // Create new GCP Usage Cost configuration resource
12
+ * const example = new datadog.GcpUcConfig("example", {
13
+ * billingAccountId: "123456_ABCDEF_123456",
14
+ * bucketName: "my-gcp-cost-bucket",
15
+ * exportDatasetName: "billing_export",
16
+ * exportPrefix: "datadog_cloud_cost_detailed_usage_export",
17
+ * exportProjectName: "my-gcp-project",
18
+ * serviceAccount: "datadog-cost-management@my-gcp-project.iam.gserviceaccount.com",
19
+ * });
20
+ * ```
21
+ *
22
+ * ## Import
23
+ *
24
+ * The `pulumi import` command can be used, for example:
25
+ *
26
+ * ```sh
27
+ * $ pulumi import datadog:index/gcpUcConfig:GcpUcConfig example <cloud_account_id>
28
+ * ```
29
+ */
30
+ export declare class GcpUcConfig extends pulumi.CustomResource {
31
+ /**
32
+ * Get an existing GcpUcConfig resource's state with the given name, ID, and optional extra
33
+ * properties used to qualify the lookup.
34
+ *
35
+ * @param name The _unique_ name of the resulting resource.
36
+ * @param id The _unique_ provider ID of the resource to lookup.
37
+ * @param state Any extra arguments used during the lookup.
38
+ * @param opts Optional settings to control the behavior of the CustomResource.
39
+ */
40
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: GcpUcConfigState, opts?: pulumi.CustomResourceOptions): GcpUcConfig;
41
+ /**
42
+ * Returns true if the given object is an instance of GcpUcConfig. This is designed to work even
43
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
44
+ */
45
+ static isInstance(obj: any): obj is GcpUcConfig;
46
+ /**
47
+ * The Google Cloud account ID.
48
+ */
49
+ readonly billingAccountId: pulumi.Output<string>;
50
+ /**
51
+ * The Google Cloud bucket name used to store the Usage Cost export.
52
+ */
53
+ readonly bucketName: pulumi.Output<string>;
54
+ /**
55
+ * The timestamp when the GCP UC configuration was created.
56
+ */
57
+ readonly createdAt: pulumi.Output<string>;
58
+ /**
59
+ * The dataset name used for the GCP Usage Cost export.
60
+ */
61
+ readonly dataset: pulumi.Output<string>;
62
+ /**
63
+ * List of error messages if the GCP UC configuration encountered any issues during setup or data processing.
64
+ */
65
+ readonly errorMessages: pulumi.Output<string[]>;
66
+ /**
67
+ * The export dataset name used for the Google Cloud Usage Cost report.
68
+ */
69
+ readonly exportDatasetName: pulumi.Output<string>;
70
+ /**
71
+ * The export prefix used for the Google Cloud Usage Cost report.
72
+ */
73
+ readonly exportPrefix: pulumi.Output<string | undefined>;
74
+ /**
75
+ * The name of the Google Cloud Usage Cost report.
76
+ */
77
+ readonly exportProjectName: pulumi.Output<string>;
78
+ /**
79
+ * The number of months of usage data to include in the export.
80
+ */
81
+ readonly months: pulumi.Output<number>;
82
+ /**
83
+ * The unique Google Cloud service account email.
84
+ */
85
+ readonly serviceAccount: pulumi.Output<string>;
86
+ /**
87
+ * The current status of the GCP UC configuration.
88
+ */
89
+ readonly status: pulumi.Output<string>;
90
+ /**
91
+ * The timestamp when the configuration status was last updated.
92
+ */
93
+ readonly statusUpdatedAt: pulumi.Output<string>;
94
+ /**
95
+ * The timestamp when the GCP UC configuration was last modified.
96
+ */
97
+ readonly updatedAt: pulumi.Output<string>;
98
+ /**
99
+ * Create a GcpUcConfig resource with the given unique name, arguments, and options.
100
+ *
101
+ * @param name The _unique_ name of the resource.
102
+ * @param args The arguments to use to populate this resource's properties.
103
+ * @param opts A bag of options that control this resource's behavior.
104
+ */
105
+ constructor(name: string, args: GcpUcConfigArgs, opts?: pulumi.CustomResourceOptions);
106
+ }
107
+ /**
108
+ * Input properties used for looking up and filtering GcpUcConfig resources.
109
+ */
110
+ export interface GcpUcConfigState {
111
+ /**
112
+ * The Google Cloud account ID.
113
+ */
114
+ billingAccountId?: pulumi.Input<string>;
115
+ /**
116
+ * The Google Cloud bucket name used to store the Usage Cost export.
117
+ */
118
+ bucketName?: pulumi.Input<string>;
119
+ /**
120
+ * The timestamp when the GCP UC configuration was created.
121
+ */
122
+ createdAt?: pulumi.Input<string>;
123
+ /**
124
+ * The dataset name used for the GCP Usage Cost export.
125
+ */
126
+ dataset?: pulumi.Input<string>;
127
+ /**
128
+ * List of error messages if the GCP UC configuration encountered any issues during setup or data processing.
129
+ */
130
+ errorMessages?: pulumi.Input<pulumi.Input<string>[]>;
131
+ /**
132
+ * The export dataset name used for the Google Cloud Usage Cost report.
133
+ */
134
+ exportDatasetName?: pulumi.Input<string>;
135
+ /**
136
+ * The export prefix used for the Google Cloud Usage Cost report.
137
+ */
138
+ exportPrefix?: pulumi.Input<string>;
139
+ /**
140
+ * The name of the Google Cloud Usage Cost report.
141
+ */
142
+ exportProjectName?: pulumi.Input<string>;
143
+ /**
144
+ * The number of months of usage data to include in the export.
145
+ */
146
+ months?: pulumi.Input<number>;
147
+ /**
148
+ * The unique Google Cloud service account email.
149
+ */
150
+ serviceAccount?: pulumi.Input<string>;
151
+ /**
152
+ * The current status of the GCP UC configuration.
153
+ */
154
+ status?: pulumi.Input<string>;
155
+ /**
156
+ * The timestamp when the configuration status was last updated.
157
+ */
158
+ statusUpdatedAt?: pulumi.Input<string>;
159
+ /**
160
+ * The timestamp when the GCP UC configuration was last modified.
161
+ */
162
+ updatedAt?: pulumi.Input<string>;
163
+ }
164
+ /**
165
+ * The set of arguments for constructing a GcpUcConfig resource.
166
+ */
167
+ export interface GcpUcConfigArgs {
168
+ /**
169
+ * The Google Cloud account ID.
170
+ */
171
+ billingAccountId: pulumi.Input<string>;
172
+ /**
173
+ * The Google Cloud bucket name used to store the Usage Cost export.
174
+ */
175
+ bucketName: pulumi.Input<string>;
176
+ /**
177
+ * The export dataset name used for the Google Cloud Usage Cost report.
178
+ */
179
+ exportDatasetName: pulumi.Input<string>;
180
+ /**
181
+ * The export prefix used for the Google Cloud Usage Cost report.
182
+ */
183
+ exportPrefix?: pulumi.Input<string>;
184
+ /**
185
+ * The name of the Google Cloud Usage Cost report.
186
+ */
187
+ exportProjectName: pulumi.Input<string>;
188
+ /**
189
+ * The unique Google Cloud service account email.
190
+ */
191
+ serviceAccount: pulumi.Input<string>;
192
+ }
package/gcpUcConfig.js ADDED
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by pulumi-language-nodejs. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.GcpUcConfig = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * Provides a Datadog GcpUcConfig resource. This can be used to create and manage Datadog gcp_uc_config.
10
+ *
11
+ * ## Example Usage
12
+ *
13
+ * ```typescript
14
+ * import * as pulumi from "@pulumi/pulumi";
15
+ * import * as datadog from "@pulumi/datadog";
16
+ *
17
+ * // Create new GCP Usage Cost configuration resource
18
+ * const example = new datadog.GcpUcConfig("example", {
19
+ * billingAccountId: "123456_ABCDEF_123456",
20
+ * bucketName: "my-gcp-cost-bucket",
21
+ * exportDatasetName: "billing_export",
22
+ * exportPrefix: "datadog_cloud_cost_detailed_usage_export",
23
+ * exportProjectName: "my-gcp-project",
24
+ * serviceAccount: "datadog-cost-management@my-gcp-project.iam.gserviceaccount.com",
25
+ * });
26
+ * ```
27
+ *
28
+ * ## Import
29
+ *
30
+ * The `pulumi import` command can be used, for example:
31
+ *
32
+ * ```sh
33
+ * $ pulumi import datadog:index/gcpUcConfig:GcpUcConfig example <cloud_account_id>
34
+ * ```
35
+ */
36
+ class GcpUcConfig extends pulumi.CustomResource {
37
+ /**
38
+ * Get an existing GcpUcConfig resource's state with the given name, ID, and optional extra
39
+ * properties used to qualify the lookup.
40
+ *
41
+ * @param name The _unique_ name of the resulting resource.
42
+ * @param id The _unique_ provider ID of the resource to lookup.
43
+ * @param state Any extra arguments used during the lookup.
44
+ * @param opts Optional settings to control the behavior of the CustomResource.
45
+ */
46
+ static get(name, id, state, opts) {
47
+ return new GcpUcConfig(name, state, { ...opts, id: id });
48
+ }
49
+ /**
50
+ * Returns true if the given object is an instance of GcpUcConfig. This is designed to work even
51
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
52
+ */
53
+ static isInstance(obj) {
54
+ if (obj === undefined || obj === null) {
55
+ return false;
56
+ }
57
+ return obj['__pulumiType'] === GcpUcConfig.__pulumiType;
58
+ }
59
+ constructor(name, argsOrState, opts) {
60
+ let resourceInputs = {};
61
+ opts = opts || {};
62
+ if (opts.id) {
63
+ const state = argsOrState;
64
+ resourceInputs["billingAccountId"] = state?.billingAccountId;
65
+ resourceInputs["bucketName"] = state?.bucketName;
66
+ resourceInputs["createdAt"] = state?.createdAt;
67
+ resourceInputs["dataset"] = state?.dataset;
68
+ resourceInputs["errorMessages"] = state?.errorMessages;
69
+ resourceInputs["exportDatasetName"] = state?.exportDatasetName;
70
+ resourceInputs["exportPrefix"] = state?.exportPrefix;
71
+ resourceInputs["exportProjectName"] = state?.exportProjectName;
72
+ resourceInputs["months"] = state?.months;
73
+ resourceInputs["serviceAccount"] = state?.serviceAccount;
74
+ resourceInputs["status"] = state?.status;
75
+ resourceInputs["statusUpdatedAt"] = state?.statusUpdatedAt;
76
+ resourceInputs["updatedAt"] = state?.updatedAt;
77
+ }
78
+ else {
79
+ const args = argsOrState;
80
+ if (args?.billingAccountId === undefined && !opts.urn) {
81
+ throw new Error("Missing required property 'billingAccountId'");
82
+ }
83
+ if (args?.bucketName === undefined && !opts.urn) {
84
+ throw new Error("Missing required property 'bucketName'");
85
+ }
86
+ if (args?.exportDatasetName === undefined && !opts.urn) {
87
+ throw new Error("Missing required property 'exportDatasetName'");
88
+ }
89
+ if (args?.exportProjectName === undefined && !opts.urn) {
90
+ throw new Error("Missing required property 'exportProjectName'");
91
+ }
92
+ if (args?.serviceAccount === undefined && !opts.urn) {
93
+ throw new Error("Missing required property 'serviceAccount'");
94
+ }
95
+ resourceInputs["billingAccountId"] = args?.billingAccountId;
96
+ resourceInputs["bucketName"] = args?.bucketName;
97
+ resourceInputs["exportDatasetName"] = args?.exportDatasetName;
98
+ resourceInputs["exportPrefix"] = args?.exportPrefix;
99
+ resourceInputs["exportProjectName"] = args?.exportProjectName;
100
+ resourceInputs["serviceAccount"] = args?.serviceAccount;
101
+ resourceInputs["createdAt"] = undefined /*out*/;
102
+ resourceInputs["dataset"] = undefined /*out*/;
103
+ resourceInputs["errorMessages"] = undefined /*out*/;
104
+ resourceInputs["months"] = undefined /*out*/;
105
+ resourceInputs["status"] = undefined /*out*/;
106
+ resourceInputs["statusUpdatedAt"] = undefined /*out*/;
107
+ resourceInputs["updatedAt"] = undefined /*out*/;
108
+ }
109
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
110
+ super(GcpUcConfig.__pulumiType, name, resourceInputs, opts);
111
+ }
112
+ }
113
+ exports.GcpUcConfig = GcpUcConfig;
114
+ /** @internal */
115
+ GcpUcConfig.__pulumiType = 'datadog:index/gcpUcConfig:GcpUcConfig';
116
+ //# sourceMappingURL=gcpUcConfig.js.map