@pulumi/github 5.2.1 → 5.3.0-alpha.1674582786

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 (47) hide show
  1. package/actionsEnvironmentSecret.d.ts +3 -3
  2. package/actionsOrganizationOidcSubjectClaimCustomizationTemplate.d.ts +76 -0
  3. package/actionsOrganizationOidcSubjectClaimCustomizationTemplate.js +80 -0
  4. package/actionsOrganizationOidcSubjectClaimCustomizationTemplate.js.map +1 -0
  5. package/actionsOrganizationSecret.d.ts +3 -3
  6. package/actionsRepositoryAccessLevel.d.ts +85 -0
  7. package/actionsRepositoryAccessLevel.js +82 -0
  8. package/actionsRepositoryAccessLevel.js.map +1 -0
  9. package/actionsRepositoryOidcSubjectClaimCustomizationTemplate.d.ts +107 -0
  10. package/actionsRepositoryOidcSubjectClaimCustomizationTemplate.js +100 -0
  11. package/actionsRepositoryOidcSubjectClaimCustomizationTemplate.js.map +1 -0
  12. package/actionsRunnerGroup.d.ts +18 -2
  13. package/actionsRunnerGroup.js +4 -0
  14. package/actionsRunnerGroup.js.map +1 -1
  15. package/actionsSecret.d.ts +3 -3
  16. package/appInstallationRepositories.d.ts +2 -2
  17. package/appInstallationRepositories.js +2 -2
  18. package/branchProtectionV3.d.ts +3 -3
  19. package/branchProtectionV3.js +3 -3
  20. package/enterpriseOrganization.d.ts +51 -0
  21. package/enterpriseOrganization.js +66 -0
  22. package/enterpriseOrganization.js.map +1 -0
  23. package/getActionsOrganizationOidcSubjectClaimCustomizationTemplate.d.ts +27 -0
  24. package/getActionsOrganizationOidcSubjectClaimCustomizationTemplate.js +25 -0
  25. package/getActionsOrganizationOidcSubjectClaimCustomizationTemplate.js.map +1 -0
  26. package/getActionsRepositoryOidcSubjectClaimCustomizationTemplate.d.ts +67 -0
  27. package/getActionsRepositoryOidcSubjectClaimCustomizationTemplate.js +47 -0
  28. package/getActionsRepositoryOidcSubjectClaimCustomizationTemplate.js.map +1 -0
  29. package/getEnterprise.d.ts +56 -0
  30. package/getEnterprise.js +25 -0
  31. package/getEnterprise.js.map +1 -0
  32. package/getRepository.d.ts +4 -0
  33. package/getRepository.js.map +1 -1
  34. package/getRepositoryFile.d.ts +6 -6
  35. package/index.d.ts +20 -0
  36. package/index.js +31 -3
  37. package/index.js.map +1 -1
  38. package/package.json +2 -2
  39. package/package.json.dev +2 -2
  40. package/repository.d.ts +14 -2
  41. package/repository.js +3 -1
  42. package/repository.js.map +1 -1
  43. package/teamMembership.d.ts +0 -9
  44. package/teamMembership.js +0 -9
  45. package/teamMembership.js.map +1 -1
  46. package/types/input.d.ts +11 -5
  47. package/types/output.d.ts +17 -5
