-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Description
Spun off from this comment, we have several properties which are structures instead of pointers (e.g. Networking). If we make those pointers, we can get working omitempty handling for them (golang/go#11939) at the cost of slightly more complicated Go handling (but with slightly more efficient shallow copies ;). @abhinavdahiya pointed out that we'll want to have the defaults filled in when we push these into the cluster, so consumers don't have to internalize (or vendor) the defaulting logic. But I think we may still want the pointers to support folks using our type to generate InstallConfig to feed into the installer. ? For example:
- Some personal generator uses our package to create an
InstallConfigYAML. They feed that into... openshift-install init, which injects default opinions for networking, etc.openshift-install something-elsepushes the fully-defaulted YAML into the cluster.- Operators fetch the fully-defaulted YAML from the cluster.
Is (1) a use-case that we want to support? Having Networking and other options where the installer can choose sane defaults without user assistance would make life easier for folks doing (1).