@pulumiverse/buildkite 2.3.0 → 3.0.1

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 (97) hide show
  1. package/README.md +5 -0
  2. package/agent/agentToken.d.ts +11 -19
  3. package/agent/agentToken.js +4 -6
  4. package/agent/agentToken.js.map +1 -1
  5. package/cluster/cluster.d.ts +74 -20
  6. package/cluster/cluster.js +54 -6
  7. package/cluster/cluster.js.map +1 -1
  8. package/cluster/clusterAgentToken.d.ts +49 -15
  9. package/cluster/clusterAgentToken.js +26 -8
  10. package/cluster/clusterAgentToken.js.map +1 -1
  11. package/cluster/clusterDefaultQueue.d.ts +130 -0
  12. package/cluster/clusterDefaultQueue.js +121 -0
  13. package/cluster/clusterDefaultQueue.js.map +1 -0
  14. package/cluster/clusterQueue.d.ts +36 -44
  15. package/cluster/clusterQueue.js +29 -37
  16. package/cluster/clusterQueue.js.map +1 -1
  17. package/cluster/getCluster.d.ts +48 -5
  18. package/cluster/getCluster.js +40 -0
  19. package/cluster/getCluster.js.map +1 -1
  20. package/cluster/index.d.ts +3 -0
  21. package/cluster/index.js +6 -1
  22. package/cluster/index.js.map +1 -1
  23. package/config/vars.d.ts +11 -5
  24. package/config/vars.js +12 -0
  25. package/config/vars.js.map +1 -1
  26. package/getMeta.d.ts +49 -2
  27. package/getMeta.js +51 -1
  28. package/getMeta.js.map +1 -1
  29. package/index.d.ts +3 -1
  30. package/index.js +5 -2
  31. package/index.js.map +1 -1
  32. package/organization/banner.d.ts +104 -0
  33. package/organization/banner.js +102 -0
  34. package/organization/banner.js.map +1 -0
  35. package/organization/getOrganization.d.ts +10 -63
  36. package/organization/getOrganization.js +6 -47
  37. package/organization/getOrganization.js.map +1 -1
  38. package/organization/index.d.ts +7 -4
  39. package/organization/index.js +11 -6
  40. package/organization/index.js.map +1 -1
  41. package/organization/organization.d.ts +94 -0
  42. package/organization/{settings.js → organization.js} +20 -20
  43. package/organization/organization.js.map +1 -0
  44. package/package.json +2 -3
  45. package/package.json.bak +1 -2
  46. package/pipeline/getPipeline.d.ts +21 -20
  47. package/pipeline/getPipeline.js +8 -14
  48. package/pipeline/getPipeline.js.map +1 -1
  49. package/pipeline/getSignedSteps.d.ts +139 -0
  50. package/pipeline/getSignedSteps.js +91 -0
  51. package/pipeline/getSignedSteps.js.map +1 -0
  52. package/pipeline/getTemplate.d.ts +116 -0
  53. package/pipeline/getTemplate.js +79 -0
  54. package/pipeline/getTemplate.js.map +1 -0
  55. package/pipeline/index.d.ts +12 -0
  56. package/pipeline/index.js +17 -1
  57. package/pipeline/index.js.map +1 -1
  58. package/pipeline/pipeline.d.ts +117 -181
  59. package/pipeline/pipeline.js +15 -113
  60. package/pipeline/pipeline.js.map +1 -1
  61. package/pipeline/schedule.d.ts +57 -45
  62. package/pipeline/schedule.js +22 -19
  63. package/pipeline/schedule.js.map +1 -1
  64. package/pipeline/team.d.ts +137 -0
  65. package/pipeline/team.js +121 -0
  66. package/pipeline/team.js.map +1 -0
  67. package/pipeline/template.d.ts +155 -0
  68. package/pipeline/template.js +123 -0
  69. package/pipeline/template.js.map +1 -0
  70. package/provider.d.ts +26 -8
  71. package/provider.js +2 -0
  72. package/provider.js.map +1 -1
  73. package/team/getTeam.d.ts +39 -30
  74. package/team/getTeam.js +16 -16
  75. package/team/getTeam.js.map +1 -1
  76. package/team/member.d.ts +31 -33
  77. package/team/member.js +20 -22
  78. package/team/member.js.map +1 -1
  79. package/team/team.d.ts +37 -37
  80. package/team/team.js +17 -17
  81. package/testsuite/index.d.ts +6 -0
  82. package/testsuite/index.js +27 -0
  83. package/testsuite/index.js.map +1 -0
  84. package/testsuite/team.d.ts +160 -0
  85. package/testsuite/team.js +144 -0
  86. package/testsuite/team.js.map +1 -0
  87. package/testsuite/testSuite.d.ts +112 -0
  88. package/testsuite/testSuite.js +83 -0
  89. package/testsuite/testSuite.js.map +1 -0
  90. package/types/input.d.ts +37 -22
  91. package/types/output.d.ts +37 -22
  92. package/utilities.d.ts +4 -0
  93. package/utilities.js +33 -1
  94. package/utilities.js.map +1 -1
  95. package/organization/settings.d.ts +0 -78
  96. package/organization/settings.js.map +0 -1
  97. package/scripts/install-pulumi-plugin.js +0 -26
