@pulumiverse/talos 0.1.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 (52) hide show
  1. package/LICENSE +373 -0
  2. package/README.md +19 -0
  3. package/client/configuration.d.ts +112 -0
  4. package/client/configuration.js +58 -0
  5. package/client/configuration.js.map +1 -0
  6. package/client/index.d.ts +3 -0
  7. package/client/index.js +10 -0
  8. package/client/index.js.map +1 -0
  9. package/cluster/index.d.ts +3 -0
  10. package/cluster/index.js +10 -0
  11. package/cluster/index.js.map +1 -0
  12. package/cluster/kubeconfig.d.ts +89 -0
  13. package/cluster/kubeconfig.js +29 -0
  14. package/cluster/kubeconfig.js.map +1 -0
  15. package/index.d.ts +8 -0
  16. package/index.js +28 -0
  17. package/index.js.map +1 -0
  18. package/machine/bootstrap.d.ts +88 -0
  19. package/machine/bootstrap.js +72 -0
  20. package/machine/bootstrap.js.map +1 -0
  21. package/machine/configuration.d.ts +178 -0
  22. package/machine/configuration.js +69 -0
  23. package/machine/configuration.js.map +1 -0
  24. package/machine/configurationApply.d.ts +124 -0
  25. package/machine/configurationApply.js +77 -0
  26. package/machine/configurationApply.js.map +1 -0
  27. package/machine/disks.d.ts +127 -0
  28. package/machine/disks.js +71 -0
  29. package/machine/disks.js.map +1 -0
  30. package/machine/index.d.ts +15 -0
  31. package/machine/index.js +38 -0
  32. package/machine/index.js.map +1 -0
  33. package/machine/secrets.d.ts +86 -0
  34. package/machine/secrets.js +73 -0
  35. package/machine/secrets.js.map +1 -0
  36. package/package.json +29 -0
  37. package/package.json.bak +29 -0
  38. package/provider.d.ts +27 -0
  39. package/provider.js +44 -0
  40. package/provider.js.map +1 -0
  41. package/types/index.d.ts +3 -0
  42. package/types/index.js +11 -0
  43. package/types/index.js.map +1 -0
  44. package/types/input.d.ts +589 -0
  45. package/types/input.js +5 -0
  46. package/types/input.js.map +1 -0
  47. package/types/output.d.ts +439 -0
  48. package/types/output.js +5 -0
  49. package/types/output.js.map +1 -0
  50. package/utilities.d.ts +4 -0
  51. package/utilities.js +69 -0
  52. package/utilities.js.map +1 -0
