Skip to content

[BUG] salt-ssh requires the distro python package #61535

Description

@TimidRobot

Description
salt-ssh requires the distro python package.

Setup

  • 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

Steps to Reproduce the behavior

  1. Provisioned a Debian 11 Bullseye VM on AWS using
  2. Attempt to use salt-ssh to configure it.
    sudo salt-ssh TARGET-HOST test.version
    
    TARGET-HOST:
        ----------
        retcode:
            1
        stderr:
            Connection to TARGET-HOST-IP closed.
        stdout:
    
  3. Follow Debugging salt-ssh - Salt SSH instructions to manually invoke salt-call on target host:
    Traceback (most recent call last):
      File "/var/tmp/.admin_62bf38_salt/salt-call", line 27, in <module>
        salt_call()
      File "/var/tmp/.admin_62bf38_salt/pyall/salt/scripts.py", line 426, in salt_call
        import salt.cli.call
      File "/var/tmp/.admin_62bf38_salt/pyall/salt/cli/call.py", line 3, in <module>
        import salt.cli.caller
      File "/var/tmp/.admin_62bf38_salt/pyall/salt/cli/caller.py", line 14, in <module>
        import salt.loader
      File "/var/tmp/.admin_62bf38_salt/pyall/salt/loader/__init__.py", line 14, in <module>
        import salt.config
      File "/var/tmp/.admin_62bf38_salt/pyall/salt/config/__init__.py", line 17, in <module>
        import salt.syspaths
      File "/var/tmp/.admin_62bf38_salt/pyall/salt/syspaths.py", line 22, in <module>
        import salt.utils.platform
      File "/var/tmp/.admin_62bf38_salt/pyall/salt/utils/platform.py", line 11, in <module>
        from distro import linux_distribution
    ModuleNotFoundError: No module named 'distro'
  4. Manually install distro on TARGET-HOST:
    sudo apt-get install python3-distro
    
  5. Confirm it works as expected:
    sudo salt-ssh TARGET-HOST test.version
    
    TARGET-HOST:
        3004
    

Expected behavior
salt-ssh should succeed without requiring packages on the target host (if this assumption is wrong, then the documentation should be updated to included dependencies)

Versions Report

salt --versions-report (Provided by running salt --versions-report. Please also mention any differences in master/minion versions.)
Salt Version:
          Salt: 3004
 
Dependency Versions:
          cffi: Not Installed
      cherrypy: Not Installed
      dateutil: 2.7.3
     docker-py: Not Installed
         gitdb: 2.0.5
     gitpython: 2.1.11
        Jinja2: 2.10
       libgit2: Not Installed
      M2Crypto: Not Installed
          Mako: Not Installed
       msgpack: 0.5.6
  msgpack-pure: Not Installed
  mysql-python: Not Installed
     pycparser: Not Installed
      pycrypto: 2.6.1
  pycryptodome: 3.6.1
        pygit2: Not Installed
        Python: 3.7.3 (default, Jan 22 2021, 20:04:44)
  python-gnupg: Not Installed
        PyYAML: 3.13
         PyZMQ: 17.1.2
         smmap: 2.0.5
       timelib: Not Installed
       Tornado: 4.5.3
           ZMQ: 4.3.1
 
System Versions:
          dist: debian 10 buster
        locale: UTF-8
       machine: x86_64
       release: 4.19.0-18-amd64
        system: Linux
       version: Debian GNU/Linux 10 buster

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Salt-SSHbugbroken, incorrect, or confusing behaviorpending-discussionThe issue or pull request needs more discussion before it can be closed or mergedseverity-medium3rd level, incorrect or bad functionality, confusing and lacks a work around

Type

No type

Projects

No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions