@controlplane/schema 1.0.4 → 1.0.6

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 (49) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2 -1
  3. package/build/src/interfaces/base.d.ts +6 -2
  4. package/build/src/interfaces/command.d.ts +48 -32
  5. package/build/src/interfaces/containerstatus.d.ts +6 -0
  6. package/build/src/interfaces/crmevent.d.ts +39 -0
  7. package/build/src/interfaces/crmevent.js +3 -0
  8. package/build/src/interfaces/cronjob.d.ts +3 -2
  9. package/build/src/interfaces/deployment.d.ts +1 -0
  10. package/build/src/interfaces/discovery.d.ts +3 -0
  11. package/build/src/interfaces/domain.d.ts +19 -3
  12. package/build/src/interfaces/envoyCommon.d.ts +5 -4
  13. package/build/src/interfaces/envoyHttp.d.ts +1 -1
  14. package/build/src/interfaces/event.d.ts +4 -2
  15. package/build/src/interfaces/gvc.d.ts +53 -0
  16. package/build/src/interfaces/identity.d.ts +9 -1
  17. package/build/src/interfaces/internal.d.ts +0 -0
  18. package/build/src/interfaces/internal.js +2 -0
  19. package/build/src/interfaces/ipSet.d.ts +37 -0
  20. package/build/src/interfaces/ipSet.js +3 -0
  21. package/build/src/interfaces/locationDns.d.ts +11 -0
  22. package/build/src/interfaces/locationDns.js +3 -0
  23. package/build/src/interfaces/mk8s.d.ts +22 -3
  24. package/build/src/interfaces/mk8sAddons.d.ts +116 -0
  25. package/build/src/interfaces/mk8sAws.d.ts +11 -2
  26. package/build/src/interfaces/mk8sAzure.d.ts +53 -0
  27. package/build/src/interfaces/mk8sAzure.js +3 -0
  28. package/build/src/interfaces/mk8sCommon.d.ts +30 -4
  29. package/build/src/interfaces/mk8sDigitalOcean.d.ts +32 -0
  30. package/build/src/interfaces/mk8sDigitalOcean.js +3 -0
  31. package/build/src/interfaces/mk8sGcp.d.ts +56 -0
  32. package/build/src/interfaces/mk8sGcp.js +3 -0
  33. package/build/src/interfaces/mk8sGeneric.d.ts +1 -0
  34. package/build/src/interfaces/mk8sHetzner.d.ts +9 -4
  35. package/build/src/interfaces/mk8sLambdalabs.d.ts +7 -4
  36. package/build/src/interfaces/mk8sLinode.d.ts +13 -5
  37. package/build/src/interfaces/mk8sOblivus.d.ts +14 -2
  38. package/build/src/interfaces/mk8sPaperspace.d.ts +6 -1
  39. package/build/src/interfaces/mk8sTriton.d.ts +74 -0
  40. package/build/src/interfaces/mk8sTriton.js +3 -0
  41. package/build/src/interfaces/org.d.ts +5 -2
  42. package/build/src/interfaces/outboxmessage.d.ts +6 -0
  43. package/build/src/interfaces/outboxmessage.js +3 -0
  44. package/build/src/interfaces/permissions.d.ts +1 -1
  45. package/build/src/interfaces/query.d.ts +4 -0
  46. package/build/src/interfaces/volumeSet.d.ts +42 -14
  47. package/build/src/interfaces/workload.d.ts +193 -15
  48. package/build/src/interfaces/workloadOptions.d.ts +86 -5
  49. package/package.json +1 -1
@@ -6,10 +6,14 @@ import { OblivusProvider } from './mk8sOblivus';
6
6
  import { LambdalabsProvider } from './mk8sLambdalabs';
7
7
  import { PaperspaceProvider } from './mk8sPaperspace';
8
8
  import { EphemeralProvider } from './mk8sEphemeral';
9
- import { NonCustomizableAddonConfig, AzureAddonConfig, MetricsAddonConfig, LogsAddonConfig, NvidiaAddonConfig, AwsEFSAddonConfig, AwsECRAddonConfig, AwsELBAddonConfig, AzureACRAddonConfig, DashboardAddonStatus, AwsWorkloadIdentityAddonStatus, MetricsAddonStatus, LogsAddonStatus, AwsTrustPolicyConfig } from './mk8sAddons';
9
+ import { TritonProvider } from './mk8sTriton';
10
+ import { AzureProvider } from './mk8sAzure';
11
+ import { DigitalOceanProvider } from './mk8sDigitalOcean';
12
+ import { GcpProvider } from './mk8sGcp';
13
+ import { NonCustomizableAddonConfig, AzureAddonConfig, MetricsAddonConfig, LogsAddonConfig, RegistryMirrorConfig, NvidiaAddonConfig, AwsEFSAddonConfig, AwsECRAddonConfig, AwsELBAddonConfig, AzureACRAddonConfig, ByokAddonConfig, DashboardAddonStatus, AwsWorkloadIdentityAddonStatus, MetricsAddonStatus, LogsAddonStatus, AwsTrustPolicyConfig } from './mk8sAddons';
10
14
  import { Name, Kind, Tags, Links } from './base';
