dracutdevs / dracut

dracut the event driven initramfs infrastructure
https://github.com/dracutdevs/dracut/wiki
GNU General Public License v2.0
598 stars 397 forks source link

ci: also run integration test on Ubuntu #2492

Closed bdrung closed 1 year ago

bdrung commented 1 year ago

Changes

Add a Dockerfile for Ubuntu (very similar to Debian) and run the integration tests also on Ubuntu.

I built the container locally and tested that the test cases from the integration test succeed there.

Checklist

Fixes #

LaszloGombos commented 1 year ago

1./ The obvious concern with this PR is that it adds to the resource cost to the CI - specifically it runs 15 more tests for each CI run. My opinion as one of the maintainers is that a project has a lot to gain by having an active contributor from Debian/Ubuntu and if that active contributor is willing to invest in maintaining an Ubuntu CI then we should positively consider it.

2./ The somewhat less obvious concern with the extra test container is the potential churn and review/commit cost it takes to maintain it.

The Ubuntu container is almost an exact copy of the Debian container. Adding a new test container is a good time to discuss how we can we better maintain all of these test containers. There is a PR under review that is trying to address this concern - https://github.com/dracutdevs/dracut/pull/2423

@bdrung - what do you think about the approach at https://github.com/dracutdevs/dracut/pull/2423 ?

LaszloGombos commented 1 year ago

@bdrung Can you please also add this new container to manualtest

bdrung commented 1 year ago

Added ubuntu to manialtest.

I'd love to see Ubuntu running on the CI, but adding a new container implies having to support it, we already have 5, and upstream resources (talking about people) are veeery limited...

Ubuntu will use dracut-install in initramfs-tools (see manual_add_modules is slow / consumes the most time). So at least dracut-install will become part of Ubuntu main (see [MIR] dracut) and part of the 1000 packages our Ubuntu Foundations team will maintain.

aafeijoo-suse commented 1 year ago

Does this PR need to be merged before any of the Ubuntu tests go green?

bdrung commented 1 year ago

Yes, the Ubuntu tests need the Ubuntu container, which is only built from the master branch.

LaszloGombos commented 1 year ago

#6 ERROR: failed to push ghcr.io/dracutdevs/ubuntu:latest: failed commit on ref "manifest-sha256:cf46c1d87c17a2c0d66b173690b7c9428e162f8fbe87f6071deaa81210167a90": unexpected status from PUT request to https://ghcr.io/v2/dracutdevs/ubuntu/manifests/sha256:cf46c1d87c17a2c0d66b173690b7c9428e162f8fbe87f6071deaa81210167a90: 403 Forbidden

..sadly.. investigating, but not very hopeful..

https://github.com/dracutdevs/dracut/pkgs/container/ubuntu

LaszloGombos commented 1 year ago

Update: this is now resolved.. here is a manual test run - https://github.com/dracutdevs/dracut/actions/runs/5927762437