@@ -0,0 +1,89 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "../types/input";
3
+ import * as outputs from "../types/output";
4
+ /**
5
+ * Retrieves the kubeconfig for a Talos cluster
6
+ */
7
+ export declare function kubeconfig(args: KubeconfigArgs, opts?: pulumi.InvokeOptions): Promise<KubeconfigResult>;
8
+ /**
9
+ * A collection of arguments for invoking Kubeconfig.
10
+ */
11
+ export interface KubeconfigArgs {
12
+ /**
13
+ * The client configuration data
14
+ */
15
+ clientConfiguration: inputs.cluster.KubeconfigClientConfiguration;
16
+ /**
17
+ * endpoint to use for the talosclient. if not set, the node value will be used
18
+ */
19
+ endpoint?: string;
20
+ /**
21
+ * controlplane node to retrieve the kubeconfig from
22
+ */
23
+ node: string;
24
+ timeouts?: inputs.cluster.KubeconfigTimeouts;
25
+ /**
26
+ * Wait for the kubernetes api to be available
27
+ */
28
+ wait?: boolean;
29
+ }
30
+ /**
31
+ * A collection of values returned by Kubeconfig.
32
+ */
33
+ export interface KubeconfigResult {
34
+ /**
35
+ * The client configuration data
36
+ */
37
+ readonly clientConfiguration: outputs.cluster.KubeconfigClientConfiguration;
38
+ /**
39
+ * endpoint to use for the talosclient. if not set, the node value will be used
40
+ */
41
+ readonly endpoint: string;
42
+ /**
43
+ * The ID of this resource.
44
+ */
45
+ readonly id: string;
46
+ /**
47
+ * The raw kubeconfig
48
+ */
49
+ readonly kubeconfigRaw: string;
50
+ /**
51
+ * The kubernetes client configuration
52
+ */
53
+ readonly kubernetesClientConfiguration: outputs.cluster.KubeconfigKubernetesClientConfiguration;
54
+ /**
55
+ * controlplane node to retrieve the kubeconfig from
56
+ */
57
+ readonly node: string;
58
+ readonly timeouts?: outputs.cluster.KubeconfigTimeouts;
59
+ /**
60
+ * Wait for the kubernetes api to be available
61
+ */
62
+ readonly wait?: boolean;
63
+ }
64
+ /**
65
+ * Retrieves the kubeconfig for a Talos cluster
66
+ */
67
+ export declare function kubeconfigOutput(args: KubeconfigOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<KubeconfigResult>;
68
+ /**
69
+ * A collection of arguments for invoking Kubeconfig.
70
+ */
71
+ export interface KubeconfigOutputArgs {
72
+ /**
73
+ * The client configuration data
74
+ */
75
+ clientConfiguration: pulumi.Input<inputs.cluster.KubeconfigClientConfigurationArgs>;
76
+ /**
77
+ * endpoint to use for the talosclient. if not set, the node value will be used
78
+ */
79
+ endpoint?: pulumi.Input<string>;
80
+ /**
81
+ * controlplane node to retrieve the kubeconfig from
82
+ */
83
+ node: pulumi.Input<string>;
84
+ timeouts?: pulumi.Input<inputs.cluster.KubeconfigTimeoutsArgs>;
85
+ /**
86
+ * Wait for the kubernetes api to be available
87
+ */
88
+ wait?: pulumi.Input<boolean>;
89
+ }
@@ -0,0 +1,29 @@
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.kubeconfigOutput = exports.kubeconfig = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Retrieves the kubeconfig for a Talos cluster
10
+ */
11
+ function kubeconfig(args, opts) {
12
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
13
+ return pulumi.runtime.invoke("talos:cluster/kubeconfig:Kubeconfig", {
14
+ "clientConfiguration": args.clientConfiguration,
15
+ "endpoint": args.endpoint,
16
+ "node": args.node,
17
+ "timeouts": args.timeouts,
18
+ "wait": args.wait,
19
+ }, opts);
20
+ }
21
+ exports.kubeconfig = kubeconfig;
22
+ /**
23
+ * Retrieves the kubeconfig for a Talos cluster
24
+ */
25
+ function kubeconfigOutput(args, opts) {
26
+ return pulumi.output(args).apply((a) => kubeconfig(a, opts));
27
+ }
28
+ exports.kubeconfigOutput = kubeconfigOutput;
29
+ //# sourceMappingURL=kubeconfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kubeconfig.js","sourceRoot":"","sources":["../../cluster/kubeconfig.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,0CAA0C;AAE1C;;GAEG;AACH,SAAgB,UAAU,CAAC,IAAoB,EAAE,IAA2B;IAExE,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,qCAAqC,EAAE;QAChE,qBAAqB,EAAE,IAAI,CAAC,mBAAmB;QAC/C,UAAU,EAAE,IAAI,CAAC,QAAQ;QACzB,MAAM,EAAE,IAAI,CAAC,IAAI;QACjB,UAAU,EAAE,IAAI,CAAC,QAAQ;QACzB,MAAM,EAAE,IAAI,CAAC,IAAI;KACpB,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAVD,gCAUC;AA2DD;;GAEG;AACH,SAAgB,gBAAgB,CAAC,IAA0B,EAAE,IAA2B;IACpF,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;AACrE,CAAC;AAFD,4CAEC"}
package/index.d.ts ADDED
@@ -0,0 +1,8 @@
1
+ export { ProviderArgs } from "./provider";
2
+ export type Provider = import("./provider").Provider;
3
+ export declare const Provider: typeof import("./provider").Provider;
4
+ import * as client from "./client";
5
+ import * as cluster from "./cluster";
6
+ import * as machine from "./machine";
7
+ import * as types from "./types";
8
+ export { client, cluster, machine, types, };
package/index.js ADDED
@@ -0,0 +1,28 @@
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.types = exports.machine = exports.cluster = exports.client = exports.Provider = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("./utilities");
8
+ exports.Provider = null;
9
+ utilities.lazyLoad(exports, ["Provider"], () => require("./provider"));
10
+ // Export sub-modules:
11
+ const client = require("./client");
12
+ exports.client = client;
13
+ const cluster = require("./cluster");
14
+ exports.cluster = cluster;
15
+ const machine = require("./machine");
16
+ exports.machine = machine;
17
+ const types = require("./types");
18
+ exports.types = types;
19
+ pulumi.runtime.registerResourcePackage("talos", {
20
+ version: utilities.getVersion(),
21
+ constructProvider: (name, type, urn) => {
22
+ if (type !== "pulumi:providers:talos") {
23
+ throw new Error(`unknown provider type ${type}`);
24
+ }
25
+ return new exports.Provider(name, undefined, { urn });
26
+ },
27
+ });
28
+ //# sourceMappingURL=index.js.map
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AACzC,yCAAyC;AAK5B,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,sBAAsB;AACtB,mCAAmC;AAM/B,wBAAM;AALV,qCAAqC;AAMjC,0BAAO;AALX,qCAAqC;AAMjC,0BAAO;AALX,iCAAiC;AAM7B,sBAAK;AAET,MAAM,CAAC,OAAO,CAAC,uBAAuB,CAAC,OAAO,EAAE;IAC5C,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE;IAC/B,iBAAiB,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAA2B,EAAE;QACpF,IAAI,IAAI,KAAK,wBAAwB,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;SACpD;QACD,OAAO,IAAI,gBAAQ,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;IACvD,CAAC;CACJ,CAAC,CAAC"}
@@ -0,0 +1,88 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "../types/input";
3
+ import * as outputs from "../types/output";
4
+ /**
5
+ * The machine bootstrap resource allows you to bootstrap a Talos node.
6
+ *
7
+ * ## Import
8
+ *
9
+ * terraform machine bootstrap can be imported to let terraform know that the machine is already bootstrapped
10
+ *
11
+ * ```sh
12
+ * $ pulumi import talos:machine/bootstrap:Bootstrap this <any id>
13
+ * ```
14
+ */
15
+ export declare class Bootstrap extends pulumi.CustomResource {
16
+ /**
17
+ * Get an existing Bootstrap resource's state with the given name, ID, and optional extra
18
+ * properties used to qualify the lookup.
19
+ *
20
+ * @param name The _unique_ name of the resulting resource.
21
+ * @param id The _unique_ provider ID of the resource to lookup.
22
+ * @param state Any extra arguments used during the lookup.
23
+ * @param opts Optional settings to control the behavior of the CustomResource.
24
+ */
25
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BootstrapState, opts?: pulumi.CustomResourceOptions): Bootstrap;
26
+ /**
27
+ * Returns true if the given object is an instance of Bootstrap. This is designed to work even
28
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
29
+ */
30
+ static isInstance(obj: any): obj is Bootstrap;
31
+ /**
32
+ * The client configuration data
33
+ */
34
+ readonly clientConfiguration: pulumi.Output<outputs.machine.BootstrapClientConfiguration>;
35
+ /**
36
+ * The endpoint of the machine to bootstrap
37
+ */
38
+ readonly endpoint: pulumi.Output<string>;
39
+ /**
40
+ * The name of the node to bootstrap
41
+ */
42
+ readonly node: pulumi.Output<string>;
43
+ readonly timeouts: pulumi.Output<outputs.machine.BootstrapTimeouts | undefined>;
44
+ /**
45
+ * Create a Bootstrap resource with the given unique name, arguments, and options.
46
+ *
47
+ * @param name The _unique_ name of the resource.
48
+ * @param args The arguments to use to populate this resource's properties.
49
+ * @param opts A bag of options that control this resource's behavior.
50
+ */
51
+ constructor(name: string, args: BootstrapArgs, opts?: pulumi.CustomResourceOptions);
52
+ }
53
+ /**
54
+ * Input properties used for looking up and filtering Bootstrap resources.
55
+ */
56
+ export interface BootstrapState {
57
+ /**
58
+ * The client configuration data
59
+ */
60
+ clientConfiguration?: pulumi.Input<inputs.machine.BootstrapClientConfiguration>;
61
+ /**
62
+ * The endpoint of the machine to bootstrap
63
+ */
64
+ endpoint?: pulumi.Input<string>;
65
+ /**
66
+ * The name of the node to bootstrap
67
+ */
68
+ node?: pulumi.Input<string>;
69
+ timeouts?: pulumi.Input<inputs.machine.BootstrapTimeouts>;
70
+ }
71
+ /**
72
+ * The set of arguments for constructing a Bootstrap resource.
73
+ */
74
+ export interface BootstrapArgs {
75
+ /**
76
+ * The client configuration data
77
+ */
78
+ clientConfiguration: pulumi.Input<inputs.machine.BootstrapClientConfiguration>;
79
+ /**
80
+ * The endpoint of the machine to bootstrap
81
+ */
82
+ endpoint?: pulumi.Input<string>;
83
+ /**
84
+ * The name of the node to bootstrap
85
+ */
86
+ node: pulumi.Input<string>;
87
+ timeouts?: pulumi.Input<inputs.machine.BootstrapTimeouts>;
88
+ }
@@ -0,0 +1,72 @@
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.Bootstrap = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * The machine bootstrap resource allows you to bootstrap a Talos node.
10
+ *
11
+ * ## Import
12
+ *
13
+ * terraform machine bootstrap can be imported to let terraform know that the machine is already bootstrapped
14
+ *
15
+ * ```sh
16
+ * $ pulumi import talos:machine/bootstrap:Bootstrap this <any id>
17
+ * ```
18
+ */
19
+ class Bootstrap extends pulumi.CustomResource {
20
+ /**
21
+ * Get an existing Bootstrap resource's state with the given name, ID, and optional extra
22
+ * properties used to qualify the lookup.
23
+ *
24
+ * @param name The _unique_ name of the resulting resource.
25
+ * @param id The _unique_ provider ID of the resource to lookup.
26
+ * @param state Any extra arguments used during the lookup.
27
+ * @param opts Optional settings to control the behavior of the CustomResource.
28
+ */
29
+ static get(name, id, state, opts) {
30
+ return new Bootstrap(name, state, Object.assign(Object.assign({}, opts), { id: id }));
31
+ }
32
+ /**
33
+ * Returns true if the given object is an instance of Bootstrap. This is designed to work even
34
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
35
+ */
36
+ static isInstance(obj) {
37
+ if (obj === undefined || obj === null) {
38
+ return false;
39
+ }
40
+ return obj['__pulumiType'] === Bootstrap.__pulumiType;
41
+ }
42
+ constructor(name, argsOrState, opts) {
43
+ let resourceInputs = {};
44
+ opts = opts || {};
45
+ if (opts.id) {
46
+ const state = argsOrState;
47
+ resourceInputs["clientConfiguration"] = state ? state.clientConfiguration : undefined;
48
+ resourceInputs["endpoint"] = state ? state.endpoint : undefined;
49
+ resourceInputs["node"] = state ? state.node : undefined;
50
+ resourceInputs["timeouts"] = state ? state.timeouts : undefined;
51
+ }
52
+ else {
53
+ const args = argsOrState;
54
+ if ((!args || args.clientConfiguration === undefined) && !opts.urn) {
55
+ throw new Error("Missing required property 'clientConfiguration'");
56
+ }
57
+ if ((!args || args.node === undefined) && !opts.urn) {
58
+ throw new Error("Missing required property 'node'");
59
+ }
60
+ resourceInputs["clientConfiguration"] = args ? args.clientConfiguration : undefined;
61
+ resourceInputs["endpoint"] = args ? args.endpoint : undefined;
62
+ resourceInputs["node"] = args ? args.node : undefined;
63
+ resourceInputs["timeouts"] = args ? args.timeouts : undefined;
64
+ }
65
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
66
+ super(Bootstrap.__pulumiType, name, resourceInputs, opts);
67
+ }
68
+ }
69
+ exports.Bootstrap = Bootstrap;
70
+ /** @internal */
71
+ Bootstrap.__pulumiType = 'talos:machine/bootstrap:Bootstrap';
72
+ //# sourceMappingURL=bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../machine/bootstrap.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,0CAA0C;AAE1C;;;;;;;;;;GAUG;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,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAChE,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,SAAS,CAAC,YAAY,CAAC;IAC1D,CAAC;IAwBD,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,qBAAqB,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;YACtF,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAChE,cAAc,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,cAAc,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SACnE;aAAM;YACH,MAAM,IAAI,GAAG,WAAwC,CAAC;YACtD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChE,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;aACtE;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACjD,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;aACvD;YACD,cAAc,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;YACpF,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SACjE;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;;AA1EL,8BA2EC;AA7DG,gBAAgB;AACO,sBAAY,GAAG,mCAAmC,CAAC"}
@@ -0,0 +1,178 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import * as inputs from "../types/input";
3
+ import * as outputs from "../types/output";
4
+ /**
5
+ * Generate a machine configuration for a node type
6
+ *
7
+ * > **Note:** It is recommended to set the optional `talosVersion` attribute. Otherwise when using a new version of the provider with a new major version of the Talos SDK, new machineconfig features will be enabled by default which could cause unexpected behavior.
8
+ *
9
+ * ## Example Usage
10
+ *
11
+ * ```typescript
12
+ * import * as pulumi from "@pulumi/pulumi";
13
+ * import * as talos from "@pulumi/talos";
14
+ * import * as talos from "@pulumiverse/talos";
15
+ *
16
+ * const thisSecrets = new talos.machine.Secrets("thisSecrets", {});
17
+ * const thisConfiguration = talos.machine.ConfigurationOutput({
18
+ * clusterName: "example-cluster",
19
+ * machineType: "controlplane",
20
+ * clusterEndpoint: "https://cluster.local:6443",
21
+ * machineSecrets: thisSecrets.machineSecrets,
22
+ * });
23
+ * ```
24
+ */
25
+ export declare function configuration(args: ConfigurationArgs, opts?: pulumi.InvokeOptions): Promise<ConfigurationResult>;
26
+ /**
27
+ * A collection of arguments for invoking Configuration.
28
+ */
29
+ export interface ConfigurationArgs {
30
+ /**
31
+ * The endpoint of the talos kubernetes cluster
32
+ */
33
+ clusterEndpoint: string;
34
+ /**
35
+ * The name of the talos kubernetes cluster
36
+ */
37
+ clusterName: string;
38
+ /**
39
+ * The list of config patches to apply to the generated configuration
40
+ */
41
+ configPatches?: string[];
42
+ /**
43
+ * Whether to generate documentation for the generated configuration
44
+ */
45
+ docs?: boolean;
46
+ /**
47
+ * Whether to generate examples for the generated configuration
48
+ */
49
+ examples?: boolean;
50
+ /**
51
+ * The version of kubernetes to use
52
+ */
53
+ kubernetesVersion?: string;
54
+ /**
55
+ * The secrets for the talos cluster
56
+ */
57
+ machineSecrets: inputs.machine.ConfigurationMachineSecrets;
58
+ /**
59
+ * The type of machine to generate the configuration for
60
+ */
61
+ machineType: string;
62
+ /**
63
+ * The version of talos features to use in generated machine configuration
64
+ */
65
+ talosVersion?: string;
66
+ }
67
+ /**
68
+ * A collection of values returned by Configuration.
69
+ */
70
+ export interface ConfigurationResult {
71
+ /**
72
+ * The endpoint of the talos kubernetes cluster
73
+ */
74
+ readonly clusterEndpoint: string;
75
+ /**
76
+ * The name of the talos kubernetes cluster
77
+ */
78
+ readonly clusterName: string;
79
+ /**
80
+ * The list of config patches to apply to the generated configuration
81
+ */
82
+ readonly configPatches?: string[];
83
+ /**
84
+ * Whether to generate documentation for the generated configuration
85
+ */
86
+ readonly docs?: boolean;
87
+ /**
88
+ * Whether to generate examples for the generated configuration
89
+ */
90
+ readonly examples?: boolean;
91
+ /**
92
+ * The ID of this resource.
93
+ */
94
+ readonly id: string;
95
+ /**
96
+ * The version of kubernetes to use
97
+ */
98
+ readonly kubernetesVersion?: string;
99
+ /**
100
+ * The generated machine configuration
101
+ */
102
+ readonly machineConfiguration: string;
103
+ /**
104
+ * The secrets for the talos cluster
105
+ */
106
+ readonly machineSecrets: outputs.machine.ConfigurationMachineSecrets;
107
+ /**
108
+ * The type of machine to generate the configuration for
109
+ */
110
+ readonly machineType: string;
111
+ /**
112
+ * The version of talos features to use in generated machine configuration
113
+ */
114
+ readonly talosVersion?: string;
115
+ }
116
+ /**
117
+ * Generate a machine configuration for a node type
118
+ *
119
+ * > **Note:** It is recommended to set the optional `talosVersion` attribute. Otherwise when using a new version of the provider with a new major version of the Talos SDK, new machineconfig features will be enabled by default which could cause unexpected behavior.
120
+ *
121
+ * ## Example Usage
122
+ *
123
+ * ```typescript
124
+ * import * as pulumi from "@pulumi/pulumi";
125
+ * import * as talos from "@pulumi/talos";
126
+ * import * as talos from "@pulumiverse/talos";
127
+ *
128
+ * const thisSecrets = new talos.machine.Secrets("thisSecrets", {});
129
+ * const thisConfiguration = talos.machine.ConfigurationOutput({
130
+ * clusterName: "example-cluster",
131
+ * machineType: "controlplane",
132
+ * clusterEndpoint: "https://cluster.local:6443",
133
+ * machineSecrets: thisSecrets.machineSecrets,
134
+ * });
135
+ * ```
136
+ */
137
+ export declare function configurationOutput(args: ConfigurationOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<ConfigurationResult>;
138
+ /**
139
+ * A collection of arguments for invoking Configuration.
140
+ */
141
+ export interface ConfigurationOutputArgs {
142
+ /**
143
+ * The endpoint of the talos kubernetes cluster
144
+ */
145
+ clusterEndpoint: pulumi.Input<string>;
146
+ /**
147
+ * The name of the talos kubernetes cluster
148
+ */
149
+ clusterName: pulumi.Input<string>;
150
+ /**
151
+ * The list of config patches to apply to the generated configuration
152
+ */
153
+ configPatches?: pulumi.Input<pulumi.Input<string>[]>;
154
+ /**
155
+ * Whether to generate documentation for the generated configuration
156
+ */
157
+ docs?: pulumi.Input<boolean>;
158
+ /**
159
+ * Whether to generate examples for the generated configuration
160
+ */
161
+ examples?: pulumi.Input<boolean>;
162
+ /**
163
+ * The version of kubernetes to use
164
+ */
165
+ kubernetesVersion?: pulumi.Input<string>;
166
+ /**
167
+ * The secrets for the talos cluster
168
+ */
169
+ machineSecrets: pulumi.Input<inputs.machine.ConfigurationMachineSecretsArgs>;
170
+ /**
171
+ * The type of machine to generate the configuration for
172
+ */
173
+ machineType: pulumi.Input<string>;
174
+ /**
175
+ * The version of talos features to use in generated machine configuration
176
+ */
177
+ talosVersion?: pulumi.Input<string>;
178
+ }
@@ -0,0 +1,69 @@
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.configurationOutput = exports.configuration = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Generate a machine configuration for a node type
10
+ *
11
+ * > **Note:** It is recommended to set the optional `talosVersion` attribute. Otherwise when using a new version of the provider with a new major version of the Talos SDK, new machineconfig features will be enabled by default which could cause unexpected behavior.
12
+ *
13
+ * ## Example Usage
14
+ *
15
+ * ```typescript
16
+ * import * as pulumi from "@pulumi/pulumi";
17
+ * import * as talos from "@pulumi/talos";
18
+ * import * as talos from "@pulumiverse/talos";
19
+ *
20
+ * const thisSecrets = new talos.machine.Secrets("thisSecrets", {});
21
+ * const thisConfiguration = talos.machine.ConfigurationOutput({
22
+ * clusterName: "example-cluster",
23
+ * machineType: "controlplane",
24
+ * clusterEndpoint: "https://cluster.local:6443",
25
+ * machineSecrets: thisSecrets.machineSecrets,
26
+ * });
27
+ * ```
28
+ */
29
+ function configuration(args, opts) {
30
+ opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {});
31
+ return pulumi.runtime.invoke("talos:machine/configuration:Configuration", {
32
+ "clusterEndpoint": args.clusterEndpoint,
33
+ "clusterName": args.clusterName,
34
+ "configPatches": args.configPatches,
35
+ "docs": args.docs,
36
+ "examples": args.examples,
37
+ "kubernetesVersion": args.kubernetesVersion,
38
+ "machineSecrets": args.machineSecrets,
39
+ "machineType": args.machineType,
40
+ "talosVersion": args.talosVersion,
41
+ }, opts);
42
+ }
43
+ exports.configuration = configuration;
44
+ /**
45
+ * Generate a machine configuration for a node type
46
+ *
47
+ * > **Note:** It is recommended to set the optional `talosVersion` attribute. Otherwise when using a new version of the provider with a new major version of the Talos SDK, new machineconfig features will be enabled by default which could cause unexpected behavior.
48
+ *
49
+ * ## Example Usage
50
+ *
51
+ * ```typescript
52
+ * import * as pulumi from "@pulumi/pulumi";
53
+ * import * as talos from "@pulumi/talos";
54
+ * import * as talos from "@pulumiverse/talos";
55
+ *
56
+ * const thisSecrets = new talos.machine.Secrets("thisSecrets", {});
57
+ * const thisConfiguration = talos.machine.ConfigurationOutput({
58
+ * clusterName: "example-cluster",
59
+ * machineType: "controlplane",
60
+ * clusterEndpoint: "https://cluster.local:6443",
61
+ * machineSecrets: thisSecrets.machineSecrets,
62
+ * });
63
+ * ```
64
+ */
65
+ function configurationOutput(args, opts) {
66
+ return pulumi.output(args).apply((a) => configuration(a, opts));
67
+ }
68
+ exports.configurationOutput = configurationOutput;
69
+ //# sourceMappingURL=configuration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../machine/configuration.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAGzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,aAAa,CAAC,IAAuB,EAAE,IAA2B;IAE9E,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,2CAA2C,EAAE;QACtE,iBAAiB,EAAE,IAAI,CAAC,eAAe;QACvC,aAAa,EAAE,IAAI,CAAC,WAAW;QAC/B,eAAe,EAAE,IAAI,CAAC,aAAa;QACnC,MAAM,EAAE,IAAI,CAAC,IAAI;QACjB,UAAU,EAAE,IAAI,CAAC,QAAQ;QACzB,mBAAmB,EAAE,IAAI,CAAC,iBAAiB;QAC3C,gBAAgB,EAAE,IAAI,CAAC,cAAc;QACrC,aAAa,EAAE,IAAI,CAAC,WAAW;QAC/B,cAAc,EAAE,IAAI,CAAC,YAAY;KACpC,EAAE,IAAI,CAAC,CAAC;AACb,CAAC;AAdD,sCAcC;AA6FD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,mBAAmB,CAAC,IAA6B,EAAE,IAA2B;IAC1F,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;AACxE,CAAC;AAFD,kDAEC"}