Skip to content

2019.2.0 - test mode crashes with both "unless:" and "retry:" declarations in a file.managed state #54501

@Orlando-Richards

Description

@Orlando-Richards

Description of Issue

When running a file.managed state in test mode, which is configured to download a file over https, salt-call will crash if the state has both a retry: and an unless: declaration which evaluates to true.

Command line returns:
Passed invalid arguments: sequence item 0: expected string or Unicode, list found.

followed by the Usage: statement for salt-call:
crash.log

Setup

Create a state test.sls:

download sample data:
  file.managed:
    - name: /tmp/saltstack.README.rst
    - retry:
        attempts: 5
        interval: 5
    - unless:
      - test -f /tmp/saltstack.README.rst
    - source:
      - https://raw.githubusercontent.com/saltstack/salt/develop/README.rst
    - source_hash: f2bc8c0aa2ae4f5bb5c2051686016b48

Steps to Reproduce Issue

  • touch /tmp/saltstack.README.rst
  • salt-call state.apply test -l info test=true 2>&1 | tee /tmp/crash.log

Versions Report

Salt Version:
           Salt: 2019.2.0

Dependency Versions:
           cffi: 1.12.3
       cherrypy: unknown
       dateutil: 2.7.2
      docker-py: 3.5.0
          gitdb: 2.0.5
      gitpython: 2.1.11
          ioflo: Not Installed
         Jinja2: 2.9.6
        libgit2: Not Installed
        libnacl: Not Installed
       M2Crypto: 0.31.0
           Mako: 1.1.0
   msgpack-pure: Not Installed
 msgpack-python: 0.5.6
   mysql-python: 1.2.5
      pycparser: 2.19
       pycrypto: 2.6.1
   pycryptodome: 3.7.3
         pygit2: Not Installed
         Python: 2.7.5 (default, Apr  9 2019, 14:30:50)
   python-gnupg: Not Installed
         PyYAML: 3.11
          PyZMQ: 15.3.0
           RAET: Not Installed
          smmap: 2.0.5
        timelib: Not Installed
        Tornado: 4.2.1
            ZMQ: 4.1.4

System Versions:
           dist: centos 7.6.1810 Core
         locale: UTF-8
        machine: x86_64
        release: 3.10.0-957.12.2.el7.x86_64
         system: Linux
        version: CentOS Linux 7.6.1810 Core

Metadata

Metadata

Assignees

Labels

ConfirmedSalt engineer has confirmed bug/feature - often including a MCVEZRelease-Sodiumretired labelbugbroken, incorrect, or confusing behavior

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions