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

Merge bootupd #874

Closed
wants to merge 1,037 commits into from
Closed

Merge bootupd #874

wants to merge 1,037 commits into from

Conversation

cgwalters
Copy link
Collaborator

@cgwalters cgwalters commented Nov 5, 2024

Initial draft for coreos/bootupd#432

I did this via subtree merge.

Rationale:

  • bootupd hasn't really seen usage outside of the ostree sphere, and maintaining it as its own independent thing has huge overhead (e.g. constant dependabot things, CI maintenance, releases)
  • bootc currently depends on it and the above overhead is also reflected onto people who want to ship bootc as they need to package bootupd too
  • Working on distribution/OS independence makes sense here

cgwalters and others added 30 commits December 7, 2023 16:26
- Show what `bootcurrent` is
- Add the process exit status
This fixes compatibility with current c9s `findmnt`, which otherwise
errors out with
`findmnt: ACTION column is requested, but --poll is not enabled`
Bumps [libc](https://github.com/rust-lang/libc) from 0.2.150 to 0.2.151.
- [Release notes](https://github.com/rust-lang/libc/releases)
- [Commits](rust-lang/libc@0.2.150...0.2.151)

---
updated-dependencies:
- dependency-name: libc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.60 to 0.10.61.
- [Release notes](https://github.com/sfackler/rust-openssl/releases)
- [Commits](sfackler/rust-openssl@openssl-v0.10.60...openssl-v0.10.61)

---
updated-dependencies:
- dependency-name: openssl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
We add the GRUB2DIR creation in ece9120 but there is an earlier
use of that directory if there are dropins so let's move the
creation of the directory earlier before the dropins are processed.

I hit this because I'm testing out things on FCOS. Building a qemu
and metal image works just fine, because in that case we are doing
the MBR install using `grub2-install` and I guess that tool creates
the directory. In the metal4k case, though, there is no BIOS install
and thus we get here and the GRUB2DIR doesn't exist and bootupd fails.
grubconfigs: move the GRUB2DIR creation earlier
…l-0.10.61

build(deps): bump openssl from 0.10.60 to 0.10.61
….2.151

build(deps): bump libc from 0.2.150 to 0.2.151
In osbuild/osbuild#1475 we are updating
aleph version to have more information and some of the fields
are changing slightly. Notably here `imgid` is no longer going to
be populated and `build` -> `version` now. Let's make these tweaks
and also just drop any fields from the definition here that we
aren't using to tolerate changes better.
Once osbuild/osbuild#1475 gets picked up and
starts getting used the .coreos-aleph-version.json will be a symlink.
Let's canonicalize and find the actual file before dropping into
sysroot.open_file_optional() because the underlying code for that uses
O_NOFOLLOW and will give an ELOOP (too many symbolic links) error.
This makes it amenable to unit testing, and also since the
previous code was always operating on `/` there's no good
reason to use the `openat` APIs which don't follow symlinks
by default, which breaks ergonomics.
…-updates

coreos: update aleph version handling
Dependabot isn't keeping up.
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.75 to 1.0.76.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](dtolnay/anyhow@1.0.75...1.0.76)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.61 to 0.10.62.
- [Release notes](https://github.com/sfackler/rust-openssl/releases)
- [Commits](sfackler/rust-openssl@openssl-v0.10.61...openssl-v0.10.62)

---
updated-dependencies:
- dependency-name: openssl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
…-1.0.76

build(deps): bump anyhow from 1.0.75 to 1.0.76
…l-0.10.62

build(deps): bump openssl from 0.10.61 to 0.10.62
Bumps [tempfile](https://github.com/Stebalien/tempfile) from 3.8.1 to 3.9.0.
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](Stebalien/tempfile@v3.8.1...v3.9.0)

---
updated-dependencies:
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.76 to 1.0.78.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](dtolnay/anyhow@1.0.76...1.0.78)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.108 to 1.0.109.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](serde-rs/json@v1.0.108...v1.0.109)

---
updated-dependencies:
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
…json-1.0.109

build(deps): bump serde_json from 1.0.108 to 1.0.109
…-1.0.78

build(deps): bump anyhow from 1.0.76 to 1.0.78
…le-3.9.0

build(deps): bump tempfile from 3.8.1 to 3.9.0
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.193 to 1.0.195.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](serde-rs/serde@v1.0.193...v1.0.195)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
HuijingHei and others added 20 commits October 15, 2024 16:51
…d-ext-4.0.3

