Commit Graph

3171 Commits

Author SHA1 Message Date
Daniel A. Wozniak
a37a9da1fb
Fix py2 version of pip test 2018-04-28 02:24:39 -07:00
Daniel A. Wozniak
94a70e847a
Ignore gitfs tests when symlinks not enabled 2018-04-26 23:51:28 -07:00
Daniel Wozniak
e4779f3246
Merge pull request #47339 from dwoz/ssh_key_test_fix
Use salt.utils.fopen for line ending consistancy
2018-04-26 15:39:55 -07:00
Daniel A. Wozniak
e37a93a1ca
Remove redundent close call 2018-04-26 13:47:11 -07:00
Daniel A. Wozniak
b2ae5889b7
Close the temporary file handle 2018-04-26 12:52:08 -07:00
Daniel A. Wozniak
9f7f83a975
Use salt.utils.fopen for line ending consistancy 2018-04-26 12:43:51 -07:00
Daniel A. Wozniak
dcb6a22c00
Remove un-needed string-escape 2018-04-26 11:28:25 -07:00
Justin Findlay
8bd08012ee
modules,states.iptables support proto for policy ext 2018-04-23 12:33:47 -07:00
Daniel Wallace
3dc93b310b
fix tests 2018-04-17 13:18:18 -05:00
Nicole Thomas
8f994e7cf9
Merge pull request #46539 from jfoboss/patch-1
#46504 Fix
2018-04-11 10:13:23 -04:00
twangboy
19c3fadbe5
Fix unit test for win_ntp 2018-04-10 12:12:17 -06:00
Peter Morris
44ecd13abc Update tests to use cmd.run_all 2018-04-10 01:11:03 +01:00
Nicole Thomas
df26f2641e
Merge pull request #46675 from dwoz/inspectlib-tests
Skip test when git symlinks are not configured
2018-04-03 08:19:18 -04:00
Daniel A. Wozniak
d39f4852d8
Handle non-zero status exception 2018-03-29 14:39:40 -07:00
Daniel A. Wozniak
83c005802b
Handle cases where git can not be found
Signed-off-by: Daniel A. Wozniak <dwozniak@saltstack.com>
2018-03-29 14:39:29 -07:00
Daniel A Wozniak
628b87d5c4
Skip test when git symlinks are not configured 2018-03-22 23:30:15 -07:00
Erik Johnson
e8582e80f2
Python 3-compatibility fix to unit test
This should not be returning a string type for stderr, since
Popen.communicate() returns a bytestring. In Python 2, the str and bytes
types are the same, but the same is not true in Python 3.

Additionally, the mocking here seems not to consider the fact that Popen
is called when runas is used to get the runas user's environment. Since
this test doesn't care about the output, we can just make the mocked
Popen.communicate() return an empty bytestring.
2018-03-20 22:09:18 -05:00
Erik Johnson
f9f187e915
Improve reliability/idempotence of file.blockreplace state
This makes the following changes:

- The `append_newline` argument to the `file.blockreplace`
  remote-execution function has been modified so that if its value is
  `None`, it only appends a newline when the content block does not end
  in one.
- A couple of fixes were made to newline handling. The existing code
  normalized the newlines in the content block, replacing them with
  os.linesep. However, when the file contains newlines that don't match
  the OS (i.e. POSIX newlines in a file on a Windows box, or Windows
  newlines on a Linux/Mac/BSD/etc. box), then we would still end up with
  mixed newlines. The line separator is now detected when we read in the
  original file, and the detected line separator is used when writing
  the content block. Additionally, the same newline mismatch was
  possible when appending/prepending the content block. This has been
  fixed by using a common function for appending, prepending, and
  replacing the content block.
- Support for the `append_newline` argument has been added to the
  `file.blockreplace` state. The default value for the state is `None`.
  A `versionchanged` has been added to the remote execution function to
  let users know that the Fluorine release will change the default value
  of that variable.
- 20 new integration tests have been written to test the
  `file.blockreplace` state.
