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

bootupd: Use --write-uuid #5363

Merged
merged 1 commit into from
Dec 15, 2023
Merged

Conversation

cgwalters
Copy link
Contributor

This is an even newer behavior that takes over handling of the "UUID stamp files", which we want in general instead of using the static labels.

Note --write-uuid implies --with-static-configs.

This should fix this use case:

clearpart --all --initlabel --disklabel=gpt
reqpart --add-boot
part / --grow --fstype xfs

Whereas right now we require:

clearpart --all --initlabel --disklabel=gpt
reqpart
part /boot --size=1000  --fstype=ext4 --label=boot
part / --grow --fstype xfs

Specifically the --label=boot.

@github-actions github-actions bot added the f40 label Dec 6, 2023
@cgwalters cgwalters mentioned this pull request Dec 6, 2023
3 tasks
@cgwalters
Copy link
Contributor Author

I didn't test this locally (still don't have an anaconda devenv) but hopefully someone can sanity check this.

@poncovka
Copy link
Contributor

poncovka commented Dec 7, 2023

@cgwalters Can you fix the unit tests, please? It should be a one-liner.

["backend", "install", "--auto", "--with-static-configs", "--device",

@VladimirSlavik is working on integrations tests. We can try them on your pull request tomorrow. Btw. we are able to generate a boot.iso from your pull request if you want to play with it.

This is an even newer behavior that takes over handling
of the "UUID stamp files", which we want in general instead of
using the static labels.

Note `--write-uuid` implies `--with-static-configs`.

This should fix this use case:

```
clearpart --all --initlabel --disklabel=gpt
reqpart --add-boot
part / --grow --fstype xfs
```

Whereas right now we require:

```
clearpart --all --initlabel --disklabel=gpt
reqpart
part /boot --size=1000  --fstype=ext4 --label=boot
part / --grow --fstype xfs
```

Specifically the `--label=boot`.
@poncovka
Copy link
Contributor

poncovka commented Dec 8, 2023

/kickstart-test --testtype smoke

@cgwalters cgwalters marked this pull request as ready for review December 11, 2023 23:28
@cgwalters
Copy link
Contributor Author

@VladimirSlavik is working on integrations tests. We can try them on your pull request tomorrow. Btw. we are able to generate a boot.iso from your pull request if you want to play with it.

SGTM yes!

@VladimirSlavik
Copy link
Contributor

Turns out, the tests are not exactly easy to adapt for ostree and reboot at once :(

supakeen added a commit to supakeen/images that referenced this pull request Dec 15, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
Copy link
Contributor

@poncovka poncovka left a comment

Choose a reason for hiding this comment

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

Looks good to me. Thank you!

@poncovka
Copy link
Contributor

Tested manually. It seems to work, so I am merging this pull request. There should be a new release on Tuesday.

@poncovka poncovka merged commit 7bf5994 into rhinstaller:master Dec 15, 2023
15 of 16 checks passed
@cgwalters
Copy link
Contributor Author

cgwalters commented Dec 15, 2023

Thanks!

I just wanted to briefly explain here for the record; it may be obvious to some but still: the reason we need a distinction between the two --with-static-configs and --write-uuid is because we want to handle the case of making generic (unconfigured) disk images (usually things like cloud guest images, but not exclusively; e.g. coreos-installer wants to write raw disk images) versus doing a package/ostree/container type per-machine install (the normal Anaconda case).

In the CoreOS case there's logic that runs in the initramfs at boot time to generate the UUIDs. So the logic today in coreos-assembler (that is now being replicated in osbuild) will use --with-static-configs, not --write-uuid.

In this we are assuming Anaconda is not used to make "generic" images. That said it doesn't really matter too much...I honestly want to try really hard to get away from the "coreos-installer" type "dd raw disk image" for bare metal installs because there are just so many traps/problems (e.g. 4kn disks...)

supakeen added a commit to supakeen/images that referenced this pull request Dec 20, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 20, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 20, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 20, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 20, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 20, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 20, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Dec 21, 2023
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
supakeen added a commit to supakeen/images that referenced this pull request Jan 5, 2024
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
github-merge-queue bot pushed a commit to osbuild/images that referenced this pull request Jan 5, 2024
Use a fixed kickstart to cut corners, this needs a PoC as soon as
possible.

We need manual partitioning because we need to set the boot label on the
`/boot` partition. It is possible that this won't be necessary in the
future: rhinstaller/anaconda#5363

We'll remove the kickstart literal once the PR is merged and the options
used are merged into the kickstart stage.
@cgwalters cgwalters mentioned this pull request Jan 24, 2024
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Development

Successfully merging this pull request may close these issues.

3 participants