action #167830
closedsalt-states-openqa static pipeline checks fail size:S
0%
Description
Observation¶
After merging https://gitlab.suse.de/openqa/salt-states-openqa/-/merge_requests/1283 our pipelines fail with:
----------
ID: kdump-conf
Function: augeas.change
Result: False
Comment: State 'augeas.change' was not found in SLS 'kdump'
Reason: 'augeas' __virtual__ returned False: augeas module could not be loaded
for example in the job "test-general-mock" https://gitlab.suse.de/openqa/salt-states-openqa/-/jobs/3195852
The MR is unrelated and it seems like we're missing dependencies for Augeas in our testing container recently. Container can be pulled with podman run --rm -it registry.opensuse.org/home/okurz/container/ca/containers/tumbleweed:salt-minion-git-core-ssh
. "augeas" and "python-augeas" are installed but I found https://github.com/saltstack/salt/issues/6082#issuecomment-27234648 which mentions "libpython2_7" which is in fact missing in the container - so maybe that?
Acceptance criteria¶
- AC1: CI jobs in a fixing MR work consistently
Suggestions¶
- Try to reproduce locally with the container also used in the CI pipeline, e.g. try
make test
in https://gitlab.suse.de/openqa/salt-states-openqa/
Updated by ybonatakis about 1 month ago
- Tags set to reactive work, infra
- Category set to Regressions/Crashes
Updated by okurz about 1 month ago
- Subject changed from salt-states-openqa static pipeline checks fail to salt-states-openqa static pipeline checks fail size:S
- Description updated (diff)
- Status changed from New to Workable
Updated by dheidler about 1 month ago
There is another error in the log regarding a missing python3-cryptography.
SR: https://build.opensuse.org/request/show/1206314
Updated by dheidler about 1 month ago · Edited
- Status changed from Workable to In Progress
- Assignee set to dheidler
After that package is installed, it is also possible to import the python augeas module.
This is because python3-cryptography depends on python3-cffi which was not installed before.
ab8f740c8d3a:/ # python3
Python 3.11.10 (main, Sep 09 2024, 17:03:08) [GCC] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import augeas
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.11/site-packages/augeas/__init__.py", line 35, in <module>
from augeas.ffi import ffi, lib
File "/usr/lib/python3.11/site-packages/augeas/ffi.py", line 1, in <module>
from cffi import FFI
ModuleNotFoundError: No module named 'cffi'
>>>
SR for adding missing dependency to python-augeas: https://build.opensuse.org/request/show/1206322/changes
Updated by dheidler about 1 month ago
- Status changed from In Progress to Feedback
Updated by okurz about 1 month ago
https://build.opensuse.org/request/show/1206314 accepted. https://build.opensuse.org/request/show/1206341 is the according change to bring the update into openSUSE Factory. Already accepted.
I retriggered a CI job but https://gitlab.suse.de/openqa/salt-states-openqa/-/jobs/3206655 still fails the same. Maybe the container image isn't yet properly published.
Updated by ybonatakis about 1 month ago
- Status changed from Feedback to In Progress
back in progress as per last comment and https://gitlab.suse.de/openqa/salt-states-openqa/-/jobs
Updated by okurz about 1 month ago · Edited
https://build.opensuse.org/package/show/home:okurz:container:ca/salt-minion-git-core-ssh says there is a conflict in Dockerfile but I didn't see what to fix there. I removed the link and added the dependency to Dockerfile. After a bit of waiting now the container is building: https://build.opensuse.org/package/live_build_log/home:okurz:container:ca/salt-minion-git-core-ssh/containers/x86_64
EDIT: New container image was published. I retriggered https://gitlab.suse.de/openqa/salt-states-openqa/-/jobs/3208498 which now succeeded.
Updated by okurz about 1 month ago
- Priority changed from Urgent to High
I guess now we can wait until the next Tumbleweed snapshot containing the updated fix is released and the container images can then remove the workaround again, right?
Updated by dheidler about 1 month ago · Edited
- Status changed from In Progress to Resolved
Looks fine at https://gitlab.suse.de/openqa/salt-states-openqa/-/jobs/3208498 after @okurz pushed the changes to https://build.opensuse.org/package/show/home:okurz:container:ca/salt-minion-git-core-ssh as well.
The container image still actually needs python3-cryptograpghy. So we need to keep that.
It is only an originally unintended side effect of me fixing the cryptography error that this also
worked around the missing dependency of augeas.
Updated by dheidler about 1 month ago
- Status changed from Resolved to Feedback
It seems to actually be a bug that salt doesn't require python3-cryptography so let's fix that:
https://build.opensuse.org/request/show/1206485
Updated by okurz about 1 month ago
dheidler wrote in #note-12:
Looks fine at https://gitlab.suse.de/openqa/salt-states-openqa/-/jobs/3208498 after @okurz pushed the changes to https://build.opensuse.org/package/show/home:okurz:container:ca/salt-minion-git-core-ssh as well.
The container image still actually needs python3-cryptograpghy. So we need to keep that.
It is only an originally unintended side effect of me fixing the cryptography error that this also
worked around the missing dependency of augeas.
Can you please elaborate on that. Why does the container still need to explicitly install python3-cryptography? Or is that assessment obsolete with
dheidler wrote in #note-13:
It seems to actually be a bug that salt doesn't require python3-cryptography so let's fix that:
https://build.opensuse.org/request/show/1206485
?
Updated by dheidler about 1 month ago · Edited
It will be obsolete, once that change in salt is accepted and reached Tumbleweed.
They seem to manage salt rpm sources in git, so I created https://github.com/openSUSE/salt-packaging/pull/99
Updated by dheidler about 1 month ago
- Status changed from Feedback to Resolved
I guess that the salt maintainers don't like introducing another depedency even if it means runtime crashes when loading the x509 module.
So we need to keep the dependency for the container:
https://github.com/openSUSE/salt-packaging/pull/99#issuecomment-2410793632
I have a different opinion (which I expressed again in https://github.com/openSUSE/salt-packaging/pull/99#issuecomment-2413279822) but I don't have much hope here.
So closing this ticket.
Updated by livdywan about 1 month ago
- Copied to action #168475: salt-states-openqa telegraf pipeline failing with error in libcrypto added