@controlplane/schema 1.0.2 → 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/command.d.ts +175 -1
- package/build/src/interfaces/discovery.d.ts +1 -0
- package/build/src/interfaces/domain.d.ts +2 -1
- package/build/src/interfaces/env.d.ts +1 -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/gvc.d.ts +7 -3
- package/build/src/interfaces/mk8s.d.ts +27 -3
- package/build/src/interfaces/mk8sAddons.d.ts +20 -2
- package/build/src/interfaces/mk8sAws.d.ts +12 -3
- package/build/src/interfaces/mk8sCommon.d.ts +5 -1
- package/build/src/interfaces/mk8sEphemeral.d.ts +18 -0
- package/build/src/interfaces/mk8sEphemeral.js +3 -0
- package/build/src/interfaces/mk8sGeneric.d.ts +4 -0
- package/build/src/interfaces/mk8sHetzner.d.ts +10 -1
- package/build/src/interfaces/mk8sLambdalabs.d.ts +1 -1
- package/build/src/interfaces/mk8sLinode.d.ts +2 -1
- package/build/src/interfaces/mk8sPaperspace.d.ts +2 -1
- package/build/src/interfaces/org.d.ts +21 -1
- package/build/src/interfaces/orgLogging.d.ts +22 -0
- package/build/src/interfaces/port.d.ts +1 -0
- package/build/src/interfaces/port.js +3 -0
- package/build/src/interfaces/secret.d.ts +1 -0
- package/build/src/interfaces/tracing.d.ts +9 -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 +15 -14
- package/build/src/interfaces/volumeSpec.d.ts +5 -0
- package/build/src/interfaces/volumeSpec.js +3 -0
- package/build/src/interfaces/workload.d.ts +15 -60
- package/build/src/interfaces/workloadOptions.d.ts +18 -0
- package/build/src/interfaces/workloadOptions.js +3 -0
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { S3Logging, CoralogixLogging, DatadogLogging, LogzioLogging, ElasticLogging } from './orgLogging';
|
|
1
|
+
import { S3Logging, CoralogixLogging, DatadogLogging, LogzioLogging, ElasticLogging, CloudWatchLogging, FluentdLogging, StackdriverLogging, SyslogLogging } from './orgLogging';
|
|
2
2
|
import { Tracing } from './tracing';
|
|
3
3
|
import { Name, Kind, Tags, Links } from './base';
|
|
4
4
|
export interface OrgStatus {
|
|
@@ -14,6 +14,15 @@ export interface ObservabilityConfig {
|
|
|
14
14
|
metricsRetentionDays?: number;
|
|
15
15
|
tracesRetentionDays?: number;
|
|
16
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
|
+
}
|
|
17
26
|
export interface OrgSpec {
|
|
18
27
|
logging?: {
|
|
19
28
|
s3?: S3Logging;
|
|
@@ -21,6 +30,10 @@ export interface OrgSpec {
|
|
|
21
30
|
datadog?: DatadogLogging;
|
|
22
31
|
logzio?: LogzioLogging;
|
|
23
32
|
elastic?: ElasticLogging;
|
|
33
|
+
cloudWatch?: CloudWatchLogging;
|
|
34
|
+
fluentd?: FluentdLogging;
|
|
35
|
+
stackdriver?: StackdriverLogging;
|
|
36
|
+
syslog?: SyslogLogging;
|
|
24
37
|
};
|
|
25
38
|
extraLogging?: {
|
|
26
39
|
s3?: S3Logging;
|
|
@@ -28,11 +41,18 @@ export interface OrgSpec {
|
|
|
28
41
|
datadog?: DatadogLogging;
|
|
29
42
|
logzio?: LogzioLogging;
|
|
30
43
|
elastic?: ElasticLogging;
|
|
44
|
+
cloudWatch?: CloudWatchLogging;
|
|
45
|
+
fluentd?: FluentdLogging;
|
|
46
|
+
stackdriver?: StackdriverLogging;
|
|
47
|
+
syslog?: SyslogLogging;
|
|
31
48
|
}[];
|
|
32
49
|
tracing?: Tracing;
|
|
33
50
|
sessionTimeoutSeconds?: number;
|
|
34
51
|
authConfig?: AuthConfig;
|
|
35
52
|
observability?: ObservabilityConfig;
|
|
53
|
+
security?: {
|
|
54
|
+
threatDetection?: ThreatDetection;
|
|
55
|
+
};
|
|
36
56
|
}
|
|
37
57
|
export interface Org {
|
|
38
58
|
id?: string;
|
|
@@ -4,6 +4,13 @@ export interface S3Logging {
|
|
|
4
4
|
prefix?: string;
|
|
5
5
|
credentials: string;
|
|
6
6
|
}
|
|
7
|
+
export interface SyslogLogging {
|
|
8
|
+
host: string;
|
|
9
|
+
port: number;
|
|
10
|
+
mode: 'tcp' | 'udp' | 'tls';
|
|
11
|
+
format: 'rfc3164' | 'rfc5424';
|
|
12
|
+
severity: number;
|
|
13
|
+
}
|
|
7
14
|
export interface DatadogLogging {
|
|
8
15
|
host: 'http-intake.logs.datadoghq.com' | 'http-intake.logs.us3.datadoghq.com' | 'http-intake.logs.us5.datadoghq.com' | 'http-intake.logs.datadoghq.eu';
|
|
9
16
|
credentials: string;
|
|
@@ -12,6 +19,17 @@ export interface LogzioLogging {
|
|
|
12
19
|
listenerHost: 'listener.logz.io' | 'listener-nl.logz.io';
|
|
13
20
|
credentials: string;
|
|
14
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
|
+
}
|
|
15
33
|
export interface CoralogixLogging {
|
|
16
34
|
cluster: 'coralogix.com' | 'coralogix.us' | 'app.coralogix.in' | 'app.eu2.coralogix.com' | 'app.coralogixsg.com';
|
|
17
35
|
credentials: string;
|
|
@@ -44,3 +62,7 @@ export interface ElasticLogging {
|
|
|
44
62
|
password?: string;
|
|
45
63
|
};
|
|
46
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 @@
|
|
|
1
|
+
export type Port = number;
|
|
@@ -5,11 +5,20 @@ export interface LightstepTracing {
|
|
|
5
5
|
export interface OpenTelemetry {
|
|
6
6
|
endpoint: string;
|
|
7
7
|
}
|
|
8
|
+
export interface TracingCustomTag {
|
|
9
|
+
literal?: {
|
|
10
|
+
value?: string;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
8
13
|
export interface Tracing {
|
|
9
14
|
sampling: number;
|
|
10
15
|
lightstep?: LightstepTracing;
|
|
16
|
+
customTags?: {
|
|
17
|
+
[x: string]: TracingCustomTag;
|
|
18
|
+
};
|
|
11
19
|
provider?: {
|
|
12
20
|
otel?: OpenTelemetry;
|
|
13
21
|
lightstep?: LightstepTracing;
|
|
22
|
+
controlplane?: {};
|
|
14
23
|
};
|
|
15
24
|
}
|
|
File without changes
|
|
@@ -1,10 +1,4 @@
|
|
|
1
1
|
import { Name, Kind, Tags, Links } from './base';
|
|
2
|
-
export interface PerformanceClass {
|
|
3
|
-
name: string;
|
|
4
|
-
minCapacity?: number;
|
|
5
|
-
maxCapacity: number;
|
|
6
|
-
featuresSupported?: ('automatic-expansion' | 'snapshots')[];
|
|
7
|
-
}
|
|
8
2
|
export interface VolumeSnapshot {
|
|
9
3
|
name: string;
|
|
10
4
|
id?: string;
|
|
@@ -20,29 +14,38 @@ export interface PersistentVolumeStatus {
|
|
|
20
14
|
storageDeviceId?: string;
|
|
21
15
|
index: number;
|
|
22
16
|
currentSize: number;
|
|
17
|
+
currentBytesUsed?: number;
|
|
23
18
|
iops?: number;
|
|
24
19
|
throughput?: number;
|
|
25
20
|
driver: string;
|
|
26
21
|
volumeSnapshots?: VolumeSnapshot[];
|
|
22
|
+
attributes?: {
|
|
23
|
+
[x: string]: string;
|
|
24
|
+
};
|
|
27
25
|
}
|
|
28
26
|
export interface VolumeSetStatusLocation {
|
|
29
27
|
name: string;
|
|
30
28
|
volumes?: PersistentVolumeStatus[];
|
|
31
29
|
desiredVolumeCount?: number;
|
|
30
|
+
clusterId?: string;
|
|
32
31
|
}
|
|
33
32
|
export interface VolumeSetStatus {
|
|
34
33
|
parentId?: string;
|
|
35
34
|
usedByWorkload?: string;
|
|
35
|
+
bindingId?: string;
|
|
36
36
|
locations?: VolumeSetStatusLocation[];
|
|
37
37
|
}
|
|
38
|
+
export interface SnapshotSpec {
|
|
39
|
+
createFinalSnapshot?: boolean;
|
|
40
|
+
retentionDuration?: string;
|
|
41
|
+
schedule?: string;
|
|
42
|
+
}
|
|
38
43
|
export interface VolumeSetSpec {
|
|
39
44
|
initialCapacity: number;
|
|
40
45
|
performanceClass: 'general-purpose-ssd' | 'high-throughput-ssd';
|
|
46
|
+
storageClassSuffix?: string;
|
|
41
47
|
fileSystemType?: 'xfs' | 'ext4';
|
|
42
|
-
snapshots?:
|
|
43
|
-
createFinalSnapshot?: boolean;
|
|
44
|
-
retentionDuration?: string;
|
|
45
|
-
};
|
|
48
|
+
snapshots?: SnapshotSpec;
|
|
46
49
|
autoscaling?: {
|
|
47
50
|
maxCapacity?: number;
|
|
48
51
|
minFreePercentage?: number;
|
|
@@ -62,11 +65,9 @@ export interface VolumeSet {
|
|
|
62
65
|
spec: {
|
|
63
66
|
initialCapacity: number;
|
|
64
67
|
performanceClass: 'general-purpose-ssd' | 'high-throughput-ssd';
|
|
68
|
+
storageClassSuffix?: string;
|
|
65
69
|
fileSystemType?: 'xfs' | 'ext4';
|
|
66
|
-
snapshots?:
|
|
67
|
-
createFinalSnapshot?: boolean;
|
|
68
|
-
retentionDuration?: string;
|
|
69
|
-
};
|
|
70
|
+
snapshots?: SnapshotSpec;
|
|
70
71
|
autoscaling?: {
|
|
71
72
|
maxCapacity?: number;
|
|
72
73
|
minFreePercentage?: number;
|
|
@@ -1,6 +1,11 @@
|
|
|
1
|
+
import { Port } from './port';
|
|
1
2
|
import { EnvVar } from './env';
|
|
3
|
+
import { VolumeSpec } from './volumeSpec';
|
|
4
|
+
import { DefaultOptions, LocalOptions } from './workloadOptions';
|
|
5
|
+
import { EnvoyFilters } from './envoy';
|
|
2
6
|
import { Kind, Tags, Links } from './base';
|
|
3
|
-
export type
|
|
7
|
+
export type Memory = string;
|
|
8
|
+
export type Cpu = string;
|
|
4
9
|
export interface HealthCheckSpec {
|
|
5
10
|
exec?: {
|
|
6
11
|
command?: string[];
|
|
@@ -26,11 +31,6 @@ export interface HealthCheckSpec {
|
|
|
26
31
|
successThreshold?: number;
|
|
27
32
|
failureThreshold?: number;
|
|
28
33
|
}
|
|
29
|
-
export interface VolumeSpec {
|
|
30
|
-
uri: string;
|
|
31
|
-
recoveryPolicy?: 'retain' | 'recycle';
|
|
32
|
-
path: string;
|
|
33
|
-
}
|
|
34
34
|
export interface RolloutOptions {
|
|
35
35
|
minReadySeconds?: number;
|
|
36
36
|
maxUnavailableReplicas?: string;
|
|
@@ -111,6 +111,8 @@ export interface ContainerSpec {
|
|
|
111
111
|
failureThreshold?: number;
|
|
112
112
|
};
|
|
113
113
|
cpu?: string;
|
|
114
|
+
minCpu?: string;
|
|
115
|
+
minMemory?: string;
|
|
114
116
|
env?: EnvVar[];
|
|
115
117
|
gpu?: {
|
|
116
118
|
nvidia: {
|
|
@@ -158,6 +160,7 @@ export interface ResolvedImage {
|
|
|
158
160
|
export interface ResolvedImages {
|
|
159
161
|
resolvedForVersion?: number;
|
|
160
162
|
resolvedAt?: Date;
|
|
163
|
+
errorMessages?: string[];
|
|
161
164
|
images?: ResolvedImage[];
|
|
162
165
|
}
|
|
163
166
|
export interface WorkloadStatus {
|
|
@@ -170,22 +173,6 @@ export interface WorkloadStatus {
|
|
|
170
173
|
resolvedImages?: ResolvedImages;
|
|
171
174
|
[x: string]: any;
|
|
172
175
|
}
|
|
173
|
-
export interface Options {
|
|
174
|
-
autoscaling?: {
|
|
175
|
-
metric?: 'concurrency' | 'cpu' | 'rps' | 'latency' | 'disabled';
|
|
176
|
-
metricPercentile?: 'p50' | 'p75' | 'p99';
|
|
177
|
-
target?: number;
|
|
178
|
-
maxScale?: number;
|
|
179
|
-
minScale?: number;
|
|
180
|
-
scaleToZeroDelay?: number;
|
|
181
|
-
maxConcurrency?: number;
|
|
182
|
-
};
|
|
183
|
-
timeoutSeconds?: number;
|
|
184
|
-
capacityAI?: boolean;
|
|
185
|
-
spot?: boolean;
|
|
186
|
-
debug?: boolean;
|
|
187
|
-
suspend?: boolean;
|
|
188
|
-
}
|
|
189
176
|
export interface FirewallSpec {
|
|
190
177
|
external?: {
|
|
191
178
|
inboundAllowCIDR?: string[];
|
|
@@ -201,8 +188,9 @@ export interface FirewallSpec {
|
|
|
201
188
|
inboundAllowWorkload?: string[];
|
|
202
189
|
};
|
|
203
190
|
}
|
|
191
|
+
export type ScheduleType = string;
|
|
204
192
|
export interface JobSpec {
|
|
205
|
-
schedule:
|
|
193
|
+
schedule: ScheduleType;
|
|
206
194
|
concurrencyPolicy?: 'Forbid' | 'Replace';
|
|
207
195
|
historyLimit?: number;
|
|
208
196
|
restartPolicy?: 'OnFailure' | 'Never';
|
|
@@ -227,50 +215,17 @@ export interface WorkloadSpec {
|
|
|
227
215
|
inboundAllowWorkload?: string[];
|
|
228
216
|
};
|
|
229
217
|
};
|
|
230
|
-
defaultOptions?:
|
|
231
|
-
|
|
232
|
-
metric?: 'concurrency' | 'cpu' | 'rps' | 'latency' | 'disabled';
|
|
233
|
-
metricPercentile?: 'p50' | 'p75' | 'p99';
|
|
234
|
-
target?: number;
|
|
235
|
-
maxScale?: number;
|
|
236
|
-
minScale?: number;
|
|
237
|
-
scaleToZeroDelay?: number;
|
|
238
|
-
maxConcurrency?: number;
|
|
239
|
-
};
|
|
240
|
-
timeoutSeconds?: number;
|
|
241
|
-
capacityAI?: boolean;
|
|
242
|
-
spot?: boolean;
|
|
243
|
-
debug?: boolean;
|
|
244
|
-
suspend?: boolean;
|
|
245
|
-
};
|
|
246
|
-
localOptions?: ({
|
|
247
|
-
autoscaling?: {
|
|
248
|
-
metric?: 'concurrency' | 'cpu' | 'rps' | 'latency' | 'disabled';
|
|
249
|
-
metricPercentile?: 'p50' | 'p75' | 'p99';
|
|
250
|
-
target?: number;
|
|
251
|
-
maxScale?: number;
|
|
252
|
-
minScale?: number;
|
|
253
|
-
scaleToZeroDelay?: number;
|
|
254
|
-
maxConcurrency?: number;
|
|
255
|
-
};
|
|
256
|
-
timeoutSeconds?: number;
|
|
257
|
-
capacityAI?: boolean;
|
|
258
|
-
spot?: boolean;
|
|
259
|
-
debug?: boolean;
|
|
260
|
-
suspend?: boolean;
|
|
261
|
-
location: string;
|
|
262
|
-
})[];
|
|
218
|
+
defaultOptions?: DefaultOptions;
|
|
219
|
+
localOptions?: LocalOptions;
|
|
263
220
|
job?: {
|
|
264
|
-
schedule:
|
|
221
|
+
schedule: ScheduleType;
|
|
265
222
|
concurrencyPolicy?: 'Forbid' | 'Replace';
|
|
266
223
|
historyLimit?: number;
|
|
267
224
|
restartPolicy?: 'OnFailure' | 'Never';
|
|
268
225
|
activeDeadlineSeconds?: number;
|
|
269
226
|
};
|
|
270
227
|
sidecar?: {
|
|
271
|
-
envoy?:
|
|
272
|
-
[x: string]: any;
|
|
273
|
-
};
|
|
228
|
+
envoy?: EnvoyFilters;
|
|
274
229
|
};
|
|
275
230
|
supportDynamicTags?: boolean;
|
|
276
231
|
rolloutOptions?: {
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
export interface Options {
|
|
2
|
+
autoscaling?: {
|
|
3
|
+
metric?: 'concurrency' | 'cpu' | 'rps' | 'latency' | 'disabled';
|
|
4
|
+
metricPercentile?: any;
|
|
5
|
+
target?: number;
|
|
6
|
+
maxScale?: number;
|
|
7
|
+
minScale?: number;
|
|
8
|
+
scaleToZeroDelay?: number;
|
|
9
|
+
maxConcurrency?: number;
|
|
10
|
+
};
|
|
11
|
+
timeoutSeconds?: number;
|
|
12
|
+
capacityAI?: boolean;
|
|
13
|
+
spot?: boolean;
|
|
14
|
+
debug?: boolean;
|
|
15
|
+
suspend?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export type DefaultOptions = any;
|
|
18
|
+
export type LocalOptions = any[];
|