-
Notifications
You must be signed in to change notification settings - Fork 5.6k
Description
Description
Installing more than one Salt extension in Salt 3006 appears to succeed but the files aren't actually installed in /opt/saltstack/salt/extras-3.10/saltext
Setup
# Initialize the salt environment
mkdir vagrant-salt-saltext && cd vagrant-salt-saltext && vagrant init almalinux/9 && vagrant up && vagrant ssh
[vagrant@localhost ~]$ sudo rpm --import https://repo.saltproject.io/salt/py3/redhat/9/x86_64/SALT-PROJECT-GPG-PUBKEY-2023.pub
[vagrant@localhost ~]$ curl -fsSL https://repo.saltproject.io/salt/py3/redhat/9/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo
[vagrant@localhost ~]$ sudo yum install -y salt-master salt-cloud
Please be as specific as possible and give set-up details.
- on-prem machine
- VM (Virtualbox, KVM, etc. please specify)
- VM running on a cloud service, please be explicit and add details
- container (Kubernetes, Docker, containerd, etc. please specify)
- or a combination, please be explicit
- jails if it is FreeBSD
- classic packaging
- onedir packaging
- used bootstrap to install
Steps to Reproduce the behavior
Install the first extension:
[vagrant@localhost ~]$ sudo salt-pip install saltext.vmware
Collecting saltext.vmware
Downloading saltext.vmware-23.6.29.0rc1-py2.py3-none-any.whl (397 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 397.7/397.7 kB 9.9 MB/s eta 0:00:00
...
Successfully built pyvmomi
Installing collected packages: pyvmomi, saltext.vmware
Successfully installed pyvmomi-7.0.3 saltext.vmware-23.6.29.0rc1
[vagrant@localhost ~]$ sudo salt-run test.arg foo
args:
- foo
kwargs:
----------
The extension shows as installed in salt --versions-report:
[vagrant@localhost ~]$ salt --versions-report
Salt Version:
Salt: 3006.3
Python Version:
Python: 3.10.13 (main, Sep 6 2023, 02:11:27) [GCC 11.2.0]
Dependency Versions:
cffi: 1.14.6
cherrypy: unknown
dateutil: 2.8.1
docker-py: Not Installed
gitdb: Not Installed
gitpython: Not Installed
Jinja2: 3.1.2
libgit2: Not Installed
looseversion: 1.0.2
M2Crypto: Not Installed
Mako: Not Installed
msgpack: 1.0.2
msgpack-pure: Not Installed
mysql-python: Not Installed
packaging: 22.0
pycparser: 2.21
pycrypto: Not Installed
pycryptodome: 3.9.8
pygit2: Not Installed
python-gnupg: 0.4.8
PyYAML: 6.0.1
PyZMQ: 23.2.0
relenv: 0.13.10
smmap: Not Installed
timelib: 0.2.4
Tornado: 4.5.3
ZMQ: 4.3.4
Salt Extensions:
saltext.vmware: 23.6.29.0rc1
System Versions:
dist: almalinux 9.1 Lime Lynx
locale: utf-8
machine: x86_64
release: 5.14.0-162.6.1.el9_1.x86_64
system: Linux
version: AlmaLinux 9.1 Lime Lynx
A directory is created for the extension:
[vagrant@localhost ~]$ ls -alh /opt/saltstack/salt/extras-3.10/saltext
total 0
drwxr-xr-x. 3 root root 20 Oct 19 21:26 .
drwxr-xr-x. 7 root root 125 Oct 19 21:26 ..
drwxr-xr-x. 10 root root 179 Oct 19 21:26 vmware
Now install the second extension:
[vagrant@localhost ~]$ sudo salt-pip install saltext.bitwarden
Collecting saltext.bitwarden
Downloading saltext.bitwarden-0.0.1b15-py2.py3-none-any.whl (32 kB)
Requirement already satisfied: requests in /opt/saltstack/salt/lib/python3.10/site-packages (from saltext.bitwarden) (2.31.0)
Collecting pyhumps
Downloading pyhumps-3.8.0-py3-none-any.whl (6.1 kB)
Collecting validators>=0.22.0
Downloading validators-0.22.0-py3-none-any.whl (26 kB)
...
Installing collected packages: pyhumps, validators, saltext.bitwarden
Successfully installed pyhumps-3.8.0 saltext.bitwarden-0.0.1b15 validators-0.22.0
WARNING: Target directory /opt/saltstack/salt/extras-3.10/saltext already exists. Specify --upgrade to force replacement.
WARNING: Target directory /opt/saltstack/salt/extras-3.10/saltext already exists. Specify --upgrade to force replacement.
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[notice] A new release of pip available: 22.3.1 -> 23.3
[notice] To update, run: /opt/saltstack/salt/bin/python3.10 -m pip install --upgrade pip
[vagrant@localhost ~]$ sudo salt-run test.arg foo
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
[ERROR ] Error processing Salt Extension saltext.bitwarden(version: 0.0.1b15): No module named 'saltext.bitwarden'
args:
- foo
kwargs:
----------
Both extensions show as installed in salt --versions-report:
[vagrant@localhost ~]$ salt --versions-report
Salt Version:
Salt: 3006.3
Python Version:
Python: 3.10.13 (main, Sep 6 2023, 02:11:27) [GCC 11.2.0]
Dependency Versions:
cffi: 1.14.6
cherrypy: unknown
dateutil: 2.8.1
docker-py: Not Installed
gitdb: Not Installed
gitpython: Not Installed
Jinja2: 3.1.2
libgit2: Not Installed
looseversion: 1.0.2
M2Crypto: Not Installed
Mako: Not Installed
msgpack: 1.0.2
msgpack-pure: Not Installed
mysql-python: Not Installed
packaging: 22.0
pycparser: 2.21
pycrypto: Not Installed
pycryptodome: 3.9.8
pygit2: Not Installed
python-gnupg: 0.4.8
PyYAML: 6.0.1
PyZMQ: 23.2.0
relenv: 0.13.10
smmap: Not Installed
timelib: 0.2.4
Tornado: 4.5.3
ZMQ: 4.3.4
Salt Extensions:
saltext.bitwarden: 0.0.1b15
saltext.vmware: 23.6.29.0rc1
System Versions:
dist: almalinux 9.1 Lime Lynx
locale: utf-8
machine: x86_64
release: 5.14.0-162.6.1.el9_1.x86_64
system: Linux
version: AlmaLinux 9.1 Lime Lynx
No directory is created for the extension:
[vagrant@localhost ~]$ ls -alh /opt/saltstack/salt/extras-3.10/saltext
total 4.0K
drwxr-xr-x. 3 root root 20 Oct 19 21:26 .
drwxr-xr-x. 12 root root 4.0K Oct 19 21:37 ..
drwxr-xr-x. 10 root root 179 Oct 19 21:26 vmware
Now try reversing the order of installation:
vagrant destroy -f && vagrant up && vagrant ssh
[vagrant@localhost ~]$ sudo rpm --import https://repo.saltproject.io/salt/py3/redhat/9/x86_64/SALT-PROJECT-GPG-PUBKEY-2023.pub
[vagrant@localhost ~]$ curl -fsSL https://repo.saltproject.io/salt/py3/redhat/9/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo
[vagrant@localhost ~]$ sudo yum install -y salt-master salt-cloud
Install the first extension:
vagrant@localhost ~]$ sudo salt-pip install saltext.bitwarden
Collecting saltext.bitwarden
Downloading saltext.bitwarden-0.0.1b15-py2.py3-none-any.whl (32 kB)
Requirement already satisfied: requests in /opt/saltstack/salt/lib/python3.10/site-packages (from saltext.bitwarden) (2.31.0)
Collecting pyhumps
Downloading pyhumps-3.8.0-py3-none-any.whl (6.1 kB)
Collecting validators>=0.22.0
Downloading validators-0.22.0-py3-none-any.whl (26 kB)
...
Installing collected packages: pyhumps, validators, saltext.bitwarden
Successfully installed pyhumps-3.8.0 saltext.bitwarden-0.0.1b15 validators-0.22.0
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[notice] A new release of pip available: 22.3.1 -> 23.3
[notice] To update, run: /opt/saltstack/salt/bin/python3.10 -m pip install --upgrade pip
[vagrant@localhost ~]$ sudo salt-run test.arg foo
args:
- foo
kwargs:
----------
The extension shows as installed in salt --versions-report:
Salt Version:
Salt: 3006.3
Python Version:
Python: 3.10.13 (main, Sep 6 2023, 02:11:27) [GCC 11.2.0]
Dependency Versions:
cffi: 1.14.6
cherrypy: unknown
dateutil: 2.8.1
docker-py: Not Installed
gitdb: Not Installed
gitpython: Not Installed
Jinja2: 3.1.2
libgit2: Not Installed
looseversion: 1.0.2
M2Crypto: Not Installed
Mako: Not Installed
msgpack: 1.0.2
msgpack-pure: Not Installed
mysql-python: Not Installed
packaging: 22.0
pycparser: 2.21
pycrypto: Not Installed
pycryptodome: 3.9.8
pygit2: Not Installed
python-gnupg: 0.4.8
PyYAML: 6.0.1
PyZMQ: 23.2.0
relenv: 0.13.10
smmap: Not Installed
timelib: 0.2.4
Tornado: 4.5.3
ZMQ: 4.3.4
Salt Extensions:
saltext.bitwarden: 0.0.1b15
System Versions:
dist: almalinux 9.1 Lime Lynx
locale: utf-8
machine: x86_64
release: 5.14.0-162.6.1.el9_1.x86_64
system: Linux
version: AlmaLinux 9.1 Lime Lynx
A directory is created for the extension:
[vagrant@localhost ~]$ ls -alh /opt/saltstack/salt/extras-3.10/saltext
total 0
drwxr-xr-x. 3 root root 23 Oct 19 22:07 .
drwxr-xr-x. 8 root root 162 Oct 19 22:07 ..
drwxr-xr-x. 8 root root 147 Oct 19 22:07 bitwarden
Now install the second extension:
[vagrant@localhost ~]$ sudo salt-pip install saltext.vmware
Collecting saltext.vmware
Downloading saltext.vmware-23.6.29.0rc1-py2.py3-none-any.whl (397 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 397.7/397.7 kB 11.7 MB/s eta 0:00:00
...
Successfully built pyvmomi
Installing collected packages: pyvmomi, saltext.vmware
Successfully installed pyvmomi-7.0.3 saltext.vmware-23.6.29.0rc1
WARNING: Target directory /opt/saltstack/salt/extras-3.10/saltext already exists. Specify --upgrade to force replacement.
WARNING: Target directory /opt/saltstack/salt/extras-3.10/saltext already exists. Specify --upgrade to force replacement.
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[notice] A new release of pip available: 22.3.1 -> 23.3
[notice] To update, run: /opt/saltstack/salt/bin/python3.10 -m pip install --upgrade pip
[vagrant@localhost ~]$ sudo salt-run test.arg foo
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
[ERROR ] Error processing Salt Extension saltext.vmware(version: 23.6.29.0rc1): No module named 'saltext.vmware'
args:
- foo
kwargs:
----------
Both extensions show as installed in salt --versions-report:
Salt Version:
Salt: 3006.3
Python Version:
Python: 3.10.13 (main, Sep 6 2023, 02:11:27) [GCC 11.2.0]
Dependency Versions:
cffi: 1.14.6
cherrypy: unknown
dateutil: 2.8.1
docker-py: Not Installed
gitdb: Not Installed
gitpython: Not Installed
Jinja2: 3.1.2
libgit2: Not Installed
looseversion: 1.0.2
M2Crypto: Not Installed
Mako: Not Installed
msgpack: 1.0.2
msgpack-pure: Not Installed
mysql-python: Not Installed
packaging: 22.0
pycparser: 2.21
pycrypto: Not Installed
pycryptodome: 3.9.8
pygit2: Not Installed
python-gnupg: 0.4.8
PyYAML: 6.0.1
PyZMQ: 23.2.0
relenv: 0.13.10
smmap: Not Installed
timelib: 0.2.4
Tornado: 4.5.3
ZMQ: 4.3.4
Salt Extensions:
saltext.bitwarden: 0.0.1b15
saltext.vmware: 23.6.29.0rc1
System Versions:
dist: almalinux 9.1 Lime Lynx
locale: utf-8
machine: x86_64
release: 5.14.0-162.6.1.el9_1.x86_64
system: Linux
version: AlmaLinux 9.1 Lime Lynx
No directory is created for the extension:
[vagrant@localhost ~]$ ls -alh /opt/saltstack/salt/extras-3.10/saltext
total 4.0K
drwxr-xr-x. 3 root root 23 Oct 19 22:07 .
drwxr-xr-x. 12 root root 4.0K Oct 19 22:10 ..
drwxr-xr-x. 8 root root 147 Oct 19 22:07 bitwarden
Now try installing both extensions in one transaction:
vagrant destroy -f && vagrant up && vagrant ssh
[vagrant@localhost ~]$ sudo rpm --import https://repo.saltproject.io/salt/py3/redhat/9/x86_64/SALT-PROJECT-GPG-PUBKEY-2023.pub
[vagrant@localhost ~]$ curl -fsSL https://repo.saltproject.io/salt/py3/redhat/9/x86_64/latest.repo | sudo tee /etc/yum.repos.d/salt.repo
[vagrant@localhost ~]$ sudo yum install -y salt-master salt-cloud
Install the extensions:
[vagrant@localhost ~]$ sudo salt-pip install saltext.vmware saltext.bitwarden
Collecting saltext.vmware
Downloading saltext.vmware-23.6.29.0rc1-py2.py3-none-any.whl (397 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 397.7/397.7 kB 9.3 MB/s eta 0:00:00
Collecting saltext.bitwarden
Downloading saltext.bitwarden-0.0.1b15-py2.py3-none-any.whl (32 kB)
Requirement already satisfied: jinja2>=3.1.0 in /opt/saltstack/salt/lib/python3.10/site-packages (from saltext.vmware) (3.1.2)
Collecting pyvmomi==7.0.3
Downloading pyvmomi-7.0.3.tar.gz (592 kB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 592.3/592.3 kB 71.4 MB/s eta 0:00:00
...
Successfully built pyvmomi
Installing collected packages: pyhumps, validators, pyvmomi, saltext.vmware, saltext.bitwarden
Successfully installed pyhumps-3.8.0 pyvmomi-7.0.3 saltext.bitwarden-0.0.1b15 saltext.vmware-23.6.29.0rc1 validators-0.22.0
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
[notice] A new release of pip available: 22.3.1 -> 23.3
[notice] To update, run: /opt/saltstack/salt/bin/python3.10 -m pip install --upgrade pip
[vagrant@localhost ~]$ sudo salt-run test.arg foo
args:
- foo
kwargs:
----------
Both extensions show as installed in salt --versions-report:
Salt Version:
Salt: 3006.3
Python Version:
Python: 3.10.13 (main, Sep 6 2023, 02:11:27) [GCC 11.2.0]
Dependency Versions:
cffi: 1.14.6
cherrypy: unknown
dateutil: 2.8.1
docker-py: Not Installed
gitdb: Not Installed
gitpython: Not Installed
Jinja2: 3.1.2
libgit2: Not Installed
looseversion: 1.0.2
M2Crypto: Not Installed
Mako: Not Installed
msgpack: 1.0.2
msgpack-pure: Not Installed
mysql-python: Not Installed
packaging: 22.0
pycparser: 2.21
pycrypto: Not Installed
pycryptodome: 3.9.8
pygit2: Not Installed
python-gnupg: 0.4.8
PyYAML: 6.0.1
PyZMQ: 23.2.0
relenv: 0.13.10
smmap: Not Installed
timelib: 0.2.4
Tornado: 4.5.3
ZMQ: 4.3.4
Salt Extensions:
saltext.bitwarden: 0.0.1b15
saltext.vmware: 23.6.29.0rc1
System Versions:
dist: almalinux 9.1 Lime Lynx
locale: utf-8
machine: x86_64
release: 5.14.0-162.6.1.el9_1.x86_64
system: Linux
version: AlmaLinux 9.1 Lime Lynx
Expected behavior
Both extensions are installed and function when not installed in the same transaction
Versions Report
salt --versions-report
(Provided by running salt --versions-report. Please also mention any differences in master/minion versions.)Salt Version:
Salt: 3006.3
Python Version:
Python: 3.10.13 (main, Sep 6 2023, 02:11:27) [GCC 11.2.0]
Dependency Versions:
cffi: 1.14.6
cherrypy: unknown
dateutil: 2.8.1
docker-py: Not Installed
gitdb: Not Installed
gitpython: Not Installed
Jinja2: 3.1.2
libgit2: Not Installed
looseversion: 1.0.2
M2Crypto: Not Installed
Mako: Not Installed
msgpack: 1.0.2
msgpack-pure: Not Installed
mysql-python: Not Installed
packaging: 22.0
pycparser: 2.21
pycrypto: Not Installed
pycryptodome: 3.9.8
pygit2: Not Installed
python-gnupg: 0.4.8
PyYAML: 6.0.1
PyZMQ: 23.2.0
relenv: 0.13.10
smmap: Not Installed
timelib: 0.2.4
Tornado: 4.5.3
ZMQ: 4.3.4
Salt Extensions:
saltext.bitwarden: 0.0.1b15
saltext.vmware: 23.6.29.0rc1
System Versions:
dist: almalinux 9.1 Lime Lynx
locale: utf-8
machine: x86_64
release: 5.14.0-162.6.1.el9_1.x86_64
system: Linux
version: AlmaLinux 9.1 Lime LynxAdditional context
Same issue as reported here: #64662 (comment)