@@ -62,7 +62,7 @@ export declare class ActionsEnvironmentSecret extends pulumi.CustomResource {
62
62
  */
63
63
  readonly createdAt: pulumi.Output<string>;
64
64
  /**
65
- * Encrypted value of the secret using the Github public key in Base64 format.
65
+ * Encrypted value of the secret using the GitHub public key in Base64 format.
66
66
  */
67
67
  readonly encryptedValue: pulumi.Output<string | undefined>;
68
68
  /**
@@ -103,7 +103,7 @@ export interface ActionsEnvironmentSecretState {
103
103
  */
104
104
  createdAt?: pulumi.Input<string>;
105
105
  /**
106
- * Encrypted value of the secret using the Github public key in Base64 format.
106
+ * Encrypted value of the secret using the GitHub public key in Base64 format.
107
107
  */
108
108
  encryptedValue?: pulumi.Input<string>;
109
109
  /**
@@ -132,7 +132,7 @@ export interface ActionsEnvironmentSecretState {
132
132
  */
133
133
  export interface ActionsEnvironmentSecretArgs {
134
134
  /**
135
- * Encrypted value of the secret using the Github public key in Base64 format.
135
+ * Encrypted value of the secret using the GitHub public key in Base64 format.
136
136
  */
137
137
  encryptedValue?: pulumi.Input<string>;
138
138
  /**
@@ -0,0 +1,76 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * This resource allows you to create and manage an OpenID Connect subject claim customization template within a GitHub
4
+ * organization.
5
+ *
6
+ * More information on integrating GitHub with cloud providers using OpenID Connect and a list of available claims is
7
+ * available in the [Actions documentation](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect).
8
+ *
9
+ * ## Example Usage
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as github from "@pulumi/github";
14
+ *
15
+ * const exampleTemplate = new github.ActionsOrganizationOidcSubjectClaimCustomizationTemplate("exampleTemplate", {includeClaimKeys: [
16
+ * "actor",
17
+ * "context",
18
+ * "repository_owner",
19
+ * ]});
20
+ * ```
21
+ *
22
+ * ## Import
23
+ *
24
+ * This resource can be imported using the organization's name.
25
+ *
26
+ * ```sh
27
+ * $ pulumi import github:index/actionsOrganizationOidcSubjectClaimCustomizationTemplate:ActionsOrganizationOidcSubjectClaimCustomizationTemplate test example_organization
28
+ * ```
29
+ */
30
+ export declare class ActionsOrganizationOidcSubjectClaimCustomizationTemplate extends pulumi.CustomResource {
31
+ /**
32
+ * Get an existing ActionsOrganizationOidcSubjectClaimCustomizationTemplate 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?: ActionsOrganizationOidcSubjectClaimCustomizationTemplateState, opts?: pulumi.CustomResourceOptions): ActionsOrganizationOidcSubjectClaimCustomizationTemplate;
41
+ /**
42
+ * Returns true if the given object is an instance of ActionsOrganizationOidcSubjectClaimCustomizationTemplate. 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 ActionsOrganizationOidcSubjectClaimCustomizationTemplate;
46
+ /**
47
+ * A list of OpenID Connect claims.
48
+ */
49
+ readonly includeClaimKeys: pulumi.Output<string[]>;
50
+ /**
51
+ * Create a ActionsOrganizationOidcSubjectClaimCustomizationTemplate resource with the given unique name, arguments, and options.
52
+ *
53
+ * @param name The _unique_ name of the resource.
54
+ * @param args The arguments to use to populate this resource's properties.
55
+ * @param opts A bag of options that control this resource's behavior.
56
+ */
57
+ constructor(name: string, args: ActionsOrganizationOidcSubjectClaimCustomizationTemplateArgs, opts?: pulumi.CustomResourceOptions);
58
+ }
59
+ /**
60
+ * Input properties used for looking up and filtering ActionsOrganizationOidcSubjectClaimCustomizationTemplate resources.
61
+ */
62
+ export interface ActionsOrganizationOidcSubjectClaimCustomizationTemplateState {
63
+ /**
64
+ * A list of OpenID Connect claims.
65
+ */
66
+ includeClaimKeys?: pulumi.Input<pulumi.Input<string>[]>;
67
+ }
68
+ /**
69
+ * The set of arguments for constructing a ActionsOrganizationOidcSubjectClaimCustomizationTemplate resource.
70
+ */
71
+ export interface ActionsOrganizationOidcSubjectClaimCustomizationTemplateArgs {
72
+ /**
73
+ * A list of OpenID Connect claims.
74
+ */
75
+ includeClaimKeys: pulumi.Input<pulumi.Input<string>[]>;
76
+ }
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
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.ActionsOrganizationOidcSubjectClaimCustomizationTemplate = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * This resource allows you to create and manage an OpenID Connect subject claim customization template within a GitHub
10
+ * organization.
11
+ *
12
+ * More information on integrating GitHub with cloud providers using OpenID Connect and a list of available claims is
13
+ * available in the [Actions documentation](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect).
14
+ *
15
+ * ## Example Usage
16
+ *
17
+ * ```typescript
18
+ * import * as pulumi from "@pulumi/pulumi";
19
+ * import * as github from "@pulumi/github";
20
+ *
21
+ * const exampleTemplate = new github.ActionsOrganizationOidcSubjectClaimCustomizationTemplate("exampleTemplate", {includeClaimKeys: [
22
+ * "actor",
23
+ * "context",
24
+ * "repository_owner",
25
+ * ]});
26
+ * ```
27
+ *
28
+ * ## Import
29
+ *
30
+ * This resource can be imported using the organization's name.
31
+ *
32
+ * ```sh
33
+ * $ pulumi import github:index/actionsOrganizationOidcSubjectClaimCustomizationTemplate:ActionsOrganizationOidcSubjectClaimCustomizationTemplate test example_organization
34
+ * ```
35
+ */
36
+ class ActionsOrganizationOidcSubjectClaimCustomizationTemplate extends pulumi.CustomResource {
37
+ /**
38
+ * Get an existing ActionsOrganizationOidcSubjectClaimCustomizationTemplate 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 ActionsOrganizationOidcSubjectClaimCustomizationTemplate(name, state, Object.assign(Object.assign({}, opts), { id: id }));
48
+ }
49
+ /**
50
+ * Returns true if the given object is an instance of ActionsOrganizationOidcSubjectClaimCustomizationTemplate. 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'] === ActionsOrganizationOidcSubjectClaimCustomizationTemplate.__pulumiType;
58
+ }
59
+ constructor(name, argsOrState, opts) {
60
+ let resourceInputs = {};
61
+ opts = opts || {};
62
+ if (opts.id) {
63
+ const state = argsOrState;
64
+ resourceInputs["includeClaimKeys"] = state ? state.includeClaimKeys : undefined;
65
+ }
66
+ else {
67
+ const args = argsOrState;
68
+ if ((!args || args.includeClaimKeys === undefined) && !opts.urn) {
69
+ throw new Error("Missing required property 'includeClaimKeys'");
70
+ }
71
+ resourceInputs["includeClaimKeys"] = args ? args.includeClaimKeys : undefined;
72
+ }
73
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
74
+ super(ActionsOrganizationOidcSubjectClaimCustomizationTemplate.__pulumiType, name, resourceInputs, opts);
75
+ }
76
+ }
77
+ exports.ActionsOrganizationOidcSubjectClaimCustomizationTemplate = ActionsOrganizationOidcSubjectClaimCustomizationTemplate;
78
+ /** @internal */
79
+ ActionsOrganizationOidcSubjectClaimCustomizationTemplate.__pulumiType = 'github:index/actionsOrganizationOidcSubjectClaimCustomizationTemplate:ActionsOrganizationOidcSubjectClaimCustomizationTemplate';
80
+ //# sourceMappingURL=actionsOrganizationOidcSubjectClaimCustomizationTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionsOrganizationOidcSubjectClaimCustomizationTemplate.js","sourceRoot":"","sources":["../actionsOrganizationOidcSubjectClaimCustomizationTemplate.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAa,wDAAyD,SAAQ,MAAM,CAAC,cAAc;IAC/F;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAqE,EAAE,IAAmC;QACnK,OAAO,IAAI,wDAAwD,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC/G,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,wDAAwD,CAAC,YAAY,CAAC;IACzG,CAAC;IAeD,YAAY,IAAY,EAAE,WAA0I,EAAE,IAAmC;QACrM,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAwF,CAAC;YACvG,cAAc,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;SACnF;aAAM;YACH,MAAM,IAAI,GAAG,WAAuF,CAAC;YACrG,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC7D,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;aACnE;YACD,cAAc,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;SACjF;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,wDAAwD,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC7G,CAAC;;AAxDL,4HAyDC;AA3CG,gBAAgB;AACO,qEAAY,GAAG,gIAAgI,CAAC"}
@@ -70,7 +70,7 @@ export declare class ActionsOrganizationSecret extends pulumi.CustomResource {
70
70
  */
71
71
  readonly createdAt: pulumi.Output<string>;
72
72
  /**
73
- * Encrypted value of the secret using the Github public key in Base64 format.
73
+ * Encrypted value of the secret using the GitHub public key in Base64 format.
74
74
  */
75
75
  readonly encryptedValue: pulumi.Output<string | undefined>;
76
76
  /**
@@ -112,7 +112,7 @@ export interface ActionsOrganizationSecretState {
112
112
  */
113
113
  createdAt?: pulumi.Input<string>;
114
114
  /**
115
- * Encrypted value of the secret using the Github public key in Base64 format.
115
+ * Encrypted value of the secret using the GitHub public key in Base64 format.
116
116
  */
117
117
  encryptedValue?: pulumi.Input<string>;
118
118
  /**
@@ -142,7 +142,7 @@ export interface ActionsOrganizationSecretState {
142
142
  */
143
143
  export interface ActionsOrganizationSecretArgs {
144
144
  /**
145
- * Encrypted value of the secret using the Github public key in Base64 format.
145
+ * Encrypted value of the secret using the GitHub public key in Base64 format.
146
146
  */
147
147
  encryptedValue?: pulumi.Input<string>;
148
148
  /**
@@ -0,0 +1,85 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * This resource allows you to set the access level of a non-public repositories actions and reusable workflows for use in other repositories.
4
+ * You must have admin access to a repository to use this resource.
5
+ *
6
+ * ## Example Usage
7
+ *
8
+ * ```typescript
9
+ * import * as pulumi from "@pulumi/pulumi";
10
+ * import * as github from "@pulumi/github";
11
+ *
12
+ * const example = new github.Repository("example", {visibility: "private"});
13
+ * const test = new github.ActionsRepositoryAccessLevel("test", {
14
+ * accessLevel: "user",
15
+ * repository: example.name,
16
+ * });
17
+ * ```
18
+ *
19
+ * ## Import
20
+ *
21
+ * This resource can be imported using the name of the GitHub repository
22
+ *
23
+ * ```sh
24
+ * $ pulumi import github:index/actionsRepositoryAccessLevel:ActionsRepositoryAccessLevel test <github_repository_name>
25
+ * ```
26
+ */
27
+ export declare class ActionsRepositoryAccessLevel extends pulumi.CustomResource {
28
+ /**
29
+ * Get an existing ActionsRepositoryAccessLevel resource's state with the given name, ID, and optional extra
30
+ * properties used to qualify the lookup.
31
+ *
32
+ * @param name The _unique_ name of the resulting resource.
33
+ * @param id The _unique_ provider ID of the resource to lookup.
34
+ * @param state Any extra arguments used during the lookup.
35
+ * @param opts Optional settings to control the behavior of the CustomResource.
36
+ */
37
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ActionsRepositoryAccessLevelState, opts?: pulumi.CustomResourceOptions): ActionsRepositoryAccessLevel;
38
+ /**
39
+ * Returns true if the given object is an instance of ActionsRepositoryAccessLevel. This is designed to work even
40
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
41
+ */
42
+ static isInstance(obj: any): obj is ActionsRepositoryAccessLevel;
43
+ /**
44
+ * Where the actions or reusable workflows of the repository may be used. Possible values are `none`, `user`, `organization`, or `enterprise`.
45
+ */
46
+ readonly accessLevel: pulumi.Output<string>;
47
+ /**
48
+ * The GitHub repository
49
+ */
50
+ readonly repository: pulumi.Output<string>;
51
+ /**
52
+ * Create a ActionsRepositoryAccessLevel resource with the given unique name, arguments, and options.
53
+ *
54
+ * @param name The _unique_ name of the resource.
55
+ * @param args The arguments to use to populate this resource's properties.
56
+ * @param opts A bag of options that control this resource's behavior.
57
+ */
58
+ constructor(name: string, args: ActionsRepositoryAccessLevelArgs, opts?: pulumi.CustomResourceOptions);
59
+ }
60
+ /**
61
+ * Input properties used for looking up and filtering ActionsRepositoryAccessLevel resources.
62
+ */
63
+ export interface ActionsRepositoryAccessLevelState {
64
+ /**
65
+ * Where the actions or reusable workflows of the repository may be used. Possible values are `none`, `user`, `organization`, or `enterprise`.
66
+ */
67
+ accessLevel?: pulumi.Input<string>;
68
+ /**
69
+ * The GitHub repository
70
+ */
71
+ repository?: pulumi.Input<string>;
72
+ }
73
+ /**
74
+ * The set of arguments for constructing a ActionsRepositoryAccessLevel resource.
75
+ */
76
+ export interface ActionsRepositoryAccessLevelArgs {
77
+ /**
78
+ * Where the actions or reusable workflows of the repository may be used. Possible values are `none`, `user`, `organization`, or `enterprise`.
79
+ */
80
+ accessLevel: pulumi.Input<string>;
81
+ /**
82
+ * The GitHub repository
83
+ */
84
+ repository: pulumi.Input<string>;
85
+ }
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
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.ActionsRepositoryAccessLevel = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * This resource allows you to set the access level of a non-public repositories actions and reusable workflows for use in other repositories.
10
+ * You must have admin access to a repository to use this resource.
11
+ *
12
+ * ## Example Usage
13
+ *
14
+ * ```typescript
15
+ * import * as pulumi from "@pulumi/pulumi";
16
+ * import * as github from "@pulumi/github";
17
+ *
18
+ * const example = new github.Repository("example", {visibility: "private"});
19
+ * const test = new github.ActionsRepositoryAccessLevel("test", {
20
+ * accessLevel: "user",
21
+ * repository: example.name,
22
+ * });
23
+ * ```
24
+ *
25
+ * ## Import
26
+ *
27
+ * This resource can be imported using the name of the GitHub repository
28
+ *
29
+ * ```sh
30
+ * $ pulumi import github:index/actionsRepositoryAccessLevel:ActionsRepositoryAccessLevel test <github_repository_name>
31
+ * ```
32
+ */
33
+ class ActionsRepositoryAccessLevel extends pulumi.CustomResource {
34
+ /**
35
+ * Get an existing ActionsRepositoryAccessLevel resource's state with the given name, ID, and optional extra
36
+ * properties used to qualify the lookup.
37
+ *
38
+ * @param name The _unique_ name of the resulting resource.
39
+ * @param id The _unique_ provider ID of the resource to lookup.
40
+ * @param state Any extra arguments used during the lookup.
41
+ * @param opts Optional settings to control the behavior of the CustomResource.
42
+ */
43
+ static get(name, id, state, opts) {
44
+ return new ActionsRepositoryAccessLevel(name, state, Object.assign(Object.assign({}, opts), { id: id }));
45
+ }
46
+ /**
47
+ * Returns true if the given object is an instance of ActionsRepositoryAccessLevel. This is designed to work even
48
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
49
+ */
50
+ static isInstance(obj) {
51
+ if (obj === undefined || obj === null) {
52
+ return false;
53
+ }
54
+ return obj['__pulumiType'] === ActionsRepositoryAccessLevel.__pulumiType;
55
+ }
56
+ constructor(name, argsOrState, opts) {
57
+ let resourceInputs = {};
58
+ opts = opts || {};
59
+ if (opts.id) {
60
+ const state = argsOrState;
61
+ resourceInputs["accessLevel"] = state ? state.accessLevel : undefined;
62
+ resourceInputs["repository"] = state ? state.repository : undefined;
63
+ }
64
+ else {
65
+ const args = argsOrState;
66
+ if ((!args || args.accessLevel === undefined) && !opts.urn) {
67
+ throw new Error("Missing required property 'accessLevel'");
68
+ }
69
+ if ((!args || args.repository === undefined) && !opts.urn) {
70
+ throw new Error("Missing required property 'repository'");
71
+ }
72
+ resourceInputs["accessLevel"] = args ? args.accessLevel : undefined;
73
+ resourceInputs["repository"] = args ? args.repository : undefined;
74
+ }
75
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
76
+ super(ActionsRepositoryAccessLevel.__pulumiType, name, resourceInputs, opts);
77
+ }
78
+ }
79
+ exports.ActionsRepositoryAccessLevel = ActionsRepositoryAccessLevel;
80
+ /** @internal */
81
+ ActionsRepositoryAccessLevel.__pulumiType = 'github:index/actionsRepositoryAccessLevel:ActionsRepositoryAccessLevel';
82
+ //# sourceMappingURL=actionsRepositoryAccessLevel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionsRepositoryAccessLevel.js","sourceRoot":"","sources":["../actionsRepositoryAccessLevel.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAa,4BAA6B,SAAQ,MAAM,CAAC,cAAc;IACnE;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAyC,EAAE,IAAmC;QACvI,OAAO,IAAI,4BAA4B,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACnF,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,4BAA4B,CAAC,YAAY,CAAC;IAC7E,CAAC;IAmBD,YAAY,IAAY,EAAE,WAAkF,EAAE,IAAmC;QAC7I,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA4D,CAAC;YAC3E,cAAc,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACtE,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;SACvE;aAAM;YACH,MAAM,IAAI,GAAG,WAA2D,CAAC;YACzE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACxD,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;aAC9D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,cAAc,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;SACrE;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,4BAA4B,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACjF,CAAC;;AAjEL,oEAkEC;AApDG,gBAAgB;AACO,yCAAY,GAAG,wEAAwE,CAAC"}
@@ -0,0 +1,107 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * This resource allows you to create and manage an OpenID Connect subject claim customization template for a GitHub
4
+ * repository.
5
+ *
6
+ * More information on integrating GitHub with cloud providers using OpenID Connect and a list of available claims is
7
+ * available in the [Actions documentation](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect).
8
+ *
9
+ * The following table lists the behaviour of `useDefault`:
10
+ *
11
+ * | `useDefault` | `includeClaimKeys` | Template used |
12
+ * |---------------|----------------------|-----------------------------------------------------------|
13
+ * | `true` | Unset | GitHub's default |
14
+ * | `false` | Set | `includeClaimKeys` |
15
+ * | `false` | Unset | Organization's default if set, otherwise GitHub's default |
16
+ *
17
+ * ## Example Usage
18
+ *
19
+ * ```typescript
20
+ * import * as pulumi from "@pulumi/pulumi";
21
+ * import * as github from "@pulumi/github";
22
+ *
23
+ * const example = new github.Repository("example", {});
24
+ * const exampleTemplate = new github.ActionsRepositoryOidcSubjectClaimCustomizationTemplate("exampleTemplate", {
25
+ * repository: example.name,
26
+ * useDefault: false,
27
+ * includeClaimKeys: [
28
+ * "actor",
29
+ * "context",
30
+ * "repository_owner",
31
+ * ],
32
+ * });
33
+ * ```
34
+ *
35
+ * ## Import
36
+ *
37
+ * This resource can be imported using the repository's name.
38
+ *
39
+ * ```sh
40
+ * $ pulumi import github:index/actionsRepositoryOidcSubjectClaimCustomizationTemplate:ActionsRepositoryOidcSubjectClaimCustomizationTemplate test example_repository
41
+ * ```
42
+ */
43
+ export declare class ActionsRepositoryOidcSubjectClaimCustomizationTemplate extends pulumi.CustomResource {
44
+ /**
45
+ * Get an existing ActionsRepositoryOidcSubjectClaimCustomizationTemplate resource's state with the given name, ID, and optional extra
46
+ * properties used to qualify the lookup.
47
+ *
48
+ * @param name The _unique_ name of the resulting resource.
49
+ * @param id The _unique_ provider ID of the resource to lookup.
50
+ * @param state Any extra arguments used during the lookup.
51
+ * @param opts Optional settings to control the behavior of the CustomResource.
52
+ */
53
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ActionsRepositoryOidcSubjectClaimCustomizationTemplateState, opts?: pulumi.CustomResourceOptions): ActionsRepositoryOidcSubjectClaimCustomizationTemplate;
54
+ /**
55
+ * Returns true if the given object is an instance of ActionsRepositoryOidcSubjectClaimCustomizationTemplate. This is designed to work even
56
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
57
+ */
58
+ static isInstance(obj: any): obj is ActionsRepositoryOidcSubjectClaimCustomizationTemplate;
59
+ /**
60
+ * A list of OpenID Connect claims.
61
+ */
62
+ readonly includeClaimKeys: pulumi.Output<string[] | undefined>;
63
+ readonly repository: pulumi.Output<string>;
64
+ /**
65
+ * Whether to use the default template or not. If `true`, `includeClaimKeys` must not
66
+ * be set.
67
+ */
68
+ readonly useDefault: pulumi.Output<boolean>;
69
+ /**
70
+ * Create a ActionsRepositoryOidcSubjectClaimCustomizationTemplate resource with the given unique name, arguments, and options.
71
+ *
72
+ * @param name The _unique_ name of the resource.
73
+ * @param args The arguments to use to populate this resource's properties.
74
+ * @param opts A bag of options that control this resource's behavior.
75
+ */
76
+ constructor(name: string, args: ActionsRepositoryOidcSubjectClaimCustomizationTemplateArgs, opts?: pulumi.CustomResourceOptions);
77
+ }
78
+ /**
79
+ * Input properties used for looking up and filtering ActionsRepositoryOidcSubjectClaimCustomizationTemplate resources.
80
+ */
81
+ export interface ActionsRepositoryOidcSubjectClaimCustomizationTemplateState {
82
+ /**
83
+ * A list of OpenID Connect claims.
84
+ */
85
+ includeClaimKeys?: pulumi.Input<pulumi.Input<string>[]>;
86
+ repository?: pulumi.Input<string>;
87
+ /**
88
+ * Whether to use the default template or not. If `true`, `includeClaimKeys` must not
89
+ * be set.
90
+ */
91
+ useDefault?: pulumi.Input<boolean>;
92
+ }
93
+ /**
94
+ * The set of arguments for constructing a ActionsRepositoryOidcSubjectClaimCustomizationTemplate resource.
95
+ */
96
+ export interface ActionsRepositoryOidcSubjectClaimCustomizationTemplateArgs {
97
+ /**
98
+ * A list of OpenID Connect claims.
99
+ */
100
+ includeClaimKeys?: pulumi.Input<pulumi.Input<string>[]>;
101
+ repository: pulumi.Input<string>;
102
+ /**
103
+ * Whether to use the default template or not. If `true`, `includeClaimKeys` must not
104
+ * be set.
105
+ */
106
+ useDefault: pulumi.Input<boolean>;
107
+ }
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
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.ActionsRepositoryOidcSubjectClaimCustomizationTemplate = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ /**
9
+ * This resource allows you to create and manage an OpenID Connect subject claim customization template for a GitHub
10
+ * repository.
11
+ *
12
+ * More information on integrating GitHub with cloud providers using OpenID Connect and a list of available claims is
13
+ * available in the [Actions documentation](https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect).
14
+ *
15
+ * The following table lists the behaviour of `useDefault`:
16
+ *
17
+ * | `useDefault` | `includeClaimKeys` | Template used |
18
+ * |---------------|----------------------|-----------------------------------------------------------|
19
+ * | `true` | Unset | GitHub's default |
20
+ * | `false` | Set | `includeClaimKeys` |
21
+ * | `false` | Unset | Organization's default if set, otherwise GitHub's default |
22
+ *
23
+ * ## Example Usage
24
+ *
25
+ * ```typescript
26
+ * import * as pulumi from "@pulumi/pulumi";
27
+ * import * as github from "@pulumi/github";
28
+ *
29
+ * const example = new github.Repository("example", {});
30
+ * const exampleTemplate = new github.ActionsRepositoryOidcSubjectClaimCustomizationTemplate("exampleTemplate", {
31
+ * repository: example.name,
32
+ * useDefault: false,
33
+ * includeClaimKeys: [
34
+ * "actor",
35
+ * "context",
36
+ * "repository_owner",
37
+ * ],
38
+ * });
39
+ * ```
40
+ *
41
+ * ## Import
42
+ *
43
+ * This resource can be imported using the repository's name.
44
+ *
45
+ * ```sh
46
+ * $ pulumi import github:index/actionsRepositoryOidcSubjectClaimCustomizationTemplate:ActionsRepositoryOidcSubjectClaimCustomizationTemplate test example_repository
47
+ * ```
48
+ */
49
+ class ActionsRepositoryOidcSubjectClaimCustomizationTemplate extends pulumi.CustomResource {
50
+ /**
51
+ * Get an existing ActionsRepositoryOidcSubjectClaimCustomizationTemplate resource's state with the given name, ID, and optional extra
52
+ * properties used to qualify the lookup.
53
+ *
54
+ * @param name The _unique_ name of the resulting resource.
55
+ * @param id The _unique_ provider ID of the resource to lookup.
56
+ * @param state Any extra arguments used during the lookup.
57
+ * @param opts Optional settings to control the behavior of the CustomResource.
58
+ */
59
+ static get(name, id, state, opts) {
60
+ return new ActionsRepositoryOidcSubjectClaimCustomizationTemplate(name, state, Object.assign(Object.assign({}, opts), { id: id }));
61
+ }
62
+ /**
63
+ * Returns true if the given object is an instance of ActionsRepositoryOidcSubjectClaimCustomizationTemplate. This is designed to work even
64
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
65
+ */
66
+ static isInstance(obj) {
67
+ if (obj === undefined || obj === null) {
68
+ return false;
69
+ }
70
+ return obj['__pulumiType'] === ActionsRepositoryOidcSubjectClaimCustomizationTemplate.__pulumiType;
71
+ }
72
+ constructor(name, argsOrState, opts) {
73
+ let resourceInputs = {};
74
+ opts = opts || {};
75
+ if (opts.id) {
76
+ const state = argsOrState;
77
+ resourceInputs["includeClaimKeys"] = state ? state.includeClaimKeys : undefined;
78
+ resourceInputs["repository"] = state ? state.repository : undefined;
79
+ resourceInputs["useDefault"] = state ? state.useDefault : undefined;
80
+ }
81
+ else {
82
+ const args = argsOrState;
83
+ if ((!args || args.repository === undefined) && !opts.urn) {
84
+ throw new Error("Missing required property 'repository'");
85
+ }
86
+ if ((!args || args.useDefault === undefined) && !opts.urn) {
87
+ throw new Error("Missing required property 'useDefault'");
88
+ }
89
+ resourceInputs["includeClaimKeys"] = args ? args.includeClaimKeys : undefined;
90
+ resourceInputs["repository"] = args ? args.repository : undefined;
91
+ resourceInputs["useDefault"] = args ? args.useDefault : undefined;
92
+ }
93
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
94
+ super(ActionsRepositoryOidcSubjectClaimCustomizationTemplate.__pulumiType, name, resourceInputs, opts);
95
+ }
96
+ }
97
+ exports.ActionsRepositoryOidcSubjectClaimCustomizationTemplate = ActionsRepositoryOidcSubjectClaimCustomizationTemplate;
98
+ /** @internal */
99
+ ActionsRepositoryOidcSubjectClaimCustomizationTemplate.__pulumiType = 'github:index/actionsRepositoryOidcSubjectClaimCustomizationTemplate:ActionsRepositoryOidcSubjectClaimCustomizationTemplate';
100
+ //# sourceMappingURL=actionsRepositoryOidcSubjectClaimCustomizationTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"actionsRepositoryOidcSubjectClaimCustomizationTemplate.js","sourceRoot":"","sources":["../actionsRepositoryOidcSubjectClaimCustomizationTemplate.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAa,sDAAuD,SAAQ,MAAM,CAAC,cAAc;IAC7F;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAmE,EAAE,IAAmC;QACjK,OAAO,IAAI,sDAAsD,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAC7G,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,sDAAsD,CAAC,YAAY,CAAC;IACvG,CAAC;IAqBD,YAAY,IAAY,EAAE,WAAsI,EAAE,IAAmC;QACjM,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAAsF,CAAC;YACrG,cAAc,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;YAChF,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;SACvE;aAAM;YACH,MAAM,IAAI,GAAG,WAAqF,CAAC;YACnG,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvD,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC7D;YACD,cAAc,CAAC,kBAAkB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9E,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;SACrE;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,sDAAsD,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC3G,CAAC;;AArEL,wHAsEC;AAxDG,gBAAgB;AACO,mEAAY,GAAG,4HAA4H,CAAC"}
@@ -60,18 +60,26 @@ export declare class ActionsRunnerGroup extends pulumi.CustomResource {
60
60
  * Name of the runner group
61
61
  */
62
62
  readonly name: pulumi.Output<string>;
63
+ /**
64
+ * If true, the runner group will be restricted to running only the workflows specified in the selectedWorkflows array. Defaults to false.
65
+ */
66
+ readonly restrictedToWorkflows: pulumi.Output<boolean>;
63
67
  /**
64
68
  * The GitHub API URL for the runner group's runners
65
69
  */
66
70
  readonly runnersUrl: pulumi.Output<string>;
67
71
  /**
68
- * Github API URL for the runner group's repositories
72
+ * GitHub API URL for the runner group's repositories
69
73
  */
70
74
  readonly selectedRepositoriesUrl: pulumi.Output<string>;
71
75
  /**
72
76
  * IDs of the repositories which should be added to the runner group
73
77
  */
74
78
  readonly selectedRepositoryIds: pulumi.Output<number[] | undefined>;
79
+ /**
80
+ * List of workflows the runner group should be allowed to run. This setting will be ignored unless restrictedToWorkflows is set to true.
81
+ */
82
+ readonly selectedWorkflows: pulumi.Output<string[]>;
75
83
  /**
76
84
  * Visibility of a runner group. Whether the runner group can include `all`, `selected`, or `private` repositories. A value of `private` is not currently supported due to limitations in the GitHub API.
77
85
  */
@@ -109,18 +117,26 @@ export interface ActionsRunnerGroupState {
109
117
  * Name of the runner group
110
118
  */
111
119
  name?: pulumi.Input<string>;
120
+ /**
121
+ * If true, the runner group will be restricted to running only the workflows specified in the selectedWorkflows array. Defaults to false.
122
+ */
123
+ restrictedToWorkflows?: pulumi.Input<boolean>;
112
124
  /**
113
125
  * The GitHub API URL for the runner group's runners
114
126
  */
115
127
  runnersUrl?: pulumi.Input<string>;
116
128
  /**
117
- * Github API URL for the runner group's repositories
129
+ * GitHub API URL for the runner group's repositories
118
130
  */
119
131
  selectedRepositoriesUrl?: pulumi.Input<string>;
120
132
  /**
121
133
  * IDs of the repositories which should be added to the runner group
122
134
  */
123
135
  selectedRepositoryIds?: pulumi.Input<pulumi.Input<number>[]>;
136
+ /**
137
+ * List of workflows the runner group should be allowed to run. This setting will be ignored unless restrictedToWorkflows is set to true.
138
+ */
139
+ selectedWorkflows?: pulumi.Input<pulumi.Input<string>[]>;
124
140
  /**
125
141
  * Visibility of a runner group. Whether the runner group can include `all`, `selected`, or `private` repositories. A value of `private` is not currently supported due to limitations in the GitHub API.
126
142
  */