-
Notifications
You must be signed in to change notification settings - Fork 61
ci: several changes related to new qemu test, ansible-lint, python versions, ubuntu versions #518
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
Conversation
|
Uh, qemu tests run into ENOSPC on the host. I suppose we can tone down the space requirements in the test and make smaller images etc., but I haven't looked yet. I can if you want me to. |
5a76e5b to
8b2088f
Compare
|
On F42, the runner did not ENOSPC, it just failed the tests. The first failed test on CI is tests/tests_luks.yml. In F42, I see a large "/dev/dm-1 4.0G 110M 3.9G 3% /opt/test1" which is being created during the test in the VM (PV on /dev/sda), but it does get cleaned up again. I'm running I cannot reproduce the "Unable to find enough unused disks. Exiting playbook." either. For the ENOSPC on C9, I ran Moving this to draft, most likely we'll just drop these tests on GH for storage, they are just too big. But I want to experiment with this a bit on my fork, with getting an interactive shell on a gh runner. I'll see if running a subset of tests works, or what is actually ENOSPCing. My current idea is to generalize Next attempt, run with skipping |
…rsions, ubuntu versions There is a new QEMU based test which uses the qemu/kvm capability of github action runners. This is the basis for new bootc/image mode tests which we will be rolling out in the near future. ansible-lint requires that the collection path is set so that the requirements it installs are installed in the correct place. There has been some general github action deprecation of python versions and ubuntu versions that we have had to fix. Remove `CONTRIBUTOR` from the list of users who can trigger citest. For more information, see * linux-system-roles/.github#98 * linux-system-roles/.github#94 * linux-system-roles/.github#93 * linux-system-roles/.github#92 * linux-system-roles/.github#91 Signed-off-by: Rich Megginson <rmeggins@redhat.com>
|
@richm the run on my fork is pretty okay -- some "honest" failures on f42 which I haven't yet looked into. But C9/C10 pass now, and it's a sane set of tests now. This includes the change from linux-system-roles/.github#99 but if you prefer I'm happy to remove that here. Or feel free to remove it yourself if you'd like to land this soon otherwise. |
9654530 to
a9e0432
Compare
✅ Unused diskMany many tests fail with
This must be some leakage in batch mode. Running these individually works fine. I already investigated this a bit above, but no result yet. This will be my task today. Fixed in "tests: Fix stratis block device clean up" commit. tests_stratisThis has an "honest" failure:
This could be related to stratis-storage/stratisd#3805 and be due to an API change. This reproduces locally. tests_resize
This does not reproduce in isolation with tests_lvm_pool_pv_grow.yml
This smells like another cleanup failure. Now, just about every test uses "foo" as name, but I figure it's one of the other failures. I'll go through the "Clean up" actions once again with a fine comb and see which ones need fixing. When I run it locally in isolation, it fails differently: #519 should fix CI run to fail "correctly". ✅ tests_remove_mount.yml
This also smells like cleanup failure, doesn't fail in isolation. Fixed by #519. ✅ tests_existing_lvm_pool.yml
Exactly the same failure as tests_remove_mount.yml, so cleanup failure. Also passes locally in isolation. Fixing tests_resize cleanup didn't fix the follow-ups above. Testing run without stratis, and run without resize tests, to see which one breaks stuff. Update: neither change helped at all, the failures are independent. Fixed by #519. |
a9e0432 to
0f6260e
Compare
Always run the "Clean up" tasks, so that the volumes, pool, and most importantly block devices are removed also when a failure occurs. This unbreaks subsequent tests.
0f6260e to
afa98f2
Compare
| - name: Create encrypted Stratis pool | ||
| - name: Create one Stratis pool with one volume |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For reviewers: git and github make an utter mess of the diff view of "tests: Fix stratis block device clean up". What this does is to wrap the steps of a test into block: ... always: Cleanup. This changes the indendation, and due to the repetitive nature of the test the diff view locks onto" the wrong context. I didn't change any logic.
|
OK, this run is down to 5 failures, from the previous 26. I.e. the "Unable to find enough unused disks" are gone with the stratis cleanup fix. This may be good enough to land now, also to avoid regressing the c9/c10 tests? |
afa98f2 to
181f92d
Compare
This is caused by the changes to Stratis metadata and encryption in Stratis 3.8.0, but the problem should be only in tests in |
Yes. Once you push the ansible-lint fix, we can merge this. |
| - name: Verify role results | ||
| include_tasks: verify-role-results.yml | ||
|
|
||
| always: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess we should add this style of cleanup to all tests, but that's definitely out of scope for this PR.
Always run the "Clean up" tasks, even on failure, so that the used safe mode disks don't leak into the following tests.
Some roles produce ansible/test logs which are too large to sensibly/comfortably view in the main workflow log view. Show only the interesting failures there (the lines around `fatal:`) and upload the full logs as artifact.
Running all tests is too much for the GitHub runner capacity, and many of them fail.
181f92d to
dda7fc1
Compare
|
Pushed the ansible lint fix. I was trying to make some more progress on the other failures, but they are fighting back well. So yeah, let's address these in follow-ups. |
There is a new QEMU based test which uses the qemu/kvm capability of
github action runners. This is the basis for new bootc/image mode tests
which we will be rolling out in the near future.
ansible-lint requires that the collection path is set so that the requirements
it installs are installed in the correct place.
There has been some general github action deprecation of python versions and
ubuntu versions that we have had to fix.
Remove
CONTRIBUTORfrom the list of users who can trigger citest.For more information, see