@@ -6,59 +6,18 @@ exports.getOrganizationOutput = exports.getOrganization = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("../utilities");
8
8
  /**
9
- * ## # Data Source: organization
10
- *
11
- * Use this data source to look up the organization settings. It currently supports
12
- * allowed_api_ip_addresses.
13
- *
14
- * ## Example Usage
15
- *
16
- * ```typescript
17
- * import * as pulumi from "@pulumi/pulumi";
18
- * import * as aws from "@pulumi/aws";
19
- * import * as buildkite from "@pulumi/buildkite";
20
- *
21
- * const testkite = buildkite.Organization.getOrganization({});
22
- * const fromBuildkite = new aws.ec2.SecurityGroup("fromBuildkite", {ingress: [{
23
- * fromPort: "*",
24
- * toPort: 443,
25
- * protocol: "tcp",
26
- * cidrBlocks: data.buildkite_organization.allowed_api_ip_addresses,
27
- * }]});
28
- * ```
9
+ * Use this data source to look up the organization settings.
29
10
  */
30
- function getOrganization(args, opts) {
31
- args = args || {};
11
+ function getOrganization(opts) {
32
12
  opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
33
- return pulumi.runtime.invoke("buildkite:Organization/getOrganization:getOrganization", {
34
- "allowedApiIpAddresses": args.allowedApiIpAddresses,
35
- }, opts);
13
+ return pulumi.runtime.invoke("buildkite:Organization/getOrganization:getOrganization", {}, opts);
36
14
  }
37
15
  exports.getOrganization = getOrganization;
38
16
  /**
39
- * ## # Data Source: organization
40
- *
41
- * Use this data source to look up the organization settings. It currently supports
42
- * allowed_api_ip_addresses.
43
- *
44
- * ## Example Usage
45
- *
46
- * ```typescript
47
- * import * as pulumi from "@pulumi/pulumi";
48
- * import * as aws from "@pulumi/aws";
49
- * import * as buildkite from "@pulumi/buildkite";
50
- *
51
- * const testkite = buildkite.Organization.getOrganization({});
52
- * const fromBuildkite = new aws.ec2.SecurityGroup("fromBuildkite", {ingress: [{
53
- * fromPort: "*",
54
- * toPort: 443,
55
- * protocol: "tcp",
56
- * cidrBlocks: data.buildkite_organization.allowed_api_ip_addresses,
57
- * }]});
58
- * ```
17
+ * Use this data source to look up the organization settings.
59
18
  */
60
- function getOrganizationOutput(args, opts) {
61
- return pulumi.output(args).apply((a) => getOrganization(a, opts));
19
+ function getOrganizationOutput(opts) {
20
+ return pulumi.output(getOrganization(opts));
62
21
  }
63
22
  exports.getOrganizationOutput = getOrganizationOutput;
64
23
  //# sourceMappingURL=getOrganization.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getOrganization.js","sourceRoot":"","sources":["../../organization/getOrganization.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,eAAe,CAAC,IAA0B,EAAE,IAA2B;IACnF,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IAElB,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,wDAAwD,EAAE;QACnF,uBAAuB,EAAE,IAAI,CAAC,qBAAqB;KACtD,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAPD,0CAOC;AA0BD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,SAAgB,qBAAqB,CAAC,IAAgC,EAAE,IAA2B;IAC/F,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;AAC1E,CAAC;AAFD,sDAEC"}
1
+ {"version":3,"file":"getOrganization.js","sourceRoot":"","sources":["../../organization/getOrganization.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;GAEG;AACH,SAAgB,eAAe,CAAC,IAA2B;IAEvD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,wDAAwD,EAAE,EACtF,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AALD,0CAKC;AAmBD;;GAEG;AACH,SAAgB,qBAAqB,CAAC,IAA2B;IAC7D,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAA;AAC/C,CAAC;AAFD,sDAEC"}
@@ -1,6 +1,9 @@
1
- export { GetOrganizationArgs, GetOrganizationResult, GetOrganizationOutputArgs } from "./getOrganization";
1
+ export { BannerArgs, BannerState } from "./banner";
2
+ export type Banner = import("./banner").Banner;
3
+ export declare const Banner: typeof import("./banner").Banner;
4
+ export { GetOrganizationResult } from "./getOrganization";
2
5
  export declare const getOrganization: typeof import("./getOrganization").getOrganization;
3
6
  export declare const getOrganizationOutput: typeof import("./getOrganization").getOrganizationOutput;
4
- export { SettingsArgs, SettingsState } from "./settings";
5
- export type Settings = import("./settings").Settings;
6
- export declare const Settings: typeof import("./settings").Settings;
7
+ export { OrganizationArgs, OrganizationState } from "./organization";
8
+ export type Organization = import("./organization").Organization;
9
+ export declare const Organization: typeof import("./organization").Organization;
@@ -2,24 +2,29 @@
2
2
  // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
3
  // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.Settings = exports.getOrganizationOutput = exports.getOrganization = void 0;
5
+ exports.Organization = exports.getOrganizationOutput = exports.getOrganization = exports.Banner = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("../utilities");
8
+ exports.Banner = null;
9
+ utilities.lazyLoad(exports, ["Banner"], () => require("./banner"));
8
10
  exports.getOrganization = null;
9
11
  exports.getOrganizationOutput = null;
10
12
  utilities.lazyLoad(exports, ["getOrganization", "getOrganizationOutput"], () => require("./getOrganization"));
11
- exports.Settings = null;
12
- utilities.lazyLoad(exports, ["Settings"], () => require("./settings"));
13
+ exports.Organization = null;
14
+ utilities.lazyLoad(exports, ["Organization"], () => require("./organization"));
13
15
  const _module = {
14
16
  version: utilities.getVersion(),
15
17
  construct: (name, type, urn) => {
16
18
  switch (type) {
17
- case "buildkite:Organization/settings:Settings":
18
- return new exports.Settings(name, undefined, { urn });
19
+ case "buildkite:Organization/banner:Banner":
20
+ return new exports.Banner(name, undefined, { urn });
21
+ case "buildkite:Organization/organization:Organization":
22
+ return new exports.Organization(name, undefined, { urn });
19
23
  default:
20
24
  throw new Error(`unknown resource type ${type}`);
21
25
  }
22
26
  },
23
27
  };
24
- pulumi.runtime.registerResourceModule("buildkite", "Organization/settings", _module);
28
+ pulumi.runtime.registerResourceModule("buildkite", "Organization/banner", _module);
29
+ pulumi.runtime.registerResourceModule("buildkite", "Organization/organization", _module);
25
30
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../organization/index.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAI7B,QAAA,eAAe,GAAuD,IAAW,CAAC;AAClF,QAAA,qBAAqB,GAA6D,IAAW,CAAC;AAC3G,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,iBAAiB,EAAC,uBAAuB,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAIhG,QAAA,QAAQ,GAAyC,IAAW,CAAC;AAC1E,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;AAGvE,MAAM,OAAO,GAAG;IACZ,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE;IAC/B,SAAS,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAmB,EAAE;QACpE,QAAQ,IAAI,EAAE;YACV,KAAK,0CAA0C;gBAC3C,OAAO,IAAI,gBAAQ,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACtD;gBACI,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;SACxD;IACL,CAAC;CACJ,CAAC;AACF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,WAAW,EAAE,uBAAuB,EAAE,OAAO,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../organization/index.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAK7B,QAAA,MAAM,GAAqC,IAAW,CAAC;AACpE,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;AAGtD,QAAA,eAAe,GAAuD,IAAW,CAAC;AAClF,QAAA,qBAAqB,GAA6D,IAAW,CAAC;AAC3G,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,iBAAiB,EAAC,uBAAuB,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAIhG,QAAA,YAAY,GAAiD,IAAW,CAAC;AACtF,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,cAAc,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC;AAG/E,MAAM,OAAO,GAAG;IACZ,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE;IAC/B,SAAS,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAmB,EAAE;QACpE,QAAQ,IAAI,EAAE;YACV,KAAK,sCAAsC;gBACvC,OAAO,IAAI,cAAM,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACpD,KAAK,kDAAkD;gBACnD,OAAO,IAAI,oBAAY,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAC1D;gBACI,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;SACxD;IACL,CAAC;CACJ,CAAC;AACF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,WAAW,EAAE,qBAAqB,EAAE,OAAO,CAAC,CAAA;AAClF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,WAAW,EAAE,2BAA2B,EAAE,OAAO,CAAC,CAAA"}
@@ -0,0 +1,94 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * This resource allows you to manage the settings for an organization.
4
+ *
5
+ * The user of your API token must be an organization administrator to manage organization settings.
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as buildkite from "@pulumiverse/buildkite";
12
+ *
13
+ * // allow api access only from 1.1.1.1 and enforce 2fa for all members
14
+ * const settings = new buildkite.organization.Organization("settings", {
15
+ * allowedApiIpAddresses: ["1.1.1.1/32"],
16
+ * enforce2fa: true,
17
+ * });
18
+ * ```
19
+ *
20
+ * ## Import
21
+ *
22
+ * import the organization settings via the organization slug
23
+ *
24
+ * ```sh
25
+ * $ pulumi import buildkite:Organization/organization:Organization settings <organization slug>
26
+ * ```
27
+ */
28
+ export declare class Organization extends pulumi.CustomResource {
29
+ /**
30
+ * Get an existing Organization resource's state with the given name, ID, and optional extra
31
+ * properties used to qualify the lookup.
32
+ *
33
+ * @param name The _unique_ name of the resulting resource.
34
+ * @param id The _unique_ provider ID of the resource to lookup.
35
+ * @param state Any extra arguments used during the lookup.
36
+ * @param opts Optional settings to control the behavior of the CustomResource.
37
+ */
38
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: OrganizationState, opts?: pulumi.CustomResourceOptions): Organization;
39
+ /**
40
+ * Returns true if the given object is an instance of Organization. This is designed to work even
41
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
42
+ */
43
+ static isInstance(obj: any): obj is Organization;
44
+ /**
45
+ * A list of IP addresses in CIDR format that are allowed to access the Buildkite API.If not set, all IP addresses are allowed (the same as setting 0.0.0.0/0).
46
+ */
47
+ readonly allowedApiIpAddresses: pulumi.Output<string[] | undefined>;
48
+ /**
49
+ * Sets whether the organization requires two-factor authentication for all members.
50
+ */
51
+ readonly enforce2fa: pulumi.Output<boolean>;
52
+ /**
53
+ * The UUID of the organization.
54
+ */
55
+ readonly uuid: pulumi.Output<string>;
56
+ /**
57
+ * Create a Organization resource with the given unique name, arguments, and options.
58
+ *
59
+ * @param name The _unique_ name of the resource.
60
+ * @param args The arguments to use to populate this resource's properties.
61
+ * @param opts A bag of options that control this resource's behavior.
62
+ */
63
+ constructor(name: string, args?: OrganizationArgs, opts?: pulumi.CustomResourceOptions);
64
+ }
65
+ /**
66
+ * Input properties used for looking up and filtering Organization resources.
67
+ */
68
+ export interface OrganizationState {
69
+ /**
70
+ * A list of IP addresses in CIDR format that are allowed to access the Buildkite API.If not set, all IP addresses are allowed (the same as setting 0.0.0.0/0).
71
+ */
72
+ allowedApiIpAddresses?: pulumi.Input<pulumi.Input<string>[]>;
73
+ /**
74
+ * Sets whether the organization requires two-factor authentication for all members.
75
+ */
76
+ enforce2fa?: pulumi.Input<boolean>;
77
+ /**
78
+ * The UUID of the organization.
79
+ */
80
+ uuid?: pulumi.Input<string>;
81
+ }
82
+ /**
83
+ * The set of arguments for constructing a Organization resource.
84
+ */
85
+ export interface OrganizationArgs {
86
+ /**
87
+ * A list of IP addresses in CIDR format that are allowed to access the Buildkite API.If not set, all IP addresses are allowed (the same as setting 0.0.0.0/0).
88
+ */
89
+ allowedApiIpAddresses?: pulumi.Input<pulumi.Input<string>[]>;
90
+ /**
91
+ * Sets whether the organization requires two-factor authentication for all members.
92
+ */
93
+ enforce2fa?: pulumi.Input<boolean>;
94
+ }
@@ -2,17 +2,13 @@
2
2
  // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
3
  // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.Settings = void 0;
5
+ exports.Organization = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("../utilities");
8
8
  /**
9
- * ## # Resource: organizationSettings
10
- *
11
9
  * This resource allows you to manage the settings for an organization.
12
10
  *
13
- * You must be an organization administrator to manage organization settings.
14
- *
15
- * Note: The "Allowed API IP Addresses" feature must be enabled on your organization in order to manage the `allowedApiIpAddresses` attribute.
11
+ * The user of your API token must be an organization administrator to manage organization settings.
16
12
  *
17
13
  * ## Example Usage
18
14
  *
@@ -20,22 +16,24 @@ const utilities = require("../utilities");
20
16
  * import * as pulumi from "@pulumi/pulumi";
21
17
  * import * as buildkite from "@pulumiverse/buildkite";
22
18
  *
23
- * const testSettings = new buildkite.organization.Settings("testSettings", {allowedApiIpAddresses: ["1.1.1.1/32"]});
19
+ * // allow api access only from 1.1.1.1 and enforce 2fa for all members
20
+ * const settings = new buildkite.organization.Organization("settings", {
21
+ * allowedApiIpAddresses: ["1.1.1.1/32"],
22
+ * enforce2fa: true,
23
+ * });
24
24
  * ```
25
25
  *
26
26
  * ## Import
27
27
  *
28
- * Organization settings can be imported by passing the organization slug to the import command, along with the identifier of the resource.
28
+ * import the organization settings via the organization slug
29
29
  *
30
30
  * ```sh
31
- * $ pulumi import buildkite:Organization/settings:Settings test_settings test_org
31
+ * $ pulumi import buildkite:Organization/organization:Organization settings <organization slug>
32
32
  * ```
33
- *
34
- * Your organization's slug can be found in your organisation's [settings](https://buildkite.com/organizations/~/settings) page.
35
33
  */
36
- class Settings extends pulumi.CustomResource {
34
+ class Organization extends pulumi.CustomResource {
37
35
  /**
38
- * Get an existing Settings resource's state with the given name, ID, and optional extra
36
+ * Get an existing Organization resource's state with the given name, ID, and optional extra
39
37
  * properties used to qualify the lookup.
40
38
  *
41
39
  * @param name The _unique_ name of the resulting resource.
@@ -44,17 +42,17 @@ class Settings extends pulumi.CustomResource {
44
42
  * @param opts Optional settings to control the behavior of the CustomResource.
45
43
  */
46
44
  static get(name, id, state, opts) {
47
- return new Settings(name, state, Object.assign(Object.assign({}, opts), { id: id }));
45
+ return new Organization(name, state, Object.assign(Object.assign({}, opts), { id: id }));
48
46
  }
49
47
  /**
50
- * Returns true if the given object is an instance of Settings. This is designed to work even
48
+ * Returns true if the given object is an instance of Organization. This is designed to work even
51
49
  * when multiple copies of the Pulumi SDK have been loaded into the same process.
52
50
  */
53
51
  static isInstance(obj) {
54
52
  if (obj === undefined || obj === null) {
55
53
  return false;
56
54
  }
57
- return obj['__pulumiType'] === Settings.__pulumiType;
55
+ return obj['__pulumiType'] === Organization.__pulumiType;
58
56
  }
59
57
  constructor(name, argsOrState, opts) {
60
58
  let resourceInputs = {};
@@ -62,18 +60,20 @@ class Settings extends pulumi.CustomResource {
62
60
  if (opts.id) {
63
61
  const state = argsOrState;
64
62
  resourceInputs["allowedApiIpAddresses"] = state ? state.allowedApiIpAddresses : undefined;
63
+ resourceInputs["enforce2fa"] = state ? state.enforce2fa : undefined;
65
64
  resourceInputs["uuid"] = state ? state.uuid : undefined;
66
65
  }
67
66
  else {
68
67
  const args = argsOrState;
69
68
  resourceInputs["allowedApiIpAddresses"] = args ? args.allowedApiIpAddresses : undefined;
69
+ resourceInputs["enforce2fa"] = args ? args.enforce2fa : undefined;
70
70
  resourceInputs["uuid"] = undefined /*out*/;
71
71
  }
72
72
  opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
73
- super(Settings.__pulumiType, name, resourceInputs, opts);
73
+ super(Organization.__pulumiType, name, resourceInputs, opts);
74
74
  }
75
75
  }
76
- exports.Settings = Settings;
76
+ exports.Organization = Organization;
77
77
  /** @internal */
78
- Settings.__pulumiType = 'buildkite:Organization/settings:Settings';
79
- //# sourceMappingURL=settings.js.map
78
+ Organization.__pulumiType = 'buildkite:Organization/organization:Organization';
79
+ //# sourceMappingURL=organization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization.js","sourceRoot":"","sources":["../../organization/organization.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAa,YAAa,SAAQ,MAAM,CAAC,cAAc;IACnD;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAyB,EAAE,IAAmC;QACvH,OAAO,IAAI,YAAY,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACnE,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,YAAY,CAAC,YAAY,CAAC;IAC7D,CAAC;IAuBD,YAAY,IAAY,EAAE,WAAkD,EAAE,IAAmC;QAC7G,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA4C,CAAC;YAC3D,cAAc,CAAC,uBAAuB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1F,cAAc,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YACpE,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3D;aAAM;YACH,MAAM,IAAI,GAAG,WAA2C,CAAC;YACzD,cAAc,CAAC,uBAAuB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,SAAS,CAAC;YACxF,cAAc,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;YAClE,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC9C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IACjE,CAAC;;AAjEL,oCAkEC;AApDG,gBAAgB;AACO,yBAAY,GAAG,kDAAkD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pulumiverse/buildkite",
3
- "version": "v2.3.0",
3
+ "version": "v3.0.1",
4
4
  "description": "A Pulumi package for creating and managing Buildkite resources.",
5
5
  "keywords": [
6
6
  "pulumi",
@@ -10,8 +10,7 @@
10
10
  "repository": "https://github.com/pulumiverse/pulumi-buildkite",
11
11
  "license": "Apache-2.0",
12
12
  "scripts": {
13
- "build": "tsc",
14
- "install": "node scripts/install-pulumi-plugin.js resource buildkite v2.3.0"
13
+ "build": "tsc"
15
14
  },
16
15
  "dependencies": {
17
16
  "@pulumi/pulumi": "^3.0.0"
package/package.json.bak CHANGED
@@ -10,8 +10,7 @@
10
10
  "repository": "https://github.com/pulumiverse/pulumi-buildkite",
11
11
  "license": "Apache-2.0",
12
12
  "scripts": {
13
- "build": "tsc",
14
- "install": "node scripts/install-pulumi-plugin.js resource buildkite ${VERSION}"
13
+ "build": "tsc"
15
14
  },
16
15
  "dependencies": {
17
16
  "@pulumi/pulumi": "^3.0.0"
@@ -1,11 +1,8 @@
1
1
  import * as pulumi from "@pulumi/pulumi";
2
2
  /**
3
- * ## # Data Source: pipeline
3
+ * Use this data source to look up properties on a specific pipeline. This is particularly useful for looking up the webhook URL for each pipeline.
4
4
  *
5
- * Use this data source to look up properties on a specific pipeline. This is
6
- * particularly useful for looking up the webhook URL for each pipeline.
7
- *
8
- * Buildkite Documentation: https://buildkite.com/docs/pipelines
5
+ * More info in the Buildkite [documentation](https://buildkite.com/docs/pipelines).
9
6
  *
10
7
  * ## Example Usage
11
8
  *
@@ -13,8 +10,8 @@ import * as pulumi from "@pulumi/pulumi";
13
10
  * import * as pulumi from "@pulumi/pulumi";
14
11
  * import * as buildkite from "@pulumi/buildkite";
15
12
  *
16
- * const repo2 = buildkite.Pipeline.getPipeline({
17
- * slug: "repo2",
13
+ * const pipeline = buildkite.Pipeline.getPipeline({
14
+ * slug: "buildkite",
18
15
  * });
19
16
  * ```
20
17
  */
@@ -24,7 +21,7 @@ export declare function getPipeline(args: GetPipelineArgs, opts?: pulumi.InvokeO
24
21
  */
25
22
  export interface GetPipelineArgs {
26
23
  /**
27
- * The slug of the pipeline, available in the URL of the pipeline on buildkite.com
24
+ * The slug of the pipeline.
28
25
  */
29
26
  slug: string;
30
27
  }
@@ -33,15 +30,15 @@ export interface GetPipelineArgs {
33
30
  */
34
31
  export interface GetPipelineResult {
35
32
  /**
36
- * The default branch to prefill when new builds are created or triggered, usually main or master but can be anything.
33
+ * The default branch to prefill when new builds are created or triggered.
37
34
  */
38
35
  readonly defaultBranch: string;
39
36
  /**
40
- * A description of the pipeline.
37
+ * The description of the pipeline.
41
38
  */
42
39
  readonly description: string;
43
40
  /**
44
- * The provider-assigned unique ID for this managed resource.
41
+ * The GraphQL ID of the pipeline.
45
42
  */
46
43
  readonly id: string;
47
44
  /**
@@ -52,19 +49,23 @@ export interface GetPipelineResult {
52
49
  * The git URL of the repository.
53
50
  */
54
51
  readonly repository: string;
52
+ /**
53
+ * The slug of the pipeline.
54
+ */
55
55
  readonly slug: string;
56
56
  /**
57
- * The default branch to prefill when new builds are created or triggered.
57
+ * The UUID of the pipeline.
58
+ */
59
+ readonly uuid: string;
60
+ /**
61
+ * The Buildkite webhook URL that triggers builds on this pipeline.
58
62
  */
59
63
  readonly webhookUrl: string;
60
64
  }
61
65
  /**
62
- * ## # Data Source: pipeline
63
- *
64
- * Use this data source to look up properties on a specific pipeline. This is
65
- * particularly useful for looking up the webhook URL for each pipeline.
66
+ * Use this data source to look up properties on a specific pipeline. This is particularly useful for looking up the webhook URL for each pipeline.
66
67
  *
67
- * Buildkite Documentation: https://buildkite.com/docs/pipelines
68
+ * More info in the Buildkite [documentation](https://buildkite.com/docs/pipelines).
68
69
  *
69
70
  * ## Example Usage
70
71
  *
@@ -72,8 +73,8 @@ export interface GetPipelineResult {
72
73
  * import * as pulumi from "@pulumi/pulumi";
73
74
  * import * as buildkite from "@pulumi/buildkite";
74
75
  *
75
- * const repo2 = buildkite.Pipeline.getPipeline({
76
- * slug: "repo2",
76
+ * const pipeline = buildkite.Pipeline.getPipeline({
77
+ * slug: "buildkite",
77
78
  * });
78
79
  * ```
79
80
  */
@@ -83,7 +84,7 @@ export declare function getPipelineOutput(args: GetPipelineOutputArgs, opts?: pu
83
84
  */
84
85
  export interface GetPipelineOutputArgs {
85
86
  /**
86
- * The slug of the pipeline, available in the URL of the pipeline on buildkite.com
87
+ * The slug of the pipeline.
87
88
  */
88
89
  slug: pulumi.Input<string>;
89
90
  }
@@ -6,12 +6,9 @@ exports.getPipelineOutput = exports.getPipeline = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("../utilities");
8
8
  /**
9
- * ## # Data Source: pipeline
9
+ * Use this data source to look up properties on a specific pipeline. This is particularly useful for looking up the webhook URL for each pipeline.
10
10
  *
11
- * Use this data source to look up properties on a specific pipeline. This is
12
- * particularly useful for looking up the webhook URL for each pipeline.
13
- *
14
- * Buildkite Documentation: https://buildkite.com/docs/pipelines
11
+ * More info in the Buildkite [documentation](https://buildkite.com/docs/pipelines).
15
12
  *
16
13
  * ## Example Usage
17
14
  *
@@ -19,8 +16,8 @@ const utilities = require("../utilities");
19
16
  * import * as pulumi from "@pulumi/pulumi";
20
17
  * import * as buildkite from "@pulumi/buildkite";
21
18
  *
22
- * const repo2 = buildkite.Pipeline.getPipeline({
23
- * slug: "repo2",
19
+ * const pipeline = buildkite.Pipeline.getPipeline({
20
+ * slug: "buildkite",
24
21
  * });
25
22
  * ```
26
23
  */
@@ -32,12 +29,9 @@ function getPipeline(args, opts) {
32
29
  }
33
30
  exports.getPipeline = getPipeline;
34
31
  /**
35
- * ## # Data Source: pipeline
36
- *
37
- * Use this data source to look up properties on a specific pipeline. This is
38
- * particularly useful for looking up the webhook URL for each pipeline.
32
+ * Use this data source to look up properties on a specific pipeline. This is particularly useful for looking up the webhook URL for each pipeline.
39
33
  *
40
- * Buildkite Documentation: https://buildkite.com/docs/pipelines
34
+ * More info in the Buildkite [documentation](https://buildkite.com/docs/pipelines).
41
35
  *
42
36
  * ## Example Usage
43
37
  *
@@ -45,8 +39,8 @@ exports.getPipeline = getPipeline;
45
39
  * import * as pulumi from "@pulumi/pulumi";
46
40
  * import * as buildkite from "@pulumi/buildkite";
47
41
  *
48
- * const repo2 = buildkite.Pipeline.getPipeline({
49
- * slug: "repo2",
42
+ * const pipeline = buildkite.Pipeline.getPipeline({
43
+ * slug: "buildkite",
50
44
  * });
51
45
  * ```
52
46
  */
@@ -1 +1 @@
1
- {"version":3,"file":"getPipeline.js","sourceRoot":"","sources":["../../pipeline/getPipeline.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,WAAW,CAAC,IAAqB,EAAE,IAA2B;IAE1E,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,4CAA4C,EAAE;QACvE,MAAM,EAAE,IAAI,CAAC,IAAI;KACpB,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAND,kCAMC;AA0CD;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,iBAAiB,CAAC,IAA2B,EAAE,IAA2B;IACtF,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;AACtE,CAAC;AAFD,8CAEC"}
1
+ {"version":3,"file":"getPipeline.js","sourceRoot":"","sources":["../../pipeline/getPipeline.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,WAAW,CAAC,IAAqB,EAAE,IAA2B;IAE1E,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,4CAA4C,EAAE;QACvE,MAAM,EAAE,IAAI,CAAC,IAAI;KACpB,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAND,kCAMC;AAiDD;;;;;;;;;;;;;;;GAeG;AACH,SAAgB,iBAAiB,CAAC,IAA2B,EAAE,IAA2B;IACtF,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;AACtE,CAAC;AAFD,8CAEC"}
@@ -0,0 +1,139 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ /**
3
+ * Use this data source to sign pipeline steps with a JWKS key. You will need to have
4
+ * the corresponding verification key present on the agents that run this the steps in
5
+ * this pipeline. You can then use these steps in a `buildkite.Pipeline.Pipeline` resource.
6
+ *
7
+ * See [RFC 7517](https://datatracker.ietf.org/doc/html/rfc7517) for more information
8
+ * about the JWKS format.
9
+ *
10
+ * See the Buildkite [documentation](https://buildkite.com/docs/agent/v3/signed_pipelines)
11
+ * for more info about signed pipelines.
12
+ *
13
+ * ## Example Usage
14
+ *
15
+ * ```typescript
16
+ * import * as pulumi from "@pulumi/pulumi";
17
+ * import * as buildkite from "@pulumi/buildkite";
18
+ * import * as buildkite from "@pulumiverse/buildkite";
19
+ *
20
+ * const repository = "git@github.com:my-org/my-repo.git";
21
+ * const my-steps = buildkite.Pipeline.getSignedSteps({
22
+ * repository: repository,
23
+ * jwksFile: "/path/to/my/jwks.json",
24
+ * jwksKeyId: "my-key",
25
+ * unsignedSteps: `steps:
26
+ * - label: ":pipeline:"
27
+ * command: buildkite-agent pipeline upload
28
+ * `,
29
+ * });
30
+ * const my_pipeline = new buildkite.pipeline.Pipeline("my-pipeline", {
31
+ * repository: repository,
32
+ * steps: my_steps.then(my_steps => my_steps.steps),
33
+ * });
34
+ * ```
35
+ */
36
+ export declare function getSignedSteps(args: GetSignedStepsArgs, opts?: pulumi.InvokeOptions): Promise<GetSignedStepsResult>;
37
+ /**
38
+ * A collection of arguments for invoking getSignedSteps.
39
+ */
40
+ export interface GetSignedStepsArgs {
41
+ /**
42
+ * The JSON Web Key Set (JWKS) to use for signing.
43
+ * If `jwksKeyId` is not specified, and the set contains exactly one key, that key will
44
+ * be used.
45
+ */
46
+ jwks?: string;
47
+ jwksFile?: string;
48
+ jwksKeyId?: string;
49
+ /**
50
+ * The repository that will be checked out in a build of the pipeline.
51
+ */
52
+ repository: string;
53
+ /**
54
+ * The steps to sign in YAML format.
55
+ */
56
+ unsignedSteps: string;
57
+ }
58
+ /**
59
+ * A collection of values returned by getSignedSteps.
60
+ */
61
+ export interface GetSignedStepsResult {
62
+ /**
63
+ * The provider-assigned unique ID for this managed resource.
64
+ */
65
+ readonly id: string;
66
+ /**
67
+ * The JSON Web Key Set (JWKS) to use for signing.
68
+ * If `jwksKeyId` is not specified, and the set contains exactly one key, that key will
69
+ * be used.
70
+ */
71
+ readonly jwks?: string;
72
+ readonly jwksFile?: string;
73
+ readonly jwksKeyId?: string;
74
+ /**
75
+ * The repository that will be checked out in a build of the pipeline.
76
+ */
77
+ readonly repository: string;
78
+ readonly steps: string;
79
+ /**
80
+ * The steps to sign in YAML format.
81
+ */
82
+ readonly unsignedSteps: string;
83
+ }
84
+ /**
85
+ * Use this data source to sign pipeline steps with a JWKS key. You will need to have
86
+ * the corresponding verification key present on the agents that run this the steps in
87
+ * this pipeline. You can then use these steps in a `buildkite.Pipeline.Pipeline` resource.
88
+ *
89
+ * See [RFC 7517](https://datatracker.ietf.org/doc/html/rfc7517) for more information
90
+ * about the JWKS format.
91
+ *
92
+ * See the Buildkite [documentation](https://buildkite.com/docs/agent/v3/signed_pipelines)
93
+ * for more info about signed pipelines.
94
+ *
95
+ * ## Example Usage
96
+ *
97
+ * ```typescript
98
+ * import * as pulumi from "@pulumi/pulumi";
99
+ * import * as buildkite from "@pulumi/buildkite";
100
+ * import * as buildkite from "@pulumiverse/buildkite";
101
+ *
102
+ * const repository = "git@github.com:my-org/my-repo.git";
103
+ * const my-steps = buildkite.Pipeline.getSignedSteps({
104
+ * repository: repository,
105
+ * jwksFile: "/path/to/my/jwks.json",
106
+ * jwksKeyId: "my-key",
107
+ * unsignedSteps: `steps:
108
+ * - label: ":pipeline:"
109
+ * command: buildkite-agent pipeline upload
110
+ * `,
111
+ * });
112
+ * const my_pipeline = new buildkite.pipeline.Pipeline("my-pipeline", {
113
+ * repository: repository,
114
+ * steps: my_steps.then(my_steps => my_steps.steps),
115
+ * });
116
+ * ```
117
+ */
118
+ export declare function getSignedStepsOutput(args: GetSignedStepsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetSignedStepsResult>;
119
+ /**
120
+ * A collection of arguments for invoking getSignedSteps.
121
+ */
122
+ export interface GetSignedStepsOutputArgs {
123
+ /**
124
+ * The JSON Web Key Set (JWKS) to use for signing.
125
+ * If `jwksKeyId` is not specified, and the set contains exactly one key, that key will
126
+ * be used.
127
+ */
128
+ jwks?: pulumi.Input<string>;
129
+ jwksFile?: pulumi.Input<string>;
130
+ jwksKeyId?: pulumi.Input<string>;
131
+ /**
132
+ * The repository that will be checked out in a build of the pipeline.
133
+ */
134
+ repository: pulumi.Input<string>;
135
+ /**
136
+ * The steps to sign in YAML format.
137
+ */
138
+ unsignedSteps: pulumi.Input<string>;
139
+ }