1 Commits

Author SHA1 Message Date
unkinben 06c3c59ea2 Add JSON schema generation for kubeconform CRD validation
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/kubeconform Pipeline was successful
- ci/generate-schemas.sh generates schemas from CRD manifests and K8s swagger
- Sources: ArgoCD v3.3.2, Gateway API v1.5.1, Kubernetes v1.33.7
- Optionally fetches live cluster CRDs via kubectl when available
- Generated schemas committed to schemas/ for CI use
- Run `make schemas` to regenerate after CRD version bumps
- validate-apps.sh and validate-clusters.sh check local schemas first
2026-06-28 17:03:21 +10:00
564 changed files with 150390 additions and 51 deletions
-1
View File
@@ -1,3 +1,2 @@
manifests/ manifests/
schemas/
apps/**/charts/ apps/**/charts/
+2
View File
@@ -7,6 +7,7 @@ repos:
- id: check-json - id: check-json
- id: check-added-large-files - id: check-added-large-files
args: ['--maxkb=500'] args: ['--maxkb=500']
exclude: '^schemas/'
- id: check-merge-conflict - id: check-merge-conflict
- id: check-shebang-scripts-are-executable - id: check-shebang-scripts-are-executable
- id: check-symlinks - id: check-symlinks
@@ -19,6 +20,7 @@ repos:
- id: end-of-file-fixer - id: end-of-file-fixer
- id: forbid-new-submodules - id: forbid-new-submodules
- id: pretty-format-json - id: pretty-format-json
args: ['--autofix']
- id: trailing-whitespace - id: trailing-whitespace
# YAML linting # YAML linting
+2 -2
View File
@@ -6,12 +6,12 @@ build:
@mkdir -p manifests/$(filter-out $@,$(MAKECMDGOALS)) @mkdir -p manifests/$(filter-out $@,$(MAKECMDGOALS))
@kustomize build --enable-helm $(filter-out $@,$(MAKECMDGOALS)) --output manifests/$(filter-out $@,$(MAKECMDGOALS)) @kustomize build --enable-helm $(filter-out $@,$(MAKECMDGOALS)) --output manifests/$(filter-out $@,$(MAKECMDGOALS))
# Generate JSON schemas from CRDs and Kubernetes swagger spec # Generate JSON schemas from CRDs and Kubernetes swagger spec (run manually, results committed)
schemas: schemas:
@ci/generate-schemas.sh schemas @ci/generate-schemas.sh schemas
# kubeconform # kubeconform
kubeconform: schemas kubeconform:
@ci/validate-apps.sh && \ @ci/validate-apps.sh && \
ci/validate-clusters.sh ci/validate-clusters.sh
+41 -48
View File
@@ -2,6 +2,7 @@
set -euo pipefail set -euo pipefail
SCHEMA_DIR="${1:-schemas}" SCHEMA_DIR="${1:-schemas}"
rm -rf "$SCHEMA_DIR"
mkdir -p "$SCHEMA_DIR" mkdir -p "$SCHEMA_DIR"
CRD_URLS=( CRD_URLS=(
@@ -11,24 +12,44 @@ CRD_URLS=(
SWAGGER_URL="https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/kubernetes/kubernetes/refs/tags/v1.33.7/api/openapi-spec/swagger.json" SWAGGER_URL="https://artifactapi.k8s.syd1.au.unkin.net/api/v1/remote/github_user/kubernetes/kubernetes/refs/tags/v1.33.7/api/openapi-spec/swagger.json"
echo "==> Fetching CRDs from cluster..." >&2 write_schema='
kubectl get crds -o json | python3 -c " import json, os
def write_schema(schema, schema_dir, group, kind, version):
"""Strip descriptions and write compact JSON with trailing newline."""
def strip_descriptions(obj):
if isinstance(obj, dict):
return {k: strip_descriptions(v) for k, v in obj.items() if k != "description"}
if isinstance(obj, list):
return [strip_descriptions(i) for i in obj]
return obj
schema = strip_descriptions(schema)
group_dir = os.path.join(schema_dir, group) if group else schema_dir
os.makedirs(group_dir, exist_ok=True)
fname = f"{kind}_{version}.json".lower()
with open(os.path.join(group_dir, fname), "w") as f:
json.dump(schema, f, indent=2, sort_keys=True)
f.write("\n")
print(f" Generated: {group}/{fname}" if group else f" Generated: {fname}", file=__import__("sys").stderr)
'
if command -v kubectl &>/dev/null && kubectl cluster-info &>/dev/null 2>&1; then
echo "==> Fetching CRDs from cluster..." >&2
kubectl get crds -o json | python3 -c "
import sys, json, os import sys, json, os
$write_schema
data = json.load(sys.stdin) data = json.load(sys.stdin)
schema_dir = '$SCHEMA_DIR'
for crd in data.get('items', []): for crd in data.get('items', []):
spec = crd.get('spec', {}) spec = crd.get('spec', {})
group = spec.get('group', '') group = spec.get('group', '')
kind = spec.get('names', {}).get('kind', '') kind = spec.get('names', {}).get('kind', '')
for ver in spec.get('versions', []): for ver in spec.get('versions', []):
version = ver.get('name', '') version = ver.get('name', '')
openapi = ver.get('schema', {}).get('openAPIV3Schema', {}) openapi = ver.get('schema', {}).get('openAPIV3Schema', {})
if not openapi: if not openapi:
continue continue
schema = dict(openapi) schema = dict(openapi)
schema['\$schema'] = 'http://json-schema.org/draft-07/schema#' schema['\$schema'] = 'http://json-schema.org/draft-07/schema#'
schema['type'] = 'object' schema['type'] = 'object'
@@ -36,47 +57,35 @@ for crd in data.get('items', []):
schema['properties'].setdefault('apiVersion', {'type': 'string'}) schema['properties'].setdefault('apiVersion', {'type': 'string'})
schema['properties'].setdefault('kind', {'type': 'string'}) schema['properties'].setdefault('kind', {'type': 'string'})
schema['properties'].setdefault('metadata', {'type': 'object'}) schema['properties'].setdefault('metadata', {'type': 'object'})
write_schema(schema, '$SCHEMA_DIR', group, kind, version)
group_dir = os.path.join(schema_dir, group)
os.makedirs(group_dir, exist_ok=True)
fname = f'{kind}_{version}.json'.lower()
with open(os.path.join(group_dir, fname), 'w') as f:
json.dump(schema, f, indent=2)
print(f' Generated: {group}/{fname}', file=sys.stderr)
" "
else
echo "==> kubectl not available, skipping cluster CRDs" >&2
fi
echo "==> Downloading CRD manifests for offline schemas..." >&2 echo "==> Downloading CRD manifests..." >&2
for url in "${CRD_URLS[@]}"; do for url in "${CRD_URLS[@]}"; do
echo " Fetching: $url" >&2 echo " Fetching: $url" >&2
curl -sSfL "$url" curl -sSfL "$url"
done | python3 -c " done | python3 -c "
import sys, json, yaml, os import sys, json, yaml, os
$write_schema
schema_dir = '$SCHEMA_DIR'
for doc in yaml.safe_load_all(sys.stdin): for doc in yaml.safe_load_all(sys.stdin):
if doc is None: if doc is None or doc.get('kind') != 'CustomResourceDefinition':
continue continue
if doc.get('kind') != 'CustomResourceDefinition':
continue
spec = doc.get('spec', {}) spec = doc.get('spec', {})
group = spec.get('group', '') group = spec.get('group', '')
kind = spec.get('names', {}).get('kind', '') kind = spec.get('names', {}).get('kind', '')
for ver in spec.get('versions', []): for ver in spec.get('versions', []):
version = ver.get('name', '') version = ver.get('name', '')
openapi = ver.get('schema', {}).get('openAPIV3Schema', {}) openapi = ver.get('schema', {}).get('openAPIV3Schema', {})
if not openapi: if not openapi:
continue continue
group_dir = os.path.join('$SCHEMA_DIR', group)
group_dir = os.path.join(schema_dir, group)
fname = f'{kind}_{version}.json'.lower() fname = f'{kind}_{version}.json'.lower()
out_path = os.path.join(group_dir, fname) if os.path.exists(os.path.join(group_dir, fname)):
if os.path.exists(out_path):
continue continue
schema = dict(openapi) schema = dict(openapi)
schema['\$schema'] = 'http://json-schema.org/draft-07/schema#' schema['\$schema'] = 'http://json-schema.org/draft-07/schema#'
schema['type'] = 'object' schema['type'] = 'object'
@@ -84,50 +93,34 @@ for doc in yaml.safe_load_all(sys.stdin):
schema['properties'].setdefault('apiVersion', {'type': 'string'}) schema['properties'].setdefault('apiVersion', {'type': 'string'})
schema['properties'].setdefault('kind', {'type': 'string'}) schema['properties'].setdefault('kind', {'type': 'string'})
schema['properties'].setdefault('metadata', {'type': 'object'}) schema['properties'].setdefault('metadata', {'type': 'object'})
write_schema(schema, '$SCHEMA_DIR', group, kind, version)
os.makedirs(group_dir, exist_ok=True)
with open(out_path, 'w') as f:
json.dump(schema, f, indent=2)
print(f' Generated: {group}/{fname}', file=sys.stderr)
" "
echo "==> Downloading Kubernetes swagger spec..." >&2 echo "==> Downloading Kubernetes swagger spec..." >&2
curl -sSfL "$SWAGGER_URL" | python3 -c " curl -sSfL "$SWAGGER_URL" | python3 -c "
import sys, json, os import sys, json, os
$write_schema
swagger = json.load(sys.stdin) swagger = json.load(sys.stdin)
definitions = swagger.get('definitions', {}) definitions = swagger.get('definitions', {})
schema_dir = '$SCHEMA_DIR'
for defn_name, defn in definitions.items(): for defn_name, defn in definitions.items():
gvk_list = defn.get('x-kubernetes-group-version-kind', []) for gvk in defn.get('x-kubernetes-group-version-kind', []):
for gvk in gvk_list:
group = gvk.get('group', '') group = gvk.get('group', '')
version = gvk.get('version', '') version = gvk.get('version', '')
kind = gvk.get('kind', '') kind = gvk.get('kind', '')
schema = { schema = {
'\$schema': 'http://json-schema.org/draft-07/schema#', '\$schema': 'http://json-schema.org/draft-07/schema#',
'type': 'object', 'type': 'object',
'properties': {}, 'properties': {},
'additionalProperties': True, 'additionalProperties': True,
} }
for prop_name, prop_val in defn.get('properties', {}).items(): for prop_name, prop_val in defn.get('properties', {}).items():
prop_copy = {k: v for k, v in prop_val.items() if k != '\$ref'} prop_copy = {k: v for k, v in prop_val.items() if k != '\$ref'}
if not prop_copy.get('type') and 'description' in prop_copy: if not prop_copy.get('type') and len(prop_copy) > 0:
prop_copy['type'] = 'object' prop_copy['type'] = 'object'
prop_copy['additionalProperties'] = True prop_copy['additionalProperties'] = True
schema['properties'][prop_name] = prop_copy schema['properties'][prop_name] = prop_copy
write_schema(schema, '$SCHEMA_DIR', group, kind, version)
group_dir = os.path.join(schema_dir, group) if group else schema_dir
os.makedirs(group_dir, exist_ok=True)
fname = f'{kind}_{version}.json'.lower()
with open(os.path.join(group_dir, fname), 'w') as f:
json.dump(schema, f, indent=2)
print(f' Generated Kubernetes native schemas', file=sys.stderr)
" "
total=$(find "$SCHEMA_DIR" -name '*.json' | wc -l) total=$(find "$SCHEMA_DIR" -name '*.json' | wc -l)
File diff suppressed because it is too large Load Diff
+162
View File
@@ -0,0 +1,162 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"commonName": {
"type": "string"
},
"dnsNames": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"duration": {
"type": "string"
},
"ipAddresses": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"issuerRef": {
"properties": {
"group": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"profile": {
"type": "string"
},
"request": {
"format": "byte",
"type": "string"
}
},
"required": [
"issuerRef",
"request"
],
"type": "object"
},
"status": {
"properties": {
"authorizations": {
"items": {
"properties": {
"challenges": {
"items": {
"properties": {
"token": {
"type": "string"
},
"type": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"token",
"type",
"url"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"identifier": {
"type": "string"
},
"initialState": {
"enum": [
"valid",
"ready",
"pending",
"processing",
"invalid",
"expired",
"errored"
],
"type": "string"
},
"url": {
"type": "string"
},
"wildcard": {
"type": "boolean"
}
},
"required": [
"url"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"certificate": {
"format": "byte",
"type": "string"
},
"failureTime": {
"format": "date-time",
"type": "string"
},
"finalizeURL": {
"type": "string"
},
"reason": {
"type": "string"
},
"state": {
"enum": [
"valid",
"ready",
"pending",
"processing",
"invalid",
"expired",
"errored"
],
"type": "string"
},
"url": {
"type": "string"
}
},
"type": "object"
}
},
"required": [
"metadata",
"spec"
],
"type": "object"
}
@@ -0,0 +1,130 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"clusterSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"key",
"operator"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"matchLabels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"resources": {
"items": {
"properties": {
"kind": {
"enum": [
"Secret",
"ConfigMap"
],
"type": "string"
},
"name": {
"minLength": 1,
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object"
},
"type": "array"
},
"strategy": {
"enum": [
"ApplyOnce"
],
"type": "string"
}
},
"required": [
"clusterSelector"
],
"type": "object"
},
"status": {
"properties": {
"conditions": {
"items": {
"properties": {
"lastTransitionTime": {
"format": "date-time",
"type": "string"
},
"message": {
"type": "string"
},
"reason": {
"type": "string"
},
"severity": {
"type": "string"
},
"status": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"status",
"type"
],
"type": "object"
},
"type": "array"
},
"observedGeneration": {
"format": "int64",
"type": "integer"
}
},
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,130 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"clusterSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"key",
"operator"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"matchLabels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"resources": {
"items": {
"properties": {
"kind": {
"enum": [
"Secret",
"ConfigMap"
],
"type": "string"
},
"name": {
"minLength": 1,
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object"
},
"type": "array"
},
"strategy": {
"enum": [
"ApplyOnce"
],
"type": "string"
}
},
"required": [
"clusterSelector"
],
"type": "object"
},
"status": {
"properties": {
"conditions": {
"items": {
"properties": {
"lastTransitionTime": {
"format": "date-time",
"type": "string"
},
"message": {
"type": "string"
},
"reason": {
"type": "string"
},
"severity": {
"type": "string"
},
"status": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"status",
"type"
],
"type": "object"
},
"type": "array"
},
"observedGeneration": {
"format": "int64",
"type": "integer"
}
},
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,198 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"clusterSelector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"key",
"operator"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"matchLabels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"resources": {
"items": {
"properties": {
"kind": {
"enum": [
"Secret",
"ConfigMap"
],
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object"
},
"maxItems": 100,
"type": "array"
},
"strategy": {
"enum": [
"ApplyOnce",
"Reconcile"
],
"type": "string"
}
},
"required": [
"clusterSelector"
],
"type": "object"
},
"status": {
"properties": {
"conditions": {
"items": {
"properties": {
"lastTransitionTime": {
"format": "date-time",
"type": "string"
},
"message": {
"maxLength": 10240,
"minLength": 1,
"type": "string"
},
"reason": {
"maxLength": 256,
"minLength": 1,
"type": "string"
},
"severity": {
"maxLength": 32,
"type": "string"
},
"status": {
"type": "string"
},
"type": {
"maxLength": 256,
"minLength": 1,
"type": "string"
}
},
"required": [
"lastTransitionTime",
"status",
"type"
],
"type": "object"
},
"type": "array"
},
"observedGeneration": {
"format": "int64",
"type": "integer"
},
"v1beta2": {
"properties": {
"conditions": {
"items": {
"properties": {
"lastTransitionTime": {
"format": "date-time",
"type": "string"
},
"message": {
"maxLength": 32768,
"type": "string"
},
"observedGeneration": {
"format": "int64",
"minimum": 0,
"type": "integer"
},
"reason": {
"maxLength": 1024,
"minLength": 1,
"pattern": "^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$",
"type": "string"
},
"status": {
"enum": [
"True",
"False",
"Unknown"
],
"type": "string"
},
"type": {
"maxLength": 316,
"pattern": "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$",
"type": "string"
}
},
"required": [
"lastTransitionTime",
"message",
"reason",
"status",
"type"
],
"type": "object"
},
"maxItems": 32,
"type": "array",
"x-kubernetes-list-map-keys": [
"type"
],
"x-kubernetes-list-type": "map"
}
},
"type": "object"
}
},
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,68 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"bindings": {
"items": {
"properties": {
"clusterResourceSetName": {
"type": "string"
},
"resources": {
"items": {
"properties": {
"applied": {
"type": "boolean"
},
"hash": {
"type": "string"
},
"kind": {
"enum": [
"Secret",
"ConfigMap"
],
"type": "string"
},
"lastAppliedTime": {
"format": "date-time",
"type": "string"
},
"name": {
"minLength": 1,
"type": "string"
}
},
"required": [
"applied",
"kind",
"name"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"clusterResourceSetName"
],
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,68 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"bindings": {
"items": {
"properties": {
"clusterResourceSetName": {
"type": "string"
},
"resources": {
"items": {
"properties": {
"applied": {
"type": "boolean"
},
"hash": {
"type": "string"
},
"kind": {
"enum": [
"Secret",
"ConfigMap"
],
"type": "string"
},
"lastAppliedTime": {
"format": "date-time",
"type": "string"
},
"name": {
"minLength": 1,
"type": "string"
}
},
"required": [
"applied",
"kind",
"name"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"clusterResourceSetName"
],
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,80 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"bindings": {
"items": {
"properties": {
"clusterResourceSetName": {
"maxLength": 253,
"minLength": 1,
"type": "string"
},
"resources": {
"items": {
"properties": {
"applied": {
"type": "boolean"
},
"hash": {
"maxLength": 256,
"minLength": 1,
"type": "string"
},
"kind": {
"enum": [
"Secret",
"ConfigMap"
],
"type": "string"
},
"lastAppliedTime": {
"format": "date-time",
"type": "string"
},
"name": {
"maxLength": 253,
"minLength": 1,
"type": "string"
}
},
"required": [
"applied",
"kind",
"name"
],
"type": "object"
},
"maxItems": 100,
"type": "array"
}
},
"required": [
"clusterResourceSetName"
],
"type": "object"
},
"maxItems": 100,
"type": "array"
},
"clusterName": {
"maxLength": 63,
"minLength": 1,
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,21 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,21 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicyBinding"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1alpha1.MutatingAdmissionPolicy"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,29 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"webhooks": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.MutatingWebhook"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.MutatingWebhookConfiguration"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,21 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,21 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicyBinding"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1beta1.ValidatingAdmissionPolicyBinding"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.ValidatingAdmissionPolicy"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1beta1.ValidatingAdmissionPolicy"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,29 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"webhooks": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.ValidatingWebhook"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"name"
],
"x-kubernetes-list-type": "map",
"x-kubernetes-patch-merge-key": "name",
"x-kubernetes-patch-strategy": "merge"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.admissionregistration.v1.ValidatingWebhookConfiguration"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,693 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"config": {
"type": "object",
"x-kubernetes-preserve-unknown-fields": true
},
"configRef": {
"properties": {
"secretName": {
"type": "string"
}
},
"type": "object"
},
"daemonSet": {
"properties": {
"podTemplate": {
"type": "object",
"x-kubernetes-preserve-unknown-fields": true
},
"updateStrategy": {
"properties": {
"rollingUpdate": {
"properties": {
"maxSurge": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"maxUnavailable": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"deployment": {
"properties": {
"podTemplate": {
"type": "object",
"x-kubernetes-preserve-unknown-fields": true
},
"replicas": {
"format": "int32",
"type": "integer"
},
"strategy": {
"properties": {
"rollingUpdate": {
"properties": {
"maxSurge": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
},
"maxUnavailable": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"elasticsearchRefs": {
"items": {
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"outputName": {
"type": "string"
},
"secretName": {
"type": "string"
},
"serviceName": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"fleetServerEnabled": {
"type": "boolean"
},
"fleetServerRef": {
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"secretName": {
"type": "string"
},
"serviceName": {
"type": "string"
}
},
"type": "object"
},
"http": {
"properties": {
"service": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"finalizers": {
"items": {
"type": "string"
},
"type": "array"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"type": "object"
},
"spec": {
"properties": {
"allocateLoadBalancerNodePorts": {
"type": "boolean"
},
"clusterIP": {
"type": "string"
},
"clusterIPs": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"externalIPs": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"externalName": {
"type": "string"
},
"externalTrafficPolicy": {
"type": "string"
},
"healthCheckNodePort": {
"format": "int32",
"type": "integer"
},
"internalTrafficPolicy": {
"type": "string"
},
"ipFamilies": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"ipFamilyPolicy": {
"type": "string"
},
"loadBalancerClass": {
"type": "string"
},
"loadBalancerIP": {
"type": "string"
},
"loadBalancerSourceRanges": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"ports": {
"items": {
"properties": {
"appProtocol": {
"type": "string"
},
"name": {
"type": "string"
},
"nodePort": {
"format": "int32",
"type": "integer"
},
"port": {
"format": "int32",
"type": "integer"
},
"protocol": {
"default": "TCP",
"type": "string"
},
"targetPort": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"port",
"protocol"
],
"x-kubernetes-list-type": "map"
},
"publishNotReadyAddresses": {
"type": "boolean"
},
"selector": {
"additionalProperties": {
"type": "string"
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"sessionAffinity": {
"type": "string"
},
"sessionAffinityConfig": {
"properties": {
"clientIP": {
"properties": {
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
}
},
"type": "object"
},
"trafficDistribution": {
"type": "string"
},
"type": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"tls": {
"properties": {
"certificate": {
"properties": {
"secretName": {
"type": "string"
}
},
"type": "object"
},
"selfSignedCertificate": {
"properties": {
"disabled": {
"type": "boolean"
},
"subjectAltNames": {
"items": {
"properties": {
"dns": {
"type": "string"
},
"ip": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
"type": "object"
}
},
"type": "object"
},
"image": {
"type": "string"
},
"kibanaRef": {
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"secretName": {
"type": "string"
},
"serviceName": {
"type": "string"
}
},
"type": "object"
},
"mode": {
"enum": [
"standalone",
"fleet"
],
"type": "string"
},
"policyID": {
"type": "string"
},
"revisionHistoryLimit": {
"format": "int32",
"type": "integer"
},
"secureSettings": {
"items": {
"properties": {
"entries": {
"items": {
"properties": {
"key": {
"type": "string"
},
"path": {
"type": "string"
}
},
"required": [
"key"
],
"type": "object"
},
"type": "array"
},
"secretName": {
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object"
},
"type": "array"
},
"serviceAccountName": {
"type": "string"
},
"statefulSet": {
"properties": {
"podManagementPolicy": {
"default": "Parallel",
"enum": [
"OrderedReady",
"Parallel"
],
"type": "string"
},
"podTemplate": {
"type": "object",
"x-kubernetes-preserve-unknown-fields": true
},
"replicas": {
"format": "int32",
"type": "integer"
},
"serviceName": {
"type": "string"
},
"volumeClaimTemplates": {
"items": {
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"finalizers": {
"items": {
"type": "string"
},
"type": "array"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"type": "object"
},
"spec": {
"properties": {
"accessModes": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"dataSource": {
"properties": {
"apiGroup": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"dataSourceRef": {
"properties": {
"apiGroup": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"required": [
"kind",
"name"
],
"type": "object"
},
"resources": {
"properties": {
"limits": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
},
"requests": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
}
},
"type": "object"
},
"selector": {
"properties": {
"matchExpressions": {
"items": {
"properties": {
"key": {
"type": "string"
},
"operator": {
"type": "string"
},
"values": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"required": [
"key",
"operator"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"matchLabels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
}
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"storageClassName": {
"type": "string"
},
"volumeAttributesClassName": {
"type": "string"
},
"volumeMode": {
"type": "string"
},
"volumeName": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
},
"version": {
"type": "string"
}
},
"required": [
"version"
],
"type": "object"
},
"status": {
"properties": {
"availableNodes": {
"format": "int32",
"type": "integer"
},
"elasticsearchAssociationsStatus": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"expectedNodes": {
"format": "int32",
"type": "integer"
},
"fleetServerAssociationStatus": {
"type": "string"
},
"health": {
"type": "string"
},
"kibanaAssociationStatus": {
"type": "string"
},
"observedGeneration": {
"format": "int64",
"type": "integer"
},
"version": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.apiextensions-apiserver.pkg.apis.apiextensions.v1.CustomResourceDefinition"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
+34
View File
@@ -0,0 +1,34 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
},
"preferredVersion": {
"additionalProperties": true,
"type": "object"
},
"serverAddressByClientCIDRs": {
"items": {
"$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ServerAddressByClientCIDR"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"versions": {
"items": {
"$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.GroupVersionForDiscovery"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
}
+20
View File
@@ -0,0 +1,20 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"groups": {
"items": {
"$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.APIGroup"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"kind": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.kube-aggregator.pkg.apis.apiregistration.v1.APIService"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
+23
View File
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"groupVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"resources": {
"items": {
"$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.APIResource"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
}
+27
View File
@@ -0,0 +1,27 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"serverAddressByClientCIDRs": {
"items": {
"$ref": "#/definitions/io.k8s.apimachinery.pkg.apis.meta.v1.ServerAddressByClientCIDR"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"versions": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
}
},
"type": "object"
}
@@ -0,0 +1,364 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"config": {
"type": "object",
"x-kubernetes-preserve-unknown-fields": true
},
"count": {
"format": "int32",
"type": "integer"
},
"elasticsearchRef": {
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"secretName": {
"type": "string"
},
"serviceName": {
"type": "string"
}
},
"type": "object"
},
"http": {
"properties": {
"service": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"finalizers": {
"items": {
"type": "string"
},
"type": "array"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"type": "object"
},
"spec": {
"properties": {
"allocateLoadBalancerNodePorts": {
"type": "boolean"
},
"clusterIP": {
"type": "string"
},
"clusterIPs": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"externalIPs": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"externalName": {
"type": "string"
},
"externalTrafficPolicy": {
"type": "string"
},
"healthCheckNodePort": {
"format": "int32",
"type": "integer"
},
"internalTrafficPolicy": {
"type": "string"
},
"ipFamilies": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"ipFamilyPolicy": {
"type": "string"
},
"loadBalancerClass": {
"type": "string"
},
"loadBalancerIP": {
"type": "string"
},
"loadBalancerSourceRanges": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"ports": {
"items": {
"properties": {
"appProtocol": {
"type": "string"
},
"name": {
"type": "string"
},
"nodePort": {
"format": "int32",
"type": "integer"
},
"port": {
"format": "int32",
"type": "integer"
},
"protocol": {
"default": "TCP",
"type": "string"
},
"targetPort": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"port",
"protocol"
],
"x-kubernetes-list-type": "map"
},
"publishNotReadyAddresses": {
"type": "boolean"
},
"selector": {
"additionalProperties": {
"type": "string"
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"sessionAffinity": {
"type": "string"
},
"sessionAffinityConfig": {
"properties": {
"clientIP": {
"properties": {
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
}
},
"type": "object"
},
"trafficDistribution": {
"type": "string"
},
"type": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"tls": {
"properties": {
"certificate": {
"properties": {
"secretName": {
"type": "string"
}
},
"type": "object"
},
"selfSignedCertificate": {
"properties": {
"disabled": {
"type": "boolean"
},
"subjectAltNames": {
"items": {
"properties": {
"dns": {
"type": "string"
},
"ip": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
"type": "object"
}
},
"type": "object"
},
"image": {
"type": "string"
},
"kibanaRef": {
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"secretName": {
"type": "string"
},
"serviceName": {
"type": "string"
}
},
"type": "object"
},
"podTemplate": {
"type": "object",
"x-kubernetes-preserve-unknown-fields": true
},
"revisionHistoryLimit": {
"format": "int32",
"type": "integer"
},
"secureSettings": {
"items": {
"properties": {
"entries": {
"items": {
"properties": {
"key": {
"type": "string"
},
"path": {
"type": "string"
}
},
"required": [
"key"
],
"type": "object"
},
"type": "array"
},
"secretName": {
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object"
},
"type": "array"
},
"serviceAccountName": {
"type": "string"
},
"version": {
"type": "string"
}
},
"required": [
"version"
],
"type": "object"
},
"status": {
"properties": {
"availableNodes": {
"format": "int32",
"type": "integer"
},
"count": {
"format": "int32",
"type": "integer"
},
"elasticsearchAssociationStatus": {
"type": "string"
},
"health": {
"type": "string"
},
"kibanaAssociationStatus": {
"type": "string"
},
"observedGeneration": {
"format": "int64",
"type": "integer"
},
"secretTokenSecret": {
"type": "string"
},
"selector": {
"type": "string"
},
"service": {
"type": "string"
},
"version": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,15 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,317 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"config": {
"type": "object",
"x-kubernetes-preserve-unknown-fields": true
},
"count": {
"format": "int32",
"type": "integer"
},
"elasticsearchRef": {
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"http": {
"properties": {
"service": {
"properties": {
"metadata": {
"properties": {
"annotations": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"finalizers": {
"items": {
"type": "string"
},
"type": "array"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"name": {
"type": "string"
},
"namespace": {
"type": "string"
}
},
"type": "object"
},
"spec": {
"properties": {
"allocateLoadBalancerNodePorts": {
"type": "boolean"
},
"clusterIP": {
"type": "string"
},
"clusterIPs": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"externalIPs": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"externalName": {
"type": "string"
},
"externalTrafficPolicy": {
"type": "string"
},
"healthCheckNodePort": {
"format": "int32",
"type": "integer"
},
"internalTrafficPolicy": {
"type": "string"
},
"ipFamilies": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"ipFamilyPolicy": {
"type": "string"
},
"loadBalancerClass": {
"type": "string"
},
"loadBalancerIP": {
"type": "string"
},
"loadBalancerSourceRanges": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"ports": {
"items": {
"properties": {
"appProtocol": {
"type": "string"
},
"name": {
"type": "string"
},
"nodePort": {
"format": "int32",
"type": "integer"
},
"port": {
"format": "int32",
"type": "integer"
},
"protocol": {
"default": "TCP",
"type": "string"
},
"targetPort": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"x-kubernetes-int-or-string": true
}
},
"required": [
"port"
],
"type": "object"
},
"type": "array",
"x-kubernetes-list-map-keys": [
"port",
"protocol"
],
"x-kubernetes-list-type": "map"
},
"publishNotReadyAddresses": {
"type": "boolean"
},
"selector": {
"additionalProperties": {
"type": "string"
},
"type": "object",
"x-kubernetes-map-type": "atomic"
},
"sessionAffinity": {
"type": "string"
},
"sessionAffinityConfig": {
"properties": {
"clientIP": {
"properties": {
"timeoutSeconds": {
"format": "int32",
"type": "integer"
}
},
"type": "object"
}
},
"type": "object"
},
"trafficDistribution": {
"type": "string"
},
"type": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
},
"tls": {
"properties": {
"certificate": {
"properties": {
"secretName": {
"type": "string"
}
},
"type": "object"
},
"selfSignedCertificate": {
"properties": {
"disabled": {
"type": "boolean"
},
"subjectAltNames": {
"items": {
"properties": {
"dns": {
"type": "string"
},
"ip": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
"type": "object"
}
},
"type": "object"
},
"image": {
"type": "string"
},
"podTemplate": {
"type": "object",
"x-kubernetes-preserve-unknown-fields": true
},
"secureSettings": {
"items": {
"properties": {
"entries": {
"items": {
"properties": {
"key": {
"type": "string"
},
"path": {
"type": "string"
}
},
"required": [
"key"
],
"type": "object"
},
"type": "array"
},
"secretName": {
"type": "string"
}
},
"required": [
"secretName"
],
"type": "object"
},
"type": "array"
},
"version": {
"type": "string"
}
},
"type": "object"
},
"status": {
"properties": {
"associationStatus": {
"type": "string"
},
"availableNodes": {
"format": "int32",
"type": "integer"
},
"health": {
"type": "string"
},
"secretTokenSecret": {
"type": "string"
},
"service": {
"type": "string"
}
},
"type": "object"
}
},
"type": "object"
}
+25
View File
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"data": {
"additionalProperties": true,
"type": "object"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"revision": {
"format": "int64",
"type": "integer"
}
},
"type": "object"
}
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.apps.v1.ControllerRevision"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
+25
View File
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
+23
View File
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.apps.v1.DaemonSet"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
+37
View File
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
+37
View File
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
+37
View File
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
+25
View File
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
+23
View File
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.apps.v1.Deployment"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
+25
View File
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
+23
View File
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.apps.v1.ReplicaSet"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
+25
View File
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
+23
View File
@@ -0,0 +1,23 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"items": {
"items": {
"$ref": "#/definitions/io.k8s.api.apps.v1.StatefulSet"
},
"type": "array"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
+14
View File
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
+14
View File
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
+14
View File
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,321 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"clusterResourceBlacklist": {
"items": {
"properties": {
"group": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"group",
"kind"
],
"type": "object"
},
"type": "array"
},
"clusterResourceWhitelist": {
"items": {
"properties": {
"group": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"group",
"kind"
],
"type": "object"
},
"type": "array"
},
"destinationServiceAccounts": {
"items": {
"properties": {
"defaultServiceAccount": {
"type": "string"
},
"namespace": {
"type": "string"
},
"server": {
"type": "string"
}
},
"required": [
"defaultServiceAccount",
"server"
],
"type": "object"
},
"type": "array"
},
"destinations": {
"items": {
"properties": {
"name": {
"type": "string"
},
"namespace": {
"type": "string"
},
"server": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"namespaceResourceBlacklist": {
"items": {
"properties": {
"group": {
"type": "string"
},
"kind": {
"type": "string"
}
},
"required": [
"group",
"kind"
],
"type": "object"
},
"type": "array"
},
"namespaceResourceWhitelist": {
"items": {
"properties": {
"group": {
"type": "string"
},
"kind": {
"type": "string"
}
},
"required": [
"group",
"kind"
],
"type": "object"
},
"type": "array"
},
"orphanedResources": {
"properties": {
"ignore": {
"items": {
"properties": {
"group": {
"type": "string"
},
"kind": {
"type": "string"
},
"name": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"warn": {
"type": "boolean"
}
},
"type": "object"
},
"permitOnlyProjectScopedClusters": {
"type": "boolean"
},
"roles": {
"items": {
"properties": {
"groups": {
"items": {
"type": "string"
},
"type": "array"
},
"jwtTokens": {
"items": {
"properties": {
"exp": {
"format": "int64",
"type": "integer"
},
"iat": {
"format": "int64",
"type": "integer"
},
"id": {
"type": "string"
}
},
"required": [
"iat"
],
"type": "object"
},
"type": "array"
},
"name": {
"type": "string"
},
"policies": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array"
},
"signatureKeys": {
"items": {
"properties": {
"keyID": {
"type": "string"
}
},
"required": [
"keyID"
],
"type": "object"
},
"type": "array"
},
"sourceNamespaces": {
"items": {
"type": "string"
},
"type": "array"
},
"sourceRepos": {
"items": {
"type": "string"
},
"type": "array"
},
"syncWindows": {
"items": {
"properties": {
"andOperator": {
"type": "boolean"
},
"applications": {
"items": {
"type": "string"
},
"type": "array"
},
"clusters": {
"items": {
"type": "string"
},
"type": "array"
},
"duration": {
"type": "string"
},
"kind": {
"type": "string"
},
"manualSync": {
"type": "boolean"
},
"namespaces": {
"items": {
"type": "string"
},
"type": "array"
},
"schedule": {
"type": "string"
},
"timeZone": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
},
"status": {
"properties": {
"jwtTokensByRole": {
"additionalProperties": {
"properties": {
"items": {
"items": {
"properties": {
"exp": {
"format": "int64",
"type": "integer"
},
"iat": {
"format": "int64",
"type": "integer"
},
"id": {
"type": "string"
}
},
"required": [
"iat"
],
"type": "object"
},
"type": "array"
}
},
"type": "object"
},
"type": "object"
}
},
"type": "object"
}
},
"required": [
"metadata",
"spec"
],
"type": "object"
}
@@ -0,0 +1,148 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"additionalRedactions": {
"items": {
"properties": {
"headers": {
"items": {
"type": "string"
},
"type": "array"
},
"paths": {
"items": {
"type": "string"
},
"type": "array"
}
},
"type": "object"
},
"type": "array"
},
"enabled": {
"type": "boolean"
},
"filters": {
"items": {
"properties": {
"action": {
"type": "string"
},
"requestURI": {
"type": "string"
}
},
"type": "object"
},
"type": "array"
},
"verbosity": {
"properties": {
"level": {
"type": "integer"
},
"request": {
"properties": {
"body": {
"type": "boolean"
},
"headers": {
"type": "boolean"
}
},
"type": "object"
},
"response": {
"properties": {
"body": {
"type": "boolean"
},
"headers": {
"type": "boolean"
}
},
"type": "object"
}
},
"required": [
"level"
],
"type": "object"
}
},
"required": [
"enabled"
],
"type": "object"
},
"status": {
"properties": {
"conditions": {
"items": {
"properties": {
"lastTransitionTime": {
"format": "date-time",
"type": "string"
},
"message": {
"maxLength": 32768,
"type": "string"
},
"observedGeneration": {
"format": "int64",
"minimum": 0,
"type": "integer"
},
"reason": {
"maxLength": 1024,
"minLength": 1,
"pattern": "^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$",
"type": "string"
},
"status": {
"enum": [
"True",
"False",
"Unknown"
],
"type": "string"
},
"type": {
"maxLength": 316,
"pattern": "^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$",
"type": "string"
}
},
"required": [
"lastTransitionTime",
"message",
"reason",
"status",
"type"
],
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
"required": [
"spec"
],
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,21 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,25 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"additionalProperties": true,
"type": "object"
},
"spec": {
"additionalProperties": true,
"type": "object"
},
"status": {
"additionalProperties": true,
"type": "object"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,14 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"object": {
"additionalProperties": true,
"type": "object"
},
"type": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,352 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"apiVersion": {
"type": "string"
},
"kind": {
"type": "string"
},
"metadata": {
"type": "object"
},
"spec": {
"properties": {
"elasticsearchRef": {
"properties": {
"name": {
"minLength": 1,
"type": "string"
}
},
"type": "object"
},
"policies": {
"items": {
"properties": {
"deciders": {
"additionalProperties": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"type": "object"
},
"name": {
"type": "string"
},
"resources": {
"properties": {
"cpu": {
"properties": {
"max": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"min": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"requestsToLimitsRatio": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
}
},
"required": [
"max",
"min"
],
"type": "object"
},
"memory": {
"properties": {
"max": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"min": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"requestsToLimitsRatio": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
}
},
"required": [
"max",
"min"
],
"type": "object"
},
"nodeCount": {
"properties": {
"max": {
"format": "int32",
"type": "integer"
},
"min": {
"format": "int32",
"type": "integer"
}
},
"required": [
"max",
"min"
],
"type": "object"
},
"storage": {
"properties": {
"max": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"min": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"requestsToLimitsRatio": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
}
},
"required": [
"max",
"min"
],
"type": "object"
}
},
"required": [
"nodeCount"
],
"type": "object"
},
"roles": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"resources"
],
"type": "object"
},
"type": "array"
},
"pollingPeriod": {
"type": "string"
}
},
"required": [
"elasticsearchRef",
"policies"
],
"type": "object"
},
"status": {
"properties": {
"conditions": {
"items": {
"properties": {
"lastTransitionTime": {
"format": "date-time",
"type": "string"
},
"message": {
"type": "string"
},
"status": {
"type": "string"
},
"type": {
"type": "string"
}
},
"required": [
"status",
"type"
],
"type": "object"
},
"type": "array"
},
"observedGeneration": {
"format": "int64",
"type": "integer"
},
"policies": {
"items": {
"properties": {
"lastModificationTime": {
"format": "date-time",
"type": "string"
},
"name": {
"type": "string"
},
"nodeSets": {
"items": {
"properties": {
"name": {
"type": "string"
},
"nodeCount": {
"format": "int32",
"type": "integer"
}
},
"required": [
"name",
"nodeCount"
],
"type": "object"
},
"type": "array"
},
"resources": {
"properties": {
"limits": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
},
"requests": {
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
}
],
"pattern": "^(\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\\+|-)?(([0-9]+(\\.[0-9]*)?)|(\\.[0-9]+))))?$",
"x-kubernetes-int-or-string": true
},
"type": "object"
}
},
"type": "object"
},
"state": {
"items": {
"properties": {
"messages": {
"items": {
"type": "string"
},
"type": "array"
},
"type": {
"type": "string"
}
},
"required": [
"messages",
"type"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"name"
],
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
"type": "object"
}
+37
View File
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
+37
View File
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}
@@ -0,0 +1,37 @@
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": true,
"properties": {
"apiVersion": {
"type": "string"
},
"dryRun": {
"items": {
"type": "string"
},
"type": "array",
"x-kubernetes-list-type": "atomic"
},
"gracePeriodSeconds": {
"format": "int64",
"type": "integer"
},
"ignoreStoreReadErrorWithClusterBreakingPotential": {
"type": "boolean"
},
"kind": {
"type": "string"
},
"orphanDependents": {
"type": "boolean"
},
"preconditions": {
"additionalProperties": true,
"type": "object"
},
"propagationPolicy": {
"type": "string"
}
},
"type": "object"
}

Some files were not shown because too many files have changed in this diff Show More