Presented at the January 26, 2022, SIG-CLI meeting
kustomize maintainers: @knverey, @natasha41575
Objective: Improve contributor community
Objective: Improve end-user experience
Objective: Improve extension experience
WHO: End user who also contributes source code.
Top priority:
- Kustomization v1 (also end-user impact) (PROJECT)
- Remove the following fields:
- vars
- patchesJson6902, patchesStrategicMerge (consolidate on `patches)
- helmChartInflationGenerator, helmCharts, helmGlobals
- all long-deprecated fields in Kustomization v1 such as `bases` and those being accommodate by kustomize edit [see code snippet]
- Ensure that `kustomize edit fix` handles migrations for all those, and that anything it changes is not still present in v1.
- Add reorder field. Default should be FIFO and legacy should also be supported (could add alphabetic and custom sort support eventually). Replaces -reorder flag.
- Reconcile openapi and crds field
- Consider deprecating configurations field (old, pre-plugin, pre-openapi global configuration)
- Add a field to enable the managedby label
- Remove the following fields:
Second priority:
- Improve contributor documentation
Also very valuable to the project:
- Improve the release process to support regular biweekly releases PROJECT
- Release sigs.k8s.io/kustomize/api v1.0.0 PROJECT
- Reduce the public surface of the API module
- Vendor all transitive deps. Since kustomize is in kubectl, we must do as kubectl does to manage deps, exposing new transitive deps in code review.
- Project administration
WHO: End user that wants kustomize build artifacts (binaries, containers).
Top priorities:
- Bug fixes:
- Fix bugs in basic anchor support: issue query
- integer keys support: #3446
- kyaml not respecting `$patch replace|retainKeys`: #2037
- kustomize removing quotes from namespace field values: #4146
- Kustomize doesn’t support metadata.generateName: #641
- Send kustomize CLI version number into kubectl (kubectl issue / kustomize issue)
- Kustomize performance investigations/improvements PROJECT
- Support generic resource references in name reference tracking
- KEP 4267: retain the resource origin and transformer data in annotations
Secondary priorities:
- kustomize cli v5 (PROJECT)
- Drop the --reorder flag
- Graduate cfg read-only commands out of alpha.
- Drop the –enable-managedby-label
- Drop old plugin-related fields in favor of the Catalog-style fields.
- Drop the helm flags
- Confusion around namespace replacement.
Also very valuable to the project:
- Overinclusion of root directory error in error messages
- Add kustomize localize command
- Fix Windows support in test suite
- Improve end-user documentation PROJECT
WHO: Plugin developers: end users who extend kustomize, but don’t think about internals.
This objective is described in detail in the Kustomize Plugin Graduation KEP / PROJECT .
Top priorities:
- Fix core usability issues with KRM Function extensions:
- Once core usability issues are fixed, deprecate legacy exec and Go plugin support
- Catalog KEP
Secondary priorities:
- Remove Starlark support
- Composition KEP. The implementation is complete in #4223, but depends on:
Also very valuable to the project: