saltstack / saltstack/salt

[BUG] junos.conn seems to go stale

Open
#57,318 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug pending-discussion
Dominant language
Python
Stars
15.7k
Forks
5.6k
Avg merge
2d 44m
Merged PRs (30d)
80

Description

Description
Sometimes, proxy minions utilizing junos.cli will return without any newlines. This makes the output hard to read.

Setup
Configure and start a junos proxy minion. The bug might be due to long open connections, so wait, if necessary.

Steps to Reproduce the behavior
Execute a cli command.

$ salt <minion-id> junos.cli "show ntp associations no-resolve"
<minion-id>:
    ----------
    message:
        remote refid st t when poll reach delay offset jitter =============================================================================== +xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx x - xx xx xx xx xx xx *xxx.xxx.xxx.xxx  xxx.xxx.xxx.xxx x - xx xx xx xx xx xx
    out:
        True

Expected behavior
Command should output with newlines. Ex:

<minion-id>:
    ----------
    message:

           remote         refid           st t when poll reach   delay   offset  jitter
        ===============================================================================
        +xxx.xxx.xxx.xxx      xxx.xxx.xxx.xxx      x -  xx xx  xx    xx    xx   xx
        *xxx.xxx.xxx.xxx      xxx.xxx.xxx.xxx      x -  xx xx  xx    xx    xx   xx
    out:
        True

Versions Report

$ salt --versions-report
Salt Version:
           Salt: 3000.3

Dependency Versions:
           cffi: 1.13.2
       cherrypy: unknown
       dateutil: 2.8.1
      docker-py: Not Installed
          gitdb: Not Installed
      gitpython: Not Installed
         Jinja2: 2.10.3
        libgit2: 0.28.2
       M2Crypto: Not Installed
           Mako: Not Installed
   msgpack-pure: Not Installed
 msgpack-python: 0.5.6
   mysql-python: Not Installed
      pycparser: 2.19
       pycrypto: 2.6.1
   pycryptodome: 3.9.7
         pygit2: 1.0.2
         Python: 3.7.5 (default, Oct 17 2019, 12:25:15)
   python-gnupg: 0.4.5
         PyYAML: 5.3.1
          PyZMQ: 19.0.1
          smmap: Not Installed
        timelib: Not Installed
        Tornado: 4.5.3
            ZMQ: 4.3.2

System Versions:
           dist:
         locale: UTF-8
        machine: x86_64
        release: 3.10.0-1062.el7.x86_64
         system: Linux
        version: Not Installed

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the junos.cli command against a configured Junos proxy minion, especially after a long-lived connection, and compare the returned message with the expected output. Trace the junos.cli proxy command's handling of the command response; done means the output preserves its newlines and remains readable.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.