Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a bootupd section #203

Merged
merged 1 commit into from
Dec 18, 2020
Merged

Add a bootupd section #203

merged 1 commit into from
Dec 18, 2020

Conversation

cgwalters
Copy link
Member

Let's describe the status quo.

Copy link
Contributor

@bgilbert bgilbert left a comment

Choose a reason for hiding this comment

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

Thanks for the doc!

modules/ROOT/pages/bootloader-updates.adoc Outdated Show resolved Hide resolved
modules/ROOT/pages/bootloader-updates.adoc Outdated Show resolved Hide resolved
modules/ROOT/pages/bootloader-updates.adoc Outdated Show resolved Hide resolved
@cgwalters cgwalters force-pushed the bootupd branch 2 times, most recently from fdbf72a to 7d47566 Compare November 11, 2020 16:32
@cgwalters
Copy link
Member Author

OK I also need to get coreos/bootupd#102 through the sausage factory before we merge this.

@cgwalters cgwalters marked this pull request as draft November 11, 2020 17:54
cgwalters added a commit to cgwalters/bootupd that referenced this pull request Nov 11, 2020
Came up in review in coreos/fedora-coreos-docs#203
Basically it's confusing to users that they need to understand
the difference between `update` and `adopt-and-update`.

From bootupd's perspective these are quite different things;
the first case is a completely known quantity, the second isn't.

However...we can be pretty confident that we can update systems
that have a CoreOS aleph version (i.e. they were generated by coreos-assembler),
since we haven't changed how the bootloader is installed there
really much at all.

This means that for now RHCOS 4.{1,2} bootimages that were
generated via Anaconda will still require `adopt-and-update`,
but detecting and validating that can come as a second phase.

The high level logic here is that the status gains a new
`confident: bool` flag (which corresponds right now to
"have CoreOS aleph").  The client side looks at this
and automatically bridges the `update` CLI to
`adopt-and-update`.

Closes: coreos#103
@cgwalters
Copy link
Member Author

coreos/bootupd#104

@cgwalters
Copy link
Member Author

Can we rephrase this section in terms of "if you run bootupctl status/update and see this output, you'll need to run bootupctl adopt-and-update"?

Done though: I think at a high level right now it's only going to be a small subset of users that realize they might need this, and those users can probably wade through some of the upstream bootupd docs/code and or simply play with the CLI interactively.
And for hopefully most of those users they're already doing periodic reprovisioning and don't need bootupd at all.

But it did motivate me to do the the above PR which fixes that UX problem anyways.

@bgilbert
Copy link
Contributor

Done though: I think at a high level right now it's only going to be a small subset of users that realize they might need this, and those users can probably wade through some of the upstream bootupd docs/code and or simply play with the CLI interactively.

Thanks for the fix (and the upstream fix). In general, if we think a use case is mainstream enough to be worth documenting, I think it's worth giving actionable advice.

Copy link
Contributor

@bgilbert bgilbert left a comment

Choose a reason for hiding this comment

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

👍

modules/ROOT/pages/bootloader-updates.adoc Show resolved Hide resolved
#
----

.Example systemd unit to automate bootupd updates
Copy link
Member

Choose a reason for hiding this comment

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

Should we have a Note: somewhere around here to say that one may not actually want to update the bootloader automatically on every host update?

Copy link
Member Author

Choose a reason for hiding this comment

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

Not sure what to say; either you update it automatically or you don't, right?

@cgwalters
Copy link
Member Author

In general, if we think a use case is mainstream enough to be worth documenting, I think it's worth giving actionable advice.

In the end I think this doc is on the edge for whether it should live here or in just in bootupd git as is today. I leaned towards here just to make it more official but if we're hesitating we can just do the latter and come back here when we have a more "final" decision on bootupd's defaults.

@jlebon
Copy link
Member

jlebon commented Nov 12, 2020

Personally, I think having instructions for updating the bootloader manually would be good in the official docs. 👍 The part I'm not sure about is the automatic updating systemd service. Feels like we should flesh out how we feel about that ourselves before providing a copy-paste example for enabling it?

openshift-merge-robot pushed a commit to coreos/bootupd that referenced this pull request Nov 13, 2020
Came up in review in coreos/fedora-coreos-docs#203
Basically it's confusing to users that they need to understand
the difference between `update` and `adopt-and-update`.

From bootupd's perspective these are quite different things;
the first case is a completely known quantity, the second isn't.

However...we can be pretty confident that we can update systems
that have a CoreOS aleph version (i.e. they were generated by coreos-assembler),
since we haven't changed how the bootloader is installed there
really much at all.

This means that for now RHCOS 4.{1,2} bootimages that were
generated via Anaconda will still require `adopt-and-update`,
but detecting and validating that can come as a second phase.

The high level logic here is that the status gains a new
`confident: bool` flag (which corresponds right now to
"have CoreOS aleph").  The client side looks at this
and automatically bridges the `update` CLI to
`adopt-and-update`.

Closes: #103
Copy link
Member

@travier travier left a comment

Choose a reason for hiding this comment

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

LGTM. I don't really see the bootupd docs growing bigger than a single page so I think keeping it in the Fedora CoreOS docs should be OK, at least until other projects adopt it.

Let's describe the status quo.

Co-authored-by: Benjamin Gilbert <bgilbert@backtick.net>
Co-authored-by: Timothée Ravier <travier@redhat.com>
@cgwalters
Copy link
Member Author

OK since FCOS33 is rolling out (which has the updated bootupd) this one should be finally good to go!

@cgwalters cgwalters merged commit 2214aea into coreos:master Dec 18, 2020
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.

None yet

4 participants