@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,439 @@
1
+ import * as outputs from "../types/output";
2
+ export declare namespace client {
3
+ interface ConfigurationClientConfiguration {
4
+ /**
5
+ * The client CA certificate
6
+ */
7
+ caCertificate: string;
8
+ /**
9
+ * The client certificate
10
+ */
11
+ clientCertificate: string;
12
+ /**
13
+ * The client key
14
+ */
15
+ clientKey: string;
16
+ }
17
+ }
18
+ export declare namespace cluster {
19
+ interface KubeconfigClientConfiguration {
20
+ /**
21
+ * The client CA certificate
22
+ */
23
+ caCertificate: string;
24
+ /**
25
+ * The client certificate
26
+ */
27
+ clientCertificate: string;
28
+ /**
29
+ * The client key
30
+ */
31
+ clientKey: string;
32
+ }
33
+ interface KubeconfigKubernetesClientConfiguration {
34
+ /**
35
+ * The kubernetes CA certificate
36
+ */
37
+ caCertificate: string;
38
+ /**
39
+ * The kubernetes client certificate
40
+ */
41
+ clientCertificate: string;
42
+ /**
43
+ * The kubernetes client key
44
+ */
45
+ clientKey: string;
46
+ /**
47
+ * The kubernetes host
48
+ */
49
+ host: string;
50
+ }
51
+ interface KubeconfigTimeouts {
52
+ /**
53
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
54
+ */
55
+ read?: string;
56
+ }
57
+ }
58
+ export declare namespace machine {
59
+ interface BootstrapClientConfiguration {
60
+ /**
61
+ * The client CA certificate
62
+ */
63
+ caCertificate: string;
64
+ /**
65
+ * The client certificate
66
+ */
67
+ clientCertificate: string;
68
+ /**
69
+ * The client key
70
+ */
71
+ clientKey: string;
72
+ }
73
+ interface BootstrapTimeouts {
74
+ /**
75
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
76
+ */
77
+ create?: string;
78
+ }
79
+ interface ConfigurationApplyClientConfiguration {
80
+ /**
81
+ * The client CA certificate
82
+ */
83
+ caCertificate: string;
84
+ /**
85
+ * The client certificate
86
+ */
87
+ clientCertificate: string;
88
+ /**
89
+ * The client key
90
+ */
91
+ clientKey: string;
92
+ }
93
+ interface ConfigurationMachineSecrets {
94
+ /**
95
+ * The certs for the talos kubernetes cluster
96
+ */
97
+ certs: outputs.machine.ConfigurationMachineSecretsCerts;
98
+ /**
99
+ * The cluster secrets
100
+ */
101
+ cluster: outputs.machine.ConfigurationMachineSecretsCluster;
102
+ /**
103
+ * The secrets for the talos kubernetes cluster
104
+ */
105
+ secrets: outputs.machine.ConfigurationMachineSecretsSecrets;
106
+ /**
107
+ * The trustd info for the talos kubernetes cluster
108
+ */
109
+ trustdinfo: outputs.machine.ConfigurationMachineSecretsTrustdinfo;
110
+ }
111
+ interface ConfigurationMachineSecretsCerts {
112
+ /**
113
+ * The certificate and key pair
114
+ */
115
+ etcd: outputs.machine.ConfigurationMachineSecretsCertsEtcd;
116
+ /**
117
+ * The certificate and key pair
118
+ */
119
+ k8s: outputs.machine.ConfigurationMachineSecretsCertsK8s;
120
+ /**
121
+ * The certificate and key pair
122
+ */
123
+ k8sAggregator: outputs.machine.ConfigurationMachineSecretsCertsK8sAggregator;
124
+ k8sServiceaccount: outputs.machine.ConfigurationMachineSecretsCertsK8sServiceaccount;
125
+ /**
126
+ * The certificate and key pair
127
+ */
128
+ os: outputs.machine.ConfigurationMachineSecretsCertsOs;
129
+ }
130
+ interface ConfigurationMachineSecretsCertsEtcd {
131
+ /**
132
+ * certificate data
133
+ */
134
+ cert: string;
135
+ /**
136
+ * key data
137
+ */
138
+ key: string;
139
+ }
140
+ interface ConfigurationMachineSecretsCertsK8s {
141
+ /**
142
+ * certificate data
143
+ */
144
+ cert: string;
145
+ /**
146
+ * key data
147
+ */
148
+ key: string;
149
+ }
150
+ interface ConfigurationMachineSecretsCertsK8sAggregator {
151
+ /**
152
+ * certificate data
153
+ */
154
+ cert: string;
155
+ /**
156
+ * key data
157
+ */
158
+ key: string;
159
+ }
160
+ interface ConfigurationMachineSecretsCertsK8sServiceaccount {
161
+ /**
162
+ * key data
163
+ */
164
+ key: string;
165
+ }
166
+ interface ConfigurationMachineSecretsCertsOs {
167
+ /**
168
+ * certificate data
169
+ */
170
+ cert: string;
171
+ /**
172
+ * key data
173
+ */
174
+ key: string;
175
+ }
176
+ interface ConfigurationMachineSecretsCluster {
177
+ /**
178
+ * The cluster id
179
+ */
180
+ id: string;
181
+ /**
182
+ * The cluster secret
183
+ */
184
+ secret: string;
185
+ }
186
+ interface ConfigurationMachineSecretsSecrets {
187
+ /**
188
+ * The aescbc encryption secret for the talos kubernetes cluster
189
+ */
190
+ aescbcEncryptionSecret?: string;
191
+ /**
192
+ * The bootstrap token for the talos kubernetes cluster
193
+ */
194
+ bootstrapToken: string;
195
+ /**
196
+ * The secretbox encryption secret for the talos kubernetes cluster
197
+ */
198
+ secretboxEncryptionSecret: string;
199
+ }
200
+ interface ConfigurationMachineSecretsTrustdinfo {
201
+ /**
202
+ * The trustd token for the talos kubernetes cluster
203
+ */
204
+ token: string;
205
+ }
206
+ interface DisksClientConfiguration {
207
+ /**
208
+ * The client CA certificate
209
+ */
210
+ caCertificate: string;
211
+ /**
212
+ * The client certificate
213
+ */
214
+ clientCertificate: string;
215
+ /**
216
+ * The client key
217
+ */
218
+ clientKey: string;
219
+ }
220
+ interface DisksDisk {
221
+ /**
222
+ * The bus path of the disk
223
+ */
224
+ busPath: string;
225
+ /**
226
+ * The modalias of the disk
227
+ */
228
+ modalias: string;
229
+ /**
230
+ * The model of the disk
231
+ */
232
+ model: string;
233
+ /**
234
+ * The name of the disk
235
+ */
236
+ name: string;
237
+ /**
238
+ * The serial number of the disk
239
+ */
240
+ serial: string;
241
+ /**
242
+ * The size of the disk
243
+ */
244
+ size: string;
245
+ /**
246
+ * The type of the disk
247
+ */
248
+ type: string;
249
+ /**
250
+ * The uuid of the disk
251
+ */
252
+ uuid: string;
253
+ /**
254
+ * The wwid of the disk
255
+ */
256
+ wwid: string;
257
+ }
258
+ interface DisksFilters {
259
+ /**
260
+ * Filter disks by bus path
261
+ */
262
+ busPath?: string;
263
+ /**
264
+ * Filter disks by modalias
265
+ */
266
+ modalias?: string;
267
+ /**
268
+ * Filter disks by model
269
+ */
270
+ model?: string;
271
+ /**
272
+ * Filter disks by name
273
+ */
274
+ name?: string;
275
+ /**
276
+ * Filter disks by serial number
277
+ */
278
+ serial?: string;
279
+ /**
280
+ * Filter disks by size
281
+ */
282
+ size?: string;
283
+ /**
284
+ * Filter disks by type
285
+ */
286
+ type?: string;
287
+ /**
288
+ * Filter disks by uuid
289
+ */
290
+ uuid?: string;
291
+ /**
292
+ * Filter disks by wwid
293
+ */
294
+ wwid?: string;
295
+ }
296
+ interface DisksTimeouts {
297
+ /**
298
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours). Read operations occur during any refresh or planning operation when refresh is enabled.
299
+ */
300
+ read?: string;
301
+ }
302
+ interface SecretsClientConfiguration {
303
+ /**
304
+ * The client CA certificate
305
+ */
306
+ caCertificate: string;
307
+ /**
308
+ * The client certificate
309
+ */
310
+ clientCertificate: string;
311
+ /**
312
+ * The client key
313
+ */
314
+ clientKey: string;
315
+ }
316
+ interface SecretsMachineSecrets {
317
+ certs: outputs.machine.SecretsMachineSecretsCerts;
318
+ /**
319
+ * The cluster secrets
320
+ */
321
+ cluster: outputs.machine.SecretsMachineSecretsCluster;
322
+ /**
323
+ * kubernetes cluster secrets
324
+ */
325
+ secrets: outputs.machine.SecretsMachineSecretsSecrets;
326
+ /**
327
+ * trustd secrets
328
+ */
329
+ trustdinfo: outputs.machine.SecretsMachineSecretsTrustdinfo;
330
+ }
331
+ interface SecretsMachineSecretsCerts {
332
+ /**
333
+ * The certificate and key pair
334
+ */
335
+ etcd: outputs.machine.SecretsMachineSecretsCertsEtcd;
336
+ /**
337
+ * The certificate and key pair
338
+ */
339
+ k8s: outputs.machine.SecretsMachineSecretsCertsK8s;
340
+ /**
341
+ * The certificate and key pair
342
+ */
343
+ k8sAggregator: outputs.machine.SecretsMachineSecretsCertsK8sAggregator;
344
+ /**
345
+ * The service account secrets
346
+ */
347
+ k8sServiceaccount: outputs.machine.SecretsMachineSecretsCertsK8sServiceaccount;
348
+ /**
349
+ * The certificate and key pair
350
+ */
351
+ os: outputs.machine.SecretsMachineSecretsCertsOs;
352
+ }
353
+ interface SecretsMachineSecretsCertsEtcd {
354
+ /**
355
+ * certificate data
356
+ */
357
+ cert: string;
358
+ /**
359
+ * key data
360
+ */
361
+ key: string;
362
+ }
363
+ interface SecretsMachineSecretsCertsK8s {
364
+ /**
365
+ * certificate data
366
+ */
367
+ cert: string;
368
+ /**
369
+ * key data
370
+ */
371
+ key: string;
372
+ }
373
+ interface SecretsMachineSecretsCertsK8sAggregator {
374
+ /**
375
+ * certificate data
376
+ */
377
+ cert: string;
378
+ /**
379
+ * key data
380
+ */
381
+ key: string;
382
+ }
383
+ interface SecretsMachineSecretsCertsK8sServiceaccount {
384
+ /**
385
+ * key data
386
+ */
387
+ key: string;
388
+ }
389
+ interface SecretsMachineSecretsCertsOs {
390
+ /**
391
+ * certificate data
392
+ */
393
+ cert: string;
394
+ /**
395
+ * key data
396
+ */
397
+ key: string;
398
+ }
399
+ interface SecretsMachineSecretsCluster {
400
+ /**
401
+ * The cluster ID
402
+ */
403
+ id: string;
404
+ /**
405
+ * The cluster secret
406
+ */
407
+ secret: string;
408
+ }
409
+ interface SecretsMachineSecretsSecrets {
410
+ /**
411
+ * The AES-CBC encryption secret
412
+ */
413
+ aescbcEncryptionSecret: string;
414
+ /**
415
+ * The bootstrap token
416
+ */
417
+ bootstrapToken: string;
418
+ /**
419
+ * The secretbox encryption secret
420
+ */
421
+ secretboxEncryptionSecret: string;
422
+ }
423
+ interface SecretsMachineSecretsTrustdinfo {
424
+ /**
425
+ * The trustd token
426
+ */
427
+ token: string;
428
+ }
429
+ interface Timeout {
430
+ /**
431
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
432
+ */
433
+ create?: string;
434
+ /**
435
+ * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
436
+ */
437
+ update?: string;
438
+ }
439
+ }
@@ -0,0 +1,5 @@
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
+ //# sourceMappingURL=output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../types/output.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF"}
package/utilities.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ export declare function getEnv(...vars: string[]): string | undefined;
2
+ export declare function getEnvBoolean(...vars: string[]): boolean | undefined;
3
+ export declare function getEnvNumber(...vars: string[]): number | undefined;
4
+ export declare function getVersion(): string;
package/utilities.js ADDED
@@ -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.lazyLoad = exports.resourceOptsDefaults = exports.getVersion = exports.getEnvNumber = exports.getEnvBoolean = exports.getEnv = void 0;
6
+ function getEnv(...vars) {
7
+ for (const v of vars) {
8
+ const value = process.env[v];
9
+ if (value) {
10
+ return value;
11
+ }
12
+ }
13
+ return undefined;
14
+ }
15
+ exports.getEnv = getEnv;
16
+ function getEnvBoolean(...vars) {
17
+ const s = getEnv(...vars);
18
+ if (s !== undefined) {
19
+ // NOTE: these values are taken from https://golang.org/src/strconv/atob.go?s=351:391#L1, which is what
20
+ // Terraform uses internally when parsing boolean values.
21
+ if (["1", "t", "T", "true", "TRUE", "True"].find(v => v === s) !== undefined) {
22
+ return true;
23
+ }
24
+ if (["0", "f", "F", "false", "FALSE", "False"].find(v => v === s) !== undefined) {
25
+ return false;
26
+ }
27
+ }
28
+ return undefined;
29
+ }
30
+ exports.getEnvBoolean = getEnvBoolean;
31
+ function getEnvNumber(...vars) {
32
+ const s = getEnv(...vars);
33
+ if (s !== undefined) {
34
+ const f = parseFloat(s);
35
+ if (!isNaN(f)) {
36
+ return f;
37
+ }
38
+ }
39
+ return undefined;
40
+ }
41
+ exports.getEnvNumber = getEnvNumber;
42
+ function getVersion() {
43
+ let version = require('./package.json').version;
44
+ // Node allows for the version to be prefixed by a "v", while semver doesn't.
45
+ // If there is a v, strip it off.
46
+ if (version.indexOf('v') === 0) {
47
+ version = version.slice(1);
48
+ }
49
+ return version;
50
+ }
51
+ exports.getVersion = getVersion;
52
+ /** @internal */
53
+ function resourceOptsDefaults() {
54
+ return { version: getVersion(), pluginDownloadURL: "https://github.com/pulumiverse/pulumi-talos/releases" };
55
+ }
56
+ exports.resourceOptsDefaults = resourceOptsDefaults;
57
+ /** @internal */
58
+ function lazyLoad(exports, props, loadModule) {
59
+ for (let property of props) {
60
+ Object.defineProperty(exports, property, {
61
+ enumerable: true,
62
+ get: function () {
63
+ return loadModule()[property];
64
+ },
65
+ });
66
+ }
67
+ }
68
+ exports.lazyLoad = lazyLoad;
69
+ //# sourceMappingURL=utilities.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utilities.js","sourceRoot":"","sources":["../utilities.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAGjF,SAAgB,MAAM,CAAC,GAAG,IAAc;IACpC,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE;QAClB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC7B,IAAI,KAAK,EAAE;YACP,OAAO,KAAK,CAAC;SAChB;KACJ;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AARD,wBAQC;AAED,SAAgB,aAAa,CAAC,GAAG,IAAc;IAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IAC1B,IAAI,CAAC,KAAK,SAAS,EAAE;QACjB,uGAAuG;QACvG,yDAAyD;QACzD,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,SAAS,EAAE;YAC1E,OAAO,IAAI,CAAC;SACf;QACD,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,SAAS,EAAE;YAC7E,OAAO,KAAK,CAAC;SAChB;KACJ;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAbD,sCAaC;AAED,SAAgB,YAAY,CAAC,GAAG,IAAc;IAC1C,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;IAC1B,IAAI,CAAC,KAAK,SAAS,EAAE;QACjB,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACX,OAAO,CAAC,CAAC;SACZ;KACJ;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AATD,oCASC;AAED,SAAgB,UAAU;IACtB,IAAI,OAAO,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC;IAChD,6EAA6E;IAC7E,iCAAiC;IACjC,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;QAC5B,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KAC9B;IACD,OAAO,OAAO,CAAC;AACnB,CAAC;AARD,gCAQC;AAED,gBAAgB;AAChB,SAAgB,oBAAoB;IAChC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,iBAAiB,EAAE,sDAAsD,EAAE,CAAC;AAChH,CAAC;AAFD,oDAEC;AAED,gBAAgB;AAChB,SAAgB,QAAQ,CAAC,OAAY,EAAE,KAAe,EAAE,UAAe;IACnE,KAAK,IAAI,QAAQ,IAAI,KAAK,EAAE;QACxB,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE;YACrC,UAAU,EAAE,IAAI;YAChB,GAAG,EAAE;gBACD,OAAO,UAAU,EAAE,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC;SACJ,CAAC,CAAC;KACN;AACL,CAAC;AATD,4BASC"}