~/talk

Developer Tooling for Kubernetes Configuration

slides:none on file

Extracts Kubernetes OpenAPI JSON schemas into per-version files (about 25,000 files totalling ~750,000 lines) and uses them to validate YAML client-side with a CLI called kubeval. Adds an assertions-based test runner written in embedded Starlark called kubetest to express rules like “no latest tags” or required team labels. Tools run locally or in CI, validate across Kubernetes versions, hook into Helm/Jsonnet outputs, and are already used successfully by several teams.

AI-written summary · about

  1. 0:00Intro
  2. 6:01Relevant discussion in the App Def Working Group
  3. 7:49Is this a valid Kubernetes configuration file?
  4. 8:25Is this Helm template valid for Kubernetes?
  5. 8:59Is this Puppet code valid for kubemetes?
  6. 11:07Kubernetes JSON Schema
  7. 11:47That's a lot of JSON
  8. 12:28OpenShift JSON Schema
  9. 12:40Validate directly using the schemas
  10. 14:28A nice CLI for validating KBS configurations
  11. 14:50Validate YAML files on the command line
  12. 15:29Validate against multiple versions of Kubernetes
  13. 19:06Introducing kubetest
  14. 19:42Run tests against your configurations
  15. 20:12Tests are written in Skylark
  16. 22:13Example tests for kubetest
  17. 23:49Tests enforcing a team label
  18. 26:38Using kubeval with Helm
  19. 28:35Tests for our Helm Chart
  20. 28:54Using kubeval with ksonnet
  21. 30:05Using kubetest with ksonnet
  22. 30:34Using kubeval with Puppet
  23. 31:31Using kubeval and kubetest in CI
  24. 33:18The Configuration Complexity Clock is real
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.