build(deps): bump cap-std-ext from 4.0.2 to 4.0.3
Bumps [clap](https://github.com/clap-rs/clap) from 4.5.19 to 4.5.20.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](clap-rs/clap@clap_complete-v4.5.19...clap_complete-v4.5.20)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
….5.20

build(deps): bump clap from 4.5.19 to 4.5.20
- grub.cfg was removed from the main branch in
  coreos/coreos-assembler#3900
- Updated the link to maintain reference to the file’s origin and history.

Signed-off-by: Renata Ravanelli <[email protected]>
grub-static-pre.cfg: Update link to preserve coreos-assembler history
ci: update `uraimo/run-on-arch-action` to v2 latest version
Bumps [regex](https://github.com/rust-lang/regex) from 1.11.0 to 1.11.1.
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](rust-lang/regex@1.11.0...1.11.1)

---
updated-dependencies:
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [anyhow](https://github.com/dtolnay/anyhow) from 1.0.89 to 1.0.91.
- [Release notes](https://github.com/dtolnay/anyhow/releases)
- [Commits](dtolnay/anyhow@1.0.89...1.0.91)

---
updated-dependencies:
- dependency-name: anyhow
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
…1.11.1

build(deps): bump regex from 1.11.0 to 1.11.1
Bumps [rustix](https://github.com/bytecodealliance/rustix) from 0.38.37 to 0.38.38.
- [Release notes](https://github.com/bytecodealliance/rustix/releases)
- [Changelog](https://github.com/bytecodealliance/rustix/blob/main/CHANGELOG.md)
- [Commits](bytecodealliance/rustix@v0.38.37...v0.38.38)

---
updated-dependencies:
- dependency-name: rustix
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [serde_json](https://github.com/serde-rs/json) from 1.0.128 to 1.0.132.
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](serde-rs/json@1.0.128...1.0.132)

---
updated-dependencies:
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [openssl](https://github.com/sfackler/rust-openssl) from 0.10.66 to 0.10.68.
- [Release notes](https://github.com/sfackler/rust-openssl/releases)
- [Commits](sfackler/rust-openssl@openssl-v0.10.66...openssl-v0.10.68)

---
updated-dependencies:
- dependency-name: openssl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
…-1.0.91

build(deps): bump anyhow from 1.0.89 to 1.0.91
…json-1.0.132

build(deps): bump serde_json from 1.0.128 to 1.0.132
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.210 to 1.0.213.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](serde-rs/serde@v1.0.210...v1.0.213)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
…1.0.213

build(deps): bump serde from 1.0.210 to 1.0.213
…l-0.10.68

build(deps): bump openssl from 0.10.66 to 0.10.68
…-0.38.38

build(deps): bump rustix from 0.38.37 to 0.38.38
This executes on coreos/bootupd#432

Basically, bootupd doesn't have any users outside of
the rpm-ostree/bootc ecosystem and carrying a separate
project adds huge amounts of logistical overhead.
- Enable building the code as part of our workspace
- Switch over some dependencies to be workspace deps
- Change our bootloader invocation to call into this code

TODO:

 - Expose bootupd state as part of status
 - Add option to take over the binaries

Signed-off-by: Colin Walters <[email protected]>
@Conan-Kudo
Copy link

Conan-Kudo commented Nov 16, 2024

bootupd hasn't really seen usage outside of the ostree sphere, and maintaining it as its own independent thing has huge overhead (e.g. constant dependabot things, CI maintenance, releases)

Doing this will preclude any consideration for adoption outside of Atomic Fedora. I had been talking to @travier about doing this for regular Fedora sometime in the next year or so, but if it's merged inside of bootc, I will abandon interest in that.

@cgwalters
Copy link
Collaborator Author

Closing for now as there is an offer to help maintain bootupd separately.

@cgwalters cgwalters closed this Nov 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants