@controlplane/schema 1.0.1 → 1.0.2
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 +29 -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 +21 -0
- package/build/src/interfaces/domain.d.ts +82 -0
- package/build/src/interfaces/env.d.ts +6 -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 +53 -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 +75 -0
- package/build/src/interfaces/mk8sAddons.d.ts +51 -0
- package/build/src/interfaces/mk8sAws.d.ts +37 -0
- package/build/src/interfaces/mk8sCommon.d.ts +20 -0
- package/build/src/interfaces/mk8sGeneric.d.ts +17 -0
- package/build/src/interfaces/mk8sHetzner.d.ts +33 -0
- package/build/src/interfaces/mk8sLambdalabs.d.ts +23 -0
- package/build/src/interfaces/mk8sLinode.d.ts +27 -0
- package/build/src/interfaces/mk8sOblivus.d.ts +13 -0
- package/build/src/interfaces/mk8sPaperspace.d.ts +23 -0
- package/build/src/interfaces/org.d.ts +58 -0
- package/build/src/interfaces/orgLogging.d.ts +46 -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/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 +57 -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 +15 -0
- package/build/src/interfaces/user.d.ts +24 -0
- package/build/src/interfaces/volumeSet.d.ts +78 -0
- package/build/src/interfaces/workload.d.ts +305 -0
- package/package.json +2 -2
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Links } from './base';
|
|
2
|
+
export interface PrincipalBinding {
|
|
3
|
+
principalLink?: string;
|
|
4
|
+
grantingPolicyLink?: string;
|
|
5
|
+
grantedPermissions?: string[];
|
|
6
|
+
match?: 'link' | 'query' | 'all';
|
|
7
|
+
}
|
|
8
|
+
export interface GrantedPermission {
|
|
9
|
+
name?: string;
|
|
10
|
+
description?: string;
|
|
11
|
+
bindings?: PrincipalBinding[];
|
|
12
|
+
}
|
|
13
|
+
export interface AccessReport {
|
|
14
|
+
kind?: 'accessreport';
|
|
15
|
+
permissions?: GrantedPermission[];
|
|
16
|
+
created?: Date;
|
|
17
|
+
links?: Links;
|
|
18
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
2
|
+
export interface BootstrapConfig {
|
|
3
|
+
registrationToken: string;
|
|
4
|
+
agentId: string;
|
|
5
|
+
agentLink: string;
|
|
6
|
+
hubEndpoint: string;
|
|
7
|
+
}
|
|
8
|
+
export interface AgentStatus {
|
|
9
|
+
bootstrapConfig?: BootstrapConfig;
|
|
10
|
+
}
|
|
11
|
+
export interface Agent {
|
|
12
|
+
id?: string;
|
|
13
|
+
name?: Name;
|
|
14
|
+
kind?: Kind;
|
|
15
|
+
version?: number;
|
|
16
|
+
description?: string;
|
|
17
|
+
tags?: Tags;
|
|
18
|
+
created?: Date;
|
|
19
|
+
lastModified?: Date;
|
|
20
|
+
links?: Links;
|
|
21
|
+
status?: AgentStatus;
|
|
22
|
+
}
|
|
23
|
+
export interface AgentInfo {
|
|
24
|
+
lastActive?: Date;
|
|
25
|
+
env?: {
|
|
26
|
+
[x: string]: any;
|
|
27
|
+
};
|
|
28
|
+
peerCount?: number;
|
|
29
|
+
serviceCount?: number;
|
|
30
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
2
|
+
export interface AuditContextStatus {
|
|
3
|
+
[x: string]: any;
|
|
4
|
+
}
|
|
5
|
+
export interface AuditContext {
|
|
6
|
+
id?: string;
|
|
7
|
+
name?: Name;
|
|
8
|
+
kind?: Kind;
|
|
9
|
+
version?: number;
|
|
10
|
+
description?: string;
|
|
11
|
+
tags?: Tags;
|
|
12
|
+
created?: Date;
|
|
13
|
+
lastModified?: Date;
|
|
14
|
+
links?: Links;
|
|
15
|
+
status?: AuditContextStatus;
|
|
16
|
+
origin?: 'default' | 'builtin';
|
|
17
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
export type LocalLink = string;
|
|
2
|
+
export type ImageLink = string;
|
|
3
|
+
export type Kind = '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';
|
|
4
|
+
export type CloudProvider = 'aws' | 'gcp' | 'azure' | 'ngs';
|
|
5
|
+
export type Name = string;
|
|
6
|
+
export interface Tags {
|
|
7
|
+
[x: string]: any;
|
|
8
|
+
}
|
|
9
|
+
export interface Link {
|
|
10
|
+
rel: string;
|
|
11
|
+
href: string;
|
|
12
|
+
}
|
|
13
|
+
export type Links = Link[];
|
|
14
|
+
export interface Base {
|
|
15
|
+
id?: string;
|
|
16
|
+
name?: Name;
|
|
17
|
+
kind?: Kind;
|
|
18
|
+
version?: number;
|
|
19
|
+
description?: string;
|
|
20
|
+
tags?: Tags;
|
|
21
|
+
created?: Date;
|
|
22
|
+
lastModified?: Date;
|
|
23
|
+
links?: Links;
|
|
24
|
+
}
|
|
25
|
+
export interface List {
|
|
26
|
+
kind?: 'list';
|
|
27
|
+
itemKind?: 'org' | 'cloudaccount' | 'policy' | 'user' | 'group' | 'resource' | 'task' | 'permissions' | 'serviceaccount' | 'secret' | 'location' | 'gvc' | 'workload' | 'quota' | 'identity' | 'deployment' | 'event' | 'account' | 'domain' | 'image' | 'resourcepolicy' | 'accessreport' | 'agent' | 'auditctx' | 'dbcluster' | 'memcachecluster' | 'spicedbcluster' | 'tenant' | 'mk8s' | 'command' | 'policymembership' | 'primitive' | 'foreign' | 'link' | 'imagesummary' | 'volumeset';
|
|
28
|
+
items: any[];
|
|
29
|
+
links: Link[];
|
|
30
|
+
}
|
|
31
|
+
export interface ApiError {
|
|
32
|
+
status?: number;
|
|
33
|
+
message?: string;
|
|
34
|
+
code?: string;
|
|
35
|
+
details?: any;
|
|
36
|
+
id?: string;
|
|
37
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Name, Kind, Tags, Links, CloudProvider } from './base';
|
|
2
|
+
export interface AwsConfig {
|
|
3
|
+
roleArn: string;
|
|
4
|
+
}
|
|
5
|
+
export interface GcpConfig {
|
|
6
|
+
projectId: string;
|
|
7
|
+
}
|
|
8
|
+
export interface NgsConfig {
|
|
9
|
+
secretLink: string;
|
|
10
|
+
}
|
|
11
|
+
export interface AzureConfig {
|
|
12
|
+
secretLink: string;
|
|
13
|
+
}
|
|
14
|
+
export interface CloudAccount {
|
|
15
|
+
id?: string;
|
|
16
|
+
name?: Name;
|
|
17
|
+
kind?: Kind;
|
|
18
|
+
version?: number;
|
|
19
|
+
description?: string;
|
|
20
|
+
tags?: Tags;
|
|
21
|
+
created?: Date;
|
|
22
|
+
lastModified?: Date;
|
|
23
|
+
links?: Links;
|
|
24
|
+
provider?: CloudProvider;
|
|
25
|
+
data?: GcpConfig | AwsConfig | AzureConfig | NgsConfig;
|
|
26
|
+
status?: {
|
|
27
|
+
usable?: boolean;
|
|
28
|
+
lastChecked?: Date;
|
|
29
|
+
lastError?: string;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export interface Instructions {
|
|
33
|
+
message?: string;
|
|
34
|
+
data?: {
|
|
35
|
+
[x: string]: any;
|
|
36
|
+
};
|
|
37
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Kind, Links } from './base';
|
|
2
|
+
import { EnvVar } from './env';
|
|
3
|
+
export type CommandLifecycleStage = 'pending' | 'running' | 'cancelled' | 'completed' | 'failed';
|
|
4
|
+
export interface Command {
|
|
5
|
+
id?: string;
|
|
6
|
+
kind?: Kind;
|
|
7
|
+
version?: number;
|
|
8
|
+
created?: Date;
|
|
9
|
+
lastModified?: Date;
|
|
10
|
+
links?: Links;
|
|
11
|
+
type: string;
|
|
12
|
+
lifecycleStage?: CommandLifecycleStage;
|
|
13
|
+
spec?: {
|
|
14
|
+
[x: string]: any;
|
|
15
|
+
};
|
|
16
|
+
status?: {
|
|
17
|
+
[x: string]: any;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export interface CronWorkloadContainerOverrides {
|
|
21
|
+
name: string;
|
|
22
|
+
env?: EnvVar[];
|
|
23
|
+
command?: string;
|
|
24
|
+
args?: string[];
|
|
25
|
+
}
|
|
26
|
+
export interface RunCronWorkloadSpec {
|
|
27
|
+
location: string;
|
|
28
|
+
containerOverrides?: CronWorkloadContainerOverrides[];
|
|
29
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface DeploymentResources {
|
|
2
|
+
replicas?: number;
|
|
3
|
+
replicasReady?: number;
|
|
4
|
+
cpu?: number;
|
|
5
|
+
memory?: number;
|
|
6
|
+
}
|
|
7
|
+
export interface ContainerStatus {
|
|
8
|
+
name?: string;
|
|
9
|
+
image?: string;
|
|
10
|
+
ready?: boolean;
|
|
11
|
+
resources?: DeploymentResources;
|
|
12
|
+
message?: string;
|
|
13
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ContainerStatus } from './containerstatus';
|
|
2
|
+
export interface JobExecutionCondition {
|
|
3
|
+
status?: 'True' | 'False' | 'Unknown';
|
|
4
|
+
type: 'Complete' | 'Failed' | 'Suspended';
|
|
5
|
+
lastDetectionTime?: Date;
|
|
6
|
+
lastTransitionTime?: Date;
|
|
7
|
+
message?: string;
|
|
8
|
+
reason?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface JobExecutionStatus {
|
|
11
|
+
workloadVersion: number;
|
|
12
|
+
status?: 'successful' | 'failed' | 'active' | 'pending' | 'invalid' | 'removed' | '';
|
|
13
|
+
startTime?: Date;
|
|
14
|
+
completionTime?: Date;
|
|
15
|
+
conditions?: JobExecutionCondition[];
|
|
16
|
+
name: string;
|
|
17
|
+
containers?: {
|
|
18
|
+
[x: string]: ContainerStatus;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
2
|
+
export interface ClusterSpec {
|
|
3
|
+
externalAccessEnabled?: boolean;
|
|
4
|
+
postgres: {
|
|
5
|
+
version?: '12.8' | '13.4';
|
|
6
|
+
storageGB: number;
|
|
7
|
+
defaults?: {
|
|
8
|
+
size: 'developer-2c-4g' | 'small-2c-8g' | 'standard-4c-16g' | 'large-8c-32g' | 'xlarge-16c-64g';
|
|
9
|
+
instances: number;
|
|
10
|
+
};
|
|
11
|
+
locations?: ({
|
|
12
|
+
name?: string;
|
|
13
|
+
writable?: boolean;
|
|
14
|
+
size?: 'developer-2c-4g' | 'small-2c-8g' | 'standard-4c-16g' | 'large-8c-32g' | 'xlarge-16c-64g';
|
|
15
|
+
instances?: number;
|
|
16
|
+
})[];
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export interface ClusterStatus {
|
|
20
|
+
parentId?: string;
|
|
21
|
+
externalEndpoint?: string;
|
|
22
|
+
[x: string]: any;
|
|
23
|
+
}
|
|
24
|
+
export interface DbCluster {
|
|
25
|
+
id?: string;
|
|
26
|
+
name?: Name;
|
|
27
|
+
kind?: Kind;
|
|
28
|
+
version?: number;
|
|
29
|
+
description?: string;
|
|
30
|
+
tags?: Tags;
|
|
31
|
+
created?: Date;
|
|
32
|
+
lastModified?: Date;
|
|
33
|
+
links?: Links;
|
|
34
|
+
spec?: ClusterSpec;
|
|
35
|
+
status?: ClusterStatus;
|
|
36
|
+
alias?: string;
|
|
37
|
+
}
|
|
38
|
+
export interface DbClusterStatus {
|
|
39
|
+
data?: ClusterStatus;
|
|
40
|
+
lastModified?: Date;
|
|
41
|
+
version?: number;
|
|
42
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { ContainerStatus } from './containerstatus';
|
|
2
|
+
import { JobExecutionStatus } from './cronjob';
|
|
3
|
+
import { Kind, Links } from './base';
|
|
4
|
+
export interface DeploymentVersion {
|
|
5
|
+
name?: string;
|
|
6
|
+
created?: Date;
|
|
7
|
+
workload?: number;
|
|
8
|
+
gvc?: number;
|
|
9
|
+
containers?: {
|
|
10
|
+
[x: string]: ContainerStatus;
|
|
11
|
+
};
|
|
12
|
+
ready?: boolean;
|
|
13
|
+
message?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface DeploymentStatus {
|
|
16
|
+
endpoint?: string;
|
|
17
|
+
remote?: string;
|
|
18
|
+
lastProcessedVersion?: number;
|
|
19
|
+
expectedDeploymentVersion?: number;
|
|
20
|
+
internal?: any;
|
|
21
|
+
ready?: boolean;
|
|
22
|
+
deploying?: boolean;
|
|
23
|
+
versions?: DeploymentVersion[];
|
|
24
|
+
jobExecutions?: JobExecutionStatus[];
|
|
25
|
+
message?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface Deployment {
|
|
28
|
+
name: string;
|
|
29
|
+
kind?: Kind;
|
|
30
|
+
links?: Links;
|
|
31
|
+
lastModified?: Date;
|
|
32
|
+
status?: DeploymentStatus;
|
|
33
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export interface Discovery {
|
|
2
|
+
endpoints?: {
|
|
3
|
+
billing?: string;
|
|
4
|
+
console?: string;
|
|
5
|
+
browser?: string;
|
|
6
|
+
hub?: string;
|
|
7
|
+
registry?: string;
|
|
8
|
+
audit?: string;
|
|
9
|
+
logs?: string;
|
|
10
|
+
metrics?: string;
|
|
11
|
+
metering?: string;
|
|
12
|
+
"billing-ng"?: string;
|
|
13
|
+
grafana?: string;
|
|
14
|
+
"terraform-exporter"?: string;
|
|
15
|
+
};
|
|
16
|
+
firebase?: {
|
|
17
|
+
apiKey?: string;
|
|
18
|
+
authDomain?: string;
|
|
19
|
+
projectId?: string;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { LocalLink, Kind, Tags, Links } from './base';
|
|
2
|
+
export interface Route {
|
|
3
|
+
prefix?: string;
|
|
4
|
+
replacePrefix?: string;
|
|
5
|
+
workloadLink: string;
|
|
6
|
+
port?: number;
|
|
7
|
+
hostPrefix?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface ExternalPortTLS {
|
|
10
|
+
minProtocolVersion?: 'TLSV1_2' | 'TLSV1_1' | 'TLSV1_0';
|
|
11
|
+
cipherSuites?: ('ECDHE-ECDSA-AES256-GCM-SHA384' | 'ECDHE-ECDSA-CHACHA20-POLY1305' | 'ECDHE-ECDSA-AES128-GCM-SHA256' | 'ECDHE-RSA-AES256-GCM-SHA384' | 'ECDHE-RSA-CHACHA20-POLY1305' | 'ECDHE-RSA-AES128-GCM-SHA256' | 'AES256-GCM-SHA384' | 'AES128-GCM-SHA256' | 'TLS_RSA_WITH_AES_256_GCM_SHA384' | 'TLS_RSA_WITH_AES_128_GCM_SHA256' | 'TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256' | 'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384' | 'TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256' | 'TLS_CHACHA20_POLY1305_SHA256' | 'TLS_AES_256_GCM_SHA384' | 'TLS_AES_128_GCM_SHA256' | 'DES-CBC3-SHA' | 'ECDHE-RSA-AES128-SHA' | 'ECDHE-RSA-AES256-SHA' | 'AES128-SHA' | 'AES256-SHA')[];
|
|
12
|
+
clientCertificate?: {
|
|
13
|
+
secretLink?: string;
|
|
14
|
+
};
|
|
15
|
+
serverCertificate?: {
|
|
16
|
+
secretLink?: string;
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
export interface ExternalPort {
|
|
20
|
+
number?: number;
|
|
21
|
+
protocol?: 'http' | 'http2' | 'tcp';
|
|
22
|
+
routes?: Route[];
|
|
23
|
+
cors?: {
|
|
24
|
+
allowOrigins?: {
|
|
25
|
+
exact?: string;
|
|
26
|
+
}[];
|
|
27
|
+
allowMethods?: string[];
|
|
28
|
+
allowHeaders?: string[];
|
|
29
|
+
exposeHeaders?: string[];
|
|
30
|
+
maxAge?: string;
|
|
31
|
+
allowCredentials?: boolean;
|
|
32
|
+
};
|
|
33
|
+
tls?: {
|
|
34
|
+
minProtocolVersion?: 'TLSV1_2' | 'TLSV1_1' | 'TLSV1_0';
|
|
35
|
+
cipherSuites?: ('ECDHE-ECDSA-AES256-GCM-SHA384' | 'ECDHE-ECDSA-CHACHA20-POLY1305' | 'ECDHE-ECDSA-AES128-GCM-SHA256' | 'ECDHE-RSA-AES256-GCM-SHA384' | 'ECDHE-RSA-CHACHA20-POLY1305' | 'ECDHE-RSA-AES128-GCM-SHA256' | 'AES256-GCM-SHA384' | 'AES128-GCM-SHA256' | 'TLS_RSA_WITH_AES_256_GCM_SHA384' | 'TLS_RSA_WITH_AES_128_GCM_SHA256' | 'TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256' | 'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384' | 'TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256' | 'TLS_CHACHA20_POLY1305_SHA256' | 'TLS_AES_256_GCM_SHA384' | 'TLS_AES_128_GCM_SHA256' | 'DES-CBC3-SHA' | 'ECDHE-RSA-AES128-SHA' | 'ECDHE-RSA-AES256-SHA' | 'AES128-SHA' | 'AES256-SHA')[];
|
|
36
|
+
clientCertificate?: {
|
|
37
|
+
secretLink?: string;
|
|
38
|
+
};
|
|
39
|
+
serverCertificate?: {
|
|
40
|
+
secretLink?: string;
|
|
41
|
+
};
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
export interface DomainSpec {
|
|
45
|
+
dnsMode?: 'cname' | 'ns';
|
|
46
|
+
gvcLink?: string;
|
|
47
|
+
acceptAllHosts?: boolean;
|
|
48
|
+
ports?: ExternalPort[];
|
|
49
|
+
}
|
|
50
|
+
export interface DnsConfigRecord {
|
|
51
|
+
type?: string;
|
|
52
|
+
ttl?: number;
|
|
53
|
+
host?: string;
|
|
54
|
+
value?: string;
|
|
55
|
+
}
|
|
56
|
+
export interface DomainStatus {
|
|
57
|
+
endpoints?: {
|
|
58
|
+
url: string;
|
|
59
|
+
workloadLink?: LocalLink;
|
|
60
|
+
}[];
|
|
61
|
+
status?: 'initializing' | 'ready' | 'pendingDnsConfig' | 'pendingCertificate' | 'usedByGvc' | 'warning';
|
|
62
|
+
warning?: string;
|
|
63
|
+
locations?: ({
|
|
64
|
+
name: string;
|
|
65
|
+
certificateStatus?: 'initializing' | 'ready' | 'pendingDnsConfig' | 'pendingCertificate' | 'ignored';
|
|
66
|
+
})[];
|
|
67
|
+
fingerprint?: string;
|
|
68
|
+
dnsConfig?: DnsConfigRecord[];
|
|
69
|
+
}
|
|
70
|
+
export interface Domain {
|
|
71
|
+
id?: string;
|
|
72
|
+
kind?: Kind;
|
|
73
|
+
version?: number;
|
|
74
|
+
description?: string;
|
|
75
|
+
tags?: Tags;
|
|
76
|
+
created?: Date;
|
|
77
|
+
lastModified?: Date;
|
|
78
|
+
links?: Links;
|
|
79
|
+
name?: string;
|
|
80
|
+
spec?: DomainSpec;
|
|
81
|
+
status?: DomainStatus;
|
|
82
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export interface EventContext {
|
|
2
|
+
category?: string;
|
|
3
|
+
component?: 'actuator' | 'dns-updater' | 'scheduler' | 'iam-broker' | 'metadata-proxy';
|
|
4
|
+
cloudProvider?: 'aws' | 'gcp' | 'azure' | 'linode' | 'byok';
|
|
5
|
+
cluster?: string;
|
|
6
|
+
principalLink?: string;
|
|
7
|
+
fingerprint?: string;
|
|
8
|
+
[x: string]: any;
|
|
9
|
+
}
|
|
10
|
+
export interface Event {
|
|
11
|
+
id?: string;
|
|
12
|
+
created?: Date;
|
|
13
|
+
kind?: string;
|
|
14
|
+
status: string;
|
|
15
|
+
pinned?: boolean;
|
|
16
|
+
context?: {
|
|
17
|
+
category?: string;
|
|
18
|
+
component?: 'actuator' | 'dns-updater' | 'scheduler' | 'iam-broker' | 'metadata-proxy';
|
|
19
|
+
cloudProvider?: 'aws' | 'gcp' | 'azure' | 'linode' | 'byok';
|
|
20
|
+
cluster?: string;
|
|
21
|
+
principalLink?: string;
|
|
22
|
+
fingerprint?: string;
|
|
23
|
+
[x: string]: any;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
2
|
+
import { Query } from './query';
|
|
3
|
+
export interface Group {
|
|
4
|
+
id?: string;
|
|
5
|
+
name?: Name;
|
|
6
|
+
kind?: Kind;
|
|
7
|
+
version?: number;
|
|
8
|
+
description?: string;
|
|
9
|
+
tags?: Tags;
|
|
10
|
+
created?: Date;
|
|
11
|
+
lastModified?: Date;
|
|
12
|
+
links?: Links;
|
|
13
|
+
memberLinks?: string[];
|
|
14
|
+
memberQuery?: Query;
|
|
15
|
+
identityMatcher?: {
|
|
16
|
+
expression: string;
|
|
17
|
+
language: 'jmespath' | 'javascript';
|
|
18
|
+
};
|
|
19
|
+
origin?: 'synthetic' | 'default' | 'builtin';
|
|
20
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Query } from './query';
|
|
2
|
+
import { Tracing } from './tracing';
|
|
3
|
+
import { EnvVar } from './env';
|
|
4
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
5
|
+
export interface GvcStatus {
|
|
6
|
+
[x: string]: any;
|
|
7
|
+
}
|
|
8
|
+
export interface StaticPlacement {
|
|
9
|
+
locationLinks?: string[];
|
|
10
|
+
locationQuery?: Query;
|
|
11
|
+
}
|
|
12
|
+
export interface GvcSpec {
|
|
13
|
+
staticPlacement?: StaticPlacement;
|
|
14
|
+
pullSecretLinks?: string[];
|
|
15
|
+
domain?: string;
|
|
16
|
+
tracing?: Tracing;
|
|
17
|
+
sidecar?: {
|
|
18
|
+
envoy?: {
|
|
19
|
+
[x: string]: any;
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
env?: EnvVar[];
|
|
23
|
+
loadBalancer?: {
|
|
24
|
+
dedicated?: boolean;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export interface Gvc {
|
|
28
|
+
id?: string;
|
|
29
|
+
name?: Name;
|
|
30
|
+
kind?: Kind;
|
|
31
|
+
version?: number;
|
|
32
|
+
description?: string;
|
|
33
|
+
tags?: Tags;
|
|
34
|
+
created?: Date;
|
|
35
|
+
lastModified?: Date;
|
|
36
|
+
links?: Links;
|
|
37
|
+
alias?: string;
|
|
38
|
+
spec?: GvcSpec;
|
|
39
|
+
status?: GvcStatus;
|
|
40
|
+
}
|
|
41
|
+
export interface GvcConfig {
|
|
42
|
+
clusters?: {
|
|
43
|
+
[x: string]: {
|
|
44
|
+
clusterId?: string;
|
|
45
|
+
since?: Date;
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
preferredClusters?: {
|
|
49
|
+
[x: string]: {
|
|
50
|
+
clusterId?: string;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
2
|
+
export type AwsRoleName = string;
|
|
3
|
+
export type PolicyRef = string;
|
|
4
|
+
export type GcpRoleName = string;
|
|
5
|
+
export interface AwsPolicyDocument {
|
|
6
|
+
Version?: string;
|
|
7
|
+
Statement?: {
|
|
8
|
+
[x: string]: any;
|
|
9
|
+
}[];
|
|
10
|
+
}
|
|
11
|
+
export interface AwsIdentity {
|
|
12
|
+
cloudAccountLink: string;
|
|
13
|
+
policyRefs?: PolicyRef[];
|
|
14
|
+
trustPolicy?: AwsPolicyDocument;
|
|
15
|
+
roleName?: AwsRoleName;
|
|
16
|
+
}
|
|
17
|
+
export interface GcpIdentity {
|
|
18
|
+
cloudAccountLink: string;
|
|
19
|
+
scopes?: string[];
|
|
20
|
+
serviceAccount?: string;
|
|
21
|
+
bindings?: {
|
|
22
|
+
resource?: string;
|
|
23
|
+
roles?: GcpRoleName[];
|
|
24
|
+
}[];
|
|
25
|
+
}
|
|
26
|
+
export interface NgsIdentity {
|
|
27
|
+
cloudAccountLink: string;
|
|
28
|
+
pub?: {
|
|
29
|
+
allow?: string[];
|
|
30
|
+
deny?: string[];
|
|
31
|
+
};
|
|
32
|
+
sub?: {
|
|
33
|
+
allow?: string[];
|
|
34
|
+
deny?: string[];
|
|
35
|
+
};
|
|
36
|
+
resp?: {
|
|
37
|
+
max?: number;
|
|
38
|
+
ttl?: string;
|
|
39
|
+
};
|
|
40
|
+
subs?: number;
|
|
41
|
+
data?: number;
|
|
42
|
+
payload?: number;
|
|
43
|
+
}
|
|
44
|
+
export interface AzureRoleAssignment {
|
|
45
|
+
scope?: string;
|
|
46
|
+
roles?: string[];
|
|
47
|
+
}
|
|
48
|
+
export interface AzureIdentity {
|
|
49
|
+
cloudAccountLink: string;
|
|
50
|
+
roleAssignments?: AzureRoleAssignment[];
|
|
51
|
+
}
|
|
52
|
+
export interface Status {
|
|
53
|
+
objectName?: string;
|
|
54
|
+
}
|
|
55
|
+
export interface NetworkResource {
|
|
56
|
+
name: Name | string;
|
|
57
|
+
agentLink?: string;
|
|
58
|
+
IPs?: string[];
|
|
59
|
+
FQDN?: string;
|
|
60
|
+
resolverIP?: string;
|
|
61
|
+
ports: number[];
|
|
62
|
+
}
|
|
63
|
+
export interface NativeNetworkResource {
|
|
64
|
+
name: Name | string;
|
|
65
|
+
FQDN?: string;
|
|
66
|
+
ports: number[];
|
|
67
|
+
awsPrivateLink?: {
|
|
68
|
+
endpointServiceName: string;
|
|
69
|
+
};
|
|
70
|
+
gcpServiceConnect?: {
|
|
71
|
+
targetService: string;
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
export interface SpicedbAccess {
|
|
75
|
+
clusterLink: string;
|
|
76
|
+
role: 'checkPermission' | 'read' | 'write';
|
|
77
|
+
}
|
|
78
|
+
export interface MemcacheAccess {
|
|
79
|
+
clusterLink: string;
|
|
80
|
+
role: 'readWrite';
|
|
81
|
+
}
|
|
82
|
+
export interface Identity {
|
|
83
|
+
id?: string;
|
|
84
|
+
name?: Name;
|
|
85
|
+
kind?: Kind;
|
|
86
|
+
version?: number;
|
|
87
|
+
description?: string;
|
|
88
|
+
tags?: Tags;
|
|
89
|
+
created?: Date;
|
|
90
|
+
lastModified?: Date;
|
|
91
|
+
links?: Links;
|
|
92
|
+
aws?: AwsIdentity;
|
|
93
|
+
gcp?: GcpIdentity;
|
|
94
|
+
azure?: AzureIdentity;
|
|
95
|
+
ngs?: NgsIdentity;
|
|
96
|
+
networkResources?: NetworkResource[];
|
|
97
|
+
nativeNetworkResources?: NativeNetworkResource[];
|
|
98
|
+
memcacheAccess?: MemcacheAccess[];
|
|
99
|
+
spicedbAccess?: SpicedbAccess[];
|
|
100
|
+
status?: Status;
|
|
101
|
+
gvc?: any;
|
|
102
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Kind, Tags, Links } from './base';
|
|
2
|
+
export interface Image {
|
|
3
|
+
id?: string;
|
|
4
|
+
name?: string;
|
|
5
|
+
kind?: Kind;
|
|
6
|
+
version?: number;
|
|
7
|
+
created?: Date;
|
|
8
|
+
lastModified?: Date;
|
|
9
|
+
tags?: Tags;
|
|
10
|
+
links?: Links;
|
|
11
|
+
repository?: string;
|
|
12
|
+
tag?: string;
|
|
13
|
+
manifest?: {
|
|
14
|
+
[x: string]: any;
|
|
15
|
+
};
|
|
16
|
+
digest?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface ImageSummary {
|
|
19
|
+
kind?: Kind;
|
|
20
|
+
links?: Links;
|
|
21
|
+
repositories?: {
|
|
22
|
+
name?: string;
|
|
23
|
+
tagsCount?: number;
|
|
24
|
+
}[];
|
|
25
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { Name, Kind, Tags, Links } from './base';
|
|
2
|
+
export interface LocationSpec {
|
|
3
|
+
enabled?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export interface LocationStatus {
|
|
6
|
+
geo?: {
|
|
7
|
+
lat?: number;
|
|
8
|
+
lon?: number;
|
|
9
|
+
country?: string;
|
|
10
|
+
state?: string;
|
|
11
|
+
city?: string;
|
|
12
|
+
continent?: string;
|
|
13
|
+
};
|
|
14
|
+
ipRanges?: string[];
|
|
15
|
+
}
|
|
16
|
+
export interface Location {
|
|
17
|
+
id?: string;
|
|
18
|
+
name?: Name;
|
|
19
|
+
kind?: Kind;
|
|
20
|
+
version?: number;
|
|
21
|
+
description?: string;
|
|
22
|
+
tags?: Tags;
|
|
23
|
+
created?: Date;
|
|
24
|
+
lastModified?: Date;
|
|
25
|
+
links?: Links;
|
|
26
|
+
origin?: 'builtin' | 'default' | 'custom';
|
|
27
|
+
provider?: 'aws' | 'gcp' | 'azure' | 'byok' | 'linode' | 'vultr' | 'equinix';
|
|
28
|
+
region?: string;
|
|
29
|
+
spec?: LocationSpec;
|
|
30
|
+
status?: LocationStatus;
|
|
31
|
+
}
|