2018-03-07 22:29:39 -06:00
Dheeraj
727ebe1056
Merge branch '2017.7' into fix-46127 2018-03-01 10:19:38 +05:30
Nicole Thomas
da60399b8f
Merge pull request #46183 from oeuftete/fix-docker-container-running-host-config-ulimits
Fix docker_container.running HostConfig Ulimits comparison
2018-02-28 17:22:11 -05:00
Nicole Thomas
a97a3e6fb0
Merge pull request #46101 from jfindlay/openrc_ret
In OpenRC exec module, make sure to ignore retcode on status
2018-02-28 15:01:36 -05:00
Dheeraj Gupta
aa9d709015 Pass env_vars to pip.freeze
pip.installed state calls pip.freeze to check for existing installation
and to verify installation post-install. This patch propagates the
env_vars passed to pip.installed to the pip.freeze function. It also modifies
existing pip unit tests to test new functionality and adds an integration test
that verifies the expected correct behavior

Fixes #46127
2018-02-28 16:44:20 +05:30
Ken Crowell
5b09644429
Sort lists from Ulimits before comparing 2018-02-27 23:49:05 -04:00
Nicole Thomas
705caa8cca
Merge pull request #46148 from rallytime/merge-2017.7
[2017.7] Merge forward from 2017.7.3 to 2017.7
2018-02-23 14:21:38 -05:00
rallytime
25deebf7a6
Merge branch '2017.7.3' into '2017.7'
Conflicts:
  - salt/modules/git.py
2018-02-22 10:22:22 -05:00
Erik Johnson
e2c4702e0c
Update tests to reflect changes to the SaltCacheLoader 2018-02-21 23:20:02 -06:00
Nicole Thomas
b92346645b
Merge pull request #46107 from amendlik/yumpkg-assumeyes
Add --assumeyes on YUM/DNF commands
2018-02-20 17:52:05 -05:00
Adam Mendlik
8d9a432fb2
Add --assumeyes to yum/dnf commands in yumpkg.refresh_db
Without --assumeyes, these commands can hang waiting for
user confirmation if there is an unaccepted repository key.
2018-02-19 17:51:11 -07:00
Justin Findlay
2eef3c65a6
tests.unit.modules.gentoo_service add retcode arg 2018-02-19 11:27:11 -08:00
Benjamin Drung
dd3f936557 Fix skipping Kubernetes tests if client is not installed
When the Kubernetes client is not installed, the import of
salt.modules.kubernetes will still succeed, but HAS_LIBS will be set to
False (since the library import will be covered by a try-except clause).

Therefore expect the salt.modules.kubernetes to always succeed and check
kubernetes.HAS_LIBS instead for the presence of the kubernetes library.

Signed-off-by: Benjamin Drung <benjamin.drung@profitbricks.com>
2018-02-19 12:32:14 +01:00
Erik Johnson
e2140d9a84
Mock the ssh.key_is_encrypted utils func 2018-02-15 14:37:50 -06:00
Nicole Thomas
edcb64de76
Merge pull request #45763 from twangboy/win_fix_path_rehash
Fix rehash function in win_path.py
2018-02-15 15:05:15 -05:00
Erik Johnson
f2b69f703d
git.latest: Fix regression with identity file usage
Unit test included
2018-02-15 09:35:10 -06:00
Nicole Thomas
a1f4092811
Merge pull request #46015 from rallytime/bp-45785
Back-port #45785 to 2017.7
2018-02-14 13:16:08 -05:00
Nicole Thomas
1279924f5f
Merge pull request #45991 from terminalmage/fix-duplicate-extra-opts
yumpkg: Fix a couple issues with _get_extra_opts
2018-02-14 11:48:28 -05:00
Erik Johnson
916766f651
yumpkg: Fix a couple issues with _get_extra_opts
`_get_extra_opts()` and `_get_branch_option()` were unnecessarily
quoting the value, causing it to be interpreted as a literal quote by
`subprocess.Popen()`.

Also, because there were separate helpers for repo options,
disableexcludes, branch options, and extra options, and specifically
because `_get_extra_opts()` parses *all* kwargs, any of the options from
the other helper funcs would end up being added to the command line
twice if `_get_extra_opts()` was used.

This commit consolidates all of the kwarg inspection and CLI opts
construction to a single helper function. It also adds unit tests to
make sure that we are formatting our commands properly.

