Skip to content

InstallConfig: Pointers for Networking, etc.? #263

@wking

Description

@wking

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:

  1. Some personal generator uses our package to create an InstallConfig YAML. They feed that into...
  2. openshift-install init, which injects default opinions for networking, etc.
  3. openshift-install something-else pushes the fully-defaulted YAML into the cluster.
  4. 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).

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/featureCategorizes issue or PR as related to a new feature.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions