Skip to content

Latest commit

 

History

History
67 lines (52 loc) · 2.81 KB

File metadata and controls

67 lines (52 loc) · 2.81 KB

Flux Schema Catalog

This is the catalog of JSON Schemas for Kubernetes APIs and Flux CRDs, used by the flux schema validation tool.

Source Version
kubernetes/kubernetes v1.35.4
kubernetes-sigs/gateway-api v1.5.1
fluxcd/flux2 v2.8.6
fluxcd/flagger v1.43.0
controlplaneio-fluxcd/flux-operator v0.48.0

Flux APIs

Extracted from the CRDs shipped by the latest stable Flux distribution, Flagger and Flux Operator.

  • helm.toolkit.fluxcd.ioHelmRelease
  • image.toolkit.fluxcd.ioImagePolicy, ImageRepository, ImageUpdateAutomation
  • kustomize.toolkit.fluxcd.ioKustomization
  • notification.toolkit.fluxcd.ioAlert, Provider, Receiver
  • source.toolkit.fluxcd.ioBucket, ExternalArtifact, GitRepository, HelmChart, HelmRepository, OCIRepository
  • source.extensions.fluxcd.ioArtifactGenerator
  • flagger.appCanary, MetricTemplate, AlertProvider
  • fluxcd.controlplane.ioFluxInstance, FluxReport, ResourceSet, ResourceSetInputProvider

Kubernetes APIs

Extracted from the OpenAPI v2 swagger of the latest stable version of Kubernetes.

  • core — the v1 API (Pod, Service, ConfigMap, Secret, Namespace, ...)
  • apps, autoscaling, batch, extensions, policy
  • admission.k8s.io, admissionregistration.k8s.io
  • apiextensions.k8s.io, apiregistration.k8s.io
  • authentication.k8s.io, authorization.k8s.io
  • certificates.k8s.io, coordination.k8s.io
  • discovery.k8s.io, events.k8s.io
  • flowcontrol.apiserver.k8s.io, imagepolicy.k8s.io
  • networking.k8s.io, node.k8s.io
  • rbac.authorization.k8s.io, resource.k8s.io
  • scheduling.k8s.io, storage.k8s.io, storagemigration.k8s.io

Gateway API

Extracted from the CRDs shipped by the latest stable release of the Kubernetes Gateway API.

  • gateway.networking.k8s.ioGateway, GatewayClass, GRPCRoute, HTTPRoute, etc.

If you need schemas for the Gateway API experimental channel, you can generate them with:

kubectl kustomize https://github.com/kubernetes-sigs/gateway-api/config/crd/experimental?ref=main | \
    flux-schema extract crd /dev/stdin \
    -d ./gwapi-experimental \
    -f '{{ .Group }}/{{ .Kind }}_{{ .Version }}.json'

And use them with --schema-location, before the default catalog, when validating:

flux-schema validate ./manifests \
  --schema-location './gwapi-experimental/{{.Group}}/{{.Kind}}_{{.Version}}.json' \
  --schema-location default