@controlplane/schema 1.0.1 → 1.0.3
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/build/src/interfaces/accessreport.d.ts +18 -0
- package/build/src/interfaces/agent.d.ts +30 -0
- package/build/src/interfaces/auditctx.d.ts +17 -0
- package/build/src/interfaces/base.d.ts +37 -0
- package/build/src/interfaces/cloudaccount.d.ts +37 -0
- package/build/src/interfaces/command.d.ts +203 -0
- package/build/src/interfaces/config.d.ts +11 -0
- package/build/src/interfaces/containerstatus.d.ts +13 -0
- package/build/src/interfaces/cronjob.d.ts +20 -0
- package/build/src/interfaces/dbcluster.d.ts +42 -0
- package/build/src/interfaces/deployment.d.ts +33 -0
- package/build/src/interfaces/discovery.d.ts +22 -0
- package/build/src/interfaces/domain.d.ts +83 -0
- package/build/src/interfaces/env.d.ts +7 -0
- package/build/src/interfaces/envoy.d.ts +14 -0
- package/build/src/interfaces/envoy.js +3 -0
- package/build/src/interfaces/envoyAccessLog.d.ts +21 -0
- package/build/src/interfaces/envoyAccessLog.js +3 -0
- package/build/src/interfaces/envoyCluster.d.ts +64 -0
- package/build/src/interfaces/envoyCluster.js +3 -0
- package/build/src/interfaces/envoyCommon.d.ts +437 -0
- package/build/src/interfaces/envoyCommon.js +3 -0
- package/build/src/interfaces/envoyExcExtAuth.d.ts +12 -0
- package/build/src/interfaces/envoyExcExtAuth.js +3 -0
- package/build/src/interfaces/envoyHttp.d.ts +273 -0
- package/build/src/interfaces/envoyHttp.js +3 -0
- package/build/src/interfaces/envoyRateLimit.d.ts +45 -0
- package/build/src/interfaces/envoyRateLimit.js +3 -0
- package/build/src/interfaces/event.d.ts +25 -0
- package/build/src/interfaces/group.d.ts +20 -0
- package/build/src/interfaces/gvc.d.ts +57 -0
- package/build/src/interfaces/identity.d.ts +102 -0
- package/build/src/interfaces/image.d.ts +25 -0
- package/build/src/interfaces/links.d.ts +0 -0
- package/build/src/interfaces/location.d.ts +31 -0
- package/build/src/interfaces/memcache.d.ts +46 -0
- package/build/src/interfaces/mk8s.d.ts +99 -0
- package/build/src/interfaces/mk8sAddons.d.ts +69 -0
- package/build/src/interfaces/mk8sAws.d.ts +46 -0
- package/build/src/interfaces/mk8sCommon.d.ts +24 -0
- package/build/src/interfaces/mk8sEphemeral.d.ts +18 -0
- package/build/src/interfaces/mk8sEphemeral.js +3 -0
- package/build/src/interfaces/mk8sGeneric.d.ts +21 -0
- package/build/src/interfaces/mk8sHetzner.d.ts +42 -0
- package/build/src/interfaces/mk8sLambdalabs.d.ts +23 -0
- package/build/src/interfaces/mk8sLinode.d.ts +28 -0
- package/build/src/interfaces/mk8sOblivus.d.ts +13 -0
- package/build/src/interfaces/mk8sPaperspace.d.ts +24 -0
- package/build/src/interfaces/org.d.ts +78 -0
- package/build/src/interfaces/orgLogging.d.ts +68 -0
- package/build/src/interfaces/orgTracing.d.ts +4 -0
- package/build/src/interfaces/permissions.d.ts +14 -0
- package/build/src/interfaces/policy.d.ts +23 -0
- package/build/src/interfaces/policyMembership.d.ts +11 -0
- package/build/src/interfaces/port.d.ts +1 -0
- package/build/src/interfaces/port.js +3 -0
- package/build/src/interfaces/query.d.ts +27 -0
- package/build/src/interfaces/quota.d.ts +18 -0
- package/build/src/interfaces/resourcePolicy.d.ts +13 -0
- package/build/src/interfaces/secret.d.ts +58 -0
- package/build/src/interfaces/serviceaccount.d.ts +20 -0
- package/build/src/interfaces/spicedb.d.ts +26 -0
- package/build/src/interfaces/statefulSet.d.ts +5 -0
- package/build/src/interfaces/task.d.ts +19 -0
- package/build/src/interfaces/tenant.d.ts +20 -0
- package/build/src/interfaces/tracing.d.ts +24 -0
- package/build/src/interfaces/user.d.ts +24 -0
- package/build/src/interfaces/util.d.ts +0 -0
- package/build/src/interfaces/util.js +2 -0
- package/build/src/interfaces/volumeSet.d.ts +79 -0
- package/build/src/interfaces/volumeSpec.d.ts +5 -0
- package/build/src/interfaces/volumeSpec.js +3 -0
- package/build/src/interfaces/workload.d.ts +260 -0
- package/build/src/interfaces/workloadOptions.d.ts +18 -0
- package/build/src/interfaces/workloadOptions.js +3 -0
- package/package.json +2 -2
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { GenericProvider } from './mk8sGeneric';
|
|
2
|
+
import { HetznerProvider } from './mk8sHetzner';
|
|
3
|
+
import { AwsProvider } from './mk8sAws';
|
|
4
|
+
import { LinodeProvider } from './mk8sLinode';
|
|
5
|
+
import { OblivusProvider } from './mk8sOblivus';
|
|
6
|
+
import { LambdalabsProvider } from './mk8sLambdalabs';
|
|
7
|
+
import { PaperspaceProvider } from './mk8sPaperspace';
|
|
8
|
+
import { EphemeralProvider } from './mk8sEphemeral';
|
|
9
|
+
import { NonCustomizableAddonConfig, AzureAddonConfig, MetricsAddonConfig, LogsAddonConfig, NvidiaAddonConfig, AwsEFSAddonConfig, AwsECRAddonConfig, AwsELBAddonConfig, AzureACRAddonConfig, DashboardAddonStatus, AwsWorkloadIdentityAddonStatus, MetricsAddonStatus, LogsAddonStatus, AwsTrustPolicyConfig } from './mk8sAddons';
|
|
10
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
11
|
+
export interface Mk8sSpec {
|
|
12
|
+
version: '1.26.0' | '1.26.4' | '1.27.3' | '1.28.2' | '1.28.4';
|
|
13
|
+
firewall?: {
|
|
14
|
+
sourceCIDR: string;
|
|
15
|
+
description?: string;
|
|
16
|
+
}[];
|
|
17
|
+
provider: {
|
|
18
|
+
generic?: GenericProvider;
|
|
19
|
+
hetzner?: HetznerProvider;
|
|
20
|
+
aws?: AwsProvider;
|
|
21
|
+
linode?: LinodeProvider;
|
|
22
|
+
oblivus?: OblivusProvider;
|
|
23
|
+
lambdalabs?: LambdalabsProvider;
|
|
24
|
+
paperspace?: PaperspaceProvider;
|
|
25
|
+
ephemeral?: EphemeralProvider;
|
|
26
|
+
};
|
|
27
|
+
addOns?: {
|
|
28
|
+
dashboard?: NonCustomizableAddonConfig;
|
|
29
|
+
azureWorkloadIdentity?: AzureAddonConfig;
|
|
30
|
+
awsWorkloadIdentity?: NonCustomizableAddonConfig;
|
|
31
|
+
localPathStorage?: NonCustomizableAddonConfig;
|
|
32
|
+
metrics?: MetricsAddonConfig;
|
|
33
|
+
logs?: LogsAddonConfig;
|
|
34
|
+
nvidia?: NvidiaAddonConfig;
|
|
35
|
+
awsEFS?: AwsEFSAddonConfig;
|
|
36
|
+
awsECR?: AwsECRAddonConfig;
|
|
37
|
+
awsELB?: AwsELBAddonConfig;
|
|
38
|
+
azureACR?: AzureACRAddonConfig;
|
|
39
|
+
sysbox?: NonCustomizableAddonConfig;
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
export interface Mk8sStatus {
|
|
43
|
+
oidcProviderUrl?: string;
|
|
44
|
+
serverUrl?: string;
|
|
45
|
+
homeLocation?: string;
|
|
46
|
+
addOns?: {
|
|
47
|
+
dashboard?: DashboardAddonStatus;
|
|
48
|
+
awsWorkloadIdentity?: AwsWorkloadIdentityAddonStatus;
|
|
49
|
+
metrics?: MetricsAddonStatus;
|
|
50
|
+
logs?: LogsAddonStatus;
|
|
51
|
+
awsECR?: AwsTrustPolicyConfig;
|
|
52
|
+
awsEFS?: AwsTrustPolicyConfig;
|
|
53
|
+
awsELB?: AwsTrustPolicyConfig;
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
export interface Mk8sCluster {
|
|
57
|
+
id?: string;
|
|
58
|
+
name?: Name;
|
|
59
|
+
kind?: Kind;
|
|
60
|
+
version?: number;
|
|
61
|
+
description?: string;
|
|
62
|
+
tags?: Tags;
|
|
63
|
+
created?: Date;
|
|
64
|
+
lastModified?: Date;
|
|
65
|
+
links?: Links;
|
|
66
|
+
spec: {
|
|
67
|
+
version: '1.26.0' | '1.26.4' | '1.27.3' | '1.28.2' | '1.28.4';
|
|
68
|
+
firewall?: {
|
|
69
|
+
sourceCIDR: string;
|
|
70
|
+
description?: string;
|
|
71
|
+
}[];
|
|
72
|
+
provider: {
|
|
73
|
+
generic?: GenericProvider;
|
|
74
|
+
hetzner?: HetznerProvider;
|
|
75
|
+
aws?: AwsProvider;
|
|
76
|
+
linode?: LinodeProvider;
|
|
77
|
+
oblivus?: OblivusProvider;
|
|
78
|
+
lambdalabs?: LambdalabsProvider;
|
|
79
|
+
paperspace?: PaperspaceProvider;
|
|
80
|
+
ephemeral?: EphemeralProvider;
|
|
81
|
+
};
|
|
82
|
+
addOns?: {
|
|
83
|
+
dashboard?: NonCustomizableAddonConfig;
|
|
84
|
+
azureWorkloadIdentity?: AzureAddonConfig;
|
|
85
|
+
awsWorkloadIdentity?: NonCustomizableAddonConfig;
|
|
86
|
+
localPathStorage?: NonCustomizableAddonConfig;
|
|
87
|
+
metrics?: MetricsAddonConfig;
|
|
88
|
+
logs?: LogsAddonConfig;
|
|
89
|
+
nvidia?: NvidiaAddonConfig;
|
|
90
|
+
awsEFS?: AwsEFSAddonConfig;
|
|
91
|
+
awsECR?: AwsECRAddonConfig;
|
|
92
|
+
awsELB?: AwsELBAddonConfig;
|
|
93
|
+
azureACR?: AzureACRAddonConfig;
|
|
94
|
+
sysbox?: NonCustomizableAddonConfig;
|
|
95
|
+
};
|
|
96
|
+
};
|
|
97
|
+
alias?: string;
|
|
98
|
+
status?: Mk8sStatus;
|
|
99
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
export type RegularExpression = string;
|
|
2
|
+
export interface FlexibleAddonConfig {
|
|
3
|
+
[x: string]: string;
|
|
4
|
+
}
|
|
5
|
+
export interface NonCustomizableAddonConfig {
|
|
6
|
+
}
|
|
7
|
+
export interface AzureAddonConfig {
|
|
8
|
+
tenantId?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface AwsEFSAddonConfig {
|
|
11
|
+
roleArn: string;
|
|
12
|
+
}
|
|
13
|
+
export interface MetricsAddonConfig {
|
|
14
|
+
kubeState?: boolean;
|
|
15
|
+
coreDns?: boolean;
|
|
16
|
+
kubelet?: boolean;
|
|
17
|
+
apiserver?: boolean;
|
|
18
|
+
nodeExporter?: boolean;
|
|
19
|
+
cadvisor?: boolean;
|
|
20
|
+
scrapeAnnotated?: {
|
|
21
|
+
intervalSeconds?: number;
|
|
22
|
+
includeNamespaces?: RegularExpression;
|
|
23
|
+
excludeNamespaces?: RegularExpression;
|
|
24
|
+
retainLabels?: RegularExpression;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export interface MetricsAddonStatus {
|
|
28
|
+
prometheusEndpoint?: string;
|
|
29
|
+
remoteWriteConfig?: {
|
|
30
|
+
[x: string]: any;
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
export interface LogsAddonConfig {
|
|
34
|
+
auditEnabled?: boolean;
|
|
35
|
+
includeNamespaces?: RegularExpression;
|
|
36
|
+
excludeNamespaces?: RegularExpression;
|
|
37
|
+
}
|
|
38
|
+
export interface LogsAddonStatus {
|
|
39
|
+
lokiAddress?: string;
|
|
40
|
+
}
|
|
41
|
+
export interface DashboardAddonStatus {
|
|
42
|
+
url?: string;
|
|
43
|
+
}
|
|
44
|
+
export interface AwsWorkloadIdentityAddonStatus {
|
|
45
|
+
oidcProviderConfig?: {
|
|
46
|
+
providerUrl?: string;
|
|
47
|
+
audience?: string;
|
|
48
|
+
};
|
|
49
|
+
trustPolicy?: {
|
|
50
|
+
[x: string]: any;
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
export interface AwsTrustPolicyConfig {
|
|
54
|
+
trustPolicy?: {
|
|
55
|
+
[x: string]: any;
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
export interface NvidiaAddonConfig {
|
|
59
|
+
taintGPUNodes?: boolean;
|
|
60
|
+
}
|
|
61
|
+
export interface AwsECRAddonConfig {
|
|
62
|
+
roleArn?: string;
|
|
63
|
+
}
|
|
64
|
+
export interface AwsELBAddonConfig {
|
|
65
|
+
roleArn?: string;
|
|
66
|
+
}
|
|
67
|
+
export interface AzureACRAddonConfig {
|
|
68
|
+
clientId: string;
|
|
69
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Labels, Taints, AutoscalerConfig } from './mk8sCommon';
|
|
2
|
+
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';
|
|
4
|
+
exact?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface AwsPool {
|
|
7
|
+
name: string;
|
|
8
|
+
labels?: Labels;
|
|
9
|
+
taints?: Taints;
|
|
10
|
+
instanceTypes: string[];
|
|
11
|
+
overrideImage?: Ami;
|
|
12
|
+
bootDiskSize: number;
|
|
13
|
+
minSize: number;
|
|
14
|
+
maxSize: number;
|
|
15
|
+
onDemandBaseCapacity: number;
|
|
16
|
+
onDemandPercentageAboveBaseCapacity: number;
|
|
17
|
+
spotAllocationStrategy?: 'lowest-price' | 'capacity-optimized' | 'capacity-optimized-prioritized' | 'price-capacity-optimized';
|
|
18
|
+
subnetIds: string[];
|
|
19
|
+
extraSecurityGroupIds?: string[];
|
|
20
|
+
}
|
|
21
|
+
export interface AwsProvider {
|
|
22
|
+
region: 'af-south-1' | 'ap-east-1' | 'ap-northeast-1' | 'ap-northeast-2' | 'ap-northeast-3' | 'ap-south-1' | 'ap-south-2' | 'ap-southeast-1' | 'ap-southeast-2' | 'ap-southeast-3' | 'ap-southeast-4' | 'ca-central-1' | 'eu-central-1' | 'eu-central-2' | 'eu-north-1' | 'eu-south-1' | 'eu-south-2' | 'eu-west-1' | 'eu-west-2' | 'eu-west-3' | 'me-central-1' | 'me-south-1' | 'sa-east-1' | 'us-east-1' | 'us-east-2' | 'us-west-1' | 'us-west-2';
|
|
23
|
+
awsTags?: {
|
|
24
|
+
[x: string]: string;
|
|
25
|
+
};
|
|
26
|
+
skipCreateRoles?: boolean;
|
|
27
|
+
networking?: {
|
|
28
|
+
serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
|
|
29
|
+
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';
|
|
30
|
+
};
|
|
31
|
+
preInstallScript?: string;
|
|
32
|
+
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';
|
|
34
|
+
exact?: string;
|
|
35
|
+
};
|
|
36
|
+
deployRoleArn: string;
|
|
37
|
+
vpcId: string;
|
|
38
|
+
keyPair?: string;
|
|
39
|
+
diskEncryptionKeyArn?: string;
|
|
40
|
+
securityGroupIds?: string[];
|
|
41
|
+
nodePools?: AwsPool[];
|
|
42
|
+
autoscaler?: AutoscalerConfig;
|
|
43
|
+
}
|
|
44
|
+
export interface AwsProviderStatus {
|
|
45
|
+
[x: string]: any;
|
|
46
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export type GoDuration = string;
|
|
2
|
+
export interface Labels {
|
|
3
|
+
[x: string]: string;
|
|
4
|
+
}
|
|
5
|
+
export interface Taint {
|
|
6
|
+
key?: string;
|
|
7
|
+
value?: string;
|
|
8
|
+
effect?: 'NoSchedule' | 'PreferNoSchedule' | 'NoExecute';
|
|
9
|
+
}
|
|
10
|
+
export type Taints = Taint[];
|
|
11
|
+
export type NodePoolName = string;
|
|
12
|
+
export type SshPublicKey = string;
|
|
13
|
+
export interface AutoscalerConfig {
|
|
14
|
+
expander: ('random' | 'most-pods' | 'least-waste' | 'price' | 'priority')[];
|
|
15
|
+
unneededTime: string;
|
|
16
|
+
unreadyTime: string;
|
|
17
|
+
utilizationThreshold: number;
|
|
18
|
+
}
|
|
19
|
+
export interface UnmanagedPool {
|
|
20
|
+
name: string;
|
|
21
|
+
labels?: Labels;
|
|
22
|
+
taints?: Taints;
|
|
23
|
+
}
|
|
24
|
+
export type PreInstallScript = string;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Labels, Taints } from './mk8sCommon';
|
|
2
|
+
export interface EphemeralPool {
|
|
3
|
+
name: string;
|
|
4
|
+
labels?: Labels;
|
|
5
|
+
taints?: Taints;
|
|
6
|
+
count: number;
|
|
7
|
+
arch: 'any' | 'arm64' | 'amd64';
|
|
8
|
+
flavor: 'debian' | 'ubuntu' | 'fedora';
|
|
9
|
+
cpu: string;
|
|
10
|
+
memory: string;
|
|
11
|
+
}
|
|
12
|
+
export interface EphemeralProvider {
|
|
13
|
+
location: 'aws-eu-central-1' | 'aws-us-east-2' | 'aws-us-west-2' | 'gcp-me-west1' | 'gcp-us-east1';
|
|
14
|
+
nodePools?: EphemeralPool[];
|
|
15
|
+
}
|
|
16
|
+
export interface EphemeralProviderStatus {
|
|
17
|
+
[x: string]: any;
|
|
18
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Labels, Taints } from './mk8sCommon';
|
|
2
|
+
export interface GenericPool {
|
|
3
|
+
name: string;
|
|
4
|
+
labels?: Labels;
|
|
5
|
+
taints?: Taints;
|
|
6
|
+
}
|
|
7
|
+
export interface GenericProvider {
|
|
8
|
+
location: 'aws-eu-central-1' | 'aws-us-east-2' | 'aws-us-west-2' | 'gcp-me-west1' | 'gcp-us-east1';
|
|
9
|
+
networking?: {
|
|
10
|
+
serviceNetwork?: '10.43.0.0/16' | '192.168.0.0/16';
|
|
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
|
+
};
|
|
13
|
+
nodePools?: GenericPool[];
|
|
14
|
+
}
|
|
15
|
+
export interface GenericProviderStatus {
|
|
16
|
+
[x: string]: any;
|
|
17
|
+
}
|
|
18
|
+
export interface GenericJoinParams {
|
|
19
|
+
nodePoolName: string;
|
|
20
|
+
[x: string]: any;
|
|
21
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Labels, Taints, PreInstallScript, AutoscalerConfig } from './mk8sCommon';
|
|
2
|
+
export interface DedicatedServerHetznerPool {
|
|
3
|
+
name: string;
|
|
4
|
+
labels?: Labels;
|
|
5
|
+
taints?: Taints;
|
|
6
|
+
}
|
|
7
|
+
export interface HetznerPool {
|
|
8
|
+
name: string;
|
|
9
|
+
labels?: Labels;
|
|
10
|
+
taints?: Taints;
|
|
11
|
+
serverType: string;
|
|
12
|
+
overrideImage?: string;
|
|
13
|
+
minSize: number;
|
|
14
|
+
maxSize: number;
|
|
15
|
+
}
|
|
16
|
+
export interface HetznerProvider {
|
|
17
|
+
region: 'fsn1' | 'nbg1' | 'hel1' | 'ash' | 'hil';
|
|
18
|
+
hetznerLabels?: {
|
|
19
|
+
[x: string]: string;
|
|
20
|
+
};
|
|
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
|
+
};
|
|
25
|
+
preInstallScript?: PreInstallScript;
|
|
26
|
+
tokenSecretLink: string;
|
|
27
|
+
networkId: string;
|
|
28
|
+
firewallId?: string;
|
|
29
|
+
nodePools?: HetznerPool[];
|
|
30
|
+
dedicatedServerNodePools?: DedicatedServerHetznerPool[];
|
|
31
|
+
image: string;
|
|
32
|
+
sshKey?: string;
|
|
33
|
+
autoscaler?: AutoscalerConfig;
|
|
34
|
+
}
|
|
35
|
+
export interface HetznerProviderStatus {
|
|
36
|
+
[x: string]: any;
|
|
37
|
+
}
|
|
38
|
+
export interface HetznerJoinParams {
|
|
39
|
+
ipAddress?: string;
|
|
40
|
+
nodePoolName: string;
|
|
41
|
+
[x: string]: any;
|
|
42
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Labels, Taints, UnmanagedPool } from './mk8sCommon';
|
|
2
|
+
export interface LambdalabsPool {
|
|
3
|
+
name: string;
|
|
4
|
+
labels?: Labels;
|
|
5
|
+
taints?: Taints;
|
|
6
|
+
minSize: number;
|
|
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';
|
|
9
|
+
}
|
|
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';
|
|
12
|
+
tokenSecretLink: string;
|
|
13
|
+
nodePools?: LambdalabsPool[];
|
|
14
|
+
sshKeys?: string[];
|
|
15
|
+
unmanagedNodePools?: UnmanagedPool[];
|
|
16
|
+
}
|
|
17
|
+
export interface LambdalabsProviderStatus {
|
|
18
|
+
[x: string]: any;
|
|
19
|
+
}
|
|
20
|
+
export interface LambdalabsJoinParams {
|
|
21
|
+
nodePoolName: string;
|
|
22
|
+
[x: string]: any;
|
|
23
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Labels, Taints, AutoscalerConfig } from './mk8sCommon';
|
|
2
|
+
export interface LinodePool {
|
|
3
|
+
name: string;
|
|
4
|
+
labels?: Labels;
|
|
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';
|
|
7
|
+
overrideImage?: string;
|
|
8
|
+
minSize: number;
|
|
9
|
+
maxSize: number;
|
|
10
|
+
}
|
|
11
|
+
export interface LinodeProvider {
|
|
12
|
+
region: 'us-iad' | 'us-ord' | 'fr-par' | 'us-southeast' | 'us-east' | 'eu-west' | 'eu-central';
|
|
13
|
+
tokenSecretLink: string;
|
|
14
|
+
vlanCidr: string;
|
|
15
|
+
firewall?: string;
|
|
16
|
+
nodePools?: LinodePool[];
|
|
17
|
+
image: string;
|
|
18
|
+
authorizedUsers?: string[];
|
|
19
|
+
autoscaler?: AutoscalerConfig;
|
|
20
|
+
}
|
|
21
|
+
export interface LinodeProviderStatus {
|
|
22
|
+
[x: string]: any;
|
|
23
|
+
}
|
|
24
|
+
export interface LinodeJoinParams {
|
|
25
|
+
ipAddress?: string;
|
|
26
|
+
nodePoolName: string;
|
|
27
|
+
[x: string]: any;
|
|
28
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { UnmanagedPool } from './mk8sCommon';
|
|
2
|
+
export interface OblivusProvider {
|
|
3
|
+
datacenter: 'CHI1' | 'NYC1' | 'LAS1';
|
|
4
|
+
tokenSecretLink: string;
|
|
5
|
+
unmanagedNodePools?: UnmanagedPool[];
|
|
6
|
+
}
|
|
7
|
+
export interface OblivusProviderStatus {
|
|
8
|
+
[x: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export interface OblivusJoinParams {
|
|
11
|
+
nodePoolName: string;
|
|
12
|
+
[x: string]: any;
|
|
13
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Labels, Taints, AutoscalerConfig, UnmanagedPool } from './mk8sCommon';
|
|
2
|
+
export interface PaperspacePool {
|
|
3
|
+
name: string;
|
|
4
|
+
labels?: Labels;
|
|
5
|
+
taints?: Taints;
|
|
6
|
+
minSize: number;
|
|
7
|
+
maxSize: number;
|
|
8
|
+
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
|
+
}
|
|
10
|
+
export interface PaperspaceProvider {
|
|
11
|
+
region: 'AMS1' | 'NY2' | 'CA1';
|
|
12
|
+
tokenSecretLink: string;
|
|
13
|
+
sharedDrives?: string[];
|
|
14
|
+
nodePools?: PaperspacePool[];
|
|
15
|
+
autoscaler?: AutoscalerConfig;
|
|
16
|
+
unmanagedNodePools?: UnmanagedPool[];
|
|
17
|
+
}
|
|
18
|
+
export interface PaperspaceProviderStatus {
|
|
19
|
+
[x: string]: any;
|
|
20
|
+
}
|
|
21
|
+
export interface PaperspaceJoinParams {
|
|
22
|
+
nodePoolName: string;
|
|
23
|
+
[x: string]: any;
|
|
24
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { S3Logging, CoralogixLogging, DatadogLogging, LogzioLogging, ElasticLogging, CloudWatchLogging, FluentdLogging, StackdriverLogging, SyslogLogging } from './orgLogging';
|
|
2
|
+
import { Tracing } from './tracing';
|
|
3
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
4
|
+
export interface OrgStatus {
|
|
5
|
+
accountLink?: string;
|
|
6
|
+
active?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export interface AuthConfig {
|
|
9
|
+
domainAutoMembers?: string[];
|
|
10
|
+
samlOnly?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export interface ObservabilityConfig {
|
|
13
|
+
logsRetentionDays?: number;
|
|
14
|
+
metricsRetentionDays?: number;
|
|
15
|
+
tracesRetentionDays?: number;
|
|
16
|
+
}
|
|
17
|
+
export interface ThreatDetection {
|
|
18
|
+
enabled: boolean;
|
|
19
|
+
minimumSeverity?: 'warning' | 'error' | 'critical';
|
|
20
|
+
syslog?: {
|
|
21
|
+
transport?: 'tcp' | 'udp';
|
|
22
|
+
host: string;
|
|
23
|
+
port: number;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
export interface OrgSpec {
|
|
27
|
+
logging?: {
|
|
28
|
+
s3?: S3Logging;
|
|
29
|
+
coralogix?: CoralogixLogging;
|
|
30
|
+
datadog?: DatadogLogging;
|
|
31
|
+
logzio?: LogzioLogging;
|
|
32
|
+
elastic?: ElasticLogging;
|
|
33
|
+
cloudWatch?: CloudWatchLogging;
|
|
34
|
+
fluentd?: FluentdLogging;
|
|
35
|
+
stackdriver?: StackdriverLogging;
|
|
36
|
+
syslog?: SyslogLogging;
|
|
37
|
+
};
|
|
38
|
+
extraLogging?: {
|
|
39
|
+
s3?: S3Logging;
|
|
40
|
+
coralogix?: CoralogixLogging;
|
|
41
|
+
datadog?: DatadogLogging;
|
|
42
|
+
logzio?: LogzioLogging;
|
|
43
|
+
elastic?: ElasticLogging;
|
|
44
|
+
cloudWatch?: CloudWatchLogging;
|
|
45
|
+
fluentd?: FluentdLogging;
|
|
46
|
+
stackdriver?: StackdriverLogging;
|
|
47
|
+
syslog?: SyslogLogging;
|
|
48
|
+
}[];
|
|
49
|
+
tracing?: Tracing;
|
|
50
|
+
sessionTimeoutSeconds?: number;
|
|
51
|
+
authConfig?: AuthConfig;
|
|
52
|
+
observability?: ObservabilityConfig;
|
|
53
|
+
security?: {
|
|
54
|
+
threatDetection?: ThreatDetection;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
export interface Org {
|
|
58
|
+
id?: string;
|
|
59
|
+
name?: Name;
|
|
60
|
+
kind?: Kind;
|
|
61
|
+
version?: number;
|
|
62
|
+
description?: string;
|
|
63
|
+
tags?: Tags;
|
|
64
|
+
created?: Date;
|
|
65
|
+
lastModified?: Date;
|
|
66
|
+
links?: Links;
|
|
67
|
+
spec?: OrgSpec;
|
|
68
|
+
status?: OrgStatus;
|
|
69
|
+
}
|
|
70
|
+
export interface QuotaOverride {
|
|
71
|
+
name: string;
|
|
72
|
+
max: number;
|
|
73
|
+
}
|
|
74
|
+
export interface OrgConfig {
|
|
75
|
+
awsPrivateLinks?: string[];
|
|
76
|
+
gcpServiceConnects?: string[];
|
|
77
|
+
quotaOverrides?: QuotaOverride[];
|
|
78
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export interface S3Logging {
|
|
2
|
+
bucket: string;
|
|
3
|
+
region: string;
|
|
4
|
+
prefix?: string;
|
|
5
|
+
credentials: string;
|
|
6
|
+
}
|
|
7
|
+
export interface SyslogLogging {
|
|
8
|
+
host: string;
|
|
9
|
+
port: number;
|
|
10
|
+
mode: 'tcp' | 'udp' | 'tls';
|
|
11
|
+
format: 'rfc3164' | 'rfc5424';
|
|
12
|
+
severity: number;
|
|
13
|
+
}
|
|
14
|
+
export interface DatadogLogging {
|
|
15
|
+
host: 'http-intake.logs.datadoghq.com' | 'http-intake.logs.us3.datadoghq.com' | 'http-intake.logs.us5.datadoghq.com' | 'http-intake.logs.datadoghq.eu';
|
|
16
|
+
credentials: string;
|
|
17
|
+
}
|
|
18
|
+
export interface LogzioLogging {
|
|
19
|
+
listenerHost: 'listener.logz.io' | 'listener-nl.logz.io';
|
|
20
|
+
credentials: string;
|
|
21
|
+
}
|
|
22
|
+
export interface FluentdLogging {
|
|
23
|
+
host: string;
|
|
24
|
+
port?: number;
|
|
25
|
+
}
|
|
26
|
+
export interface CloudWatchLogging {
|
|
27
|
+
region: 'us-east-1' | 'us-east-2' | 'us-west-1' | 'us-west-2' | 'ap-south-1' | 'ap-northeast-2' | 'ap-southeast-1' | 'ap-southeast-2' | 'ap-northeast-1' | 'eu-central-1' | 'eu-west-1' | 'eu-west-2' | 'eu-south-1' | 'eu-west-3' | 'eu-north-1' | 'me-south-1' | 'sa-east-1' | 'af-south-1';
|
|
28
|
+
credentials: string;
|
|
29
|
+
retentionDays?: number;
|
|
30
|
+
groupName: string;
|
|
31
|
+
streamName: string;
|
|
32
|
+
}
|
|
33
|
+
export interface CoralogixLogging {
|
|
34
|
+
cluster: 'coralogix.com' | 'coralogix.us' | 'app.coralogix.in' | 'app.eu2.coralogix.com' | 'app.coralogixsg.com';
|
|
35
|
+
credentials: string;
|
|
36
|
+
app?: string;
|
|
37
|
+
subsystem?: string;
|
|
38
|
+
}
|
|
39
|
+
export interface ElasticLogging {
|
|
40
|
+
aws?: {
|
|
41
|
+
host: string;
|
|
42
|
+
port: number;
|
|
43
|
+
index: string;
|
|
44
|
+
type: string;
|
|
45
|
+
credentials: string;
|
|
46
|
+
region: string;
|
|
47
|
+
};
|
|
48
|
+
elasticCloud?: {
|
|
49
|
+
index: string;
|
|
50
|
+
type: string;
|
|
51
|
+
credentials: string;
|
|
52
|
+
cloudId: string;
|
|
53
|
+
};
|
|
54
|
+
generic?: {
|
|
55
|
+
host: string;
|
|
56
|
+
port?: number;
|
|
57
|
+
path?: string;
|
|
58
|
+
index: string;
|
|
59
|
+
type: string;
|
|
60
|
+
credentials: string;
|
|
61
|
+
username?: string;
|
|
62
|
+
password?: string;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
export interface StackdriverLogging {
|
|
66
|
+
credentials: string;
|
|
67
|
+
location: 'us-east1' | 'us-east4' | 'us-central1' | 'us-west1' | 'europe-west4' | 'europe-west1' | 'europe-west3' | 'europe-west2' | 'asia-east1' | 'asia-southeast1' | 'asia-northeast1' | 'asia-south1' | 'australia-southeast1' | 'southamerica-east1' | 'africa-south1' | 'asia-east2' | 'asia-northeast2' | 'asia-northeast3' | 'asia-south2' | 'asia-southeast2' | 'australia-southeast2' | 'europe-central2' | 'europe-north1' | 'europe-southwest1' | 'europe-west10' | 'europe-west12' | 'europe-west6' | 'europe-west8' | 'europe-west9' | 'me-central1' | 'me-central2' | 'me-west1' | 'northamerica-northeast1' | 'northamerica-northeast2' | 'southamerica-west1' | 'us-east5' | 'us-south1' | 'us-west2' | 'us-west3' | 'us-west4';
|
|
68
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Links } from './base';
|
|
2
|
+
export interface Permission {
|
|
3
|
+
name: string;
|
|
4
|
+
description?: string;
|
|
5
|
+
}
|
|
6
|
+
export interface Permissions {
|
|
7
|
+
links?: Links;
|
|
8
|
+
kind: 'permissions';
|
|
9
|
+
targetKind: 'org' | 'cloudaccount' | 'policy' | 'user' | 'group' | 'resource' | 'task' | 'permissions' | 'serviceaccount' | 'secret' | 'location' | 'gvc' | 'workload' | 'quota' | 'identity' | 'deployment' | 'event' | 'domain' | 'image' | 'resourcepolicy' | 'agent' | 'accessreport' | 'policymembership' | 'dbcluster' | 'auditctx' | 'memcachecluster' | 'spicedbcluster' | 'tenant' | 'mk8s' | 'command' | 'imagesummary' | 'volumeset';
|
|
10
|
+
items: Permission[];
|
|
11
|
+
implied?: {
|
|
12
|
+
[x: string]: any;
|
|
13
|
+
};
|
|
14
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
2
|
+
import { Query } from './query';
|
|
3
|
+
export interface Binding {
|
|
4
|
+
permissions: string[];
|
|
5
|
+
principalLinks: string[];
|
|
6
|
+
}
|
|
7
|
+
export interface Policy {
|
|
8
|
+
id?: string;
|
|
9
|
+
name?: Name;
|
|
10
|
+
kind?: Kind;
|
|
11
|
+
version?: number;
|
|
12
|
+
description?: string;
|
|
13
|
+
tags?: Tags;
|
|
14
|
+
created?: Date;
|
|
15
|
+
lastModified?: Date;
|
|
16
|
+
links?: Links;
|
|
17
|
+
targetKind?: Kind;
|
|
18
|
+
targetLinks?: string[];
|
|
19
|
+
targetQuery?: Query;
|
|
20
|
+
target?: 'all';
|
|
21
|
+
origin?: 'default' | 'builtin';
|
|
22
|
+
bindings?: Binding[];
|
|
23
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type Port = number;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Kind, Link } from './base';
|
|
2
|
+
export interface Term {
|
|
3
|
+
op?: '=' | '>' | '>=' | '<' | '<=' | '!=' | '~' | 'exists' | '!exists';
|
|
4
|
+
property?: string;
|
|
5
|
+
rel?: string;
|
|
6
|
+
tag?: string;
|
|
7
|
+
value?: string | number | boolean | Date;
|
|
8
|
+
}
|
|
9
|
+
export interface Spec {
|
|
10
|
+
match?: 'all' | 'any' | 'none';
|
|
11
|
+
terms?: Term[];
|
|
12
|
+
}
|
|
13
|
+
export interface Query {
|
|
14
|
+
kind?: Kind;
|
|
15
|
+
context?: {
|
|
16
|
+
[x: string]: any;
|
|
17
|
+
};
|
|
18
|
+
fetch?: 'links' | 'items';
|
|
19
|
+
spec?: Spec;
|
|
20
|
+
}
|
|
21
|
+
export interface QueryResult {
|
|
22
|
+
kind?: 'queryresult';
|
|
23
|
+
itemKind?: Kind;
|
|
24
|
+
items: any[];
|
|
25
|
+
links: Link[];
|
|
26
|
+
query?: Query;
|
|
27
|
+
}
|