Skip to content

config: add rhcos 0.1.0 and 0.2.0-experimental variants#164

Merged
bgilbert merged 5 commits intocoreos:masterfrom
bgilbert:rhcos
Dec 4, 2020
Merged

config: add rhcos 0.1.0 and 0.2.0-experimental variants#164
bgilbert merged 5 commits intocoreos:masterfrom
bgilbert:rhcos

Conversation

@bgilbert
Copy link
Copy Markdown
Contributor

@bgilbert bgilbert commented Nov 24, 2020

Add an rhcos variant with version 0.1.0 as an alias for fcos 1.3.0, and an 0.2.0-experimental spec as an alias for fcos 1.4.0-experimental. Specialize spec docs to handle each variant/version pair independently.

The idea behind 0.1.0 is to get this spec released in a usable form and gain some experience with RHCOS users using it. We might then want to add RHCOS-specific validation, which would further restrict the set of valid configs and thus be a breaking change. That development would eventually be stabilized as a 1.0.0 spec.

@bgilbert bgilbert mentioned this pull request Nov 24, 2020
Copy link
Copy Markdown
Contributor

@arithx arithx left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Last commit makes sense to me.

Is the plan to stabilize both fcos-1.3.0 & rhcos-0.1.0 at the same time? It'd feel weird if we had a stabilized spec that was inheriting an experimental. Not necessarily for this PR but it'd also be good if we added a set of guidelines in the development docs for what to do about specs that are inheriting non-base specs.

@bgilbert bgilbert mentioned this pull request Dec 1, 2020
@bgilbert
Copy link
Copy Markdown
Contributor Author

bgilbert commented Dec 1, 2020

When we add OpenShift-specific sugar and validations, it may make more sense to call the variant openshift rather than rhcos to be inclusive of OKD. I don't think that affects the current PR, since the plan is to have a major version bump once the sugar is added.

cc @LorbusChris

@LorbusChris
Copy link
Copy Markdown
Contributor

That's an interesting point.
For me the question here is really: Where are these varianted CoreOS Configs going to be used?

If it's within MachineConfig objects (openshift/machine-config-operator#1980), I think calling the variant openshift makes a lot of sense to reflect that is has to be supported by the MCO, as that's the operator that manages and applies it (no Ignition involved)

If the config were meant for first-provisioning of RHCOS machines with Ignition on the other hand, it would make more sense to call the variant rhcos to reflect the specificities of the underlying OS, but I don't think that's really a supported use-case.

@bgilbert
Copy link
Copy Markdown
Contributor Author

bgilbert commented Dec 1, 2020

We have an internal work item to discuss how to better integrate FCCs with MachineConfigs. But in addition, we'll have users using FCCs to generate Ignition configs for inclusion in a UPI pointer config, for example for root disk RAID. In that case it doesn't make sense for users to specify fcos, but as mentioned, OKD users may want to use rhcos-specific sugar once that sugar exists.

@bgilbert bgilbert changed the title WIP: config: add rhcos 0.1.0-experimental variant WIP: config: add rhcos 0.1.0 and 0.2.0-experimental variants Dec 4, 2020
@bgilbert bgilbert changed the title WIP: config: add rhcos 0.1.0 and 0.2.0-experimental variants config: add rhcos 0.1.0 and 0.2.0-experimental variants Dec 4, 2020
@bgilbert
Copy link
Copy Markdown
Contributor Author

bgilbert commented Dec 4, 2020

Lifting WIP.

@bgilbert bgilbert marked this pull request as ready for review December 4, 2020 05:39
@bgilbert bgilbert requested a review from jlebon December 4, 2020 05:39
@bgilbert
Copy link
Copy Markdown
Contributor Author

bgilbert commented Dec 4, 2020

Rendered docs site is here.

Have it subclass fcos 1.3.0.
Have it subclass fcos 1.4.0-experimental.
With multiple variants in play, we'll need to document each one
independently.
Copy link
Copy Markdown
Member

@jlebon jlebon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! Well laid out commits.

@bgilbert
Copy link
Copy Markdown
Contributor Author

bgilbert commented Dec 4, 2020

Note that this will break existing links to individual spec docs (but not to the specs index page).

@bgilbert bgilbert merged commit 75aea59 into coreos:master Dec 4, 2020
@bgilbert bgilbert deleted the rhcos branch December 4, 2020 20:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants