-
Notifications
You must be signed in to change notification settings - Fork 192
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
CI: Set runners to ubuntu-24.04 #6696
Conversation
The failed tests are introduced by #6584 not too long ago. @GeigerJ2 can you have a look?
It also failed on my laptop after I update the linux kernel ( |
Thanks for the ping, @unkcpz. Will have a look! |
No worries, I know it is hard to test things cross command line interface to transport to final remote system call. This one is also not easy to mock and test (it can but would be a bit meaningless IMO). |
@unkcpz the issue should be fixed by #6702 (I hope, CI still running, fingers crossed :D). Was actually not too difficult to trace it back, as I could just set up a minimal Ubuntu 24.04 via WSL and go from there. Going back to the original purpose of the PR, @danielhollas, thanks for the change! I think it's indeed better to be explicit. I'd say once #6702 is merged, this can be rebased, and merged as well (I also applied the change of this PR in my latest commit, to see if it works, but will revert that again before merge). |
In #6584 the `get_size_on_disk` method was added to `RemoteData`, which calls the `du` utility as the default way to obtain the size of an associated file/directory, using the `-s` (summary) and `--bytes` options. As discovered in #6696, however, the relevant tests started failing when the `ubuntu-latest` environment of GHA got updated to point to Ubuntu 24.04 instead of 22.04. This is because, as it turns out, `--bytes` does not only give the output in bytes, but is actually equivalent to `--apparent-size`, as well as `--block-size=1`, and the behavior of the `--apparent-size` option of `du` has changed between the different Ubuntu versions. Thus, the command is now changed from `du -s --bytes` to `du -s --block-size=1`, as to still obtain the total size in bytes, but make the results more reliable and less fragile by not reporting the apparent size. The size results for the various parametrized test cases have also been updated accordingly.
32e1188
to
c25b9a6
Compare
c25b9a6
to
23d0db9
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #6696 +/- ##
=======================================
Coverage 77.99% 77.99%
=======================================
Files 563 563
Lines 41762 41762
=======================================
Hits 32570 32570
Misses 9192 9192 ☔ View full report in Codecov by Sentry. |
Hmm, the nightly tests are failing with Ubuntu 24.04, specifically this invocation verdi -p test_aiida run ${SYSTEM_TESTS}/test_containerized_code.py fails with (note specifically the first line) Warning: output parser returned exit code<320>: The output file contains invalid output.
Traceback (most recent call last):
File "/home/runner/work/aiida-core/aiida-core/./.venv/bin/verdi", line 8, in <module>
results={'remote_folder': <RemoteData: uuid: 17a41a65-3d01-4a9c-8388-891a433de295 (pk: 411)>, 'retrieved': <FolderData: uuid: d4d9581e-d4b1-44c3-b1e7-1e9e270dcfc5 (pk: 412)>}
sys.exit(verdi())
^^^^^^^
File "/home/runner/work/aiida-core/aiida-core/.venv/lib/python3.11/site-packages/click/core.py", line 1161, in __call__
return self.main(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/runner/work/aiida-core/aiida-core/.venv/lib/python3.11/site-packages/click/core.py", line 1082, in main
rv = self.invoke(ctx)
^^^^^^^^^^^^^^^^
File "/home/runner/work/aiida-core/aiida-core/.venv/lib/python3.11/site-packages/click/core.py", line 1697, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/runner/work/aiida-core/aiida-core/src/aiida/cmdline/groups/verdi.py", line 117, in invoke
node=<CalcJobNode: uuid: 196e05f7-f0df-4fda-842f-ba700194d8ee (pk: 410) (aiida.calculations:core.arithmetic.add)>
return ctx.invoke(self.callback, **ctx.params)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/runner/work/aiida-core/aiida-core/.venv/lib/python3.11/site-packages/click/core.py", line 788, in invoke
return __callback(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/runner/work/aiida-core/aiida-core/src/aiida/cmdline/utils/decorators.py", line 104, in wrapper
return wrapped(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/runner/work/aiida-core/aiida-core/src/aiida/cmdline/commands/cmd_run.py", line 120, in run
exec(compile(handle.read(), str(filepath), 'exec', dont_inherit=True), globals_dict)
File "/home/runner/work/aiida-core/aiida-core/.github/system_tests/test_containerized_code.py", line 39, in <module>
main()
File "/home/runner/work/aiida-core/aiida-core/.github/system_tests/test_containerized_code.py", line 35, in main
test_add_singularity()
File "/home/runner/work/aiida-core/aiida-core/.github/system_tests/test_containerized_code.py", line 27, in test_add_singularity
assert node.is_finished_ok
^^^^^^^^^^^^^^^^^^^
AssertionError I will not have time to dig into this further. For this PR I suggest to pin the nightly tests to ubuntu-22.04 and open an issue for a follow-up? WDYT @unkcpz @GeigerJ2 |
I noticed it as well, but has no clue of what that happened. Yes, pinning it to ubuntu-22.04 can be a workaround, since it is now fail the tests of main branch anyway. |
Okay, done. Assuming the tests will pass this should be good to merge. |
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.
@danielhollas thanks for the change!
GitHub is rolling out a change where
ubuntu-latest
will start to point to ubuntu-24.04.