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

tests/nested/manual: add multi-vol-gadget-updates spread test #11580

Open
wants to merge 12 commits into
base: master
Choose a base branch
from

Conversation

anonymouse64
Copy link
Member

@anonymouse64 anonymouse64 commented Mar 25, 2022

Add a spread test with several variants showing that we can perform
multi-volume gadget asset updates.

Note this particular spread test is broken due to ubuntu-image in Go, which is
not preparing filesystems that have content on other volumes properly.
The python version of ubuntu-image handled this properly however.

Based on top of #11494

This does not include a spread test for UC20 systems that were installed without support for multi-volume gadget asset updates that are then updated to a version of snapd that supports multi-volume updates and checks that the system-volume can be updated in this scenario. Ideally we would have that too since that's a scenario we want to support, though it is tested via unit tests extensively.

…reTo...

Not including the unsupported volumes in the map entirely simplifies some logic
in the full Update() change, so ensure that we only generate keys in the first
level of the map for supported volumes.

Signed-off-by: Ian Johnson <[email protected]>
…n UC20+

Finally switch over the implementation of Update() to use all of the
preparatory functions and such that allow us to support multi-volume gadget
asset updates on UC20.

Remove unnecessary code in gadget/device_linux.go and update many tests.

Signed-off-by: Ian Johnson <[email protected]>
Thanks to Alberto for the suggestion

Signed-off-by: Ian Johnson <[email protected]>
Also delete TODO since this is being handled correctly.

Signed-off-by: Ian Johnson <[email protected]>
…volumes

Previously we were enforcing that every volume needed to consume a kernel asset
but really the condition is that only one volume across any of the volumes in a
gadget consumes a kernel asset.

Signed-off-by: Ian Johnson <[email protected]>
…ng changed

As requested by Samuele.

Signed-off-by: Ian Johnson <[email protected]>
This is for multi-volume gadget asset update spread testing.

Signed-off-by: Ian Johnson <[email protected]>
@anonymouse64 anonymouse64 added ⛔ Blocked Test Robustness Run nested The PR also runs tests inluded in nested suite labels Mar 25, 2022
@anonymouse64 anonymouse64 changed the title Feature/uc20 multi volume gadget asset updates spread tests tests/nested/manual: add multi-vol-gadget-updates spread test Mar 25, 2022
Add a spread test with several variants showing that we can perform
multi-volume gadget asset updates.

Signed-off-by: Ian Johnson <[email protected]>
@anonymouse64 anonymouse64 force-pushed the feature/uc20-multi-volume-gadget-asset-updates-spread-tests branch from f968e7e to 495940c Compare March 25, 2022 20:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
⛔ Blocked Run nested The PR also runs tests inluded in nested suite Test Robustness
Projects
None yet
1 participant