@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.
- package/LICENSE +373 -0
- package/README.md +19 -0
- package/client/configuration.d.ts +112 -0
- package/client/configuration.js +58 -0
- package/client/configuration.js.map +1 -0
- package/client/index.d.ts +3 -0
- package/client/index.js +10 -0
- package/client/index.js.map +1 -0
- package/cluster/index.d.ts +3 -0
- package/cluster/index.js +10 -0
- package/cluster/index.js.map +1 -0
- package/cluster/kubeconfig.d.ts +89 -0
- package/cluster/kubeconfig.js +29 -0
- package/cluster/kubeconfig.js.map +1 -0
- package/index.d.ts +8 -0
- package/index.js +28 -0
- package/index.js.map +1 -0
- package/machine/bootstrap.d.ts +88 -0
- package/machine/bootstrap.js +72 -0
- package/machine/bootstrap.js.map +1 -0
- package/machine/configuration.d.ts +178 -0
- package/machine/configuration.js +69 -0
- package/machine/configuration.js.map +1 -0
- package/machine/configurationApply.d.ts +124 -0
- package/machine/configurationApply.js +77 -0
- package/machine/configurationApply.js.map +1 -0
- package/machine/disks.d.ts +127 -0
- package/machine/disks.js +71 -0
- package/machine/disks.js.map +1 -0
- package/machine/index.d.ts +15 -0
- package/machine/index.js +38 -0
- package/machine/index.js.map +1 -0
- package/machine/secrets.d.ts +86 -0
- package/machine/secrets.js +73 -0
- package/machine/secrets.js.map +1 -0
- package/package.json +29 -0
- package/package.json.bak +29 -0
- package/provider.d.ts +27 -0
- package/provider.js +44 -0
- package/provider.js.map +1 -0
- package/types/index.d.ts +3 -0
- package/types/index.js +11 -0
- package/types/index.js.map +1 -0
- package/types/input.d.ts +589 -0
- package/types/input.js +5 -0
- package/types/input.js.map +1 -0
- package/types/output.d.ts +439 -0
- package/types/output.js +5 -0
- package/types/output.js.map +1 -0
- package/utilities.d.ts +4 -0
- package/utilities.js +69 -0
- 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"}
|