@pulumi/harness 0.11.6 → 0.11.7

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pulumi/harness",
3
- "version": "0.11.6",
3
+ "version": "0.11.7",
4
4
  "description": "A Pulumi package for creating and managing Harness resources.",
5
5
  "keywords": [
6
6
  "pulumi",
@@ -23,7 +23,7 @@
23
23
  "pulumi": {
24
24
  "resource": true,
25
25
  "name": "harness",
26
- "version": "0.11.6",
26
+ "version": "0.11.7",
27
27
  "server": "github://api.github.com/pulumi"
28
28
  }
29
29
  }
@@ -0,0 +1,179 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Resource for managing a Harness execution image override for CI, IACM, or IDP.
4
+ *
5
+ * Setting `value` overrides the named image field for the account. Omitting or removing `value` resets the field back to the Harness default.
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ### CI — override the lite-engine image
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as harness from "@pulumi/harness";
14
+ *
15
+ * const ciLiteEngine = new harness.platform.DefaultImages("ci_lite_engine", {
16
+ * kind: "ci",
17
+ * field: "liteEngineTag",
18
+ * value: "harness/ci-lite-engine:1.16.5",
19
+ * });
20
+ * const ciCustomer = harness.platform.getDefaultImages({
21
+ * kind: "ci",
22
+ * type: "customer",
23
+ * });
24
+ * export const ciLiteEngineTag = ciCustomer.then(ciCustomer => ciCustomer.images?.liteEngineTag);
25
+ * ```
26
+ *
27
+ * ### CI — reset the lite-engine image to the Harness default
28
+ *
29
+ * ```typescript
30
+ * import * as pulumi from "@pulumi/pulumi";
31
+ * import * as harness from "@pulumi/harness";
32
+ *
33
+ * const ciLiteEngine = new harness.platform.DefaultImages("ci_lite_engine", {
34
+ * kind: "ci",
35
+ * field: "liteEngineTag",
36
+ * });
37
+ * ```
38
+ *
39
+ * ### IACM — override the AWS CDK image
40
+ *
41
+ * ```typescript
42
+ * import * as pulumi from "@pulumi/pulumi";
43
+ * import * as harness from "@pulumi/harness";
44
+ *
45
+ * const iacmAwsCdk = new harness.platform.DefaultImages("iacm_aws_cdk", {
46
+ * kind: "iacm",
47
+ * field: "iacmAwsCdk",
48
+ * value: "plugins/harness_aws_cdk:1.2.0",
49
+ * });
50
+ * const iacmDefaults = harness.platform.getDefaultImages({
51
+ * kind: "iacm",
52
+ * });
53
+ * export const iacmAwsCdkTag = iacmDefaults.then(iacmDefaults => iacmDefaults.images?.iacmAwsCdk);
54
+ * ```
55
+ *
56
+ * ### IACM — reset to default
57
+ *
58
+ * ```typescript
59
+ * import * as pulumi from "@pulumi/pulumi";
60
+ * import * as harness from "@pulumi/harness";
61
+ *
62
+ * const iacmAwsCdk = new harness.platform.DefaultImages("iacm_aws_cdk", {
63
+ * kind: "iacm",
64
+ * field: "iacmAwsCdk",
65
+ * });
66
+ * ```
67
+ *
68
+ * ### IDP — override the register-catalog image
69
+ *
70
+ * ```typescript
71
+ * import * as pulumi from "@pulumi/pulumi";
72
+ * import * as harness from "@pulumi/harness";
73
+ *
74
+ * const idpRegisterCatalog = new harness.platform.DefaultImages("idp_register_catalog", {
75
+ * kind: "idp",
76
+ * field: "registerCatalog",
77
+ * value: "harness/registercatalog:1.5.0",
78
+ * });
79
+ * const idpDefaults = harness.platform.getDefaultImages({
80
+ * kind: "idp",
81
+ * });
82
+ * export const idpRegisterCatalogTag = idpDefaults.then(idpDefaults => idpDefaults.images?.registerCatalog);
83
+ * ```
84
+ *
85
+ * ### IDP — reset to default
86
+ *
87
+ * ```typescript
88
+ * import * as pulumi from "@pulumi/pulumi";
89
+ * import * as harness from "@pulumi/harness";
90
+ *
91
+ * const idpRegisterCatalog = new harness.platform.DefaultImages("idp_register_catalog", {
92
+ * kind: "idp",
93
+ * field: "registerCatalog",
94
+ * });
95
+ * ```
96
+ */
97
+ export declare class DefaultImages extends pulumi.CustomResource {
98
+ /**
99
+ * Get an existing DefaultImages resource's state with the given name, ID, and optional extra
100
+ * properties used to qualify the lookup.
101
+ *
102
+ * @param name The _unique_ name of the resulting resource.
103
+ * @param id The _unique_ provider ID of the resource to lookup.
104
+ * @param state Any extra arguments used during the lookup.
105
+ * @param opts Optional settings to control the behavior of the CustomResource.
106
+ */
107
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DefaultImagesState, opts?: pulumi.CustomResourceOptions): DefaultImages;
108
+ /**
109
+ * Returns true if the given object is an instance of DefaultImages. This is designed to work even
110
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
111
+ */
112
+ static isInstance(obj: any): obj is DefaultImages;
113
+ /**
114
+ * The image field name to override (e.g. `addonTag`, `liteEngineTag`).
115
+ */
116
+ readonly field: pulumi.Output<string>;
117
+ /**
118
+ * The infrastructure type passed to the execution config API (e.g. `K8`, `VM`). Defaults to `K8`.
119
+ */
120
+ readonly infraType: pulumi.Output<string | undefined>;
121
+ /**
122
+ * The service kind. Supported values: `ci`, `iacm`, `idp`.
123
+ */
124
+ readonly kind: pulumi.Output<string>;
125
+ /**
126
+ * The image tag value to set. When omitted or set to `null`, the field override is reset to the Harness default.
127
+ */
128
+ readonly value: pulumi.Output<string | undefined>;
129
+ /**
130
+ * Create a DefaultImages resource with the given unique name, arguments, and options.
131
+ *
132
+ * @param name The _unique_ name of the resource.
133
+ * @param args The arguments to use to populate this resource's properties.
134
+ * @param opts A bag of options that control this resource's behavior.
135
+ */
136
+ constructor(name: string, args: DefaultImagesArgs, opts?: pulumi.CustomResourceOptions);
137
+ }
138
+ /**
139
+ * Input properties used for looking up and filtering DefaultImages resources.
140
+ */
141
+ export interface DefaultImagesState {
142
+ /**
143
+ * The image field name to override (e.g. `addonTag`, `liteEngineTag`).
144
+ */
145
+ field?: pulumi.Input<string>;
146
+ /**
147
+ * The infrastructure type passed to the execution config API (e.g. `K8`, `VM`). Defaults to `K8`.
148
+ */
149
+ infraType?: pulumi.Input<string>;
150
+ /**
151
+ * The service kind. Supported values: `ci`, `iacm`, `idp`.
152
+ */
153
+ kind?: pulumi.Input<string>;
154
+ /**
155
+ * The image tag value to set. When omitted or set to `null`, the field override is reset to the Harness default.
156
+ */
157
+ value?: pulumi.Input<string>;
158
+ }
159
+ /**
160
+ * The set of arguments for constructing a DefaultImages resource.
161
+ */
162
+ export interface DefaultImagesArgs {
163
+ /**
164
+ * The image field name to override (e.g. `addonTag`, `liteEngineTag`).
165
+ */
166
+ field: pulumi.Input<string>;
167
+ /**
168
+ * The infrastructure type passed to the execution config API (e.g. `K8`, `VM`). Defaults to `K8`.
169
+ */
170
+ infraType?: pulumi.Input<string>;
171
+ /**
172
+ * The service kind. Supported values: `ci`, `iacm`, `idp`.
173
+ */
174
+ kind: pulumi.Input<string>;
175
+ /**
176
+ * The image tag value to set. When omitted or set to `null`, the field override is reset to the Harness default.
177
+ */
178
+ value?: pulumi.Input<string>;
179
+ }
@@ -0,0 +1,156 @@
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.DefaultImages = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Resource for managing a Harness execution image override for CI, IACM, or IDP.
10
+ *
11
+ * Setting `value` overrides the named image field for the account. Omitting or removing `value` resets the field back to the Harness default.
12
+ *
13
+ * ## Example Usage
14
+ *
15
+ * ### CI — override the lite-engine image
16
+ *
17
+ * ```typescript
18
+ * import * as pulumi from "@pulumi/pulumi";
19
+ * import * as harness from "@pulumi/harness";
20
+ *
21
+ * const ciLiteEngine = new harness.platform.DefaultImages("ci_lite_engine", {
22
+ * kind: "ci",
23
+ * field: "liteEngineTag",
24
+ * value: "harness/ci-lite-engine:1.16.5",
25
+ * });
26
+ * const ciCustomer = harness.platform.getDefaultImages({
27
+ * kind: "ci",
28
+ * type: "customer",
29
+ * });
30
+ * export const ciLiteEngineTag = ciCustomer.then(ciCustomer => ciCustomer.images?.liteEngineTag);
31
+ * ```
32
+ *
33
+ * ### CI — reset the lite-engine image to the Harness default
34
+ *
35
+ * ```typescript
36
+ * import * as pulumi from "@pulumi/pulumi";
37
+ * import * as harness from "@pulumi/harness";
38
+ *
39
+ * const ciLiteEngine = new harness.platform.DefaultImages("ci_lite_engine", {
40
+ * kind: "ci",
41
+ * field: "liteEngineTag",
42
+ * });
43
+ * ```
44
+ *
45
+ * ### IACM — override the AWS CDK image
46
+ *
47
+ * ```typescript
48
+ * import * as pulumi from "@pulumi/pulumi";
49
+ * import * as harness from "@pulumi/harness";
50
+ *
51
+ * const iacmAwsCdk = new harness.platform.DefaultImages("iacm_aws_cdk", {
52
+ * kind: "iacm",
53
+ * field: "iacmAwsCdk",
54
+ * value: "plugins/harness_aws_cdk:1.2.0",
55
+ * });
56
+ * const iacmDefaults = harness.platform.getDefaultImages({
57
+ * kind: "iacm",
58
+ * });
59
+ * export const iacmAwsCdkTag = iacmDefaults.then(iacmDefaults => iacmDefaults.images?.iacmAwsCdk);
60
+ * ```
61
+ *
62
+ * ### IACM — reset to default
63
+ *
64
+ * ```typescript
65
+ * import * as pulumi from "@pulumi/pulumi";
66
+ * import * as harness from "@pulumi/harness";
67
+ *
68
+ * const iacmAwsCdk = new harness.platform.DefaultImages("iacm_aws_cdk", {
69
+ * kind: "iacm",
70
+ * field: "iacmAwsCdk",
71
+ * });
72
+ * ```
73
+ *
74
+ * ### IDP — override the register-catalog image
75
+ *
76
+ * ```typescript
77
+ * import * as pulumi from "@pulumi/pulumi";
78
+ * import * as harness from "@pulumi/harness";
79
+ *
80
+ * const idpRegisterCatalog = new harness.platform.DefaultImages("idp_register_catalog", {
81
+ * kind: "idp",
82
+ * field: "registerCatalog",
83
+ * value: "harness/registercatalog:1.5.0",
84
+ * });
85
+ * const idpDefaults = harness.platform.getDefaultImages({
86
+ * kind: "idp",
87
+ * });
88
+ * export const idpRegisterCatalogTag = idpDefaults.then(idpDefaults => idpDefaults.images?.registerCatalog);
89
+ * ```
90
+ *
91
+ * ### IDP — reset to default
92
+ *
93
+ * ```typescript
94
+ * import * as pulumi from "@pulumi/pulumi";
95
+ * import * as harness from "@pulumi/harness";
96
+ *
97
+ * const idpRegisterCatalog = new harness.platform.DefaultImages("idp_register_catalog", {
98
+ * kind: "idp",
99
+ * field: "registerCatalog",
100
+ * });
101
+ * ```
102
+ */
103
+ class DefaultImages extends pulumi.CustomResource {
104
+ /**
105
+ * Get an existing DefaultImages resource's state with the given name, ID, and optional extra
106
+ * properties used to qualify the lookup.
107
+ *
108
+ * @param name The _unique_ name of the resulting resource.
109
+ * @param id The _unique_ provider ID of the resource to lookup.
110
+ * @param state Any extra arguments used during the lookup.
111
+ * @param opts Optional settings to control the behavior of the CustomResource.
112
+ */
113
+ static get(name, id, state, opts) {
114
+ return new DefaultImages(name, state, { ...opts, id: id });
115
+ }
116
+ /**
117
+ * Returns true if the given object is an instance of DefaultImages. This is designed to work even
118
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
119
+ */
120
+ static isInstance(obj) {
121
+ if (obj === undefined || obj === null) {
122
+ return false;
123
+ }
124
+ return obj['__pulumiType'] === DefaultImages.__pulumiType;
125
+ }
126
+ constructor(name, argsOrState, opts) {
127
+ let resourceInputs = {};
128
+ opts = opts || {};
129
+ if (opts.id) {
130
+ const state = argsOrState;
131
+ resourceInputs["field"] = state?.field;
132
+ resourceInputs["infraType"] = state?.infraType;
133
+ resourceInputs["kind"] = state?.kind;
134
+ resourceInputs["value"] = state?.value;
135
+ }
136
+ else {
137
+ const args = argsOrState;
138
+ if (args?.field === undefined && !opts.urn) {
139
+ throw new Error("Missing required property 'field'");
140
+ }
141
+ if (args?.kind === undefined && !opts.urn) {
142
+ throw new Error("Missing required property 'kind'");
143
+ }
144
+ resourceInputs["field"] = args?.field;
145
+ resourceInputs["infraType"] = args?.infraType;
146
+ resourceInputs["kind"] = args?.kind;
147
+ resourceInputs["value"] = args?.value;
148
+ }
149
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
150
+ super(DefaultImages.__pulumiType, name, resourceInputs, opts);
151
+ }
152
+ }
153
+ exports.DefaultImages = DefaultImages;
154
+ /** @internal */
155
+ DefaultImages.__pulumiType = 'harness:platform/defaultImages:DefaultImages';
156
+ //# sourceMappingURL=defaultImages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultImages.js","sourceRoot":"","sources":["../../platform/defaultImages.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8FG;AACH,MAAa,aAAc,SAAQ,MAAM,CAAC,cAAc;IACpD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAA0B,EAAE,IAAmC;QACxH,OAAO,IAAI,aAAa,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACpE,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,aAAa,CAAC,YAAY,CAAC;IAC9D,CAAC;IA2BD,YAAY,IAAY,EAAE,WAAoD,EAAE,IAAmC;QAC/G,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA6C,CAAC;YAC5D,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;YACvC,cAAc,CAAC,WAAW,CAAC,GAAG,KAAK,EAAE,SAAS,CAAC;YAC/C,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,OAAO,CAAC,GAAG,KAAK,EAAE,KAAK,CAAC;SAC1C;aAAM;YACH,MAAM,IAAI,GAAG,WAA4C,CAAC;YAC1D,IAAI,IAAI,EAAE,KAAK,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACxC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;aACxD;YACD,IAAI,IAAI,EAAE,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvC,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACvD;YACD,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC;YACtC,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,EAAE,SAAS,CAAC;YAC9C,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,cAAc,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC;SACzC;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;;AA7EL,sCA8EC;AAhEG,gBAAgB;AACO,0BAAY,GAAG,8CAA8C,CAAC"}
@@ -0,0 +1,242 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Data source for retrieving Harness default execution images for CI, IACM, or IDP.
4
+ *
5
+ * ## The `type` Field
6
+ *
7
+ * The `type` field controls which set of images is returned:
8
+ *
9
+ * - **`default`** (default) — returns the Harness-managed default image tags for the account. These are the images Harness ships and updates over time.
10
+ * - **`customer`** — returns only the image fields that have been explicitly overridden at the account level using the `harness.platform.DefaultImages` resource. Fields that have not been overridden are omitted from the `images` map.
11
+ *
12
+ * Use `type = "customer"` after applying overrides to verify that the correct custom image tags are in effect.
13
+ *
14
+ * ## Example Usage
15
+ *
16
+ * ### CI — read Harness default images
17
+ *
18
+ * ```typescript
19
+ * import * as pulumi from "@pulumi/pulumi";
20
+ * import * as harness from "@pulumi/harness";
21
+ *
22
+ * const ciDefaults = harness.platform.getDefaultImages({
23
+ * kind: "ci",
24
+ * });
25
+ * export const ciDefaultImages = ciDefaults.then(ciDefaults => ciDefaults.images);
26
+ * ```
27
+ *
28
+ * ### CI — read customer-configured overrides
29
+ *
30
+ * ```typescript
31
+ * import * as pulumi from "@pulumi/pulumi";
32
+ * import * as harness from "@pulumi/harness";
33
+ *
34
+ * const ciCustomer = harness.platform.getDefaultImages({
35
+ * kind: "ci",
36
+ * type: "customer",
37
+ * });
38
+ * export const ciLiteEngineOverride = ciCustomer.then(ciCustomer => ciCustomer.images?.liteEngineTag);
39
+ * ```
40
+ *
41
+ * ### IACM — read Harness default images
42
+ *
43
+ * ```typescript
44
+ * import * as pulumi from "@pulumi/pulumi";
45
+ * import * as harness from "@pulumi/harness";
46
+ *
47
+ * const iacmDefaults = harness.platform.getDefaultImages({
48
+ * kind: "iacm",
49
+ * });
50
+ * export const iacmDefaultImages = iacmDefaults.then(iacmDefaults => iacmDefaults.images);
51
+ * ```
52
+ *
53
+ * ### IACM — read customer-configured overrides
54
+ *
55
+ * ```typescript
56
+ * import * as pulumi from "@pulumi/pulumi";
57
+ * import * as harness from "@pulumi/harness";
58
+ *
59
+ * const iacmCustomer = harness.platform.getDefaultImages({
60
+ * kind: "iacm",
61
+ * type: "customer",
62
+ * });
63
+ * export const iacmAwsCdkOverride = iacmCustomer.then(iacmCustomer => iacmCustomer.images?.iacmAwsCdk);
64
+ * ```
65
+ *
66
+ * ### IDP — read Harness default images
67
+ *
68
+ * ```typescript
69
+ * import * as pulumi from "@pulumi/pulumi";
70
+ * import * as harness from "@pulumi/harness";
71
+ *
72
+ * const idpDefaults = harness.platform.getDefaultImages({
73
+ * kind: "idp",
74
+ * });
75
+ * export const idpDefaultImages = idpDefaults.then(idpDefaults => idpDefaults.images);
76
+ * ```
77
+ *
78
+ * ### IDP — read customer-configured overrides
79
+ *
80
+ * ```typescript
81
+ * import * as pulumi from "@pulumi/pulumi";
82
+ * import * as harness from "@pulumi/harness";
83
+ *
84
+ * const idpCustomer = harness.platform.getDefaultImages({
85
+ * kind: "idp",
86
+ * type: "customer",
87
+ * });
88
+ * export const idpRegisterCatalogOverride = idpCustomer.then(idpCustomer => idpCustomer.images?.registerCatalog);
89
+ * ```
90
+ */
91
+ export declare function getDefaultImages(args: GetDefaultImagesArgs, opts?: pulumi.InvokeOptions): Promise<GetDefaultImagesResult>;
92
+ /**
93
+ * A collection of arguments for invoking getDefaultImages.
94
+ */
95
+ export interface GetDefaultImagesArgs {
96
+ /**
97
+ * The infrastructure type passed to the execution config API (e.g. `K8`, `VM`). Defaults to `K8`.
98
+ */
99
+ infraType?: string;
100
+ /**
101
+ * The service kind. Supported values: `ci`, `iacm`, `idp`.
102
+ */
103
+ kind: string;
104
+ /**
105
+ * The configuration type to retrieve. `default` returns Harness-managed default image tags; `customer` returns only the image fields that have been explicitly overridden at the account level. Defaults to `default`.
106
+ */
107
+ type?: string;
108
+ }
109
+ /**
110
+ * A collection of values returned by getDefaultImages.
111
+ */
112
+ export interface GetDefaultImagesResult {
113
+ /**
114
+ * The provider-assigned unique ID for this managed resource.
115
+ */
116
+ readonly id: string;
117
+ /**
118
+ * Map of image field names to image tag values.
119
+ */
120
+ readonly images: {
121
+ [key: string]: string;
122
+ };
123
+ /**
124
+ * The infrastructure type passed to the execution config API (e.g. `K8`, `VM`). Defaults to `K8`.
125
+ */
126
+ readonly infraType?: string;
127
+ /**
128
+ * The service kind. Supported values: `ci`, `iacm`, `idp`.
129
+ */
130
+ readonly kind: string;
131
+ /**
132
+ * The configuration type to retrieve. `default` returns Harness-managed default image tags; `customer` returns only the image fields that have been explicitly overridden at the account level. Defaults to `default`.
133
+ */
134
+ readonly type?: string;
135
+ }
136
+ /**
137
+ * Data source for retrieving Harness default execution images for CI, IACM, or IDP.
138
+ *
139
+ * ## The `type` Field
140
+ *
141
+ * The `type` field controls which set of images is returned:
142
+ *
143
+ * - **`default`** (default) — returns the Harness-managed default image tags for the account. These are the images Harness ships and updates over time.
144
+ * - **`customer`** — returns only the image fields that have been explicitly overridden at the account level using the `harness.platform.DefaultImages` resource. Fields that have not been overridden are omitted from the `images` map.
145
+ *
146
+ * Use `type = "customer"` after applying overrides to verify that the correct custom image tags are in effect.
147
+ *
148
+ * ## Example Usage
149
+ *
150
+ * ### CI — read Harness default images
151
+ *
152
+ * ```typescript
153
+ * import * as pulumi from "@pulumi/pulumi";
154
+ * import * as harness from "@pulumi/harness";
155
+ *
156
+ * const ciDefaults = harness.platform.getDefaultImages({
157
+ * kind: "ci",
158
+ * });
159
+ * export const ciDefaultImages = ciDefaults.then(ciDefaults => ciDefaults.images);
160
+ * ```
161
+ *
162
+ * ### CI — read customer-configured overrides
163
+ *
164
+ * ```typescript
165
+ * import * as pulumi from "@pulumi/pulumi";
166
+ * import * as harness from "@pulumi/harness";
167
+ *
168
+ * const ciCustomer = harness.platform.getDefaultImages({
169
+ * kind: "ci",
170
+ * type: "customer",
171
+ * });
172
+ * export const ciLiteEngineOverride = ciCustomer.then(ciCustomer => ciCustomer.images?.liteEngineTag);
173
+ * ```
174
+ *
175
+ * ### IACM — read Harness default images
176
+ *
177
+ * ```typescript
178
+ * import * as pulumi from "@pulumi/pulumi";
179
+ * import * as harness from "@pulumi/harness";
180
+ *
181
+ * const iacmDefaults = harness.platform.getDefaultImages({
182
+ * kind: "iacm",
183
+ * });
184
+ * export const iacmDefaultImages = iacmDefaults.then(iacmDefaults => iacmDefaults.images);
185
+ * ```
186
+ *
187
+ * ### IACM — read customer-configured overrides
188
+ *
189
+ * ```typescript
190
+ * import * as pulumi from "@pulumi/pulumi";
191
+ * import * as harness from "@pulumi/harness";
192
+ *
193
+ * const iacmCustomer = harness.platform.getDefaultImages({
194
+ * kind: "iacm",
195
+ * type: "customer",
196
+ * });
197
+ * export const iacmAwsCdkOverride = iacmCustomer.then(iacmCustomer => iacmCustomer.images?.iacmAwsCdk);
198
+ * ```
199
+ *
200
+ * ### IDP — read Harness default images
201
+ *
202
+ * ```typescript
203
+ * import * as pulumi from "@pulumi/pulumi";
204
+ * import * as harness from "@pulumi/harness";
205
+ *
206
+ * const idpDefaults = harness.platform.getDefaultImages({
207
+ * kind: "idp",
208
+ * });
209
+ * export const idpDefaultImages = idpDefaults.then(idpDefaults => idpDefaults.images);
210
+ * ```
211
+ *
212
+ * ### IDP — read customer-configured overrides
213
+ *
214
+ * ```typescript
215
+ * import * as pulumi from "@pulumi/pulumi";
216
+ * import * as harness from "@pulumi/harness";
217
+ *
218
+ * const idpCustomer = harness.platform.getDefaultImages({
219
+ * kind: "idp",
220
+ * type: "customer",
221
+ * });
222
+ * export const idpRegisterCatalogOverride = idpCustomer.then(idpCustomer => idpCustomer.images?.registerCatalog);
223
+ * ```
224
+ */
225
+ export declare function getDefaultImagesOutput(args: GetDefaultImagesOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetDefaultImagesResult>;
226
+ /**
227
+ * A collection of arguments for invoking getDefaultImages.
228
+ */
229
+ export interface GetDefaultImagesOutputArgs {
230
+ /**
231
+ * The infrastructure type passed to the execution config API (e.g. `K8`, `VM`). Defaults to `K8`.
232
+ */
233
+ infraType?: pulumi.Input<string>;
234
+ /**
235
+ * The service kind. Supported values: `ci`, `iacm`, `idp`.
236
+ */
237
+ kind: pulumi.Input<string>;
238
+ /**
239
+ * The configuration type to retrieve. `default` returns Harness-managed default image tags; `customer` returns only the image fields that have been explicitly overridden at the account level. Defaults to `default`.
240
+ */
241
+ type?: pulumi.Input<string>;
242
+ }