@controlplane/schema 1.0.6 → 1.0.7

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.
@@ -36,6 +36,9 @@ export interface RunCronWorkloadSpec {
36
36
  }
37
37
  export interface RunCronWorkloadStatus {
38
38
  replica?: string;
39
+ clusterIdByLocation?: {
40
+ [x: string]: string;
41
+ };
39
42
  minimumWorkloadVersion?: number;
40
43
  }
41
44
  export interface StopReplicaSpec {
@@ -44,6 +47,9 @@ export interface StopReplicaSpec {
44
47
  }
45
48
  export interface StopReplicaStatus {
46
49
  clusterId?: string;
50
+ clusterIdByLocation?: {
51
+ [x: string]: string;
52
+ };
47
53
  podCreatedByCommandLink?: string;
48
54
  podId: string;
49
55
  }
@@ -52,14 +58,18 @@ export interface ReplaceVolumeSpec {
52
58
  volumeIndex: number;
53
59
  }
54
60
  export interface RestoreVolumeSpec {
55
- location: string;
56
61
  volumeIndex: number;
62
+ location: string;
57
63
  snapshotName: string;
64
+ zone?: string;
58
65
  }
59
66
  export interface ReplaceVolumeStatus {
60
67
  stage: 'create-volume' | 'cleanup-after-volume-creation' | 'update-volume-set' | 'configure-storage-resources' | 'remove-finalizer' | 'shutdown-replica' | 'await-replica-termination' | 'cleanup-k8s' | 'fail' | 'revert' | 'cleanup-old-storage-device' | 'restart-replica';
61
68
  messages?: string[];
62
69
  clusterId?: string;
70
+ clusterIdByLocation?: {
71
+ [x: string]: string;
72
+ };
63
73
  inUseByWorkloadId?: string;
64
74
  storageDeviceIdToRemove?: string;
65
75
  newStorageDeviceId?: string;
@@ -82,6 +92,9 @@ export interface CreateVolumeSnapshotStatus {
82
92
  stage: 'create-snapshot' | 'update-volume-set' | 'cleanup-k8s' | 'revert';
83
93
  messages?: string[];
84
94
  clusterId?: string;
95
+ clusterIdByLocation?: {
96
+ [x: string]: string;
97
+ };
85
98
  newSnapshotId?: string;
86
99
  newSnapshotSize?: number;
87
100
  creationStartTime?: Date;
@@ -94,6 +107,9 @@ export interface ExpandVolumeSpec {
94
107
  }
95
108
  export interface ExpandVolumeStatus {
96
109
  clusterId?: string;
110
+ clusterIdByLocation?: {
111
+ [x: string]: string;
112
+ };
97
113
  messages?: string[];
98
114
  stage: 'expand-volume' | 'delete-stateful-set' | 'await-replica-termination' | 'await-expansion-completed' | 'update-volume-set' | 'recreate-replica' | 'cleanup-k8s' | 'revert';
99
115
  replicaRestartedAt?: Date;
@@ -112,6 +128,9 @@ export interface DeleteOrphanedVolumeSpec {
112
128
  export interface DeleteVolumeStatus {
113
129
  stage: 'update-volume-set' | 'delete-storage-resources' | 'shutdown-replica' | 'await-replica-termination' | 'fail' | 'cleanup-k8s';
114
130
  clusterId?: string;
131
+ clusterIdByLocation?: {
132
+ [x: string]: string;
133
+ };
115
134
  messages?: string[];
116
135
  inUseByWorkloadId?: string;
117
136
  storageDeviceIdToRemove?: string;
@@ -119,6 +138,9 @@ export interface DeleteVolumeStatus {
119
138
  export interface DeleteOrphanedVolumeStatus {
120
139
  stage: 'delete-storage-resources' | 'cleanup-k8s' | 'update-volume-set' | 'fail';
121
140
  clusterId?: string;
141
+ clusterIdByLocation?: {
142
+ [x: string]: string;
143
+ };
122
144
  messages?: string[];
123
145
  }
124
146
  export interface DeleteOrphanedVolumeSnapshotSpec {
@@ -129,6 +151,9 @@ export interface DeleteOrphanedVolumeSnapshotSpec {
129
151
  export interface DeleteOrphanedVolumeSnapshotStatus {
130
152
  stage: 'delete-snapshot' | 'update-volume-set' | 'fail';
131
153
  clusterId?: string;
154
+ clusterIdByLocation?: {
155
+ [x: string]: string;
156
+ };
132
157
  messages?: string[];
133
158
  }
134
159
  export interface SnapshotDeletionStatus {
@@ -137,6 +162,9 @@ export interface SnapshotDeletionStatus {
137
162
  }
138
163
  export interface DeleteCloudDevicesStatus {
139
164
  clusterId?: string;
165
+ clusterIdByLocation?: {
166
+ [x: string]: string;
167
+ };
140
168
  volume: {
141
169
  lifecycle?: 'creating' | 'unused' | 'unbound' | 'bound' | 'deleted' | 'repairing';
142
170
  storageDeviceId?: string;
@@ -171,6 +199,9 @@ export interface DeleteVolumeSnapshotSpec {
171
199
  }
172
200
  export interface DeleteVolumeSnapshotStatus {
173
201
  clusterId?: string;
202
+ clusterIdByLocation?: {
203
+ [x: string]: string;
204
+ };
174
205
  snapshot: {
175
206
  name: string;
176
207
  id?: string;
@@ -207,6 +238,7 @@ export interface DeleteVolumeSetSpec {
207
238
  status?: VolumeSetStatus;
208
239
  gvc?: any;
209
240
  };
241
+ locations?: string[];
210
242
  }
211
243
  export interface DeleteVolumeSetLocationStatus {
212
244
  stage: 'delete-volumes' | 'delete-orphaned-volumes' | 'cleanup-filesystem' | 'complete';
@@ -78,6 +78,11 @@ export interface AwsELBAddonConfig {
78
78
  export interface AzureACRAddonConfig {
79
79
  clientId: string;
80
80
  }
81
+ export interface HttpHeaderValue {
82
+ values?: string[];
83
+ secrets?: string[];
84
+ files?: string[];
85
+ }
81
86
  export interface ByokAddonConfig {
82
87
  ignoreUpdates?: boolean;
83
88
  location: string;
@@ -95,6 +100,8 @@ export interface ByokAddonConfig {
95
100
  middlebox?: {
96
101
  enabled?: boolean;
97
102
  bandwidthAlertMbps?: number;
103
+ port?: number;
104
+ ip?: string;
98
105
  };
99
106
  common?: {
100
107
  deploymentReplicas?: number;
@@ -103,7 +110,12 @@ export interface ByokAddonConfig {
103
110
  };
104
111
  };
105
112
  longhorn?: {
113
+ numberOfReplicas?: number;
106
114
  replicas?: number;
115
+ isDefault?: boolean;
116
+ };
117
+ byok?: {
118
+ noDefaultStorageClasses?: boolean;
107
119
  };
108
120
  ingress?: {
109
121
  cpu?: Cpu;
@@ -148,6 +160,62 @@ export interface ByokAddonConfig {
148
160
  storage?: Memory;
149
161
  };
150
162
  };
163
+ remoteWrite?: {
164
+ basic_auth?: {
165
+ username?: string;
166
+ username_file?: string;
167
+ password?: string;
168
+ password_file?: string;
169
+ };
170
+ authorization?: {
171
+ type?: string;
172
+ credentials?: string;
173
+ credentials_file?: string;
174
+ };
175
+ oauth2?: {
176
+ [x: string]: any;
177
+ };
178
+ follow_redirects?: boolean;
179
+ enable_http2?: boolean;
180
+ tls_config?: {
181
+ [x: string]: any;
182
+ };
183
+ proxy_url?: string;
184
+ no_proxy?: string;
185
+ proxy_from_environment?: boolean;
186
+ proxy_connect_header?: {
187
+ [x: string]: string[];
188
+ };
189
+ http_headers?: {
190
+ [x: string]: HttpHeaderValue;
191
+ };
192
+ url?: string;
193
+ remote_timeout?: string;
194
+ headers?: {
195
+ [x: string]: string;
196
+ };
197
+ write_relabel_configs?: {
198
+ [x: string]: any;
199
+ }[];
200
+ name?: string;
201
+ send_exemplars?: boolean;
202
+ send_native_histograms?: boolean;
203
+ sigv4?: {
204
+ [x: string]: any;
205
+ };
206
+ azuread?: {
207
+ [x: string]: any;
208
+ };
209
+ google_iam?: {
210
+ [x: string]: any;
211
+ };
212
+ queue_config?: {
213
+ [x: string]: any;
214
+ };
215
+ }[];
216
+ externalLabels?: {
217
+ [x: string]: string;
218
+ };
151
219
  };
152
220
  redis?: {
153
221
  minCpu?: Cpu;
@@ -180,6 +248,5 @@ export interface ByokAddonConfig {
180
248
  minMemory?: Memory;
181
249
  maxMemory?: Memory;
182
250
  };
183
- [x: string]: any;
184
251
  };
185
252
  }
@@ -1,4 +1,4 @@
1
- import { S3Logging, CoralogixLogging, DatadogLogging, LogzioLogging, ElasticLogging, CloudWatchLogging, FluentdLogging, StackdriverLogging, SyslogLogging } from './orgLogging';
1
+ import { S3Logging, CoralogixLogging, DatadogLogging, LogzioLogging, ElasticLogging, CloudWatchLogging, FluentdLogging, StackdriverLogging, SyslogLogging, OpenTelemetryLogging } from './orgLogging';
2
2
  import { Tracing } from './tracing';
3
3
  import { Kind, Tags, Links } from './base';
4
4
  export interface OrgStatus {
@@ -36,6 +36,7 @@ export interface OrgSpec {
36
36
  fluentd?: FluentdLogging;
37
37
  stackdriver?: StackdriverLogging;
38
38
  syslog?: SyslogLogging;
39
+ opentelemetry?: OpenTelemetryLogging;
39
40
  };
40
41
  extraLogging?: {
41
42
  s3?: S3Logging;
@@ -47,6 +48,7 @@ export interface OrgSpec {
47
48
  fluentd?: FluentdLogging;
48
49
  stackdriver?: StackdriverLogging;
49
50
  syslog?: SyslogLogging;
51
+ opentelemetry?: OpenTelemetryLogging;
50
52
  }[];
51
53
  tracing?: Tracing;
52
54
  sessionTimeoutSeconds?: number;
@@ -15,6 +15,13 @@ export interface DatadogLogging {
15
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
16
  credentials: string;
17
17
  }
18
+ export interface OpenTelemetryLogging {
19
+ endpoint: string;
20
+ headers?: {
21
+ [x: string]: string;
22
+ };
23
+ credentials?: string;
24
+ }
18
25
  export interface LogzioLogging {
19
26
  listenerHost: 'listener.logz.io' | 'listener-nl.logz.io';
20
27
  credentials: string;
@@ -1,9 +1,11 @@
1
- import { Port } from './port';
2
1
  import { Regex, Kind, Tags, Links } from './base';
3
2
  import { EnvVar } from './env';
4
3
  import { VolumeSpec } from './volumeSpec';
5
4
  import { DefaultOptions, LocalOptions } from './workloadOptions';
6
- import { EnvoyFilters } from './envoy';
5
+ import { AccessLog } from './envoyAccessLog';
6
+ import { Cluster } from './envoyCluster';
7
+ import { ExcExtAuth, ExcludedRateLimit } from './envoyExcExtAuth';
8
+ import { HttpFilter } from './envoyHttp';
7
9
  export type Memory = string;
8
10
  export type Cpu = string;
9
11
  export interface HealthCheckSpec {
@@ -11,7 +13,7 @@ export interface HealthCheckSpec {
11
13
  command?: string[];
12
14
  };
13
15
  grpc?: {
14
- port?: Port;
16
+ port?: number;
15
17
  };
16
18
  tcpSocket?: {
17
19
  port?: number;
@@ -47,6 +49,7 @@ export interface RolloutOptionsStateful {
47
49
  }
48
50
  export interface SecurityOptions {
49
51
  filesystemGroupId?: number;
52
+ runAsUser?: number;
50
53
  }
51
54
  export interface GpuResource {
52
55
  nvidia?: {
@@ -79,7 +82,7 @@ export interface ContainerSpec {
79
82
  command?: string[];
80
83
  };
81
84
  grpc?: {
82
- port?: Port;
85
+ port?: number;
83
86
  };
84
87
  tcpSocket?: {
85
88
  port?: number;
@@ -104,7 +107,7 @@ export interface ContainerSpec {
104
107
  command?: string[];
105
108
  };
106
109
  grpc?: {
107
- port?: Port;
110
+ port?: number;
108
111
  };
109
112
  tcpSocket?: {
110
113
  port?: number;
@@ -193,9 +196,23 @@ export interface WorkloadStatus {
193
196
  endpoint?: string;
194
197
  internalName?: string;
195
198
  replicaInternalNames?: string[];
196
- healthCheck?: HealthCheckStatus;
199
+ healthCheck?: {
200
+ active: boolean;
201
+ success?: boolean;
202
+ code?: number;
203
+ message?: string;
204
+ failures?: number;
205
+ successes?: number;
206
+ lastChecked?: Date;
207
+ };
197
208
  currentReplicaCount?: number;
198
- resolvedImages?: ResolvedImages;
209
+ resolvedImages?: {
210
+ resolvedForVersion?: number;
211
+ resolvedAt?: Date;
212
+ errorMessages?: string[];
213
+ nextRetryAt?: Date;
214
+ images?: ResolvedImage[];
215
+ };
199
216
  loadBalancer?: LoadBalancerStatus[];
200
217
  [x: string]: any;
201
218
  }
@@ -299,12 +316,21 @@ export interface WorkloadSpec {
299
316
  activeDeadlineSeconds?: number;
300
317
  };
301
318
  sidecar?: {
302
- envoy?: EnvoyFilters;
319
+ envoy?: {
320
+ accessLog?: AccessLog[];
321
+ clusters?: Cluster[];
322
+ excludedExternalAuth?: ExcExtAuth[];
323
+ excludedRateLimit?: ExcludedRateLimit[];
324
+ http?: HttpFilter[];
325
+ network?: any[];
326
+ volumes?: VolumeSpec[];
327
+ };
303
328
  };
304
329
  supportDynamicTags?: boolean;
305
330
  rolloutOptions?: any;
306
331
  securityOptions?: {
307
332
  filesystemGroupId?: number;
333
+ runAsUser?: number;
308
334
  };
309
335
  loadBalancer?: {
310
336
  direct?: {
@@ -378,12 +404,21 @@ export interface Workload {
378
404
  activeDeadlineSeconds?: number;
379
405
  };
380
406
  sidecar?: {
381
- envoy?: EnvoyFilters;
407
+ envoy?: {
408
+ accessLog?: AccessLog[];
409
+ clusters?: Cluster[];
410
+ excludedExternalAuth?: ExcExtAuth[];
411
+ excludedRateLimit?: ExcludedRateLimit[];
412
+ http?: HttpFilter[];
413
+ network?: any[];
414
+ volumes?: VolumeSpec[];
415
+ };
382
416
  };
383
417
  supportDynamicTags?: boolean;
384
418
  rolloutOptions?: any;
385
419
  securityOptions?: {
386
420
  filesystemGroupId?: number;
421
+ runAsUser?: number;
387
422
  };
388
423
  loadBalancer?: {
389
424
  direct?: {
@@ -412,7 +447,32 @@ export interface Workload {
412
447
  retryOn?: string[];
413
448
  };
414
449
  };
415
- status?: WorkloadStatus;
450
+ status?: {
451
+ parentId?: string;
452
+ canonicalEndpoint?: string;
453
+ endpoint?: string;
454
+ internalName?: string;
455
+ replicaInternalNames?: string[];
456
+ healthCheck?: {
457
+ active: boolean;
458
+ success?: boolean;
459
+ code?: number;
460
+ message?: string;
461
+ failures?: number;
462
+ successes?: number;
463
+ lastChecked?: Date;
464
+ };
465
+ currentReplicaCount?: number;
466
+ resolvedImages?: {
467
+ resolvedForVersion?: number;
468
+ resolvedAt?: Date;
469
+ errorMessages?: string[];
470
+ nextRetryAt?: Date;
471
+ images?: ResolvedImage[];
472
+ };
473
+ loadBalancer?: LoadBalancerStatus[];
474
+ [x: string]: any;
475
+ };
416
476
  }
417
477
  export interface PodZoneMap {
418
478
  [x: string]: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@controlplane/schema",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "description": "Control Plane Corporation Schema",
5
5
  "scripts": {
6
6
  "build": "tsc",