Skip to content

Commit f78e5d1

Browse files
committed
chore: sync vcluster.schema.json
1 parent 77ff952 commit f78e5d1

File tree

1 file changed

+133
-39
lines changed

1 file changed

+133
-39
lines changed

vcluster.schema.json

Lines changed: 133 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -903,14 +903,6 @@
903903
},
904904
"DistroContainer": {
905905
"properties": {
906-
"image": {
907-
"$ref": "#/$defs/Image",
908-
"description": "Image is the distro image"
909-
},
910-
"imagePullPolicy": {
911-
"type": "string",
912-
"description": "ImagePullPolicy is the pull policy for the distro image"
913-
},
914906
"command": {
915907
"items": {
916908
"type": "string"
@@ -935,14 +927,6 @@
935927
"type": "boolean",
936928
"description": "Enabled signals this container should be enabled."
937929
},
938-
"image": {
939-
"$ref": "#/$defs/Image",
940-
"description": "Image is the distro image"
941-
},
942-
"imagePullPolicy": {
943-
"type": "string",
944-
"description": "ImagePullPolicy is the pull policy for the distro image"
945-
},
946930
"command": {
947931
"items": {
948932
"type": "string"
@@ -971,6 +955,14 @@
971955
"type": "string",
972956
"description": "Config allows you to override the k0s config passed to the k0s binary."
973957
},
958+
"image": {
959+
"$ref": "#/$defs/Image",
960+
"description": "Image is the distro image"
961+
},
962+
"imagePullPolicy": {
963+
"type": "string",
964+
"description": "ImagePullPolicy is the pull policy for the distro image"
965+
},
974966
"env": {
975967
"items": {
976968
"type": "object"
@@ -986,14 +978,6 @@
986978
"type": "object",
987979
"description": "Security options can be used for the distro init container"
988980
},
989-
"image": {
990-
"$ref": "#/$defs/Image",
991-
"description": "Image is the distro image"
992-
},
993-
"imagePullPolicy": {
994-
"type": "string",
995-
"description": "ImagePullPolicy is the pull policy for the distro image"
996-
},
997981
"command": {
998982
"items": {
999983
"type": "string"
@@ -1022,6 +1006,14 @@
10221006
"type": "string",
10231007
"description": "Token is the K3s token to use. If empty, vCluster will choose one."
10241008
},
1009+
"image": {
1010+
"$ref": "#/$defs/Image",
1011+
"description": "Image is the distro image"
1012+
},
1013+
"imagePullPolicy": {
1014+
"type": "string",
1015+
"description": "ImagePullPolicy is the pull policy for the distro image"
1016+
},
10251017
"env": {
10261018
"items": {
10271019
"type": "object"
@@ -1037,14 +1029,6 @@
10371029
"type": "object",
10381030
"description": "Security options can be used for the distro init container"
10391031
},
1040-
"image": {
1041-
"$ref": "#/$defs/Image",
1042-
"description": "Image is the distro image"
1043-
},
1044-
"imagePullPolicy": {
1045-
"type": "string",
1046-
"description": "ImagePullPolicy is the pull policy for the distro image"
1047-
},
10481032
"command": {
10491033
"items": {
10501034
"type": "string"
@@ -1071,7 +1055,7 @@
10711055
},
10721056
"version": {
10731057
"type": "string",
1074-
"description": "Version specifies k8s components (scheduler, kube-controller-manager \u0026 apiserver) version.\nIt is a shortcut for controlPlane.distro.k8s.apiServer.image.tag,\ncontrolPlane.distro.k8s.controllerManager.image.tag and\ncontrolPlane.distro.k8s.scheduler.image.tag\nIf e.g. controlPlane.distro.k8s.version is set to v1.30.1 and\ncontrolPlane.distro.k8s.scheduler.image.tag\n(or controlPlane.distro.k8s.controllerManager.image.tag or controlPlane.distro.k8s.apiServer.image.tag)\nis set to v1.31.0,\nvalue from controlPlane.distro.k8s.(controlPlane-component).image.tag will be used\n(where controlPlane-component is apiServer, controllerManager and scheduler)."
1058+
"description": "Version specifies k8s components (scheduler, kube-controller-manager \u0026 apiserver) version.\nIt is a shortcut for controlPlane.distro.k8s.image.tag"
10751059
},
10761060
"apiServer": {
10771061
"$ref": "#/$defs/DistroContainerEnabled",
@@ -1085,6 +1069,14 @@
10851069
"$ref": "#/$defs/DistroContainer",
10861070
"description": "Scheduler holds configuration specific to starting the scheduler. Enable this via controlPlane.advanced.virtualScheduler.enabled"
10871071
},
1072+
"image": {
1073+
"$ref": "#/$defs/Image",
1074+
"description": "Image is the distro image"
1075+
},
1076+
"imagePullPolicy": {
1077+
"type": "string",
1078+
"description": "ImagePullPolicy is the pull policy for the distro image"
1079+
},
10881080
"env": {
10891081
"items": {
10901082
"type": "object"
@@ -1185,6 +1177,10 @@
11851177
"deploy": {
11861178
"$ref": "#/$defs/EtcdDeploy",
11871179
"description": "Deploy defines to use an external etcd that is deployed by the helm chart"
1180+
},
1181+
"external": {
1182+
"$ref": "#/$defs/EtcdExternal",
1183+
"description": "External defines to use a self-hosted external etcd that is not deployed by the helm chart"
11881184
}
11891185
},
11901186
"additionalProperties": false,
@@ -1325,11 +1321,52 @@
13251321
"migrateFromDeployedEtcd": {
13261322
"type": "boolean",
13271323
"description": "MigrateFromDeployedEtcd signals that vCluster should migrate from the deployed external etcd to embedded etcd."
1324+
},
1325+
"snapshotCount": {
1326+
"type": "integer",
1327+
"description": "SnapshotCount defines the number of snapshots to keep for the embedded etcd. Defaults to 10000 if less than 1."
1328+
}
1329+
},
1330+
"additionalProperties": false,
1331+
"type": "object"
1332+
},
1333+
"EtcdExternal": {
1334+
"properties": {
1335+
"enabled": {
1336+
"type": "boolean",
1337+
"description": "Enabled defines if the external etcd should be used."
1338+
},
1339+
"endpoint": {
1340+
"type": "string",
1341+
"description": "Endpoint holds the endpoint of the external etcd server, e.g. my-example-service:2379"
1342+
},
1343+
"tls": {
1344+
"$ref": "#/$defs/EtcdExternalTLS",
1345+
"description": "TLS defines the tls configuration for the external etcd server"
13281346
}
13291347
},
13301348
"additionalProperties": false,
13311349
"type": "object"
13321350
},
1351+
"EtcdExternalTLS": {
1352+
"properties": {
1353+
"caFile": {
1354+
"type": "string",
1355+
"description": "CaFile is the path to the ca file"
1356+
},
1357+
"certFile": {
1358+
"type": "string",
1359+
"description": "CertFile is the path to the cert file"
1360+
},
1361+
"keyFile": {
1362+
"type": "string",
1363+
"description": "KeyFile is the path to the key file"
1364+
}
1365+
},
1366+
"additionalProperties": false,
1367+
"type": "object",
1368+
"description": "EtcdExternalTLS defines tls for external etcd server"
1369+
},
13331370
"Experimental": {
13341371
"properties": {
13351372
"deploy": {
@@ -1872,15 +1909,15 @@
18721909
"properties": {
18731910
"externalSecrets": {
18741911
"$ref": "#/$defs/EnableSwitch",
1875-
"description": "ExternalSecrets defines whether to sync external secrets or not"
1912+
"description": "ExternalSecrets defines if external secrets should get synced from the virtual cluster to the host cluster."
18761913
},
18771914
"stores": {
18781915
"$ref": "#/$defs/EnableSwitch",
1879-
"description": "Stores defines whether to sync stores or not"
1916+
"description": "Stores defines if secret stores should get synced from the virtual cluster to the host cluster and then bi-directionally."
18801917
},
18811918
"clusterStores": {
18821919
"$ref": "#/$defs/ClusterStoresSyncConfig",
1883-
"description": "ClusterStores defines whether to sync cluster stores or not"
1920+
"description": "ClusterStores defines if cluster secrets stores should get synced from the host cluster to the virtual cluster."
18841921
}
18851922
},
18861923
"additionalProperties": false,
@@ -2053,17 +2090,58 @@
20532090
},
20542091
"externalSecrets": {
20552092
"$ref": "#/$defs/ExternalSecrets",
2056-
"description": "ExternalSecrets reuses a host external secret operator and makes certain CRDs from it available inside the vCluster"
2093+
"description": "ExternalSecrets reuses a host external secret operator and makes certain CRDs from it available inside the vCluster.\n- ExternalSecrets will be synced from the virtual cluster to the host cluster.\n- SecretStores will be synced from the virtual cluster to the host cluster and then bi-directionally.\n- ClusterSecretStores will be synced from the host cluster to the virtual cluster."
20572094
},
20582095
"certManager": {
20592096
"$ref": "#/$defs/CertManager",
20602097
"description": "CertManager reuses a host cert-manager and makes its CRDs from it available inside the vCluster.\n- Certificates and Issuers will be synced from the virtual cluster to the host cluster.\n- ClusterIssuers will be synced from the host cluster to the virtual cluster."
2098+
},
2099+
"istio": {
2100+
"$ref": "#/$defs/Istio",
2101+
"description": "Istio syncs DestinationRules, Gateways and VirtualServices from virtual cluster to the host."
20612102
}
20622103
},
20632104
"additionalProperties": false,
20642105
"type": "object",
20652106
"description": "Integrations holds config for vCluster integrations with other operators or tools running on the host cluster"
20662107
},
2108+
"Istio": {
2109+
"properties": {
2110+
"enabled": {
2111+
"type": "boolean",
2112+
"description": "Enabled defines if this option should be enabled."
2113+
},
2114+
"sync": {
2115+
"$ref": "#/$defs/IstioSync"
2116+
}
2117+
},
2118+
"additionalProperties": false,
2119+
"type": "object"
2120+
},
2121+
"IstioSync": {
2122+
"properties": {
2123+
"toHost": {
2124+
"$ref": "#/$defs/IstioSyncToHost"
2125+
}
2126+
},
2127+
"additionalProperties": false,
2128+
"type": "object"
2129+
},
2130+
"IstioSyncToHost": {
2131+
"properties": {
2132+
"destinationRules": {
2133+
"$ref": "#/$defs/EnableSwitch"
2134+
},
2135+
"gateways": {
2136+
"$ref": "#/$defs/EnableSwitch"
2137+
},
2138+
"virtualServices": {
2139+
"$ref": "#/$defs/EnableSwitch"
2140+
}
2141+
},
2142+
"additionalProperties": false,
2143+
"type": "object"
2144+
},
20672145
"KubeVirt": {
20682146
"properties": {
20692147
"enabled": {
@@ -2310,10 +2388,26 @@
23102388
"description": "Enabled defines if the network policy should be deployed by vCluster."
23112389
},
23122390
"fallbackDns": {
2313-
"type": "string"
2391+
"type": "string",
2392+
"description": "FallbackDNS is the fallback DNS server to use if the virtual cluster does not have a DNS server."
23142393
},
23152394
"outgoingConnections": {
2316-
"$ref": "#/$defs/OutgoingConnections"
2395+
"$ref": "#/$defs/OutgoingConnections",
2396+
"description": "OutgoingConnections are the outgoing connections options for the vCluster workloads."
2397+
},
2398+
"extraControlPlaneRules": {
2399+
"items": {
2400+
"type": "object"
2401+
},
2402+
"type": "array",
2403+
"description": "ExtraControlPlaneRules are extra allowed rules for the vCluster control plane."
2404+
},
2405+
"extraWorkloadRules": {
2406+
"items": {
2407+
"type": "object"
2408+
},
2409+
"type": "array",
2410+
"description": "ExtraWorkloadRules are extra allowed rules for the vCluster workloads."
23172411
},
23182412
"annotations": {
23192413
"additionalProperties": {

0 commit comments

Comments
 (0)