Lightning Talk: Paying Down Debt: Converting Kubernetes To Use Go "Workspaces"
Lightningat KubeCon + CloudNativeCon North America 2022 · on Tuesday, 2022-10-25· at 17:40· Grand Riverview Ballroom AB·
summary
Kubernetes replaces its decades-old GOPATH hacks with Go 1.18 workspaces by adding a go.work file, enabling multi-module builds and unifying 30 scattered go.mod files. The project rewrites its generator toolkit gengo and the modules-aware packages API to handle 13 codegen tools and about 33,000 lines of generated code. Conversions introduce 10–40x slowdowns in tooling, currently tracked across ~88 commits, with goal of landing the cleanup by Kubernetes 1.27.
AI-written summary · about
chapters (13)
- 0:00Kubernetes Code Base
- 1:13Dependency Graph
- 1:45Staging
- 2:16Code Generation
- 3:10Go Modules
- 3:30Go workspaces
- 3:45Go workspaces in practice
- 4:02Cleaning the house
- 4:22Hacking Go
- 4:40Step 3 Convert Code Generation Tools
- 4:53Step 4 What Happened
- 5:08Step 5 purge
- 5:20Step 6 cleanup
related talks
21mLightning Talks
20mKeynote: Kubernetes - Don't Stop Believin'
06mLightning Talk: Getting The Most Out Of Go Tool Dependencies
07mLightning Talk – Bazel & Kubernetes: Develop like it's production
46mSimplifying Scalable Cloud Application Development with Go
35mThe Oregon Trail to Kubernetes [I]
05mLightning Talk: Code Kubernetes While You Are Using It
06mLightning Talk: OpenKruise: Advancing Kubernetes Workload Auto...
