@pulumi/harness 0.16.2 → 0.16.3
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 +2 -2
- package/platform/getIdpPlugin.d.ts +90 -0
- package/platform/getIdpPlugin.d.ts.map +1 -0
- package/platform/getIdpPlugin.js +51 -0
- package/platform/getIdpPlugin.js.map +1 -0
- package/platform/getIdpScorecard.d.ts +112 -0
- package/platform/getIdpScorecard.d.ts.map +1 -0
- package/platform/getIdpScorecard.js +73 -0
- package/platform/getIdpScorecard.js.map +1 -0
- package/platform/getIdpScorecardCheck.d.ts +112 -0
- package/platform/getIdpScorecardCheck.d.ts.map +1 -0
- package/platform/getIdpScorecardCheck.js +73 -0
- package/platform/getIdpScorecardCheck.js.map +1 -0
- package/platform/idpPlugin.d.ts +124 -0
- package/platform/idpPlugin.d.ts.map +1 -0
- package/platform/idpPlugin.js +101 -0
- package/platform/idpPlugin.js.map +1 -0
- package/platform/idpScorecard.d.ts +232 -0
- package/platform/idpScorecard.d.ts.map +1 -0
- package/platform/idpScorecard.js +161 -0
- package/platform/idpScorecard.js.map +1 -0
- package/platform/idpScorecardCheck.d.ts +222 -0
- package/platform/idpScorecardCheck.d.ts.map +1 -0
- package/platform/idpScorecardCheck.js +144 -0
- package/platform/idpScorecardCheck.js.map +1 -0
- package/platform/index.d.ts +18 -0
- package/platform/index.d.ts.map +1 -1
- package/platform/index.js +30 -6
- package/platform/index.js.map +1 -1
- package/types/input.d.ts +154 -0
- package/types/input.d.ts.map +1 -1
- package/types/output.d.ts +308 -0
- package/types/output.d.ts.map +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"idpPlugin.d.ts","sourceRoot":"","sources":["../../platform/idpPlugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,101 @@
|
|
|
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
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.IdpPlugin = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("../utilities"));
|
|
31
|
+
/**
|
|
32
|
+
* Resource for managing IDP plugin configurations.
|
|
33
|
+
*
|
|
34
|
+
* ## Import
|
|
35
|
+
*
|
|
36
|
+
* The `pulumi import` command can be used, for example:
|
|
37
|
+
*
|
|
38
|
+
* Import an IDP plugin by its identifier
|
|
39
|
+
*
|
|
40
|
+
* ```sh
|
|
41
|
+
* $ pulumi import harness:platform/idpPlugin:IdpPlugin example <plugin_identifier>
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
class IdpPlugin extends pulumi.CustomResource {
|
|
45
|
+
/**
|
|
46
|
+
* Get an existing IdpPlugin resource's state with the given name, ID, and optional extra
|
|
47
|
+
* properties used to qualify the lookup.
|
|
48
|
+
*
|
|
49
|
+
* @param name The _unique_ name of the resulting resource.
|
|
50
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
51
|
+
* @param state Any extra arguments used during the lookup.
|
|
52
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
53
|
+
*/
|
|
54
|
+
static get(name, id, state, opts) {
|
|
55
|
+
return new IdpPlugin(name, state, { ...opts, id: id });
|
|
56
|
+
}
|
|
57
|
+
/** @internal */
|
|
58
|
+
static __pulumiType = 'harness:platform/idpPlugin:IdpPlugin';
|
|
59
|
+
/**
|
|
60
|
+
* Returns true if the given object is an instance of IdpPlugin. This is designed to work even
|
|
61
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
62
|
+
*/
|
|
63
|
+
static isInstance(obj) {
|
|
64
|
+
if (obj === undefined || obj === null) {
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
return obj['__pulumiType'] === IdpPlugin.__pulumiType;
|
|
68
|
+
}
|
|
69
|
+
constructor(name, argsOrState, opts) {
|
|
70
|
+
let resourceInputs = {};
|
|
71
|
+
opts = opts || {};
|
|
72
|
+
if (opts.id) {
|
|
73
|
+
const state = argsOrState;
|
|
74
|
+
resourceInputs["configs"] = state?.configs;
|
|
75
|
+
resourceInputs["enabled"] = state?.enabled;
|
|
76
|
+
resourceInputs["envVariables"] = state?.envVariables;
|
|
77
|
+
resourceInputs["identifier"] = state?.identifier;
|
|
78
|
+
resourceInputs["name"] = state?.name;
|
|
79
|
+
resourceInputs["proxies"] = state?.proxies;
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
const args = argsOrState;
|
|
83
|
+
if (args?.configs === undefined && !opts.urn) {
|
|
84
|
+
throw new Error("Missing required property 'configs'");
|
|
85
|
+
}
|
|
86
|
+
if (args?.identifier === undefined && !opts.urn) {
|
|
87
|
+
throw new Error("Missing required property 'identifier'");
|
|
88
|
+
}
|
|
89
|
+
resourceInputs["configs"] = args?.configs;
|
|
90
|
+
resourceInputs["enabled"] = args?.enabled;
|
|
91
|
+
resourceInputs["envVariables"] = args?.envVariables;
|
|
92
|
+
resourceInputs["identifier"] = args?.identifier;
|
|
93
|
+
resourceInputs["name"] = args?.name;
|
|
94
|
+
resourceInputs["proxies"] = args?.proxies;
|
|
95
|
+
}
|
|
96
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
97
|
+
super(IdpPlugin.__pulumiType, name, resourceInputs, opts);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
exports.IdpPlugin = IdpPlugin;
|
|
101
|
+
//# sourceMappingURL=idpPlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"idpPlugin.js","sourceRoot":"","sources":["../../platform/idpPlugin.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;;;;;;;;;;;;;;;;;;;;;;;;AAEjF,uDAAyC;AAGzC,wDAA0C;AAE1C;;;;;;;;;;;;GAYG;AACH,MAAa,SAAU,SAAQ,MAAM,CAAC,cAAc;IAChD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAsB,EAAE,IAAmC;QACpH,OAAO,IAAI,SAAS,CAAC,IAAI,EAAO,KAAK,EAAE,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,gBAAgB;IACT,MAAM,CAAU,YAAY,GAAG,sCAAsC,CAAC;IAE7E;;;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,SAAS,CAAC,YAAY,CAAC;IAC1D,CAAC;IAmCD,YAAY,IAAY,EAAE,WAA4C,EAAE,IAAmC;QACvG,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAyC,CAAC;YACxD,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;YAC3C,cAAc,CAAC,cAAc,CAAC,GAAG,KAAK,EAAE,YAAY,CAAC;YACrD,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,EAAE,UAAU,CAAC;YACjD,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,EAAE,IAAI,CAAC;YACrC,cAAc,CAAC,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,CAAC;SAC9C;aAAM;YACH,MAAM,IAAI,GAAG,WAAwC,CAAC;YACtD,IAAI,IAAI,EAAE,OAAO,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC1C,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;aAC1D;YACD,IAAI,IAAI,EAAE,UAAU,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC;YAC1C,cAAc,CAAC,cAAc,CAAC,GAAG,IAAI,EAAE,YAAY,CAAC;YACpD,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,EAAE,UAAU,CAAC;YAChD,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,IAAI,CAAC;YACpC,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,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC9D,CAAC;;AAzFL,8BA0FC"}
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
import * as pulumi from "@pulumi/pulumi";
|
|
2
|
+
import * as inputs from "../types/input";
|
|
3
|
+
import * as outputs from "../types/output";
|
|
4
|
+
/**
|
|
5
|
+
* Resource for creating IDP scorecards.
|
|
6
|
+
*
|
|
7
|
+
* ## Example Usage
|
|
8
|
+
*
|
|
9
|
+
* ```typescript
|
|
10
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
11
|
+
* import * as harness from "@pulumi/harness";
|
|
12
|
+
*
|
|
13
|
+
* const readme = new harness.platform.IdpScorecardCheck("readme", {
|
|
14
|
+
* identifier: "readme_exists",
|
|
15
|
+
* name: "README exists",
|
|
16
|
+
* description: "Ensure the repository has a README file",
|
|
17
|
+
* ruleStrategy: "ALL_OF",
|
|
18
|
+
* defaultBehaviour: "FAIL",
|
|
19
|
+
* rules: [{
|
|
20
|
+
* dataSourceIdentifier: "github",
|
|
21
|
+
* dataPointIdentifier: "isFileExists",
|
|
22
|
+
* operator: "==",
|
|
23
|
+
* value: "true",
|
|
24
|
+
* inputValues: [{
|
|
25
|
+
* key: "filePath",
|
|
26
|
+
* value: "README.md",
|
|
27
|
+
* }],
|
|
28
|
+
* }],
|
|
29
|
+
* });
|
|
30
|
+
* const gold = new harness.platform.IdpScorecard("gold", {
|
|
31
|
+
* identifier: "gold_standard",
|
|
32
|
+
* name: "Gold Standard",
|
|
33
|
+
* description: "Baseline production quality scorecard",
|
|
34
|
+
* published: true,
|
|
35
|
+
* weightageStrategy: "EQUAL_WEIGHTS",
|
|
36
|
+
* filter: {
|
|
37
|
+
* kind: "component",
|
|
38
|
+
* type: "service",
|
|
39
|
+
* },
|
|
40
|
+
* checks: [{
|
|
41
|
+
* identifier: readme.identifier,
|
|
42
|
+
* custom: true,
|
|
43
|
+
* }],
|
|
44
|
+
* });
|
|
45
|
+
* ```
|
|
46
|
+
*
|
|
47
|
+
* ## Import
|
|
48
|
+
*
|
|
49
|
+
* The `pulumi import` command can be used, for example:
|
|
50
|
+
*
|
|
51
|
+
* Import an IDP scorecard
|
|
52
|
+
*
|
|
53
|
+
* ```sh
|
|
54
|
+
* $ pulumi import harness:platform/idpScorecard:IdpScorecard example <scorecard_id>
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export declare class IdpScorecard extends pulumi.CustomResource {
|
|
58
|
+
/**
|
|
59
|
+
* Get an existing IdpScorecard resource's state with the given name, ID, and optional extra
|
|
60
|
+
* properties used to qualify the lookup.
|
|
61
|
+
*
|
|
62
|
+
* @param name The _unique_ name of the resulting resource.
|
|
63
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
64
|
+
* @param state Any extra arguments used during the lookup.
|
|
65
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
66
|
+
*/
|
|
67
|
+
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: IdpScorecardState, opts?: pulumi.CustomResourceOptions): IdpScorecard;
|
|
68
|
+
/**
|
|
69
|
+
* Returns true if the given object is an instance of IdpScorecard. This is designed to work even
|
|
70
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
71
|
+
*/
|
|
72
|
+
static isInstance(obj: any): obj is IdpScorecard;
|
|
73
|
+
/**
|
|
74
|
+
* Checks included in the scorecard.
|
|
75
|
+
*/
|
|
76
|
+
readonly checks: pulumi.Output<outputs.platform.IdpScorecardCheck[]>;
|
|
77
|
+
/**
|
|
78
|
+
* Identifiers of checks referenced by the scorecard that are missing.
|
|
79
|
+
*/
|
|
80
|
+
readonly checksMissings: pulumi.Output<string[]>;
|
|
81
|
+
/**
|
|
82
|
+
* Number of components evaluated by the scorecard.
|
|
83
|
+
*/
|
|
84
|
+
readonly components: pulumi.Output<number>;
|
|
85
|
+
/**
|
|
86
|
+
* Description of the resource.
|
|
87
|
+
*/
|
|
88
|
+
readonly description: pulumi.Output<string | undefined>;
|
|
89
|
+
/**
|
|
90
|
+
* Filters that select catalog entities evaluated by the scorecard.
|
|
91
|
+
*/
|
|
92
|
+
readonly filter: pulumi.Output<outputs.platform.IdpScorecardFilter>;
|
|
93
|
+
/**
|
|
94
|
+
* Unique identifier of the resource.
|
|
95
|
+
*/
|
|
96
|
+
readonly identifier: pulumi.Output<string>;
|
|
97
|
+
/**
|
|
98
|
+
* Name of the resource.
|
|
99
|
+
*/
|
|
100
|
+
readonly name: pulumi.Output<string>;
|
|
101
|
+
/**
|
|
102
|
+
* Whether the scorecard is evaluated on demand.
|
|
103
|
+
*/
|
|
104
|
+
readonly onDemand: pulumi.Output<boolean>;
|
|
105
|
+
/**
|
|
106
|
+
* Overall scorecard percentage.
|
|
107
|
+
*/
|
|
108
|
+
readonly percentage: pulumi.Output<number>;
|
|
109
|
+
/**
|
|
110
|
+
* Whether the scorecard is published.
|
|
111
|
+
*/
|
|
112
|
+
readonly published: pulumi.Output<boolean>;
|
|
113
|
+
/**
|
|
114
|
+
* Component distribution across scorecard tiers.
|
|
115
|
+
*/
|
|
116
|
+
readonly tierAnalytics: pulumi.Output<outputs.platform.IdpScorecardTierAnalytic[]>;
|
|
117
|
+
/**
|
|
118
|
+
* Identifier of the tier group used to classify scores.
|
|
119
|
+
*/
|
|
120
|
+
readonly tierGroupIdentifier: pulumi.Output<string>;
|
|
121
|
+
/**
|
|
122
|
+
* Weightage strategy for checks. Valid values are EQUAL_WEIGHTS and CUSTOM.
|
|
123
|
+
*/
|
|
124
|
+
readonly weightageStrategy: pulumi.Output<string>;
|
|
125
|
+
/**
|
|
126
|
+
* Create a IdpScorecard resource with the given unique name, arguments, and options.
|
|
127
|
+
*
|
|
128
|
+
* @param name The _unique_ name of the resource.
|
|
129
|
+
* @param args The arguments to use to populate this resource's properties.
|
|
130
|
+
* @param opts A bag of options that control this resource's behavior.
|
|
131
|
+
*/
|
|
132
|
+
constructor(name: string, args: IdpScorecardArgs, opts?: pulumi.CustomResourceOptions);
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Input properties used for looking up and filtering IdpScorecard resources.
|
|
136
|
+
*/
|
|
137
|
+
export interface IdpScorecardState {
|
|
138
|
+
/**
|
|
139
|
+
* Checks included in the scorecard.
|
|
140
|
+
*/
|
|
141
|
+
checks?: pulumi.Input<pulumi.Input<inputs.platform.IdpScorecardCheck>[] | undefined>;
|
|
142
|
+
/**
|
|
143
|
+
* Identifiers of checks referenced by the scorecard that are missing.
|
|
144
|
+
*/
|
|
145
|
+
checksMissings?: pulumi.Input<pulumi.Input<string>[] | undefined>;
|
|
146
|
+
/**
|
|
147
|
+
* Number of components evaluated by the scorecard.
|
|
148
|
+
*/
|
|
149
|
+
components?: pulumi.Input<number | undefined>;
|
|
150
|
+
/**
|
|
151
|
+
* Description of the resource.
|
|
152
|
+
*/
|
|
153
|
+
description?: pulumi.Input<string | undefined>;
|
|
154
|
+
/**
|
|
155
|
+
* Filters that select catalog entities evaluated by the scorecard.
|
|
156
|
+
*/
|
|
157
|
+
filter?: pulumi.Input<inputs.platform.IdpScorecardFilter | undefined>;
|
|
158
|
+
/**
|
|
159
|
+
* Unique identifier of the resource.
|
|
160
|
+
*/
|
|
161
|
+
identifier?: pulumi.Input<string | undefined>;
|
|
162
|
+
/**
|
|
163
|
+
* Name of the resource.
|
|
164
|
+
*/
|
|
165
|
+
name?: pulumi.Input<string | undefined>;
|
|
166
|
+
/**
|
|
167
|
+
* Whether the scorecard is evaluated on demand.
|
|
168
|
+
*/
|
|
169
|
+
onDemand?: pulumi.Input<boolean | undefined>;
|
|
170
|
+
/**
|
|
171
|
+
* Overall scorecard percentage.
|
|
172
|
+
*/
|
|
173
|
+
percentage?: pulumi.Input<number | undefined>;
|
|
174
|
+
/**
|
|
175
|
+
* Whether the scorecard is published.
|
|
176
|
+
*/
|
|
177
|
+
published?: pulumi.Input<boolean | undefined>;
|
|
178
|
+
/**
|
|
179
|
+
* Component distribution across scorecard tiers.
|
|
180
|
+
*/
|
|
181
|
+
tierAnalytics?: pulumi.Input<pulumi.Input<inputs.platform.IdpScorecardTierAnalytic>[] | undefined>;
|
|
182
|
+
/**
|
|
183
|
+
* Identifier of the tier group used to classify scores.
|
|
184
|
+
*/
|
|
185
|
+
tierGroupIdentifier?: pulumi.Input<string | undefined>;
|
|
186
|
+
/**
|
|
187
|
+
* Weightage strategy for checks. Valid values are EQUAL_WEIGHTS and CUSTOM.
|
|
188
|
+
*/
|
|
189
|
+
weightageStrategy?: pulumi.Input<string | undefined>;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* The set of arguments for constructing a IdpScorecard resource.
|
|
193
|
+
*/
|
|
194
|
+
export interface IdpScorecardArgs {
|
|
195
|
+
/**
|
|
196
|
+
* Checks included in the scorecard.
|
|
197
|
+
*/
|
|
198
|
+
checks: pulumi.Input<pulumi.Input<inputs.platform.IdpScorecardCheck>[]>;
|
|
199
|
+
/**
|
|
200
|
+
* Description of the resource.
|
|
201
|
+
*/
|
|
202
|
+
description?: pulumi.Input<string | undefined>;
|
|
203
|
+
/**
|
|
204
|
+
* Filters that select catalog entities evaluated by the scorecard.
|
|
205
|
+
*/
|
|
206
|
+
filter: pulumi.Input<inputs.platform.IdpScorecardFilter>;
|
|
207
|
+
/**
|
|
208
|
+
* Unique identifier of the resource.
|
|
209
|
+
*/
|
|
210
|
+
identifier: pulumi.Input<string>;
|
|
211
|
+
/**
|
|
212
|
+
* Name of the resource.
|
|
213
|
+
*/
|
|
214
|
+
name?: pulumi.Input<string | undefined>;
|
|
215
|
+
/**
|
|
216
|
+
* Whether the scorecard is evaluated on demand.
|
|
217
|
+
*/
|
|
218
|
+
onDemand?: pulumi.Input<boolean | undefined>;
|
|
219
|
+
/**
|
|
220
|
+
* Whether the scorecard is published.
|
|
221
|
+
*/
|
|
222
|
+
published: pulumi.Input<boolean>;
|
|
223
|
+
/**
|
|
224
|
+
* Identifier of the tier group used to classify scores.
|
|
225
|
+
*/
|
|
226
|
+
tierGroupIdentifier?: pulumi.Input<string | undefined>;
|
|
227
|
+
/**
|
|
228
|
+
* Weightage strategy for checks. Valid values are EQUAL_WEIGHTS and CUSTOM.
|
|
229
|
+
*/
|
|
230
|
+
weightageStrategy?: pulumi.Input<string | undefined>;
|
|
231
|
+
}
|
|
232
|
+
//# sourceMappingURL=idpScorecard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"idpScorecard.d.ts","sourceRoot":"","sources":["../../platform/idpScorecard.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,161 @@
|
|
|
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
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
5
|
+
if (k2 === undefined) k2 = k;
|
|
6
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
7
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
8
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
9
|
+
}
|
|
10
|
+
Object.defineProperty(o, k2, desc);
|
|
11
|
+
}) : (function(o, m, k, k2) {
|
|
12
|
+
if (k2 === undefined) k2 = k;
|
|
13
|
+
o[k2] = m[k];
|
|
14
|
+
}));
|
|
15
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
16
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
17
|
+
}) : function(o, v) {
|
|
18
|
+
o["default"] = v;
|
|
19
|
+
});
|
|
20
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
21
|
+
if (mod && mod.__esModule) return mod;
|
|
22
|
+
var result = {};
|
|
23
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
24
|
+
__setModuleDefault(result, mod);
|
|
25
|
+
return result;
|
|
26
|
+
};
|
|
27
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
28
|
+
exports.IdpScorecard = void 0;
|
|
29
|
+
const pulumi = __importStar(require("@pulumi/pulumi"));
|
|
30
|
+
const utilities = __importStar(require("../utilities"));
|
|
31
|
+
/**
|
|
32
|
+
* Resource for creating IDP scorecards.
|
|
33
|
+
*
|
|
34
|
+
* ## Example Usage
|
|
35
|
+
*
|
|
36
|
+
* ```typescript
|
|
37
|
+
* import * as pulumi from "@pulumi/pulumi";
|
|
38
|
+
* import * as harness from "@pulumi/harness";
|
|
39
|
+
*
|
|
40
|
+
* const readme = new harness.platform.IdpScorecardCheck("readme", {
|
|
41
|
+
* identifier: "readme_exists",
|
|
42
|
+
* name: "README exists",
|
|
43
|
+
* description: "Ensure the repository has a README file",
|
|
44
|
+
* ruleStrategy: "ALL_OF",
|
|
45
|
+
* defaultBehaviour: "FAIL",
|
|
46
|
+
* rules: [{
|
|
47
|
+
* dataSourceIdentifier: "github",
|
|
48
|
+
* dataPointIdentifier: "isFileExists",
|
|
49
|
+
* operator: "==",
|
|
50
|
+
* value: "true",
|
|
51
|
+
* inputValues: [{
|
|
52
|
+
* key: "filePath",
|
|
53
|
+
* value: "README.md",
|
|
54
|
+
* }],
|
|
55
|
+
* }],
|
|
56
|
+
* });
|
|
57
|
+
* const gold = new harness.platform.IdpScorecard("gold", {
|
|
58
|
+
* identifier: "gold_standard",
|
|
59
|
+
* name: "Gold Standard",
|
|
60
|
+
* description: "Baseline production quality scorecard",
|
|
61
|
+
* published: true,
|
|
62
|
+
* weightageStrategy: "EQUAL_WEIGHTS",
|
|
63
|
+
* filter: {
|
|
64
|
+
* kind: "component",
|
|
65
|
+
* type: "service",
|
|
66
|
+
* },
|
|
67
|
+
* checks: [{
|
|
68
|
+
* identifier: readme.identifier,
|
|
69
|
+
* custom: true,
|
|
70
|
+
* }],
|
|
71
|
+
* });
|
|
72
|
+
* ```
|
|
73
|
+
*
|
|
74
|
+
* ## Import
|
|
75
|
+
*
|
|
76
|
+
* The `pulumi import` command can be used, for example:
|
|
77
|
+
*
|
|
78
|
+
* Import an IDP scorecard
|
|
79
|
+
*
|
|
80
|
+
* ```sh
|
|
81
|
+
* $ pulumi import harness:platform/idpScorecard:IdpScorecard example <scorecard_id>
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
class IdpScorecard extends pulumi.CustomResource {
|
|
85
|
+
/**
|
|
86
|
+
* Get an existing IdpScorecard resource's state with the given name, ID, and optional extra
|
|
87
|
+
* properties used to qualify the lookup.
|
|
88
|
+
*
|
|
89
|
+
* @param name The _unique_ name of the resulting resource.
|
|
90
|
+
* @param id The _unique_ provider ID of the resource to lookup.
|
|
91
|
+
* @param state Any extra arguments used during the lookup.
|
|
92
|
+
* @param opts Optional settings to control the behavior of the CustomResource.
|
|
93
|
+
*/
|
|
94
|
+
static get(name, id, state, opts) {
|
|
95
|
+
return new IdpScorecard(name, state, { ...opts, id: id });
|
|
96
|
+
}
|
|
97
|
+
/** @internal */
|
|
98
|
+
static __pulumiType = 'harness:platform/idpScorecard:IdpScorecard';
|
|
99
|
+
/**
|
|
100
|
+
* Returns true if the given object is an instance of IdpScorecard. This is designed to work even
|
|
101
|
+
* when multiple copies of the Pulumi SDK have been loaded into the same process.
|
|
102
|
+
*/
|
|
103
|
+
static isInstance(obj) {
|
|
104
|
+
if (obj === undefined || obj === null) {
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
return obj['__pulumiType'] === IdpScorecard.__pulumiType;
|
|
108
|
+
}
|
|
109
|
+
constructor(name, argsOrState, opts) {
|
|
110
|
+
let resourceInputs = {};
|
|
111
|
+
opts = opts || {};
|
|
112
|
+
if (opts.id) {
|
|
113
|
+
const state = argsOrState;
|
|
114
|
+
resourceInputs["checks"] = state?.checks;
|
|
115
|
+
resourceInputs["checksMissings"] = state?.checksMissings;
|
|
116
|
+
resourceInputs["components"] = state?.components;
|
|
117
|
+
resourceInputs["description"] = state?.description;
|
|
118
|
+
resourceInputs["filter"] = state?.filter;
|
|
119
|
+
resourceInputs["identifier"] = state?.identifier;
|
|
120
|
+
resourceInputs["name"] = state?.name;
|
|
121
|
+
resourceInputs["onDemand"] = state?.onDemand;
|
|
122
|
+
resourceInputs["percentage"] = state?.percentage;
|
|
123
|
+
resourceInputs["published"] = state?.published;
|
|
124
|
+
resourceInputs["tierAnalytics"] = state?.tierAnalytics;
|
|
125
|
+
resourceInputs["tierGroupIdentifier"] = state?.tierGroupIdentifier;
|
|
126
|
+
resourceInputs["weightageStrategy"] = state?.weightageStrategy;
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
const args = argsOrState;
|
|
130
|
+
if (args?.checks === undefined && !opts.urn) {
|
|
131
|
+
throw new Error("Missing required property 'checks'");
|
|
132
|
+
}
|
|
133
|
+
if (args?.filter === undefined && !opts.urn) {
|
|
134
|
+
throw new Error("Missing required property 'filter'");
|
|
135
|
+
}
|
|
136
|
+
if (args?.identifier === undefined && !opts.urn) {
|
|
137
|
+
throw new Error("Missing required property 'identifier'");
|
|
138
|
+
}
|
|
139
|
+
if (args?.published === undefined && !opts.urn) {
|
|
140
|
+
throw new Error("Missing required property 'published'");
|
|
141
|
+
}
|
|
142
|
+
resourceInputs["checks"] = args?.checks;
|
|
143
|
+
resourceInputs["description"] = args?.description;
|
|
144
|
+
resourceInputs["filter"] = args?.filter;
|
|
145
|
+
resourceInputs["identifier"] = args?.identifier;
|
|
146
|
+
resourceInputs["name"] = args?.name;
|
|
147
|
+
resourceInputs["onDemand"] = args?.onDemand;
|
|
148
|
+
resourceInputs["published"] = args?.published;
|
|
149
|
+
resourceInputs["tierGroupIdentifier"] = args?.tierGroupIdentifier;
|
|
150
|
+
resourceInputs["weightageStrategy"] = args?.weightageStrategy;
|
|
151
|
+
resourceInputs["checksMissings"] = undefined /*out*/;
|
|
152
|
+
resourceInputs["components"] = undefined /*out*/;
|
|
153
|
+
resourceInputs["percentage"] = undefined /*out*/;
|
|
154
|
+
resourceInputs["tierAnalytics"] = undefined /*out*/;
|
|
155
|
+
}
|
|
156
|
+
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
|
|
157
|
+
super(IdpScorecard.__pulumiType, name, resourceInputs, opts);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
exports.IdpScorecard = IdpScorecard;
|
|
161
|
+
//# sourceMappingURL=idpScorecard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"idpScorecard.js","sourceRoot":"","sources":["../../platform/idpScorecard.ts"],"names":[],"mappings":"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"}
|