-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
salt-ssh not working on remote hosts with python versions >3.8 #61276
Comments
Hi there! Welcome to the Salt Community! Thank you for making your first contribution. We have a lengthy process for issues and PRs. Someone from the Core Team will follow up as soon as possible. In the meantime, here’s some information that may help as you continue your Salt journey.
There are lots of ways to get involved in our community. Every month, there are around a dozen opportunities to meet with other contributors and the Salt Core team and collaborate in real time. The best way to keep track is by subscribing to the Salt Community Events Calendar. |
What version of |
So in an effort to get this working, I have downgraded salt-ssh to version 3003.3 but the issue remains. I have made sure the package you mentioned was upgraded and I even installed it on remote machine. Here are the versions salt master
fedora 35 machine
|
Salt-SSH should be using the packages it finds on the minion though, if they're installed. |
Okay the Salt folks need to get this package upgraded on their repo because as of now version 0.23-4 is in their rhel7 repo for versions 3003 and 3004
It is the same error for both the versions. 3.10 is the default and I just symlink /usr/bin/python3 to the ver I want. This of course is all in vain since like you said the master uses an older markupsafe Interesting to note, my internal fedora 35 machine works just great with salt-minion but salt-ssh is problematic it seems with these mismatches |
The master is fine to be using an older markupsafe. There's nothing wrong there; it's the correct package for el7. The problem is either: Given you've been switching around with dev versions of Python, my guess would be a. If you can rule that out then it is b. |
'a' can be ruled out:
Pip had markupsafe 2.0.1 installed. I even tried removing that to strictly use the rpm version. still failed...
|
'a' cannot be ruled out until you establish which python installation the minion is using.
The python binary which that uses should include The original stacktrace had |
Nothing has changed.....
|
Yep, that looks like it's not picking up installed packages corectly then. Installing a newer markupsafe (e.g. via yum or pip) on the master should work around it. |
@HappyBuzzCut I was able to sidestep this by pip installing MarkupSafe 2.0.0 on my salt-ssh master which runs py 3.6. Do be sure to clear out the |
This problem is still open at least on a mixed openSUSE setup where the Master has Python 3.6.15 with Salt Master 3006.0 and some of the nodes with openSUSE Tumbleweed running on Python 3.11.4 and naturally on Minion 3006.0. Installing a newer markupsafe did not triage the issue or perhaps it's because of the distribution packages. |
"triage" means to determine the severity and priority of something |
Sorry, English isn't my primary language so sometimes I have to rely on translators and the verb we use for fixing translated to triage for some reason. Anyway unfortunately upgrading the python module did not fix the issue for me. |
Do I understand correctly, that
|
@OrangeDog from what I see from the sources, |
Description of Issue
When trying to highstate a new Fedora 25 machine with Python 3.11 (currently latest in repo), I get the following error:
"ImportError: cannot import name 'Mapping' from 'collections' (/usr/lib64/python3.10/collections/init.py)"
Setup
N/A - Errors with salt using Python module. I have no custom python scripts
Steps to Reproduce Issue
Versions Report
minion:
None - Using salt-ssh to highstate a host over ssh. Remote host running fedora 35
master:
The text was updated successfully, but these errors were encountered: