@controlplane/schema 1.0.7 → 1.0.9
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 +11 -11
- package/build/src/interfaces/agent.d.ts +14 -10
- package/build/src/interfaces/auditctx.d.ts +4 -4
- package/build/src/interfaces/base.d.ts +20 -20
- package/build/src/interfaces/cloudaccount.d.ts +7 -7
- package/build/src/interfaces/command.d.ts +155 -148
- package/build/src/interfaces/config.d.ts +2 -4
- package/build/src/interfaces/containerstatus.d.ts +6 -6
- package/build/src/interfaces/cronjob.d.ts +1 -1
- package/build/src/interfaces/dbcluster.d.ts +1 -1
- package/build/src/interfaces/deployment.d.ts +20 -20
- package/build/src/interfaces/domain.d.ts +67 -67
- package/build/src/interfaces/env.d.ts +1 -1
- package/build/src/interfaces/envoy.d.ts +5 -5
- package/build/src/interfaces/envoyAccessLog.d.ts +1 -1
- package/build/src/interfaces/envoyCluster.d.ts +9 -9
- package/build/src/interfaces/envoyCommon.d.ts +301 -301
- package/build/src/interfaces/envoyExcExtAuth.d.ts +2 -2
- package/build/src/interfaces/envoyHttp.d.ts +146 -146
- package/build/src/interfaces/envoyRateLimit.d.ts +1 -1
- package/build/src/interfaces/event.d.ts +9 -9
- package/build/src/interfaces/group.d.ts +2 -2
- package/build/src/interfaces/gvc.d.ts +185 -66
- package/build/src/interfaces/identity.d.ts +96 -63
- package/build/src/interfaces/image.d.ts +1 -1
- package/build/src/interfaces/ipSet.d.ts +14 -14
- package/build/src/interfaces/location.d.ts +16 -16
- package/build/src/interfaces/memcache.d.ts +7 -7
- package/build/src/interfaces/mk8s.d.ts +65 -65
- package/build/src/interfaces/mk8sAddons.d.ts +64 -64
- package/build/src/interfaces/mk8sAws.d.ts +9 -6
- package/build/src/interfaces/mk8sAzure.d.ts +10 -10
- package/build/src/interfaces/mk8sCommon.d.ts +26 -26
- package/build/src/interfaces/mk8sDigitalOcean.d.ts +2 -2
- package/build/src/interfaces/mk8sEphemeral.d.ts +1 -1
- package/build/src/interfaces/mk8sGcp.d.ts +9 -9
- package/build/src/interfaces/mk8sGeneric.d.ts +5 -5
- package/build/src/interfaces/mk8sHetzner.d.ts +10 -10
- package/build/src/interfaces/mk8sLambdalabs.d.ts +5 -5
- package/build/src/interfaces/mk8sLinode.d.ts +6 -6
- package/build/src/interfaces/mk8sOblivus.d.ts +5 -5
- package/build/src/interfaces/mk8sPaperspace.d.ts +5 -5
- package/build/src/interfaces/mk8sTriton.d.ts +23 -23
- package/build/src/interfaces/org.d.ts +32 -32
- package/build/src/interfaces/orgLogging.d.ts +32 -32
- package/build/src/interfaces/permissions.d.ts +1 -1
- package/build/src/interfaces/policy.d.ts +2 -2
- package/build/src/interfaces/policyMembership.d.ts +6 -6
- package/build/src/interfaces/query.d.ts +24 -17
- package/build/src/interfaces/quota.d.ts +1 -1
- package/build/src/interfaces/resourcePolicy.d.ts +1 -1
- package/build/src/interfaces/secret.d.ts +23 -23
- package/build/src/interfaces/serviceaccount.d.ts +7 -7
- package/build/src/interfaces/spicedb.d.ts +1 -1
- package/build/src/interfaces/statefulSet.d.ts +1 -1
- package/build/src/interfaces/task.d.ts +1 -1
- package/build/src/interfaces/tenant.d.ts +5 -5
- package/build/src/interfaces/tracing.d.ts +16 -8
- package/build/src/interfaces/user.d.ts +12 -12
- package/build/src/interfaces/volumeSet.d.ts +54 -46
- package/build/src/interfaces/workload.d.ts +203 -222
- package/build/src/interfaces/workloadOptions.d.ts +47 -14
- package/package.json +1 -1
|
@@ -1,110 +1,33 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export interface HttpUri {
|
|
3
|
-
uri: string;
|
|
4
|
-
cluster: string;
|
|
5
|
-
timeout: string | {
|
|
6
|
-
seconds?: number;
|
|
7
|
-
nanos?: number;
|
|
8
|
-
};
|
|
9
|
-
}
|
|
10
|
-
export interface HttpUriRestricted {
|
|
11
|
-
uri: string;
|
|
12
|
-
cluster: string;
|
|
13
|
-
timeout?: DurationRestricted;
|
|
14
|
-
}
|
|
1
|
+
import { Priority, StringMatcher, RuntimeFractionalPercent, UInt32, GrpcService, ListStringMatcher, HeaderValue, HttpStatus, FractionalPercent, RuntimeFeatureFlag, ApiVersion, DurationRestricted, Duration, RetryPolicy, Empty, RouteMatch, RouteMatchRestricted, HeaderValueOption, DataSource, GoogleCallCredentials, Struct } from './envoyCommon.js';
|
|
15
2
|
export interface BufferSettings {
|
|
16
3
|
max_request_bytes?: number;
|
|
17
4
|
allow_partial_message?: boolean;
|
|
18
5
|
pack_as_bytes?: boolean;
|
|
19
6
|
}
|
|
20
|
-
export interface
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
}[];
|
|
27
|
-
remote_jwks?: {
|
|
28
|
-
http_uri?: HttpUri;
|
|
29
|
-
cache_duration?: Duration;
|
|
30
|
-
async_fetch?: {
|
|
31
|
-
fast_listener?: boolean;
|
|
32
|
-
failed_refetch_duration?: Duration;
|
|
33
|
-
};
|
|
34
|
-
retry_policy?: RetryPolicy;
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
export interface JwtProviderUIRestricted {
|
|
38
|
-
issuer?: string;
|
|
39
|
-
audiences?: string[];
|
|
40
|
-
claim_to_headers?: {
|
|
41
|
-
header_name: string;
|
|
42
|
-
claim_name: string;
|
|
43
|
-
}[];
|
|
44
|
-
remote_jwks?: {
|
|
45
|
-
http_uri?: HttpUriRestricted;
|
|
46
|
-
cache_duration?: DurationRestricted;
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
export interface JwtRequirement {
|
|
50
|
-
provider_name?: string;
|
|
51
|
-
provider_and_audiences?: {
|
|
52
|
-
provider_name?: string;
|
|
53
|
-
audiences?: string[];
|
|
54
|
-
};
|
|
55
|
-
requires_any?: {
|
|
56
|
-
requirements?: any[];
|
|
57
|
-
};
|
|
58
|
-
requires_all?: {
|
|
59
|
-
requirements?: any[];
|
|
7
|
+
export interface ConnectRpc {
|
|
8
|
+
priority?: Priority;
|
|
9
|
+
excludedWorkloads?: string[];
|
|
10
|
+
name: 'envoy.filters.http.connect_grpc_bridge';
|
|
11
|
+
typed_config?: {
|
|
12
|
+
"@type": 'type.googleapis.com/envoy.extensions.filters.http.connect_grpc_bridge.v3.FilterConfig';
|
|
60
13
|
};
|
|
61
|
-
allow_missing_or_failed?: Empty;
|
|
62
|
-
allow_missing?: Empty;
|
|
63
|
-
}
|
|
64
|
-
export interface JwtRequirementRestricted {
|
|
65
|
-
provider_name?: string;
|
|
66
|
-
}
|
|
67
|
-
export interface JwtRequirementRule {
|
|
68
|
-
match?: RouteMatch;
|
|
69
|
-
requires?: JwtRequirement;
|
|
70
|
-
requirement_name?: string;
|
|
71
|
-
}
|
|
72
|
-
export interface JwtRequirementRuleRestricted {
|
|
73
|
-
match?: RouteMatchRestricted;
|
|
74
|
-
requires?: JwtRequirementRestricted;
|
|
75
14
|
}
|
|
76
|
-
export interface
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
private_key?: DataSource;
|
|
92
|
-
cert_chain?: DataSource;
|
|
93
|
-
};
|
|
94
|
-
google_default?: Empty;
|
|
95
|
-
};
|
|
96
|
-
call_credentials?: GoogleCallCredentials[];
|
|
97
|
-
stat_prefix: string;
|
|
98
|
-
credentials_factory_name?: string;
|
|
99
|
-
config?: Struct;
|
|
100
|
-
};
|
|
101
|
-
timeout?: string | {
|
|
102
|
-
seconds?: number;
|
|
103
|
-
nanos?: number;
|
|
104
|
-
};
|
|
105
|
-
initial_metadata?: HeaderValue[];
|
|
15
|
+
export interface Cors {
|
|
16
|
+
priority?: Priority;
|
|
17
|
+
excludedWorkloads?: string[];
|
|
18
|
+
name: 'envoy.filters.http.cors';
|
|
19
|
+
typed_config?: {
|
|
20
|
+
allow_origin_string_match?: StringMatcher[];
|
|
21
|
+
allow_methods?: string;
|
|
22
|
+
allow_headers?: string;
|
|
23
|
+
expose_headers?: string;
|
|
24
|
+
max_age?: string;
|
|
25
|
+
allow_credentials?: boolean;
|
|
26
|
+
filter_enabled?: RuntimeFractionalPercent;
|
|
27
|
+
shadow_enabled?: RuntimeFractionalPercent;
|
|
28
|
+
allow_private_network_access?: boolean;
|
|
29
|
+
"@type": 'type.googleapis.com/envoy.extensions.filters.http.cors.v3.Cors';
|
|
106
30
|
};
|
|
107
|
-
transport_api_version?: ApiVersion;
|
|
108
31
|
}
|
|
109
32
|
export interface Descriptor {
|
|
110
33
|
key: string;
|
|
@@ -162,34 +85,6 @@ export interface ExtAuthz {
|
|
|
162
85
|
"@type": 'type.googleapis.com/envoy.extensions.filters.http.ext_authz.v3.ExtAuthz';
|
|
163
86
|
};
|
|
164
87
|
}
|
|
165
|
-
export interface JwtAuthn {
|
|
166
|
-
priority?: Priority;
|
|
167
|
-
excludedWorkloads?: string[];
|
|
168
|
-
name: 'envoy.filters.http.jwt_authn';
|
|
169
|
-
typed_config?: {
|
|
170
|
-
providers?: {
|
|
171
|
-
[x: string]: JwtProvider;
|
|
172
|
-
};
|
|
173
|
-
rules?: JwtRequirementRuleRestricted[];
|
|
174
|
-
filter_state_rules?: {
|
|
175
|
-
name: string;
|
|
176
|
-
requires?: JwtRequirementMap;
|
|
177
|
-
};
|
|
178
|
-
bypass_cors_preflight?: boolean;
|
|
179
|
-
requirement_map?: {
|
|
180
|
-
[x: string]: JwtRequirement;
|
|
181
|
-
};
|
|
182
|
-
"@type": 'type.googleapis.com/envoy.extensions.filters.http.jwt_authn.v3.JwtAuthentication';
|
|
183
|
-
};
|
|
184
|
-
}
|
|
185
|
-
export interface GrpcWeb {
|
|
186
|
-
priority?: Priority;
|
|
187
|
-
excludedWorkloads?: string[];
|
|
188
|
-
name: 'envoy.filters.http.grpc_web';
|
|
189
|
-
typed_config?: {
|
|
190
|
-
"@type": 'type.googleapis.com/envoy.extensions.filters.http.grpc_web.v3.GrpcWeb';
|
|
191
|
-
};
|
|
192
|
-
}
|
|
193
88
|
export interface GrpcJsonTranscoder {
|
|
194
89
|
priority?: Priority;
|
|
195
90
|
excludedWorkloads?: string[];
|
|
@@ -224,23 +119,107 @@ export interface GrpcJsonTranscoder {
|
|
|
224
119
|
"@type": 'type.googleapis.com/envoy.extensions.filters.http.grpc_json_transcoder.v3.GrpcJsonTranscoder';
|
|
225
120
|
};
|
|
226
121
|
}
|
|
227
|
-
export interface
|
|
122
|
+
export interface GrpcWeb {
|
|
228
123
|
priority?: Priority;
|
|
229
124
|
excludedWorkloads?: string[];
|
|
230
|
-
name: 'envoy.filters.http.
|
|
125
|
+
name: 'envoy.filters.http.grpc_web';
|
|
231
126
|
typed_config?: {
|
|
232
|
-
|
|
233
|
-
allow_methods?: string;
|
|
234
|
-
allow_headers?: string;
|
|
235
|
-
expose_headers?: string;
|
|
236
|
-
max_age?: string;
|
|
237
|
-
allow_credentials?: boolean;
|
|
238
|
-
filter_enabled?: RuntimeFractionalPercent;
|
|
239
|
-
shadow_enabled?: RuntimeFractionalPercent;
|
|
240
|
-
allow_private_network_access?: boolean;
|
|
241
|
-
"@type": 'type.googleapis.com/envoy.extensions.filters.http.cors.v3.Cors';
|
|
127
|
+
"@type": 'type.googleapis.com/envoy.extensions.filters.http.grpc_web.v3.GrpcWeb';
|
|
242
128
|
};
|
|
243
129
|
}
|
|
130
|
+
export type HttpFilter = ExtAuthz | JwtAuthn | GrpcWeb | ConnectRpc | GrpcJsonTranscoder | Cors | RateLimit;
|
|
131
|
+
export interface HttpUri {
|
|
132
|
+
uri: string;
|
|
133
|
+
cluster: string;
|
|
134
|
+
timeout: string | {
|
|
135
|
+
seconds?: number;
|
|
136
|
+
nanos?: number;
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
export interface HttpUriRestricted {
|
|
140
|
+
uri: string;
|
|
141
|
+
cluster: string;
|
|
142
|
+
timeout?: DurationRestricted;
|
|
143
|
+
}
|
|
144
|
+
export interface JwtAuthn {
|
|
145
|
+
priority?: Priority;
|
|
146
|
+
excludedWorkloads?: string[];
|
|
147
|
+
name: 'envoy.filters.http.jwt_authn';
|
|
148
|
+
typed_config?: {
|
|
149
|
+
providers?: {
|
|
150
|
+
[x: string]: JwtProvider;
|
|
151
|
+
};
|
|
152
|
+
rules?: JwtRequirementRuleRestricted[];
|
|
153
|
+
filter_state_rules?: {
|
|
154
|
+
name: string;
|
|
155
|
+
requires?: JwtRequirementMap;
|
|
156
|
+
};
|
|
157
|
+
bypass_cors_preflight?: boolean;
|
|
158
|
+
requirement_map?: {
|
|
159
|
+
[x: string]: JwtRequirement;
|
|
160
|
+
};
|
|
161
|
+
"@type": 'type.googleapis.com/envoy.extensions.filters.http.jwt_authn.v3.JwtAuthentication';
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
export interface JwtProvider {
|
|
165
|
+
issuer?: string;
|
|
166
|
+
audiences?: string[];
|
|
167
|
+
claim_to_headers?: {
|
|
168
|
+
header_name: string;
|
|
169
|
+
claim_name: string;
|
|
170
|
+
}[];
|
|
171
|
+
remote_jwks?: {
|
|
172
|
+
http_uri?: HttpUri;
|
|
173
|
+
cache_duration?: Duration;
|
|
174
|
+
async_fetch?: {
|
|
175
|
+
fast_listener?: boolean;
|
|
176
|
+
failed_refetch_duration?: Duration;
|
|
177
|
+
};
|
|
178
|
+
retry_policy?: RetryPolicy;
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
export interface JwtProviderUIRestricted {
|
|
182
|
+
issuer?: string;
|
|
183
|
+
audiences?: string[];
|
|
184
|
+
claim_to_headers?: {
|
|
185
|
+
header_name: string;
|
|
186
|
+
claim_name: string;
|
|
187
|
+
}[];
|
|
188
|
+
remote_jwks?: {
|
|
189
|
+
http_uri?: HttpUriRestricted;
|
|
190
|
+
cache_duration?: DurationRestricted;
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
export interface JwtRequirement {
|
|
194
|
+
provider_name?: string;
|
|
195
|
+
provider_and_audiences?: {
|
|
196
|
+
provider_name?: string;
|
|
197
|
+
audiences?: string[];
|
|
198
|
+
};
|
|
199
|
+
requires_any?: {
|
|
200
|
+
requirements?: any[];
|
|
201
|
+
};
|
|
202
|
+
requires_all?: {
|
|
203
|
+
requirements?: any[];
|
|
204
|
+
};
|
|
205
|
+
allow_missing_or_failed?: Empty;
|
|
206
|
+
allow_missing?: Empty;
|
|
207
|
+
}
|
|
208
|
+
export interface JwtRequirementMap {
|
|
209
|
+
[x: string]: JwtRequirement;
|
|
210
|
+
}
|
|
211
|
+
export interface JwtRequirementRestricted {
|
|
212
|
+
provider_name?: string;
|
|
213
|
+
}
|
|
214
|
+
export interface JwtRequirementRule {
|
|
215
|
+
match?: RouteMatch;
|
|
216
|
+
requires?: JwtRequirement;
|
|
217
|
+
requirement_name?: string;
|
|
218
|
+
}
|
|
219
|
+
export interface JwtRequirementRuleRestricted {
|
|
220
|
+
match?: RouteMatchRestricted;
|
|
221
|
+
requires?: JwtRequirementRestricted;
|
|
222
|
+
}
|
|
244
223
|
export interface RateLimit {
|
|
245
224
|
priority?: Priority;
|
|
246
225
|
excludedWorkloads?: string[];
|
|
@@ -262,12 +241,33 @@ export interface RateLimit {
|
|
|
262
241
|
"@type": 'type.googleapis.com/envoy.extensions.filters.http.ratelimit.v3.RateLimit';
|
|
263
242
|
};
|
|
264
243
|
}
|
|
265
|
-
export interface
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
244
|
+
export interface RateLimitService {
|
|
245
|
+
grpc_service: {
|
|
246
|
+
envoy_grpc?: {
|
|
247
|
+
cluster_name: string;
|
|
248
|
+
authority?: string;
|
|
249
|
+
retry_policy?: RetryPolicy;
|
|
250
|
+
};
|
|
251
|
+
google_grpc?: {
|
|
252
|
+
target_uri: string;
|
|
253
|
+
channel_credentials?: {
|
|
254
|
+
ssl_credentials?: {
|
|
255
|
+
root_certs?: DataSource;
|
|
256
|
+
private_key?: DataSource;
|
|
257
|
+
cert_chain?: DataSource;
|
|
258
|
+
};
|
|
259
|
+
google_default?: Empty;
|
|
260
|
+
};
|
|
261
|
+
call_credentials?: GoogleCallCredentials[];
|
|
262
|
+
stat_prefix: string;
|
|
263
|
+
credentials_factory_name?: string;
|
|
264
|
+
config?: Struct;
|
|
265
|
+
};
|
|
266
|
+
timeout?: string | {
|
|
267
|
+
seconds?: number;
|
|
268
|
+
nanos?: number;
|
|
269
|
+
};
|
|
270
|
+
initial_metadata?: HeaderValue[];
|
|
271
271
|
};
|
|
272
|
+
transport_api_version?: ApiVersion;
|
|
272
273
|
}
|
|
273
|
-
export type HttpFilter = ExtAuthz | JwtAuthn | GrpcWeb | ConnectRpc | GrpcJsonTranscoder | Cors | RateLimit;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { RetryPolicy, DataSource, Empty, GoogleCallCredentials, Struct, ApiVersion, Duration, HttpStatus, HeaderValueOption } from './envoyCommon';
|
|
1
|
+
import { RetryPolicy, DataSource, Empty, GoogleCallCredentials, Struct, ApiVersion, Duration, HttpStatus, HeaderValueOption } from './envoyCommon.js';
|
|
2
2
|
export interface RateLimitService {
|
|
3
3
|
grpc_service: {
|
|
4
4
|
envoy_grpc?: {
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
export interface EventContext {
|
|
2
|
-
category?: string;
|
|
3
|
-
component?: 'actuator' | 'dns-updater' | 'scheduler' | 'iam-broker' | 'metadata-proxy' | 'data-service';
|
|
4
|
-
cloudProvider?: 'aws' | 'gcp' | 'azure' | 'linode' | 'byok';
|
|
5
|
-
cluster?: string;
|
|
6
|
-
principalLink?: string;
|
|
7
|
-
fingerprint?: string;
|
|
8
|
-
[x: string]: any;
|
|
9
|
-
}
|
|
10
1
|
export interface Event {
|
|
11
2
|
id?: string;
|
|
12
3
|
created?: Date;
|
|
@@ -25,3 +16,12 @@ export interface Event {
|
|
|
25
16
|
[x: string]: any;
|
|
26
17
|
};
|
|
27
18
|
}
|
|
19
|
+
export interface EventContext {
|
|
20
|
+
category?: string;
|
|
21
|
+
component?: 'actuator' | 'dns-updater' | 'scheduler' | 'iam-broker' | 'metadata-proxy' | 'data-service';
|
|
22
|
+
cloudProvider?: 'aws' | 'gcp' | 'azure' | 'linode' | 'byok';
|
|
23
|
+
cluster?: string;
|
|
24
|
+
principalLink?: string;
|
|
25
|
+
fingerprint?: string;
|
|
26
|
+
[x: string]: any;
|
|
27
|
+
}
|
|
@@ -1,46 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { Memory } from './workload';
|
|
7
|
-
export interface GvcStatus {
|
|
8
|
-
[x: string]: any;
|
|
9
|
-
}
|
|
10
|
-
export interface StaticPlacement {
|
|
11
|
-
locationLinks?: string[];
|
|
12
|
-
locationQuery?: Query;
|
|
13
|
-
}
|
|
14
|
-
export interface GvcSpec {
|
|
15
|
-
staticPlacement?: StaticPlacement;
|
|
16
|
-
pullSecretLinks?: string[];
|
|
17
|
-
domain?: string;
|
|
18
|
-
endpointNamingFormat?: 'default' | 'legacy' | 'org';
|
|
19
|
-
tracing?: Tracing;
|
|
20
|
-
sidecar?: {
|
|
21
|
-
envoy?: EnvoyFilters;
|
|
22
|
-
};
|
|
23
|
-
env?: EnvVar[];
|
|
24
|
-
loadBalancer?: {
|
|
25
|
-
dedicated?: boolean;
|
|
26
|
-
multiZone?: {
|
|
27
|
-
enabled?: boolean;
|
|
28
|
-
};
|
|
29
|
-
trustedProxies?: number;
|
|
30
|
-
redirect?: {
|
|
31
|
-
class?: {
|
|
32
|
-
status5xx?: string;
|
|
33
|
-
status401?: string;
|
|
34
|
-
};
|
|
35
|
-
};
|
|
36
|
-
ipSet?: string;
|
|
37
|
-
};
|
|
38
|
-
keda?: {
|
|
39
|
-
enabled?: boolean;
|
|
40
|
-
identityLink?: string;
|
|
41
|
-
secrets?: string[];
|
|
42
|
-
};
|
|
43
|
-
}
|
|
1
|
+
import { Name, Kind, Tags, Links } from './base.js';
|
|
2
|
+
import { Term } from './query.js';
|
|
3
|
+
import { TracingCustomTag } from './tracing.js';
|
|
4
|
+
import { EnvoyFilters } from './envoy.js';
|
|
5
|
+
import { EnvVar } from './env.js';
|
|
6
|
+
import { Memory } from './workload.js';
|
|
44
7
|
export interface Gvc {
|
|
45
8
|
id?: string;
|
|
46
9
|
name?: Name;
|
|
@@ -52,36 +15,82 @@ export interface Gvc {
|
|
|
52
15
|
lastModified?: Date;
|
|
53
16
|
links?: Links;
|
|
54
17
|
alias?: string;
|
|
55
|
-
spec?:
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
18
|
+
spec?: {
|
|
19
|
+
staticPlacement?: {
|
|
20
|
+
locationLinks?: string[];
|
|
21
|
+
locationQuery?: {
|
|
22
|
+
kind?: Kind;
|
|
23
|
+
context?: {
|
|
24
|
+
[x: string]: any;
|
|
25
|
+
};
|
|
26
|
+
fetch?: 'links' | 'items';
|
|
27
|
+
spec?: {
|
|
28
|
+
match?: 'all' | 'any' | 'none';
|
|
29
|
+
terms?: Term[];
|
|
30
|
+
sort?: {
|
|
31
|
+
by: string;
|
|
32
|
+
order?: 'asc' | 'desc';
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
pullSecretLinks?: string[];
|
|
38
|
+
domain?: string;
|
|
39
|
+
endpointNamingFormat?: 'default' | 'legacy' | 'org';
|
|
40
|
+
tracing?: {
|
|
41
|
+
sampling: number;
|
|
42
|
+
lightstep?: {
|
|
43
|
+
endpoint: string;
|
|
44
|
+
credentials?: string;
|
|
45
|
+
};
|
|
46
|
+
customTags?: {
|
|
47
|
+
[x: string]: TracingCustomTag;
|
|
48
|
+
};
|
|
49
|
+
provider?: {
|
|
50
|
+
otel?: {
|
|
51
|
+
endpoint: string;
|
|
52
|
+
};
|
|
53
|
+
lightstep?: {
|
|
54
|
+
endpoint: string;
|
|
55
|
+
credentials?: string;
|
|
56
|
+
};
|
|
57
|
+
controlplane?: {};
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
sidecar?: {
|
|
61
|
+
envoy?: EnvoyFilters;
|
|
62
|
+
};
|
|
63
|
+
env?: EnvVar[];
|
|
64
|
+
loadBalancer?: {
|
|
65
|
+
dedicated?: boolean;
|
|
66
|
+
multiZone?: {
|
|
67
|
+
enabled?: boolean;
|
|
68
|
+
};
|
|
69
|
+
trustedProxies?: number;
|
|
70
|
+
redirect?: {
|
|
71
|
+
class?: {
|
|
72
|
+
status5xx?: string;
|
|
73
|
+
status401?: string;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
ipSet?: string;
|
|
77
|
+
};
|
|
78
|
+
keda?: {
|
|
79
|
+
enabled?: boolean;
|
|
80
|
+
identityLink?: string;
|
|
81
|
+
secrets?: string[];
|
|
82
|
+
};
|
|
67
83
|
};
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
failureThreshold?: number;
|
|
71
|
-
successThreshold?: number;
|
|
84
|
+
status?: {
|
|
85
|
+
[x: string]: any;
|
|
72
86
|
};
|
|
73
87
|
}
|
|
74
88
|
export interface GvcConfig {
|
|
75
89
|
clusters?: {
|
|
76
|
-
[x: string]:
|
|
77
|
-
clusterId?: string;
|
|
78
|
-
since?: Date;
|
|
79
|
-
};
|
|
90
|
+
[x: string]: GvcConfigClusterEntry;
|
|
80
91
|
};
|
|
81
92
|
preferredClusters?: {
|
|
82
|
-
[x: string]:
|
|
83
|
-
clusterId?: string;
|
|
84
|
-
};
|
|
93
|
+
[x: string]: GvcConfigPreferredClusterEntry;
|
|
85
94
|
};
|
|
86
95
|
proxy?: {
|
|
87
96
|
minCpu?: number;
|
|
@@ -108,3 +117,113 @@ export interface GvcConfig {
|
|
|
108
117
|
memToCpuRatio?: number;
|
|
109
118
|
};
|
|
110
119
|
}
|
|
120
|
+
export interface GvcConfigClusterEntry {
|
|
121
|
+
clusterId?: string;
|
|
122
|
+
since?: Date;
|
|
123
|
+
}
|
|
124
|
+
export interface GvcConfigPreferredClusterEntry {
|
|
125
|
+
clusterId?: string;
|
|
126
|
+
}
|
|
127
|
+
export interface GvcLoadBalancerConfig {
|
|
128
|
+
minScale?: number;
|
|
129
|
+
maxScale?: number;
|
|
130
|
+
minCpu?: string;
|
|
131
|
+
minMemory?: string;
|
|
132
|
+
readinessProbe?: {
|
|
133
|
+
timeoutSeconds?: number;
|
|
134
|
+
failureThreshold?: number;
|
|
135
|
+
successThreshold?: number;
|
|
136
|
+
};
|
|
137
|
+
livenessProbe?: {
|
|
138
|
+
timeoutSeconds?: number;
|
|
139
|
+
failureThreshold?: number;
|
|
140
|
+
successThreshold?: number;
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
export interface GvcSpec {
|
|
144
|
+
staticPlacement?: {
|
|
145
|
+
locationLinks?: string[];
|
|
146
|
+
locationQuery?: {
|
|
147
|
+
kind?: Kind;
|
|
148
|
+
context?: {
|
|
149
|
+
[x: string]: any;
|
|
150
|
+
};
|
|
151
|
+
fetch?: 'links' | 'items';
|
|
152
|
+
spec?: {
|
|
153
|
+
match?: 'all' | 'any' | 'none';
|
|
154
|
+
terms?: Term[];
|
|
155
|
+
sort?: {
|
|
156
|
+
by: string;
|
|
157
|
+
order?: 'asc' | 'desc';
|
|
158
|
+
};
|
|
159
|
+
};
|
|
160
|
+
};
|
|
161
|
+
};
|
|
162
|
+
pullSecretLinks?: string[];
|
|
163
|
+
domain?: string;
|
|
164
|
+
endpointNamingFormat?: 'default' | 'legacy' | 'org';
|
|
165
|
+
tracing?: {
|
|
166
|
+
sampling: number;
|
|
167
|
+
lightstep?: {
|
|
168
|
+
endpoint: string;
|
|
169
|
+
credentials?: string;
|
|
170
|
+
};
|
|
171
|
+
customTags?: {
|
|
172
|
+
[x: string]: TracingCustomTag;
|
|
173
|
+
};
|
|
174
|
+
provider?: {
|
|
175
|
+
otel?: {
|
|
176
|
+
endpoint: string;
|
|
177
|
+
};
|
|
178
|
+
lightstep?: {
|
|
179
|
+
endpoint: string;
|
|
180
|
+
credentials?: string;
|
|
181
|
+
};
|
|
182
|
+
controlplane?: {};
|
|
183
|
+
};
|
|
184
|
+
};
|
|
185
|
+
sidecar?: {
|
|
186
|
+
envoy?: EnvoyFilters;
|
|
187
|
+
};
|
|
188
|
+
env?: EnvVar[];
|
|
189
|
+
loadBalancer?: {
|
|
190
|
+
dedicated?: boolean;
|
|
191
|
+
multiZone?: {
|
|
192
|
+
enabled?: boolean;
|
|
193
|
+
};
|
|
194
|
+
trustedProxies?: number;
|
|
195
|
+
redirect?: {
|
|
196
|
+
class?: {
|
|
197
|
+
status5xx?: string;
|
|
198
|
+
status401?: string;
|
|
199
|
+
};
|
|
200
|
+
};
|
|
201
|
+
ipSet?: string;
|
|
202
|
+
};
|
|
203
|
+
keda?: {
|
|
204
|
+
enabled?: boolean;
|
|
205
|
+
identityLink?: string;
|
|
206
|
+
secrets?: string[];
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
export interface GvcStatus {
|
|
210
|
+
[x: string]: any;
|
|
211
|
+
}
|
|
212
|
+
export interface StaticPlacement {
|
|
213
|
+
locationLinks?: string[];
|
|
214
|
+
locationQuery?: {
|
|
215
|
+
kind?: Kind;
|
|
216
|
+
context?: {
|
|
217
|
+
[x: string]: any;
|
|
218
|
+
};
|
|
219
|
+
fetch?: 'links' | 'items';
|
|
220
|
+
spec?: {
|
|
221
|
+
match?: 'all' | 'any' | 'none';
|
|
222
|
+
terms?: Term[];
|
|
223
|
+
sort?: {
|
|
224
|
+
by: string;
|
|
225
|
+
order?: 'asc' | 'desc';
|
|
226
|
+
};
|
|
227
|
+
};
|
|
228
|
+
};
|
|
229
|
+
}
|