mirror of https://github.com/k3s-io/k3s
![]() Automatic merge from submit-queue make storage enablement, serialization, and location orthogonal This allows a caller (command-line, config, code) to specify multiple separate pieces of config information regarding storage and have them properly composed at runtime. The information provided is exposed through interfaces to allow alternate implementations, which allows us to change the expression of the config moving forward. I also fixed up the types to be correct as I moved through. The same options still exist, but they're composed slightly differently 1. specify target etcd servers per Group or per GroupResource 1. specify storage GroupVersions per Groups or per GroupResource 1. specify etcd prefixes per GroupVersion or per GroupResource 1. specify that multiple GroupResources share the same location in etcd 1. enable GroupResources by GroupVersion or by GroupResource whitelist or GroupResource blacklist The `storage.Interface` is built per GroupResource by: 1. find the set of possible storage GroupResource based on the priority list of cohabitators 1. choose a GroupResource from the set by looking at which Groups have the resource enabled 1. find the target etcd server, etcd prefix, and storage encoding based on the GroupResource The API server can have its resources separately enabled, but for now I've kept them linked. @liggitt I think we need this (or something like it) to be able to go from config to these interfaces. Given another round of refactoring, we may be able to reshape these to be more forward driving. @smarterclayton this is important for rebasing and for a seamless 1.2 to 1.3 migration for us. |
||
---|---|---|
.. | ||
component/scheduler/perf | ||
e2e | ||
e2e_node | ||
fixtures/pkg/kubectl/cmd/apply | ||
images | ||
integration | ||
kubemark | ||
soak | ||
OWNERS |