Skip to content

workflows/tests.yml: fix Gentoo testing#388

Merged
evelikov merged 4 commits intodkms-project:masterfrom
Nowa-Ammerlaan:master
Jan 26, 2024
Merged

workflows/tests.yml: fix Gentoo testing#388
evelikov merged 4 commits intodkms-project:masterfrom
Nowa-Ammerlaan:master

Conversation

@Nowa-Ammerlaan
Copy link
Contributor

Add --autounmask-continue to tell portage to make whatever configuration changes it deems necessary, and then continue.

Add --getbinpkg to fetch prebuilt packages from the binary host to speed things up a bit.

@Nowa-Ammerlaan Nowa-Ammerlaan force-pushed the master branch 3 times, most recently from 71e55be to 5721cf7 Compare January 26, 2024 10:40
@evelikov
Copy link
Collaborator

Must admit I don't quite follow the --archive to --preserve=all change. The former is -dR --preserve=all, where -d is --preserve=links and -R is recursive were we copy a single file.

Please add a small note with rational in the commit message.

@Nowa-Ammerlaan
Copy link
Contributor Author

Must admit I don't quite follow the --archive to --preserve=all change. The former is -dR --preserve=all, where -d is --preserve=links and -R is recursive were we copy a single file.

Please add a small note with rational in the commit message.

To be honest, I don't understand why this fixes the problem. Somehow it fails with --recursive, but it does not make sense because it should be a single file. In any case we don't need --recursive because it should always be a single file.

@evelikov
Copy link
Collaborator

Ack, seems like I broke it with my push yesterday. Sorry for the mess and thanks for fixing it ❤️

@Nowa-Ammerlaan Nowa-Ammerlaan force-pushed the master branch 5 times, most recently from b58b1c7 to a26d0c5 Compare January 26, 2024 11:17
Add --autounmask-continue to tell portage to make whatever configuration
changes it deems necessary, and then continue.

Use getbinpkg to fetch prebuilt packages from the binary host to speed
things up a bit. Use binpkg-ignore-signature because getuto is not set
up in the docker container so no trusted keys are set.

Use the generic-uki to avoid generating an initramfs and save a bit of time.

Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
It's a single file so we don't need --recursive, and somehow this breaks
the debian/ubuntu tests

Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
@Nowa-Ammerlaan
Copy link
Contributor Author

Alright finished! We're all green again now. Made the Gentoo tests a lot faster in the process by fetching binary packages and using the prebuilt initramfs/uki instead of generating one locally in the container. It now completes in just 3 minutes.

@evelikov evelikov merged commit 2fbc986 into dkms-project:master Jan 26, 2024
@evelikov
Copy link
Collaborator

Amazing, thanks again 🚀

@evelikov
Copy link
Collaborator

Out of curiosity:

How does Gentoo ignore the kernel config toggle about the module compression? Does Gentoo's tooling not use make modules_install or perhaps it's invoked in particular way?

@Nowa-Ammerlaan
Copy link
Contributor Author

How does Gentoo ignore the kernel config toggle about the module compression? Does Gentoo's tooling not use make modules_install or perhaps it's invoked in particular way?

We configure the kernel with support for xz compressed modules, then patch the build system to skip the actual compression in make modules_install. This allows us to distribute a kernel that supports both compressed and uncompressed modules, while leaving the modules in the package tarball uncompressed. This is more efficient compression wise because xz compressing a bunch of uncompressed files results in a smaller tarball compared to xz compressing a bunch of files that are each individually already xz compressed. In the install phase the modules are then xz compressed or not depending on whether the user enabled USE=modules-compress (the default is disabled).

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.

2 participants