Skip to content

New module.run format causing traceback from state file #43770

@sdodsley

Description

@sdodsley

Description of Issue/Question

Trying to use the new module.run format and getting a traceback failure from the minion.

I have followed the instructions regarding the new format and including the required settings in the minion config file

Setup

Minion config file contains the following:

use_superseded:
  - module.run

top.sls

base:
  '*':
    - storage

storage.sls

storage:
  module.run:
    - test.echo:
      - text: "Hello"

Steps to Reproduce Issue

# salt sn1-pool-e01-15.puretec.purestorage.com state.highstate
sn1-pool-e01-15.puretec.purestorage.com:
    The minion function caused an exception: Traceback (most recent call last):
      File "/etc/salt/salt/minion.py", line 1523, in _thread_return
        return_data = minion_instance.executors[fname](opts, data, func, args, kwargs)
      File "/etc/salt/salt/executors/direct_call.py", line 12, in execute
        return func(*args, **kwargs)
      File "/etc/salt/salt/modules/state.py", line 890, in highstate
        orchestration_jid=orchestration_jid)
      File "/etc/salt/salt/state.py", line 3756, in call_highstate
        return self.state.call_high(high, orchestration_jid)
      File "/etc/salt/salt/state.py", line 2591, in call_high
        ret = self.call_chunks(chunks)
      File "/etc/salt/salt/state.py", line 2075, in call_chunks
        running = self.call_chunk(low, running, chunks)
      File "/etc/salt/salt/state.py", line 2424, in call_chunk
        running[tag] = self.call(low, chunks, running)
      File "/etc/salt/salt/state.py", line 1929, in call
        self.verify_ret_for_export(ret)
      File "/etc/salt/salt/state.py", line 1024, in verify_ret_for_export
        raise SaltException(msg.format(key, repr(ret[key])))
    SaltException: The value for the name key in the state return must be a string, found ['test.echo']

Minion log file:

2017-09-27 05:23:02,635 [salt.crypt                                     :400 ][DEBUG   ][37571] Initializing new AsyncAuth for (u'/etc/salt/pki/minion', 'sn1-pool-e01-15.puretec.purestorage.com', u'tcp://10.21.113.17:4506')
2017-09-27 05:23:02,646 [salt.minion                                    :1625][DEBUG   ][37571] minion return: {u'fun_args': [], u'jid': '20170927052327447373', u'return': u'The minion function caused an exception: Traceback (most recent call last):\n  File "/etc/salt/salt/minion.py", line 1523, in _thread_return\n    return_data = minion_instance.executors[fname](opts, data, func, args, kwargs)\n  File "/etc/salt/salt/executors/direct_call.py", line 12, in execute\n    return func(*args, **kwargs)\n  File "/etc/salt/salt/modules/state.py", line 890, in highstate\n    orchestration_jid=orchestration_jid)\n  File "/etc/salt/salt/state.py", line 3756, in call_highstate\n    return self.state.call_high(high, orchestration_jid)\n  File "/etc/salt/salt/state.py", line 2591, in call_high\n    ret = self.call_chunks(chunks)\n  File "/etc/salt/salt/state.py", line 2075, in call_chunks\n    running = self.call_chunk(low, running, chunks)\n  File "/etc/salt/salt/state.py", line 2424, in call_chunk\n    running[tag] = self.call(low, chunks, running)\n  File "/etc/salt/salt/state.py", line 1929, in call\n    self.verify_ret_for_export(ret)\n  File "/etc/salt/salt/state.py", line 1024, in verify_ret_for_export\n    raise SaltException(msg.format(key, repr(ret[key])))\nSaltException: The value for the name key in the state return must be a string, found [\'test.echo\']\n', u'success': False, u'fun': 'state.highstate', u'out': u'nested'}
2017-09-27 05:23:02,662 [salt.config                                    :2158][DEBUG   ][37187] Including configuration from '/etc/salt/minion.d/_schedule.conf'
2017-09-27 05:23:02,663 [salt.config                                    :2006][DEBUG   ][37187] Reading configuration from /etc/salt/minion.d/_schedule.conf
2017-09-27 05:23:03,056 [salt.minion                                    :2060][DEBUG   ][37187] Minion of 'sn1-pool-e01-13' is handling event tag '_salt_error'
2017-09-27 05:23:03,056 [salt.minion                                    :2231][DEBUG   ][37187] Forwarding salt error event tag=_salt_error
2017-09-27 05:23:03,057 [salt.transport.zeromq                          :86  ][DEBUG   ][37187] Initializing new AsyncZeroMQReqChannel for (u'/etc/salt/pki/minion', 'sn1-pool-e01-15.puretec.purestorage.com', u'tcp://10.21.113.17:4506', 'aes')
2017-09-27 05:23:03,057 [salt.crypt                                     :400 ][DEBUG   ][37187] Initializing new AsyncAuth for (u'/etc/salt/pki/minion', 'sn1-pool-e01-15.puretec.purestorage.com', u'tcp://10.21.113.17:4506')
2017-09-27 05:23:03,182 [salt.utils.lazy                                :97  ][DEBUG   ][37187] LazyLoaded config.merge
2017-09-27 05:23:03,185 [salt.utils.lazy                                :97  ][DEBUG   ][37187] LazyLoaded mine.update

Versions Report

Master and minion are exactly the same version and operating system

Salt Version:
           Salt: 2017.7.1-3912-g74379ba

Dependency Versions:
           cffi: Not Installed
       cherrypy: Not Installed
       dateutil: Not Installed
      docker-py: Not Installed
          gitdb: Not Installed
      gitpython: Not Installed
          ioflo: Not Installed
         Jinja2: 2.9.6
        libgit2: Not Installed
        libnacl: Not Installed
       M2Crypto: Not Installed
           Mako: Not Installed
   msgpack-pure: Not Installed
 msgpack-python: 0.4.8
   mysql-python: Not Installed
      pycparser: Not Installed
       pycrypto: 2.6.1
   pycryptodome: Not Installed
         pygit2: Not Installed
         Python: 2.7.5 (default, Nov  6 2016, 00:28:07)
   python-gnupg: Not Installed
         PyYAML: 3.12
          PyZMQ: 16.0.2
           RAET: Not Installed
          smmap: Not Installed
        timelib: Not Installed
        Tornado: 4.5.2
            ZMQ: 4.1.6

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Corerelates to code central or existential to SaltP1Priority 1bugbroken, incorrect, or confusing behaviorseverity-criticaltop severity, seen by most users, serious issuesseverity-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