11
15
  export interface Mk8sSpec {
12
- version: '1.26.0' | '1.26.4' | '1.27.3' | '1.28.2' | '1.28.4';
16
+ version: '1.26.0' | '1.26.4' | '1.27.3' | '1.28.2' | '1.28.4' | '1.29.7' | '1.30.3' | '1.31.5' | '1.31.13' | '1.32.1' | '1.32.9' | '1.33.5' | '1.34.2';
13
17
  firewall?: {
14
18
  sourceCIDR: string;
15
19
  description?: string;
@@ -23,20 +27,27 @@ export interface Mk8sSpec {
23
27
  lambdalabs?: LambdalabsProvider;
24
28
  paperspace?: PaperspaceProvider;
25
29
  ephemeral?: EphemeralProvider;
30
+ triton?: TritonProvider;
31
+ azure?: AzureProvider;
32
+ digitalocean?: DigitalOceanProvider;
33
+ gcp?: GcpProvider;
26
34
  };
27
35
  addOns?: {
28
36
  dashboard?: NonCustomizableAddonConfig;
37
+ headlamp?: NonCustomizableAddonConfig;
29
38
  azureWorkloadIdentity?: AzureAddonConfig;
30
39
  awsWorkloadIdentity?: NonCustomizableAddonConfig;
31
40
  localPathStorage?: NonCustomizableAddonConfig;
32
41
  metrics?: MetricsAddonConfig;
33
42
  logs?: LogsAddonConfig;
43
+ registryMirror?: RegistryMirrorConfig;
34
44
  nvidia?: NvidiaAddonConfig;
35
45
  awsEFS?: AwsEFSAddonConfig;
36
46
  awsECR?: AwsECRAddonConfig;
37
47
  awsELB?: AwsELBAddonConfig;
38
48
  azureACR?: AzureACRAddonConfig;
39
49
  sysbox?: NonCustomizableAddonConfig;
50
+ byok?: ByokAddonConfig;
40
51
  };
41
52
  }
42
53
  export interface Mk8sStatus {
@@ -45,6 +56,7 @@ export interface Mk8sStatus {
45
56
  homeLocation?: string;
46
57
  addOns?: {
47
58
  dashboard?: DashboardAddonStatus;
59
+ headlamp?: DashboardAddonStatus;
48
60
  awsWorkloadIdentity?: AwsWorkloadIdentityAddonStatus;
49
61
  metrics?: MetricsAddonStatus;
50
62
  logs?: LogsAddonStatus;
@@ -64,7 +76,7 @@ export interface Mk8sCluster {
64
76
  lastModified?: Date;
65
77
  links?: Links;
66
78
  spec: {
67
- version: '1.26.0' | '1.26.4' | '1.27.3' | '1.28.2' | '1.28.4';
79
+ version: '1.26.0' | '1.26.4' | '1.27.3' | '1.28.2' | '1.28.4' | '1.29.7' | '1.30.3' | '1.31.5' | '1.31.13' | '1.32.1' | '1.32.9' | '1.33.5' | '1.34.2';
68
80
  firewall?: {
69
81
  sourceCIDR: string;
70
82
  description?: string;
@@ -78,20 +90,27 @@ export interface Mk8sCluster {
78
90
  lambdalabs?: LambdalabsProvider;
79
91
  paperspace?: PaperspaceProvider;
80
92
  ephemeral?: EphemeralProvider;
93
+ triton?: TritonProvider;
94
+ azure?: AzureProvider;
95
+ digitalocean?: DigitalOceanProvider;
96
+ gcp?: GcpProvider;
81
97
  };
82
98
  addOns?: {
83
99
  dashboard?: NonCustomizableAddonConfig;
100
+ headlamp?: NonCustomizableAddonConfig;
84
101
  azureWorkloadIdentity?: AzureAddonConfig;
85
102
  awsWorkloadIdentity?: NonCustomizableAddonConfig;
86
103
  localPathStorage?: NonCustomizableAddonConfig;
87
104
  metrics?: MetricsAddonConfig;
88
105
  logs?: LogsAddonConfig;
106
+ registryMirror?: RegistryMirrorConfig;
89
107
  nvidia?: NvidiaAddonConfig;
90
108
  awsEFS?: AwsEFSAddonConfig;
91
109
  awsECR?: AwsECRAddonConfig;
92
110
  awsELB?: AwsELBAddonConfig;
93
111
  azureACR?: AzureACRAddonConfig;
94
112
  sysbox?: NonCustomizableAddonConfig;
113
+ byok?: ByokAddonConfig;
95
114
  };
96
115
  };
97
116
  alias?: string;
@@ -1,3 +1,4 @@
1
+ import { Cpu, Memory } from './workload';
1
2
  export type RegularExpression = string;
2
3
  export interface FlexibleAddonConfig {
3
4
  [x: string]: string;
@@ -24,6 +25,12 @@ export interface MetricsAddonConfig {
24
25
  retainLabels?: RegularExpression;
25
26
  };
26
27
  }
28
+ export interface RegistryMirrorConfig {
29
+ mirrors?: ({
30
+ registry: string | '*';
31
+ mirrors?: string[];
32
+ })[];
33
+ }
27
34
  export interface MetricsAddonStatus {
28
35
  prometheusEndpoint?: string;
29
36
  remoteWriteConfig?: {
@@ -34,6 +41,10 @@ export interface LogsAddonConfig {
34
41
  auditEnabled?: boolean;
35
42
  includeNamespaces?: RegularExpression;
36
43
  excludeNamespaces?: RegularExpression;
44
+ docker?: boolean;
45
+ kubelet?: boolean;
46
+ kernel?: boolean;
47
+ events?: boolean;
37
48
  }
38
49
  export interface LogsAddonStatus {
39
50
  lokiAddress?: string;
@@ -67,3 +78,108 @@ export interface AwsELBAddonConfig {
67
78
  export interface AzureACRAddonConfig {
68
79
  clientId: string;
69
80
  }
81
+ export interface ByokAddonConfig {
82
+ ignoreUpdates?: boolean;
83
+ location: string;
84
+ config?: {
85
+ actuator?: {
86
+ minCpu?: Cpu;
87
+ maxCpu?: Cpu;
88
+ minMemory?: Memory;
89
+ maxMemory?: Memory;
90
+ logLevel?: 'trace' | 'info' | 'error';
91
+ env?: {
92
+ [x: string]: string;
93
+ };
94
+ };
95
+ middlebox?: {
96
+ enabled?: boolean;
97
+ bandwidthAlertMbps?: number;
98
+ };
99
+ common?: {
100
+ deploymentReplicas?: number;
101
+ pdb?: {
102
+ maxUnavailable?: number;
103
+ };
104
+ };
105
+ longhorn?: {
106
+ replicas?: number;
107
+ };
108
+ ingress?: {
109
+ cpu?: Cpu;
110
+ memory?: Memory;
111
+ targetPercent?: number;
112
+ };
113
+ istio?: {
114
+ istiod?: {
115
+ replicas?: number;
116
+ minCpu?: Cpu;
117
+ maxCpu?: Cpu;
118
+ minMemory?: Memory;
119
+ maxMemory?: Memory;
120
+ pdb?: number;
121
+ };
122
+ ingressgateway?: {
123
+ replicas?: number;
124
+ maxCpu?: Cpu;
125
+ maxMemory?: Memory;
126
+ };
127
+ sidecar?: {
128
+ minCpu?: Cpu;
129
+ minMemory?: Memory;
130
+ };
131
+ };
132
+ logSplitter?: {
133
+ minCpu?: Cpu;
134
+ maxCpu?: Cpu;
135
+ minMemory?: Memory;
136
+ maxMemory?: Memory;
137
+ memBufferSize?: string;
138
+ perPodRate?: number;
139
+ };
140
+ monitoring?: {
141
+ minMemory?: Memory;
142
+ maxMemory?: Memory;
143
+ kubeStateMetrics?: {
144
+ minMemory?: Memory;
145
+ };
146
+ prometheus?: {
147
+ main?: {
148
+ storage?: Memory;
149
+ };
150
+ };
151
+ };
152
+ redis?: {
153
+ minCpu?: Cpu;
154
+ maxCpu?: Cpu;
155
+ minMemory?: Memory;
156
+ maxMemory?: Memory;
157
+ storage?: Memory;
158
+ };
159
+ redisHa?: {
160
+ minCpu?: Cpu;
161
+ maxCpu?: Cpu;
162
+ minMemory?: Memory;
163
+ maxMemory?: Memory;
164
+ storage?: number;
165
+ };
166
+ redisSentinel?: {
167
+ minCpu?: Cpu;
168
+ maxCpu?: Cpu;
169
+ minMemory?: Memory;
170
+ maxMemory?: Memory;
171
+ storage?: number;
172
+ };
173
+ tempoAgent?: {
174
+ minCpu?: Cpu;
175
+ minMemory?: Memory;
176
+ };
177
+ internalDns?: {
178
+ minCpu?: Cpu;
179
+ maxCpu?: Cpu;
180
+ minMemory?: Memory;
181
+ maxMemory?: Memory;
182
+ };
183
+ [x: string]: any;
184
+ };
185
+ }
@@ -1,6 +1,12 @@
1
1
  import { Labels, Taints, AutoscalerConfig } from './mk8sCommon';
2
+ export type PolicyArn = string;
3
+ export interface AssumeRoleLink {
4
+ roleArn: string;
5
+ externalId?: string;
6
+ sessionNamePrefix?: string;
7
+ }
2
8
  export interface Ami {
3
- recommended?: 'ubuntu/jammy-22.04' | 'ubuntu/jammy-22.04+nvidia' | 'ubuntu/focal-20.04' | 'ubuntu/focal-20.04+nvidia' | 'ubuntu/bionic-18.04' | 'amazon/amzn2' | 'amazon/al2023';
9
+ recommended?: 'ubuntu/jammy-22.04' | 'ubuntu/jammy-22.04+nvidia' | 'ubuntu/focal-20.04' | 'ubuntu/focal-20.04+nvidia' | 'ubuntu/noble-24.04' | 'ubuntu/noble-24.04+nvidia' | 'ubuntu/bionic-18.04' | 'amazon/amzn2' | 'amazon/al2023';
4
10
  exact?: string;
5
11
  }
6
12
  export interface AwsPool {
@@ -27,17 +33,20 @@ export interface AwsProvider {
27
33
  networking?: {
28
34
  serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
29
35
  podNetwork?: 'vpc' | '10.42.0.0/16' | '172.16.0.0/15' | '172.18.0.0/15' | '172.20.0.0/15' | '172.22.0.0/15' | '172.24.0.0/15' | '172.26.0.0/15' | '172.28.0.0/15' | '172.30.0.0/15';
36
+ dnsForwarder?: string;
30
37
  };
31
38
  preInstallScript?: string;
32
39
  image: {
33
- recommended?: 'ubuntu/jammy-22.04' | 'ubuntu/jammy-22.04+nvidia' | 'ubuntu/focal-20.04' | 'ubuntu/focal-20.04+nvidia' | 'ubuntu/bionic-18.04' | 'amazon/amzn2' | 'amazon/al2023';
40
+ recommended?: 'ubuntu/jammy-22.04' | 'ubuntu/jammy-22.04+nvidia' | 'ubuntu/focal-20.04' | 'ubuntu/focal-20.04+nvidia' | 'ubuntu/noble-24.04' | 'ubuntu/noble-24.04+nvidia' | 'ubuntu/bionic-18.04' | 'amazon/amzn2' | 'amazon/al2023';
34
41
  exact?: string;
35
42
  };
36
43
  deployRoleArn: string;
44
+ deployRoleChain?: AssumeRoleLink[];
37
45
  vpcId: string;
38
46
  keyPair?: string;
39
47
  diskEncryptionKeyArn?: string;
40
48
  securityGroupIds?: string[];
49
+ extraNodePolicies?: PolicyArn[];
41
50
  nodePools?: AwsPool[];
42
51
  autoscaler?: AutoscalerConfig;
43
52
  }
@@ -0,0 +1,53 @@
1
+ import { Labels, Taints, SshPublicKey, AutoscalerConfig } from './mk8sCommon';
2
+ export interface Image {
3
+ recommended?: 'ubuntu/noble-24.04' | 'ubuntu/jammy-22.04' | 'ubuntu/focal-20.04' | 'debian/bookworm-12' | 'debian/bullseye-11';
4
+ reference?: {
5
+ publisher: string;
6
+ offer: string;
7
+ sku: string;
8
+ version: string;
9
+ };
10
+ }
11
+ export interface AzurePool {
12
+ name: string;
13
+ labels?: Labels;
14
+ taints?: Taints;
15
+ size: string;
16
+ subnetId: string;
17
+ zones: number[];
18
+ overrideImage?: Image;
19
+ bootDiskSize: number;
20
+ minSize: number;
21
+ maxSize: number;
22
+ }
23
+ export interface AzureProvider {
24
+ location: string;
25
+ subscriptionId: string;
26
+ sdkSecretLink: string;
27
+ resourceGroup: string;
28
+ networking?: {
29
+ serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
30
+ podNetwork?: '10.42.0.0/16' | '172.16.0.0/15' | '172.18.0.0/15' | '172.20.0.0/15' | '172.22.0.0/15' | '172.24.0.0/15' | '172.26.0.0/15' | '172.28.0.0/15' | '172.30.0.0/15';
31
+ dnsForwarder?: string;
32
+ };
33
+ preInstallScript?: string;
34
+ image: {
35
+ recommended?: 'ubuntu/noble-24.04' | 'ubuntu/jammy-22.04' | 'ubuntu/focal-20.04' | 'debian/bookworm-12' | 'debian/bullseye-11';
36
+ reference?: {
37
+ publisher: string;
38
+ offer: string;
39
+ sku: string;
40
+ version: string;
41
+ };
42
+ };
43
+ sshKeys: SshPublicKey[];
44
+ networkId: string;
45
+ tags?: {
46
+ [x: string]: string;
47
+ };
48
+ nodePools?: AzurePool[];
49
+ autoscaler?: AutoscalerConfig;
50
+ }
51
+ export interface AzureProviderStatus {
52
+ [x: string]: any;
53
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ /* auto-generated */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -11,10 +11,10 @@ export type Taints = Taint[];
11
11
  export type NodePoolName = string;
12
12
  export type SshPublicKey = string;
13
13
  export interface AutoscalerConfig {
14
- expander: ('random' | 'most-pods' | 'least-waste' | 'price' | 'priority')[];
15
- unneededTime: string;
16
- unreadyTime: string;
17
- utilizationThreshold: number;
14
+ expander?: ('random' | 'most-pods' | 'least-waste' | 'price')[];
15
+ unneededTime?: string;
16
+ unreadyTime?: string;
17
+ utilizationThreshold?: number;
18
18
  }
19
19
  export interface UnmanagedPool {
20
20
  name: string;
@@ -22,3 +22,29 @@ export interface UnmanagedPool {
22
22
  taints?: Taints;
23
23
  }
24
24
  export type PreInstallScript = string;
25
+ export interface CacertsRes {
26
+ cacerts?: string;
27
+ }
28
+ export interface ReadyRes {
29
+ ready?: boolean;
30
+ message?: string;
31
+ }
32
+ export interface JoinBody {
33
+ [x: string]: any;
34
+ }
35
+ export interface JoinRes {
36
+ script?: string;
37
+ }
38
+ export interface InitBody {
39
+ [x: string]: any;
40
+ }
41
+ export interface InitRes {
42
+ script?: string;
43
+ }
44
+ export interface KubeConfigBody {
45
+ [x: string]: any;
46
+ }
47
+ export interface KubeConfigRes {
48
+ kubeconfig?: string;
49
+ fileName?: string;
50
+ }
@@ -0,0 +1,32 @@
1
+ import { Labels, Taints, PreInstallScript, SshPublicKey, AutoscalerConfig } from './mk8sCommon';
2
+ export type ValidTag = string;
3
+ export interface DigitalOceanPool {
4
+ name: string;
5
+ labels?: Labels;
6
+ taints?: Taints;
7
+ dropletSize: string;
8
+ overrideImage?: string;
9
+ minSize: number;
10
+ maxSize: number;
11
+ }
12
+ export interface DigitalOceanProvider {
13
+ region: 'ams3' | 'blr1' | 'fra1' | 'lon1' | 'nyc1' | 'nyc2' | 'nyc3' | 'sfo2' | 'sfo3' | 'sgp1' | 'syd1' | 'tor1';
14
+ digitalOceanTags?: ValidTag[];
15
+ networking?: {
16
+ serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
17
+ podNetwork?: '10.42.0.0/16' | '172.16.0.0/15' | '172.18.0.0/15' | '172.20.0.0/15' | '172.22.0.0/15' | '172.24.0.0/15' | '172.26.0.0/15' | '172.28.0.0/15' | '172.30.0.0/15';
18
+ dnsForwarder?: string;
19
+ };
20
+ preInstallScript?: PreInstallScript;
21
+ tokenSecretLink: string;
22
+ vpcId: string;
23
+ nodePools?: DigitalOceanPool[];
24
+ image: string;
25
+ sshKeys: string[];
26
+ extraSshKeys?: SshPublicKey[];
27
+ autoscaler?: AutoscalerConfig;
28
+ reservedIPs?: string[];
29
+ }
30
+ export interface DigitalOceanProviderStatus {
31
+ [x: string]: any;
32
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ /* auto-generated */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,56 @@
1
+ import { Labels, Taints, PreInstallScript, AutoscalerConfig } from './mk8sCommon';
2
+ export interface Image {
3
+ recommended?: 'ubuntu/jammy-22.04' | 'ubuntu/noble-24.04' | 'debian/bookworm-12' | 'debian/trixie-13' | 'google/cos-stable';
4
+ family?: {
5
+ project: string;
6
+ family: string;
7
+ };
8
+ exact?: string;
9
+ }
10
+ export interface GcpPool {
11
+ name: string;
12
+ labels?: Labels;
13
+ taints?: Taints;
14
+ machineType: string;
15
+ assignPublicIP?: boolean;
16
+ zone: string;
17
+ overrideImage?: Image;
18
+ bootDiskSize: number;
19
+ minSize: number;
20
+ maxSize: number;
21
+ preemptible?: boolean;
22
+ subnet: string;
23
+ localPersistentDisks?: number;
24
+ }
25
+ export interface GcpProvider {
26
+ projectId: string;
27
+ region: string;
28
+ labels?: {
29
+ [x: string]: string;
30
+ };
31
+ tags?: string[];
32
+ metadata?: {
33
+ [x: string]: string;
34
+ };
35
+ network: string;
36
+ saKeyLink: string;
37
+ networking?: {
38
+ serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
39
+ podNetwork?: 'vpc' | '10.42.0.0/16' | '172.16.0.0/15' | '172.18.0.0/15' | '172.20.0.0/15' | '172.22.0.0/15' | '172.24.0.0/15' | '172.26.0.0/15' | '172.28.0.0/15' | '172.30.0.0/15';
40
+ dnsForwarder?: string;
41
+ };
42
+ preInstallScript?: PreInstallScript;
43
+ image: {
44
+ recommended?: 'ubuntu/jammy-22.04' | 'ubuntu/noble-24.04' | 'debian/bookworm-12' | 'debian/trixie-13' | 'google/cos-stable';
45
+ family?: {
46
+ project: string;
47
+ family: string;
48
+ };
49
+ exact?: string;
50
+ };
51
+ nodePools?: GcpPool[];
52
+ autoscaler?: AutoscalerConfig;
53
+ }
54
+ export interface GcpProviderStatus {
55
+ [x: string]: any;
56
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ /* auto-generated */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -9,6 +9,7 @@ export interface GenericProvider {
9
9
  networking?: {
10
10
  serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
11
11
  podNetwork?: '10.42.0.0/16' | '172.16.0.0/15' | '172.18.0.0/15' | '172.20.0.0/15' | '172.22.0.0/15' | '172.24.0.0/15' | '172.26.0.0/15' | '172.28.0.0/15' | '172.30.0.0/15';
12
+ dnsForwarder?: string;
12
13
  };
13
14
  nodePools?: GenericPool[];
14
15
  }
@@ -13,15 +13,17 @@ export interface HetznerPool {
13
13
  minSize: number;
14
14
  maxSize: number;
15
15
  }
16
+ export interface NetworkingConfig {
17
+ serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
18
+ podNetwork?: '10.42.0.0/16' | '172.16.0.0/15' | '172.18.0.0/15' | '172.20.0.0/15' | '172.22.0.0/15' | '172.24.0.0/15' | '172.26.0.0/15' | '172.28.0.0/15' | '172.30.0.0/15';
19
+ dnsForwarder?: string;
20
+ }
16
21
  export interface HetznerProvider {
17
22
  region: 'fsn1' | 'nbg1' | 'hel1' | 'ash' | 'hil';
18
23
  hetznerLabels?: {
19
24
  [x: string]: string;
20
25
  };
21
- networking?: {
22
- serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
23
- podNetwork?: '10.42.0.0/16' | '172.16.0.0/15' | '172.18.0.0/15' | '172.20.0.0/15' | '172.22.0.0/15' | '172.24.0.0/15' | '172.26.0.0/15' | '172.28.0.0/15' | '172.30.0.0/15';
24
- };
26
+ networking?: NetworkingConfig;
25
27
  preInstallScript?: PreInstallScript;
26
28
  tokenSecretLink: string;
27
29
  networkId: string;
@@ -31,6 +33,9 @@ export interface HetznerProvider {
31
33
  image: string;
32
34
  sshKey?: string;
33
35
  autoscaler?: AutoscalerConfig;
36
+ floatingIPSelector?: {
37
+ [x: string]: string;
38
+ };
34
39
  }
35
40
  export interface HetznerProviderStatus {
36
41
  [x: string]: any;
@@ -1,18 +1,21 @@
1
- import { Labels, Taints, UnmanagedPool } from './mk8sCommon';
1
+ import { Labels, Taints, UnmanagedPool, AutoscalerConfig, PreInstallScript } from './mk8sCommon';
2
2
  export interface LambdalabsPool {
3
3
  name: string;
4
4
  labels?: Labels;
5
5
  taints?: Taints;
6
6
  minSize: number;
7
7
  maxSize: number;
8
- instanceType: 'gpu_1x_a10' | 'gpu_1x_a100' | 'gpu_1x_a100_sxm4' | 'gpu_1x_a6000' | 'gpu_1x_h100_pcie' | 'gpu_1x_rtx6000' | 'gpu_2x_a100' | 'gpu_2x_a6000' | 'gpu_4x_a100' | 'gpu_4x_a6000' | 'gpu_8x_h100_sxm5' | 'gpu_8x_a100' | 'gpu_8x_a100_80gb_sxm4';
8
+ instanceType: 'cpu_4x_general' | 'gpu_1x_a10' | 'gpu_1x_a100' | 'gpu_1x_a100_sxm4' | 'gpu_1x_a6000' | 'gpu_1x_h100_pcie' | 'gpu_1x_rtx6000' | 'gpu_2x_a100' | 'gpu_2x_a6000' | 'gpu_4x_a100' | 'gpu_4x_a6000' | 'gpu_8x_a100' | 'gpu_8x_a100_80gb_sxm4' | 'gpu_8x_h100_sxm5' | 'gpu_8x_v100';
9
9
  }
10
10
  export interface LambdalabsProvider {
11
- region: 'us-south-1' | 'us-west-2' | 'us-west-1' | 'us-midwest-1' | 'us-west-3' | 'us-east-1' | 'australia-southeast-1' | 'europe-central-1' | 'asia-south-1' | 'me-west-1' | 'europe-south-1' | 'asia-northeast-1' | 'asia-northeast-2';
11
+ region: 'asia-northeast-1' | 'asia-northeast-2' | 'asia-south-1' | 'australia-southeast-1' | 'europe-central-1' | 'europe-south-1' | 'me-west-1' | 'us-east-1' | 'us-midwest-1' | 'us-south-1' | 'us-west-1' | 'us-west-2' | 'us-west-3';
12
12
  tokenSecretLink: string;
13
13
  nodePools?: LambdalabsPool[];
14
- sshKeys?: string[];
14
+ sshKey: string;
15
15
  unmanagedNodePools?: UnmanagedPool[];
16
+ autoscaler?: AutoscalerConfig;
17
+ fileSystems?: string[];
18
+ preInstallScript?: PreInstallScript;
16
19
  }
17
20
  export interface LambdalabsProviderStatus {
18
21
  [x: string]: any;
@@ -1,21 +1,29 @@
1
- import { Labels, Taints, AutoscalerConfig } from './mk8sCommon';
1
+ import { Labels, Taints, PreInstallScript, AutoscalerConfig } from './mk8sCommon';
2
2
  export interface LinodePool {
3
3
  name: string;
4
4
  labels?: Labels;
5
5
  taints?: Taints;
6
- serverType: 'g6-nanode-1' | 'g6-standard-1' | 'g6-standard-2' | 'g6-standard-4' | 'g6-standard-6' | 'g6-standard-8' | 'g6-standard-16' | 'g6-standard-20' | 'g6-standard-24' | 'g6-standard-32' | 'g7-highmem-1' | 'g7-highmem-2' | 'g7-highmem-4' | 'g7-highmem-8' | 'g7-highmem-16' | 'g6-dedicated-2' | 'g6-dedicated-4' | 'g6-dedicated-8' | 'g6-dedicated-16' | 'g6-dedicated-32' | 'g6-dedicated-48' | 'g6-dedicated-50' | 'g6-dedicated-56' | 'g6-dedicated-64' | 'g1-gpu-rtx6000-1' | 'g1-gpu-rtx6000-2' | 'g1-gpu-rtx6000-3' | 'g1-gpu-rtx6000-4';
6
+ serverType: string;
7
7
  overrideImage?: string;
8
+ subnetId: string;
8
9
  minSize: number;
9
10
  maxSize: number;
10
11
  }
11
12
  export interface LinodeProvider {
12
- region: 'us-iad' | 'us-ord' | 'fr-par' | 'us-southeast' | 'us-east' | 'eu-west' | 'eu-central';
13
+ region: string;
13
14
  tokenSecretLink: string;
14
- vlanCidr: string;
15
- firewall?: string;
15
+ firewallId?: string;
16
16
  nodePools?: LinodePool[];
17
17
  image: string;
18
18
  authorizedUsers?: string[];
19
+ authorizedKeys?: string[];
20
+ vpcId: string;
21
+ preInstallScript?: PreInstallScript;
22
+ networking?: {
23
+ serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
24
+ podNetwork?: '10.42.0.0/16' | '172.16.0.0/15' | '172.18.0.0/15' | '172.20.0.0/15' | '172.22.0.0/15' | '172.24.0.0/15' | '172.26.0.0/15' | '172.28.0.0/15' | '172.30.0.0/15';
25
+ dnsForwarder?: string;
26
+ };
19
27
  autoscaler?: AutoscalerConfig;
20
28
  }
21
29
  export interface LinodeProviderStatus {
@@ -1,8 +1,20 @@
1
- import { UnmanagedPool } from './mk8sCommon';
1
+ import { Labels, Taints, UnmanagedPool, AutoscalerConfig, PreInstallScript } from './mk8sCommon';
2
+ export interface OblivusPool {
3
+ name: string;
4
+ labels?: Labels;
5
+ taints?: Taints;
6
+ minSize: number;
7
+ maxSize: number;
8
+ flavor: 'A100_NVLINK_80GB_x8' | 'A100_PCIE_80GB_x1' | 'A100_PCIE_80GB_x2' | 'A100_PCIE_80GB_x4' | 'A100_PCIE_80GB_x8' | 'H100_NVLINK_80GB_x8' | 'H100_PCIE_80GB_x1' | 'H100_PCIE_80GB_x2' | 'H100_PCIE_80GB_x4' | 'H100_PCIE_80GB_x8' | 'INTEL_XEON_V3_x16' | 'INTEL_XEON_V3_x4' | 'INTEL_XEON_V3_x8' | 'L40_x1' | 'L40_x2' | 'L40_x4' | 'L40_x8' | 'RTX_A4000_x1' | 'RTX_A4000_x2' | 'RTX_A4000_x4' | 'RTX_A4000_x8' | 'RTX_A5000_x1' | 'RTX_A5000_x2' | 'RTX_A5000_x4' | 'RTX_A5000_x8' | 'RTX_A6000_x1' | 'RTX_A6000_x2' | 'RTX_A6000_x4' | 'RTX_A6000_x8';
9
+ }
2
10
  export interface OblivusProvider {
3
- datacenter: 'CHI1' | 'NYC1' | 'LAS1';
11
+ datacenter: 'MON1' | 'OSL1';
4
12
  tokenSecretLink: string;
13
+ nodePools?: OblivusPool[];
14
+ sshKeys?: string[];
5
15
  unmanagedNodePools?: UnmanagedPool[];
16
+ autoscaler?: AutoscalerConfig;
17
+ preInstallScript?: PreInstallScript;
6
18
  }
7
19
  export interface OblivusProviderStatus {
8
20
  [x: string]: any;
@@ -1,10 +1,12 @@
1
- import { Labels, Taints, AutoscalerConfig, UnmanagedPool } from './mk8sCommon';
1
+ import { Labels, Taints, AutoscalerConfig, UnmanagedPool, PreInstallScript } from './mk8sCommon';
2
2
  export interface PaperspacePool {
3
3
  name: string;
4
4
  labels?: Labels;
5
5
  taints?: Taints;
6
6
  minSize: number;
7
7
  maxSize: number;
8
+ publicIpType: 'none' | 'dynamic' | 'static';
9
+ bootDiskSize?: number;
8
10
  machineType: 'A100' | 'A100-80G' | 'A100-80Gx2' | 'A100-80Gx4' | 'A100-80Gx8' | 'A100x2' | 'A100x4' | 'A100x8' | 'A4000' | 'A4000x2' | 'A4000x4' | 'A5000' | 'A5000x2' | 'A5000x4' | 'A6000' | 'A6000x2' | 'A6000x4' | 'C10' | 'C2' | 'C3' | 'C4' | 'C5' | 'C6' | 'C7' | 'C8' | 'C9' | 'GPU+' | 'P4000' | 'P4000x2' | 'P4000x4' | 'P5000' | 'P5000x2' | 'P6000' | 'P6000x2' | 'RTX4000' | 'RTX5000' | 'RTX5000x2' | 'V100' | 'V100-32G' | 'V100-32Gx2' | 'V100-32Gx4';
9
11
  }
10
12
  export interface PaperspaceProvider {
@@ -14,6 +16,9 @@ export interface PaperspaceProvider {
14
16
  nodePools?: PaperspacePool[];
15
17
  autoscaler?: AutoscalerConfig;
16
18
  unmanagedNodePools?: UnmanagedPool[];
19
+ preInstallScript?: PreInstallScript;
20
+ userIds?: string[];
21
+ networkId: string;
17
22
  }
18
23
  export interface PaperspaceProviderStatus {
19
24
  [x: string]: any;