saltstack / salt-ci-images

Salt states used to create AWS AMI's
62 stars 60 forks source link

[develop] 1 integration and 1 unittest cmdmod test failures #827

Closed rallytime closed 6 years ago

rallytime commented 6 years ago

integration.modules.test_cmdmod.CMDModuleTest.test_quotes_runas

https://jenkins.saltstack.com/job/develop/job/salt-dev-linode-ubuntu16/lastFailedBuild/testReport/junit/integration.modules.test_cmdmod/CMDModuleTest/test_quotes_runas/

Traceback (most recent call last):
  File "/testing/tests/integration/modules/test_cmdmod.py", line 267, in test_quotes_runas
    self.assertEqual(result, expected_result)
AssertionError: 'Passed invalid arguments to cmd.run_stdout: <lambda>() takes exactly 1 argument (2 given)\n\n    Execute a command, and only return the standard out\n\n    :param str cmd: The command to run. ex: \'ls -lart /home\'\n\n    :param str cwd: The current working directory to execute the command in.\n      Defaults to the home directory of the user specified by ``runas``.\n\n    :param str stdin: A string of standard input can be specified for the\n      command to be run using the ``stdin`` parameter. This can be useful in cases\n      where sensitive information must be read from standard input.:\n\n    :param str runas: User to run command as. If running on a Windows minion you\n      must also pass a password. The target user account must be in the\n      Administrators group.\n\n    :param str password: Windows only. Required when specifying ``runas``. This\n      parameter will be ignored on non-Windows platforms.\n\n      .. versionadded:: 2016.3.0\n\n    :param str group: Group to run command as. Not currently supported\n      on Windows.\n\n    :param str shell: Shell to execute under. Defaults to the system default shell.\n\n    :param bool python_shell: If False, let python handle the positional\n      arguments. Set to True to use shell features, such as pipes or redirection\n\n    :param list env: A list of environment variables to be set prior to\n      execution.\n\n        Example:\n\n        .. code-block:: yaml\n\n            salt://scripts/foo.sh:\n              cmd.script:\n                - env:\n                  - BATCH: \'yes\'\n\n        .. warning::\n\n            The above illustrates a common PyYAML pitfall, that **yes**,\n            **no**, **on**, **off**, **true**, and **false** are all loaded as\n            boolean ``True`` and ``False`` values, and must be enclosed in\n            quotes to be used as strings. More info on this (and other) PyYAML\n            idiosyncrasies can be found :ref:`here <yaml-idiosyncrasies>`.\n\n        Variables as values are not evaluated. So $PATH in the following\n        example is a literal \'$PATH\':\n\n        .. code-block:: yaml\n\n            salt://scripts/bar.sh:\n              cmd.script:\n                - env: "PATH=/some/path:$PATH"\n\n        One can still use the existing $PATH by using a bit of Jinja:\n\n        .. code-block:: jinja\n\n            {% set current_path = salt[\'environ.get\'](\'PATH\', \'/bin:/usr/bin\') %}\n\n            mycommand:\n              cmd.run:\n                - name: ls -l /\n                - env:\n                  - PATH: {{ [current_path, \'/my/special/bin\']|join(\':\') }}\n\n    :param bool clean_env: Attempt to clean out all other shell environment\n      variables and set only those provided in the \'env\' argument to this\n      function.\n\n    :param str prepend_path: $PATH segment to prepend (trailing \':\' not necessary)\n      to $PATH\n\n      .. versionadded:: Oxygen\n\n    :param str template: If this setting is applied then the named templating\n      engine will be used to render the downloaded file. Currently jinja, mako,\n      and wempy are supported\n\n    :param bool rstrip: Strip all whitespace off the end of output before it is\n      returned.\n\n    :param str umask: The umask (in octal) to use when running the command.\n\n    :param str output_loglevel: Control the loglevel at which the output from\n    the command is logged to the minion log.\n\n    .. note::\n        The command being run will still be logged at the ``debug``\n        loglevel regardless, unless ``quiet`` is used for this value.\n\n    :param bool hide_output: If ``True``, suppress stdout and stderr in the\n    return data.\n\n    .. note::\n        This is separate from ``output_loglevel``, which only handles how\n        Salt logs to the minion log.\n\n    .. versionadded:: Oxygen\n\n    :param int timeout: A timeout in seconds for the executed process to return.\n\n    :param bool use_vt: Use VT utils (saltstack) to stream the command output\n      more interactively to the console and the logs. This is experimental.\n\n    .. note::\n      ``env`` represents the environment variables for the command, and\n      should be formatted as a dict, or a YAML string which resolves to a dict.\n\n    CLI Example:\n\n    .. code-block:: bash\n\n        salt \'*\' cmd.run_stdout "ls -l | awk \'/foo/{print \\$2}\'"\n\n    The template arg can be set to \'jinja\' or another supported template\n    engine to render the command arguments before execution.\n    For example:\n\n    .. code-block:: bash\n\n        salt \'*\' cmd.run_stdout template=jinja "ls -l /tmp/{{grains.id}} | awk \'/foo/{print \\$2}\'"\n\n    A string of standard input can be specified for the command to be run using\n    the ``stdin`` parameter. This can be useful in cases where sensitive\n    information must be read from standard input.:\n\n    .. code-block:: bash\n\n        salt \'*\' cmd.run_stdout "grep f" stdin=\'one\\ntwo\\nthree\\nfour\\nfive\\n\'' != u'SELECT * FROM foo WHERE bar="baz"'
Traceback (most recent call last):
  File "/testing/tests/unit/modules/test_cmdmod.py", line 284, in test_os_environment_remains_intact
    shell=shell)
  File "/testing/salt/modules/cmdmod.py", line 458, in _run
    log.debug(log_callback('env command: %s', env_cmd))
TypeError: <lambda>() takes exactly 1 argument (2 given)

https://jenkins.saltstack.com/job/develop/job/salt-dev-linode-ubuntu16/lastFailedBuild/testReport/junit/unit.modules.test_cmdmod/CMDMODTestCase/test_os_environment_remains_intact/

DmitryKuzmenko commented 6 years ago

Fixed by https://github.com/saltstack/salt/pull/46191