Additionally, it makes a minor fix in `refresh_db()` which was not
accounted for when we changed the osmajorrelease grain to an integer in
2017.7.0.
2018-02-13 22:46:27 -06:00
Ollie Armstrong
ef6ffb1492
Resolve linting errors 2018-02-13 13:27:38 -05:00
Ollie Armstrong
8047066c46
Remove unused import 2018-02-13 13:27:38 -05:00
Ollie Armstrong
8f7c45935a
Add tests for salt.modules.selinux.fcontext_get_policy 2018-02-13 13:27:38 -05:00
twangboy
29912adc15
Move the test_rehash test to test_win_functions 2018-02-08 17:44:30 -07:00
Benjamin Drung
b6181b5ed6 Fix Unicode tests when run with LC_ALL=POSIX
When running the unit tests with the locale set to POSIX, some Unicode
tests fail:

$ LC_ALL=POSIX python3 ./tests/runtests.py --unit
[...]
======================================================================
ERROR: test_list_products (unit.modules.test_zypper.ZypperTestCase)
[CPU:0.0%|MEM:73.2%]
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/unit/modules/test_zypper.py", line 236, in
test_list_products
    'stdout': get_test_data(filename)
  File "tests/unit/modules/test_zypper.py", line 53, in get_test_data
    return rfh.read()
  File "/usr/lib/python3.6/encodings/ascii.py", line 26, in decode
    return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position
828: ordinal not in range(128)

======================================================================
ERROR: test_non_ascii (unit.templates.test_jinja.TestGetTemplate)
[CPU:0.0%|MEM:73.2%]
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/unit/templates/test_jinja.py", line 341, in test_non_ascii
    result = fp.read()
  File "/usr/lib/python3.6/encodings/ascii.py", line 26, in decode
    return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 5:
ordinal not in range(128)

======================================================================
ERROR: test_non_ascii_encoding
(unit.templates.test_jinja.TestGetTemplate)
[CPU:0.0%|MEM:73.2%]
----------------------------------------------------------------------
Traceback (most recent call last):
  File "tests/unit/templates/test_jinja.py", line 303, in
test_non_ascii_encoding
    fp_.read(),
  File "/usr/lib/python3.6/encodings/ascii.py", line 26, in decode
    return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 5:
ordinal not in range(128)
----------------------------------------------------------------------

Therefore open files in binary mode and explicitly decode them with
utf-8 instead of their default locale.
2018-02-01 19:24:23 +01:00
Benjamin Drung
76d44e9490 Fix skipping test when boto is not installed
When boto and moto are not installed, the BotoVpcTestCaseBase() should
be skipped. _get_boto_version() and _get_moto_version() require that
boto and moto are installed, but are called anyway in the skipIf
condition.
2018-01-23 13:32:22 +01:00
Benjamin Drung
2b9b262357 Fix unit.modules.test_cmdmod.CMDMODTestCase.test_run
The test_run unit tests end result when a command is not found. When
_run() is called without setting cwd, it will use the home directory as
working directory. When the home directory does not exist, the unit test
will fail:

Traceback (most recent call last):
  File "tests/unit/modules/test_cmdmod.py", line 231, in test_run
    ret = cmdmod._run('foo', use_vt=True).get('stderr')
  File "salt/modules/cmdmod.py", line 536, in _run
    .format(cwd)
salt.exceptions.CommandExecutionError: Specified cwd
'/sbuild-nonexistent' either not absolute or does not exist

Therefore set cwd to the current directory since the working directory
is not used in this test case.

This fixes one failing test of #45627.

Signed-off-by: Benjamin Drung <benjamin.drung@profitbricks.com>
2018-01-23 13:18:18 +01:00
Daniel Wallace
8d907ee1a0
fix moto version
Fixes saltstack/salt-jenkins#692
2018-01-18 14:56:31 -07:00
Daniel Wallace
1241ab5fc6
fix test boto imports
Test boto imports are failing for some reason
2018-01-18 14:56:27 -07:00
Daniel Wallace
b9761971c2
fix moto version
Fixes saltstack/salt-jenkins#692
2018-01-13 15:01:14 -05:00
Daniel Wallace
0cd95d1cc6
fix test boto imports
Test boto imports are failing for some reason
2018-01-13 15:01:14 -05:00
Gareth J. Greenaway
d834bd1b6f
Fixing some minor lint issues. 2017-12-28 17:07:38 -08:00
Gareth J. Greenaway
4738205154
Fixing a bug when attributes are passed to various osquery module functions. 2017-12-28 17:07:38 -08:00
Daniel Wallace
66bb755751
add test for effective acls 2017-12-12 09:58:08 -07:00