Commit Graph

7615 Commits

Author SHA1 Message Date
Bo Maryniuk
22f3bab2ca Fix the documentation 2016-06-14 16:29:07 +02:00
Bo Maryniuk
085901470e Add unit test check for non-localhost IP is accepted as a minion ID 2016-06-14 16:29:07 +02:00
Bo Maryniuk
bce6798e86 Add unit test to check if any of localhost or local IP addresses are filtered 2016-06-14 16:29:07 +02:00
Bo Maryniuk
47755c69ea Add unit test to filter out localhost from the first occurrence 2016-06-14 16:29:07 +02:00
Bo Maryniuk
15ecb083e3 Add test for the first in line from platform.node is used (mostly) 2016-06-14 16:29:06 +02:00
Bo Maryniuk
eed433ec60 Add unit test to check on duplicate hostnames in the pool 2016-06-14 16:29:06 +02:00
Bo Maryniuk
71a3e91f57 Add unit test for check if the minion ID is distinct in the pool 2016-06-14 16:29:06 +02:00
Bo Maryniuk
a3266c6f2f Fix network test for Solaris 2016-06-14 16:29:06 +02:00
Bo Maryniuk
2d4a9939a9 Rename network unit test into a proper name 2016-06-14 16:29:06 +02:00
Bo Maryniuk
fe300ccf73 Lintfix 2016-06-14 09:39:04 +02:00
Mike Place
9bd2317992 Merge pull request #33951 from jfindlay/gem_tests
modules.gem int tests: more fixes
2016-06-13 17:46:43 -07:00
Mike Place
53baae6eb1 Merge pull request #33984 from jfindlay/disk_capacity
Add docs and tests to disk state
2016-06-13 17:43:38 -07:00
Mike Place
fa5efb6a69 Merge pull request #33985 from rallytime/more-batch-tests
Write some more simple batch command tests
2016-06-13 17:38:05 -07:00
rallytime
3e7ab8c7b3 Write some more simple batch command tests 2016-06-13 16:25:19 -06:00
Bo Maryniuk
96423076b1 Add unit test for file tree 2016-06-14 00:25:08 +02:00
Justin Findlay
6cbe31e6c2 states.disk: rewrite unit tests 2016-06-13 16:13:40 -06:00
Bo Maryniuk
8975036b27 Add get_unmanaged_files test 2016-06-14 00:05:34 +02:00
Justin Findlay
6080846cce acl.ClientACL: add unit tests (#33684) 2016-06-13 16:00:35 -04:00
Justin Findlay
2eb633ccad modules.gem int tests: only check known installed gems 2016-06-13 11:33:25 -06:00
rallytime
c57bcebaf8 Merge branch '2016.3' into 'develop'
Conflicts:
  - salt/states/boto_lambda.py
2016-06-13 11:18:53 -06:00
Justin Findlay
9f3e18b037 modules.gem int tests: (un)install a non-core gem 2016-06-13 10:46:56 -06:00
Bo Maryniuk
be5f12fcaf Add initial unit test for inspectlib.collector.Inspector 2016-06-13 18:17:28 +02:00
Mike Place
18df7263ac Merge pull request #33955 from adamchainz/readthedocs.io
Convert readthedocs links for their .org -> .io migration for hosted projects
2016-06-13 08:49:35 -07:00
Aditya Kulkarni
34135e1f67 Add runner for execution modules (#33949)
* Add runner for execution modules

* Make sure all modules load and fix argument passing

* Fix lint error

* Add docs for salt runner
2016-06-13 11:49:26 -04:00
Pablo Suárez Hernández
1afc12f6d1 Test fixed: get OS grain from /etc/os-release if possible 2016-06-13 10:19:17 +01:00
Adam Chainz
64d9a62f89 Convert readthedocs links for their .org -> .io migration for hosted projects
As per [their blog post of the 27th April](https://blog.readthedocs.com/securing-subdomains/) ‘Securing subdomains’:

> Starting today, Read the Docs will start hosting projects from subdomains on the domain readthedocs.io, instead of on readthedocs.org. This change addresses some security concerns around site cookies while hosting user generated data on the same domain as our dashboard.

Test Plan: Manually visited all the links I’ve modified.
2016-06-11 12:33:37 +01:00
rallytime
b4ab322ce1 Merge branch '2015.8' into '2016.3'
Conflicts:
  - salt/modules/saltutil.py
2016-06-10 13:41:53 -06:00
Nicolas Delaby
f806c7e290 [boto_lambda] handle ommitted Permissions parameter (#33908)
* a bit of pep8

* Don't fail if `Permssions` is None
2016-06-10 13:31:22 -04:00
Mike Place
378dd7ca06 Merge pull request #33888 from jfindlay/random_check
random.org checks
2016-06-10 08:45:07 -07:00
Mike Place
abf5131c0a Adds absolute value option to disk state (#33918) 2016-06-10 11:08:57 -04:00
Pablo Suarez Hernandez
a0693aafcb fix: osarch_mock 2016-06-10 09:48:37 +01:00
Pablo Suarez Hernandez
1680f18556 osarch mock for unit test 2016-06-10 08:51:33 +01:00
Pablo Suarez Hernandez
63e2f27fa6 lint fix 2016-06-09 21:33:06 +01:00
rallytime
f078d57b57 Merge branch '2016.3' into 'develop'
Conflicts:
  - salt/modules/rabbitmq.py
  - salt/modules/win_servermanager.py
  - salt/state.py
  - salt/states/boto_s3_bucket.py
  - salt/states/pip_state.py
  - salt/states/win_servermanager.py
  - tests/unit/modules/win_servermanager_test.py
  - tests/unit/states/dockerng_test.py
2016-06-09 13:06:10 -06:00
Nicole Thomas
08a584b3e5 Merge pull request #33711 from rallytime/merge-develop-3
[develop] Merge forward from 2016.3 to develop
2016-06-09 14:12:48 -04:00
Pablo Suarez Hernandez
7f7800ffc9 testing if SUSE os grain is set from /etc/os-release 2016-06-09 15:09:00 +01:00
Justin Findlay
82f95429db modules.random_org unit tests: skip if random.org down 2016-06-08 20:46:20 -06:00
rallytime
b8e4706074 Merge branch '2015.5' into '2015.8'
Conflicts:
  - salt/modules/saltutil.py
  - salt/states/archive.py
2016-06-08 14:26:18 -06:00
Thayne Harbaugh
0fff44644e Handle case where PYTHONPATH environment var is not set. 2016-06-08 14:02:57 -06:00
rallytime
595d4f2ac3 Fixup new groupadd tests for syntax change in 2016.3 2016-06-08 12:42:52 -06:00
rallytime
c5b4ec0b0f Merge branch '2015.8' into '2016.3'
Conflicts:
  - salt/cli/salt.py
  - salt/modules/groupadd.py
  - salt/states/service.py
2016-06-08 11:20:18 -06:00
Mike Place
01aaf3e2a9 Merge pull request #33771 from twangboy/win_dism
Additional functionality to win_dism.py
2016-06-08 06:58:20 -07:00
Mike Place
f7b3d0eda0 Merge pull request #33839 from cachedout/fix_pkgresource_test_stacktrace
Fix another unit test stacktrace in pkg_resource
2016-06-08 06:32:55 -07:00
Mike Place
5f081ef31c Merge pull request #33840 from cachedout/remove_matcher_unit_tests
Remove matcher tests
2016-06-08 06:31:41 -07:00
Nicolas Delaby
0d40e1c4f3 Add support for edge case when Cmd and Entrypoint can't be blanked 2016-06-08 10:46:24 +02:00
Mike Place
6297448377 Remove matcher tests
These all assert directly against mock objects. They're pointless.
2016-06-07 16:36:01 -06:00
Mike Place
435547a747 Fix another unit test stacktrace in pkg_resource 2016-06-07 15:55:52 -06:00
Mike Place
453fb1ac91 Fixing more stupid unit tests
This time win_servermanager
2016-06-07 15:33:12 -06:00
twangboy
9be45fe37a Fix some more lint 2016-06-07 13:17:29 -06:00
twangboy
421dc97957 Fix/add unit tests for state 2016-06-07 12:52:01 -06:00
twangboy
8d66fac74c Add missing unit tests 2016-06-07 09:53:22 -06:00
Mike Place
1db559afe9 Merge pull request #33805 from jfindlay/pkg_tests
states.pkg int tests: skip if pkg mgr unavailable
2016-06-07 07:40:46 -07:00
Mike Place
3984b65486 Merge pull request #33808 from jfindlay/gem_tests
fix some problems with the gem module integration tests
2016-06-07 07:40:25 -07:00
Justin Findlay
f13f914755 states.service: add integration tests 2016-06-06 23:11:49 -06:00
Justin Findlay
f7c19a1a58 modules.gem int tests: relax version checks 2016-06-06 21:58:58 -06:00
twangboy
60f856f73d Fix unit tests for module 2016-06-06 18:33:29 -06:00
Justin Findlay
0c069ddc95 states.pkg int tests: skip if pkg mgr unavailable 2016-06-06 17:44:43 -06:00
Justin Findlay
6af47d2ba7 modules.gem int tests: remove pkgs before testing install 2016-06-06 17:32:17 -06:00
Mike Place
db3cc8dcee Merge pull request #33779 from bodhi-space/develop
INFRA-1594 - Add various S3 functions needed for optionally emptying …
2016-06-06 14:52:07 -07:00
Tom Williams
102d696460 INFRA-1594 - fix up unit tests 2016-06-06 14:37:38 -04:00
Jeffrey 'jf' Lim
ffa788fd67 Fix minor typo in test name in tests/unit/states/dockerng_test.py 2016-06-07 01:11:30 +08:00
Justin Findlay
90aee79c39 states.service.mod_watch: update unit test 2016-06-06 10:54:16 -06:00
Mike Place
7fdfbe9a28 Merge pull request #33691 from jtand/gem_integration_test
Gem integration test
2016-06-06 04:13:23 -07:00
Dan Slimmon
f87bc347fd Fixed ACL user comparison. Resolves #33754. 2016-06-04 15:14:00 +00:00
Jeffrey 'jf' Lim
9cf25e160f Fix #33500: allow for sys.list_modules to list a module when given an exact match 2016-06-04 12:51:47 +08:00
Jeffrey 'jf' Lim
738e5c5823 Fix integration test_list_modules_with_arg: pass 'u*' arg correctly 2016-06-04 12:18:16 +08:00
Thayne Harbaugh
bfc12b342b Integration tests for salt-proxy exit status. 2016-06-03 14:47:23 -06:00
Thayne Harbaugh
88ce32ae80 Improvements and bugfixes to testprogram utilities
* Automatically add --proxyid to salt-proxy arguments

* Add parameters to disable automatic adding of arguments and environment
  settings: .run() now takes verbatim_args and verbatim_env

* salt-proxy uses salt-minion.pid file

* Simplify .shutdown()

  + pass timeout to .wait_for_daemon_pid()

  + attempt kill before checking timeout value

  + Testing for "no such pid" (case that process was already dead) was
    previously incorrect, but was masked due to (what should have been) a
    superfluous call to salt.utils.process.os_is_running()
2016-06-03 14:47:23 -06:00
Thayne Harbaugh
b8b74fcbe0 Remove unused code 2016-06-03 14:47:23 -06:00
Mike Place
a5684ed123 Merge pull request #33670 from rallytime/fix-33605
Handle non-ascii package names in state.format_log
2016-06-03 09:16:52 -07:00
Mike Place
11e39e7203 Merge pull request #33712 from meaksh/fix-for-groupadd-module-failures-in-SLE11-2015.8
Fix for groupadd execution module failures in SLES11 systems
2016-06-03 09:13:06 -07:00
Mike Place
1001d2b9e7 Merge pull request #33733 from plastikos/test-master_exit_status
Test master exit status
2016-06-03 08:27:28 -07:00
Justin Anderson
ff2dae103d ubuntu doesn't install default gems when ruby is installed 2016-06-03 08:54:51 -06:00
C. R. Oldham
35bc42410f Merge pull request #33705 from alexbleotu/json_schema_extension-gh
JSON Schema Extension
2016-06-03 08:42:18 -06:00
Alexandru Bleotu
d69ce3a84f JSON Schema Extension
- added support for JSON schemas that validate complex JSON objects
  (JSON objects that have as attributes other JSON objects)
2016-06-03 14:03:26 +01:00
Pablo Suárez Hernández
ab738416ba pylint fix 2016-06-03 13:57:13 +01:00
Pablo Suárez Hernández
bf27e5d36e test_members cleanup 2016-06-03 13:25:05 +01:00
Pablo Suárez Hernández
ba815dbf76 improvements on groupadd unit tests 2016-06-03 13:17:13 +01:00
Justin
504df9a65a Fixed lint error 2016-06-03 04:28:42 -06:00
Justin Findlay
87e018af2a states.test.configurable_test_state: add unit tests 2016-06-02 17:20:36 -06:00
Thayne Harbaugh
a46750c8c5 Various tests to validate proper `salt-master` exit status:
* Test when ``user`` config setting is an invalid user.

* Test when an unknown argument is given.

* Test Correct ``salt-master`` daemon start up.
2016-06-02 17:03:59 -06:00
Thayne Harbaugh
68a9912d3a Refactor `testprogram` framework to minimize explicit setup and improve reuse.
* Add a ``testprogram.TestProgramCase()`` to simplify test classes

  + Has ``setUp()`` and ``tearDown()`` to create ephemeral test directory
    (really should be moved to salttesting.TestCase)

  + Common ``assert_exit_status()`` for validating and reporting failures in
    exit status.

* Add missing ``testprogram.TestDaemonSaltProxy`` class

* Remove specific setting of ``program`` parameter in initialization of
  ``TestDaemonSaltMinion`` since ``testprogram.TestSaltProgramMeta`` already
  handles that unless a specific override is required.

* Automatically set ``user`` in config for master, minion and proxy test
  classes if a specific user is not specified.

* Automatically set ``PYTHONPATH`` as ``sys.path`` unless it is specified.
2016-06-02 16:51:54 -06:00
Justin Anderson
0cb1bfa0d3 Removed extra : 2016-06-02 16:35:40 -06:00
Justin Anderson
ebee8a89af glance.warn_until shouldn't be checked for a doc string 2016-06-02 16:30:36 -06:00
Justin Anderson
86f59b3e80 Made more pythonic 2016-06-02 14:37:05 -06:00
Justin Anderson
2f36f34981 Fixed salt.util import. Added status check to make sure external resource is available 2016-06-02 14:32:08 -06:00
rallytime
59bd51f4c8 Update test to correct iteration 2016-06-02 14:32:21 -04:00
Mike Place
64c7dd7032 Merge pull request #33626 from evonzee/feature/issue-15749
Feature/issue 15749
2016-06-02 11:23:36 -07:00
Mike Place
38515a01f8 Merge pull request #33664 from DSRCompany/issues/26311_single_schedule
Single schedule for MultiMinion, EventBus managed by MultiMinion.
2016-06-02 10:42:00 -07:00
Justin Anderson
400a71ec33 Removed redundancies 2016-06-02 11:16:23 -06:00
Justin Anderson
91db411bea A couple lint fixes 2016-06-02 09:03:10 -06:00
Justin Anderson
c97f3319b9 Add check for gem binary 2016-06-02 08:56:09 -06:00
Dmitry Kuzmenko
66bd75cd3b New schedule tests and fixes 2016-06-02 17:14:50 +03:00
rallytime
9220ea0729 Merge branch '2016.3' into 'develop'
Conflicts:
  - doc/conf.py
  - salt/minion.py
  - salt/modules/mac_brew.py
  - salt/modules/pkgng.py
  - salt/states/apache_module.py
  - salt/states/ini_manage.py
  - salt/states/win_servermanager.py
2016-06-02 10:13:34 -04:00
rallytime
b7accb0b3b Merge branch '2015.8' into '2016.3'
Conflicts:
  - salt/utils/aws.py
  - salt/utils/s3.py
2016-06-02 10:01:43 -04:00
rallytime
a580d1c6e0 Add unit test for format_log change 2016-06-02 09:26:39 -04:00
Thayne Harbaugh
1fdb232af3 Test that correct salt-minion start-up exits with EX_OK 2016-06-01 18:21:49 -06:00
Thayne Harbaugh
920f062193 Test that an unknown argument to salt-minion exits with EX_USAGE 2016-06-01 18:21:49 -06:00
Thayne Harbaugh
b5e66ad853 Test that a non-existent user for salt-minion exits with EX_NOUSER
Add common exit status assert function.
2016-06-01 18:21:49 -06:00
Thayne Harbaugh
11a9e1e839 Various improvements to the TestProgram classes:
* Add debug logging when a program is started
  * Set a flag once a TestDaemon has been shutdown(); check flag in is_running()
  * Add .config_path property
  * salt.utils.process.clean_proc() only works with multiprocessing - replace it
  * Automatically add --config-dir for TestSaltDaemon if it isn't already specified
2016-06-01 18:21:49 -06:00
twangboy
6c7b21676a Fix lint and tests 2016-06-01 17:10:55 -06:00
Justin Anderson
210aceb402 Refactored tests to not use return messages 2016-06-01 16:57:37 -06:00
Mike Place
c8dc70b96a Merge pull request #33685 from jfindlay/get_url_test
modules.cp.get_url: add test for https://
2016-06-01 15:25:41 -07:00
Mike Place
5e022ff29c Merge pull request #33581 from dincamihai/2015.8
Call zypper refresh after adding/modifying a repository
2016-06-01 15:25:11 -07:00
Justin Anderson
9d437bd45d Removed artifact from testing 2016-06-01 15:32:41 -06:00
Justin Anderson
134e1fa888 Fixed typos, and added destructiveTest decorator 2016-06-01 15:25:18 -06:00
Justin Anderson
37bc3ad8fd Fixed typo, uninstalled to uninstall 2016-06-01 15:16:15 -06:00
Justin Findlay
2b5035fdc0 modules.cp.get_url: add test for https:// 2016-06-01 15:10:12 -06:00
Justin Anderson
5b23b91ac6 Integration test for gem module 2016-06-01 15:09:55 -06:00
rallytime
e68097445c Revert "Track down more unicode instances and add a test"
This reverts commit 9729aed262.

This isn't the right approach here. This fix needs to be more narrow.
2016-06-01 16:44:05 -04:00
rallytime
9729aed262 Track down more unicode instances and add a test 2016-06-01 13:47:29 -04:00
Mike Place
e92d6e214f Merge pull request #33646 from jfindlay/mac_tests
Fix more tmp paths on MacOS
2016-06-01 09:36:33 -07:00
Pablo Suárez Hernández
f9b6858cf9 unit tests for udev execution module
tests improvements
2016-06-01 12:23:30 +01:00
Justin Findlay
c53a727c18 tests.runtests: use globally-determined tempdir
This way, the the test logs will use the same temp dir as the rest of
the test suite.  On MacOS, for example, `$TMPDIR` is set to a path that
is too long for unix sockets on the system, so the `SYS_TEMP_DIR` is set
to `/tmp` to override this.
2016-05-31 13:27:50 -06:00
Justin Findlay
8295b48459 test.integration: use hard /tmp on MacOS
Otherwise, the tests will not work as `$TMPDIR` produces a path that is
too long for unix sockets on the platform.
2016-05-31 13:27:50 -06:00
rallytime
cd05d2bed1 Fix zypper test 2016-05-31 13:43:09 -04:00
Mike Place
9ed809f557 Merge pull request #33610 from tonybaloney/servicenow_fix
Change the ServiceNow module's non_structured_query method to support kwargs
2016-05-31 09:23:18 -07:00
Nicole Thomas
74a7b78e00 Merge branch '2015.8' into '2016.3'
Conflicts:
  -   -   -   -   -   -   -   -   - doc/conf.py
2016-05-31 11:02:20 -04:00
eric vz
c4f9de2d24 fix broken pacman module tests 2016-05-31 08:17:33 -05:00
eric vz
b49f9d5a19 one last, sad piece of lint 2016-05-31 01:03:15 -05:00
eric vz
7e0f1c0841 Fix (hopefully) the last linter issues 2016-05-31 00:34:13 -05:00
eric vz
803f219160 Clean up linter warnings 2016-05-31 00:07:31 -05:00
eric vz
bf25b8118e switch pacman.group_info to return an array instead of a set so it's useful on command line 2016-05-30 23:08:59 -05:00
eric vz
94c6378c6e Implement group_diff for pacman 2016-05-30 16:56:53 -05:00
eric vz
e89a43d1d0 Implement a basic group_info 2016-05-30 16:39:16 -05:00
eric vz
fa2fe986e6 Add pacman group_list and unit test 2016-05-30 15:33:59 -05:00
eric vz
595beadda7 formatting 2016-05-30 14:13:56 -05:00
eric vz
9e6013c4b7 move helper into a lambda 2016-05-30 14:13:36 -05:00
eric vz
0179d4d849 Add unit tests for pacman list packages 2016-05-30 09:37:17 -05:00
Mihai Dinca
788730ea72 DRY test 2016-05-30 13:52:46 +02:00
Mihai Dinca
1d3769ccfa Improve zypper_patcher_config looks 2016-05-30 13:52:45 +02:00
Mihai Dinca
42d8d4195c Assert only gpgautoimport: True works 2016-05-30 13:51:54 +02:00
Mihai Dinca
80bfbe5c52 Reduce dicts and lists to one line where possible 2016-05-30 10:47:41 +02:00
Mihai Dinca
1d5d6d7d60 Update test method names to pass pylint 2016-05-30 10:05:07 +02:00
Dan Slimmon
180099ae9f Wrote test for broken server connection 2016-05-30 03:23:18 +00:00
Mike Place
055c9bd38c Merge pull request #33518 from tonybaloney/fix_libcloud_bug
Fix libcloud bug #33367
2016-05-29 12:51:37 -07:00
anthony-shaw
83461e0940
fixes for docs in servicenow module and more tests 2016-05-29 21:03:33 +10:00
twangboy
79bc7195dc Fix unit tests 2016-05-27 11:33:52 -06:00
Mihai Dinca
c7ae5907ee Call zypper refresh after adding/modifying a repository
Calling `zypper --gpg-auto-import-keys refresh` is required after
adding/modifying a repository because `--gpg-auto-import-keys` doesn't
do anything when called with `zypper ar` or `zypper mr`.
Without calling `zypper --gpg-auto-import-keys refresh` here, calling
`zypper ref` after adding/removing would still ask for
accepting/rejecting the gpg key.
2016-05-27 16:17:10 +02:00
Drew Adams
bcd6a1cd77 fix osfamily from Suse to SUSE 2016-05-26 22:08:40 -07:00
Mike Place
4eb272da3c Merge pull request #33510 from pass-by-value/salt_cloud_env_vars
Add SDB module for environment variables
2016-05-26 12:26:16 -07:00
Mike Place
d052908729 Merge pull request #33501 from meaksh/zypper-download-check-signature-2015.8
unit tests for rpm.checksum() and zypper.download()
2016-05-26 07:34:27 -07:00
Mike Place
378bc96234 Merge pull request #33511 from rallytime/fix-33500
Allow exact arg matches to work in sys.list_modules func
2016-05-26 07:28:46 -07:00
Pablo Suárez Hernández
eaaef25c79 lint issue fixed 2016-05-26 08:26:24 +01:00
Justin Findlay
2781377b17 modules.mac_brew: update unit tests 2016-05-25 22:15:12 -06:00
Justin Findlay
0ed3598fc9 modules.mac_brew int tests: add latest_version test 2016-05-25 22:15:12 -06:00
Justin Findlay
8789c2d06d modules.mac_brew int tests: add list_upgrades,info_installed 2016-05-25 22:05:01 -06:00
Justin Findlay
be381e0fc9 modules.mac_brew int tests: move decorators to class
Also remove unneeded system grains code.
2016-05-25 22:05:01 -06:00
anthony-shaw
8885a8250e fix clrf 2016-05-26 08:32:28 +10:00
anthony-shaw
805c12b392 add a test to check existing functionality is broken 2016-05-26 08:31:17 +10:00
Aditya Kulkarni
5cae7e5b1f Add SDB module for environment variables 2016-05-25 17:18:35 -04:00
rallytime
af8c6b7894 Allow exact arg matches to work in sys.list_modules func
Fixes #33500
2016-05-25 14:26:59 -06:00
rallytime
a5e0141eda Merge branch '2015.8' into '2106.3'
Conflicts:
  - salt/beacons/__init__.py
  - salt/modules/saltutil.py
  - salt/modules/zypper.py
  - salt/states/grains.py
  - salt/states/pkgrepo.py
  - salt/states/service.py
2016-05-25 13:44:21 -06:00
Mike Place
d9a96c0e4c Merge pull request #33431 from s-schweer/rabbitmq_user_2
fix difference between tag output of rabbitmq 2 and 3
2016-05-25 11:16:13 -07:00
Stefan Schweer
a6c9f2b120 added missing whitespaces 2016-05-25 19:56:00 +02:00
Mike Place
0187d0e87e Merge pull request #33108 from s0undt3ch/features/cli-deamons-runtests
[WIP] runtests.py CLI deamons
2016-05-25 10:20:57 -07:00
Mike Place
70eb7b66f3 Merge pull request #33487 from jtand/glance_doc_fixes
Add docstring examples to glance.py and nova.py [2015.8]
2016-05-25 09:47:25 -07:00
Pablo Suárez Hernández
6b6febb211 unit tests for rpm.checksum() and zypper.download() 2016-05-25 17:08:16 +01:00
Stefan Schweer
169dec76b7 improved tests 2016-05-25 10:23:14 +02:00
Stefan Schweer
f84740957a rebased on develop 2016-05-25 10:22:10 +02:00
Blaine Chatman
7599b18995 fix jobs.list_jobs failing with search_target 2016-05-24 17:56:45 -07:00
Justin Anderson
ebf1256545 Don't need to check swift.head due to it having no body 2016-05-24 15:26:28 -06:00
Justin Anderson
59e90064e6 modules.swift.head does not have a body. Should not be checked for a docstring right now. 2016-05-24 14:58:32 -06:00
Mihai Dincă
c8b4f338d8 Make --gpg-auto-import-keys a global param when calling zypper (#33432) 2016-05-23 14:15:29 -07:00
Nicole Thomas
0c4e38ced4 Fix the saltutil.wheel function and add integration tests (#33414)
* Fix the saltutil.wheel function and add integration tests

Fixes #32446

* Provide a more useful message when command is run on non-local minion
2016-05-23 14:11:16 -07:00
Mike Place
a4abcc3d03 Remove rabbitmq unit tests (#33451)
* Remove completely pointless RabbitMQ unit test

Why would we even write tests to check to see if a mocked object
returns a string and then assert against that string?! This is absurd.

* Spurious print
2016-05-23 13:57:22 -07:00
Pedro Algarvio
e1587261c9
The scripts directory is now a subdirectory of TMP so it gets cleaned up. 2016-05-23 18:04:47 +01:00
Pedro Algarvio
580271d966
First get a new port, then close the offending. 2016-05-23 16:33:29 +01:00
Pedro Algarvio
15b0a399cb
If psutil is available, make sure we kill all process children 2016-05-23 15:40:50 +01:00
Pedro Algarvio
320dc0b606
Turn subprocesses logging proxying back on.
Make sure none of the hard coded ports are used when grabbing an unused port
2016-05-23 13:57:22 +01:00
Pedro Algarvio
17798f7b69
We need to use a multiprocessing Queue 2016-05-23 13:57:22 +01:00
Pedro Algarvio
d2b696ba8b
We don't currently support colors on windows 2016-05-23 13:57:22 +01:00
Pedro Algarvio
3a755208f4
Var typo 2016-05-23 13:57:22 +01:00
Pedro Algarvio
85f83c773e
Fix extension modules path 2016-05-23 13:57:22 +01:00
Pedro Algarvio
76c5e105b0
More conf fixes 2016-05-23 13:57:21 +01:00
Pedro Algarvio
3adf8e286e
Some more test suite run fixes
* Allow more time for the daemons to react to the signals sent
* Fix configuration
* More logging
2016-05-23 13:57:21 +01:00
twangboy
66e3624f2b
Fix YAML error on minion start 2016-05-23 13:56:56 +01:00
Pedro Algarvio
57fbe717b9
This seems like a cleaner shutdown 2016-05-23 13:56:07 +01:00
twangboy
fdc3835318
Fix some lint 2016-05-23 13:56:07 +01:00
twangboy
766549ed65
Remove type 2016-05-23 13:56:06 +01:00
twangboy
b60bc974a0
Fix clean function for windows 2016-05-23 13:56:06 +01:00
Pedro Algarvio
fca093580c
Disable logging forwarding for now. 2016-05-23 13:56:06 +01:00
Pedro Algarvio
84e04884aa
errno typo 2016-05-23 13:56:06 +01:00
Pedro Algarvio
3aae5a9c28
Check for connection reset errors on windows 2016-05-23 13:56:06 +01:00
Pedro Algarvio
7a9146981e
CLI test config fixes 2016-05-23 13:56:05 +01:00
Pedro Algarvio
73165d8701
Break on broken pipe 2016-05-23 13:56:05 +01:00
Pedro Algarvio
4db35067e1
Refactor the get script path routine into a mix in class 2016-05-23 13:56:05 +01:00
Pedro Algarvio
a17aefd04a
Handle connection errors 2016-05-23 13:56:05 +01:00
Pedro Algarvio
11793aff30
More test scripts fixes 2016-05-23 13:56:05 +01:00
Pedro Algarvio
a51e69f001
Make the generated scripts more windows friendly 2016-05-23 13:56:04 +01:00
Pedro Algarvio
e0b177a493
We need to import logging within the threaded call 2016-05-23 13:56:04 +01:00
Pedro Algarvio
0a40765136
Better exception handling 2016-05-23 13:56:04 +01:00
Pedro Algarvio
cdfd5224c8
log was out of scope, better use the module 2016-05-23 13:56:04 +01:00
Pedro Algarvio
d0c79c4333
Check all ports on the salt-master 2016-05-23 13:56:04 +01:00
Pedro Algarvio
004c7f340b
Disable minion keep alive on linux 2016-05-23 13:56:04 +01:00
twangboy
893894ee70
Add handling to the script template for windows 2016-05-23 13:56:03 +01:00
Pedro Algarvio
e8d3713e6c
More windows friendly. Don't rely on PYTOHNPATH 2016-05-23 13:56:03 +01:00
Pedro Algarvio
c6612482c0
Windows raises EACCES 2016-05-23 13:56:03 +01:00
Pedro Algarvio
eb82b8d229
Remove unnecessary logic 2016-05-23 13:56:03 +01:00
Pedro Algarvio
177d9c4ead
Don't traceback if the process is no longer running. 2016-05-23 13:56:03 +01:00
Pedro Algarvio
e1e1aeb3d7
Keep ports open throughout the tests execution 2016-05-23 13:56:02 +01:00
Pedro Algarvio
5e014d59eb
We're not in a IOLoop 2016-05-23 13:56:02 +01:00
Pedro Algarvio
0a3f5dfbdd
Make sure we're not getting the same port over and over again. 2016-05-23 13:56:02 +01:00
Pedro Algarvio
84861197bb
VT is not available for windows 2016-05-23 13:56:02 +01:00
Pedro Algarvio
50a4fd1dd1
Lint fixes 2016-05-23 13:56:02 +01:00
Pedro Algarvio
f69dc8ef7f
Fix variable reference 2016-05-23 13:56:02 +01:00
Pedro Algarvio
7a8460856c
Define IDs and ports on sample configs 2016-05-23 13:56:01 +01:00
Pedro Algarvio
ca93b6421c
CLI daemons improvements 2016-05-23 13:56:01 +01:00
Pedro Algarvio
c264600738
Provide some feedback of whats happening. 2016-05-23 13:56:01 +01:00
Pedro Algarvio
184c3c83ad
Run the test daemons from CLI
This should help running the test suite on Windows machines
2016-05-23 13:56:00 +01:00
Nicole Thomas
336fbb03bc [develop] Merge forward from 2016.3 to develop (#33408)
* Fix master hanging after a request from minion with removed key. (#33333)

* ZMQ monitor for MWorker connections.

* Reauth minion if the key was removed on the master side.

* Allow concurrency mode in state runs if using sudo (#33325)

Closes #30130

* Disambiguate non-exact matches when checking if sysv service is enabled (#33324)

Fixes #33323

* remove redundant, incorrect sudo_runas config documentation (#33318)

* remove sudo_runas documentation

`sudo_runas` was renamed to `sudo_user` and the documentation was not
updated accordingly.

* conf/minion: update sudo_user description

The description from sudo_runas was better.

* import ps from psutil_compat in beacons (#33334)

* beacons.network_info: import gate psutil

* beacons.ps: import gate psutil

* Add docs for mine_functions config var (#33326)

* Add docs for mine_functions config var

* Note that mine_enabled essentially just doesn't add the mine
update function to the scheduler.

* Bp 28467 calm mine (#33327)

* make minion mine update behavior more configurable

* Add docs for mine_functions config var

* Remove config dup from mine config options

Refs #28467

* 2015.8 does not have _DFLT_MULTIPROCESSING_MODE

* This won't be in until 2015.8.10.

* Fix network.managed for windows (#33312)

* Fix some link errors in the test writing tutorial (#33347)

* Describes parameters in register_instances function (#33339)

* Fix UnboundLocalError in git.latest (#33340)

Resolves #32260.

* Expanded documentation for boto_elb state and module (#33341)

* Describes what happens when the CNAME parameter is given.

* Describes what the recognized attributes are for for ELBs.

* Properly detect newer Linux Mint distros (#33359)

* Properly detect newer Linux Mint distros

LMDE 2 and Linux Mint 17.3 changed the DISTRIB_ID in /etc/lsb-release to
``LinuxMint``, breaking OS detection for these distros.

This commit fixes that by adding an entry to the OS_NAME_MAP in the core
grains.

* Remove LinuxMint os_family from aptpkg.py

It is no longer necessary as the distro is now detected properly, which
will lead to an os_family of Debian.

* Update job_cache and keep_jobs docs to be more specific to their behavior (#33328)

* Update job_cache and keep_jobs docs to be more specific to their behavior

Also fixed a bug discovered when investigating job_cache/keep_jobs functionality
where the jid directory and files were removed by the cache cleaner, but not the
original jid clash detection directory created in /var/cache/salt/master/jobs/.

Fixes #29286

* Add testcase for the changes in the local_cache.clean_old_jobs func

* Mark tests as destructive

* Put destructive test decorator in correct location

* Remove mentions of windows not supporting pkgs param (#33361)

Fixes #33313

* Updates docs version to 2015.8.9
Adds note regarding the os grain on Mint Linux
Adds an FAQ regarding grains that change due to upstream changes

* revved 2015.8 branch to .9 in version selector

* Add initscripts, SystemD service units and environment files for Debian (#32857)

* Add note to docs about api settings for Hipchat API v2 (#33365)

Fixes #27779

* Add win_pkg to list of modules that support "version" in pkg.installed (#33362)

Fixes #32913

* Add note about name parameter in git_pillar docs (#33369)

Fixes #27737

* Better YAML syntax error handling (#33375)

Closes #26574

* Improve doc clarity for disable_modules documentation (#33379)

* Improve doc clarity for disable_modules documentation

* Additional clarification on blacklisted name

* maintain the fallabck because I am totally sick of this crap

* blast, put the try/except int he right place

* restore whitespace

* Fix traceback in logging for config validation (#33386)

* 2015.8.10 release notes

* Sync pillarstack to latest upstream version (#33391)

* Don't lay down all available opts (#33385)

* Don't lay down all available opts

* We need at least one opt in there

* Condense defaults

* Put the default hash type back
2016-05-20 13:48:40 -07:00
Dmitry Kuzmenko
17b03e9d8b Allow to blacklist/whitelist renderers. (#33358)
* Allow to blacklist/whitelist renderers.

* Fix tests.

* Unit test for renderer blacklisting.

* Minor tests fixes
2016-05-20 10:41:51 -07:00
rallytime
35ad788470 Merge branch '2015.8' into '2016.3'
Conflicts:
  - conf/minion
  - doc/ref/configuration/minion.rst
  - salt/modules/boto_elb.py
  - salt/modules/sudo.py
  - salt/states/boto_elb.py
  - salt/transport/zeromq.py
2016-05-19 16:22:36 -06:00
Mike Place
d5a3e309bf Event assert (#33262)
* Initial POC

* Allow the queue to fill by waiting for the lag in IPC

* Add docs

* Add run_tests

* Add reactor to tests
2016-05-19 13:41:23 -06:00
Erik Johnson
8b3497b129 Catch exception raised from invalid verify_options (#33317)
* Catch exception raised from invalid verify_options

This fails the state gracefully in these cases.

Refs: 6b97161293 (r63577507)

* Raise an exception when package verification fails

* Catch failed package verification commands

Also, since pkg.verify is run separately on each targeted package, don't
add errors for each failure, just add one error to what we report.

* Update rpm test_verify test to reflect change from cmd.run to cmd.run_all
2016-05-19 12:13:30 -06:00
Andreas Lutro
8abf303183 Add support for kapacitor 0.13 (#33352)
* add support for kapacitor 0.13

* update kapacitor tests
2016-05-19 11:03:03 -07:00
Nicole Thomas
4fdb097c01 Update job_cache and keep_jobs docs to be more specific to their behavior (#33328)
* Update job_cache and keep_jobs docs to be more specific to their behavior

Also fixed a bug discovered when investigating job_cache/keep_jobs functionality
where the jid directory and files were removed by the cache cleaner, but not the
original jid clash detection directory created in /var/cache/salt/master/jobs/.

Fixes #29286

* Add testcase for the changes in the local_cache.clean_old_jobs func

* Mark tests as destructive

* Put destructive test decorator in correct location
2016-05-19 09:32:32 -07:00
rallytime
7bf9f5d0f5 Merge branch '2016.3' into 'develop'
Conflicts:
  - doc/man/salt.7
  - doc/ref/executors/all/salt.executors.direct_call.rst
  - doc/ref/executors/all/salt.executors.splay.rst
  - doc/ref/executors/all/salt.executors.sudo.rst
  - salt/cloud/clouds/vultrpy.py
2016-05-18 09:40:48 -06:00
Nicole Thomas
7a7018261e Server Density agentv2 support (#32772) (#33303)
* Added support for the agentv2

* Updated os field to match the SD API requirement

* filename is an absolute path on official installations

* Install script URL uses a redirect now, so we should instruct curl to follow them

* Added a missing import

* Updated the settings for the v2 agent

* Fixed pep8 issues

* select v2 agent for the test
2016-05-17 09:50:36 -07:00
Nicole Thomas
8d805e6595 Lint #32985 (#33278)
* Fix context clash.

boto_vpc uses both boto and boto3. Both utils for those use the same name for their connection context. If you used states that required both boto and boto3, the get_conn would return the object.

* Add a unit test to the boto context conflict problem

* Fix pylint errors and ensure new test to runs correctly

Merges #32985

* Fix typo
2016-05-16 15:02:05 -06:00
C. R. Oldham
8387657d9a Prevent salt-cloud from hanging when spinning up new Vultr instances (#33272)
* better support for named images, locations, sizes

* better support for named images, locations, sizes

* Tests for Vultr driver

* Add sleep so test instance will be old enough to delete as part of the test

* Lint.
2016-05-16 13:11:29 -07:00
rallytime
c8b8d82745 Merge branch '2016.3' into 'develop'
Conflicts:
  - salt/proxy/junos.py
2016-05-16 12:32:23 -06:00
rallytime
32779b8d71 Merge branch '2015.8' into '2016.3'
Conflicts:
  - salt/modules/x509.py
2016-05-16 10:47:12 -06:00
Őry, Máté
0de5410d18 postgres.db_create: fix handling of empty string (#33261)
* modules.postgres: fix handling of empty string in db_create

The code responsible for collecting the parameters used in the CREATE
DATABASE query works unexpectedly in case for values which are evaluated
to False as bool, but are not None.

This caused queries with missing rvalues like this one (lc_collate=""):
2016-05-13 16:04:05,243 [salt.loaded.int.module.cmdmod][ERROR   ][2990]
stderr: ERROR:  syntax error at or near "OWNER"
LINE 1: ..._production" WITH ENCODING = 'utf8' LC_COLLATE =  OWNER =
"g...

Please note that proper escaping or a different approach would be needed
here.

* modules.postgres: handle trivial sqli in db_create

* modules.postgres: fix OrderedDict usage

* modules.postgres: quote TABLESPACE too in db_create
2016-05-16 09:27:40 -07:00
Moe
3b50a7b98d Fix list_values, add test (#33264) 2016-05-16 07:31:19 -07:00
rattlesnack
05e763c53c Gentoo/OpenRC service management enhancements (#33260)
* gentoo service enhancements

* fixing command examples
making sure enabled handles multiple runlevel

* unused import removed

* replacing collection.OrderedDict with salt.utils.odict.OrderedDict

* set replaced with list
2016-05-16 07:26:24 -07:00
Erik Johnson
855bed36c1 Check rendered YAML for invalid keys (#33213)
* Check rendered YAML for invalid keys

PyYAML will for some reason allow improper YAML, specifically double
curly-braces like ``{{ }}``, to be formed into an unhashable dict (that
is, one with a dict as a key). This commit will change the YAML renderer
such that the rendered data is recursively checked for keys that are
dicts, and raises an SaltRenderError if such a key is encountered.

Resolves #33073.

* Fix smtp returner test

This test was using jinja placeholders but was not passing the template
through the jinja renderer. This commit adds the use of the jinja
renderer to this test to fix the failure caused by the addition of
verification of the loaded YAML inthe previous commit.
2016-05-13 09:22:43 -07:00
rallytime
b1e505f80e Merge branch '2016.3' into 'develop'
Conflicts:
  - doc/topics/releases/2015.5.11.rst
  - doc/topics/releases/2015.8.9.rst
  - salt/cloud/clouds/nova.py
  - salt/minion.py
2016-05-13 09:47:46 -06:00
Andrew Hammond
bc8f010489 add nodegroups ext_pillar (#33179)
* add nodegroups ext_pillar

* nodegroups ext_pillar documentation tweaks

* put name in AUTHORS rather than directly in module
2016-05-13 08:26:13 -06:00
Justin Anderson
012dc882aa Fix boto_vpc_test to work with #32677 (#33214) 2016-05-13 08:22:10 -06:00
rallytime
679200aeb2 Merge branch '2015.8' into '2016.3'
Conflicts:
  - salt/scripts.py
2016-05-12 16:52:27 -06:00
Jεan Sacren
8685ffa2e9 Add timezone integration test for Solaris (#33167) 2016-05-12 14:40:37 -07:00
Nicole Thomas
730bec1eef [2015.8] Merge forward from 2015.5 to 2015.8 (#33207)
* Fix file.managed for Windows (#33181)

* Revert back to import string_types

For some reason, there is a problem with the following
code when run from the file.py module:
```
from salt.ext import six
comment = 'This is a string'
isinstance(comment, six.string_types)
```
When run from within the python shell it works fine.

* Add six import

* Fix some lint

* Use correct six import

* Changed it back to explicit import

* Additional comments specific to 2015.5

* Fix file.managed for real

* Move comment to clarify purpose

* update 2015.5.11 release notes (#33197)

* Add pip installed and removed test (#33178)

* Resolve issue with pkg module on Mint Linux (#33205)

Closes #32198
2016-05-12 13:54:47 -07:00
Justin Anderson
a09e1b6335 Add pip installed and removed test (#33178) 2016-05-12 08:31:41 -07:00
Nicole Thomas
457d9dd4f5 [develop] Merge forward from 2016.3 to develop (#33193)
* Add run_on_start docs to schedule.rst (#32958)

Fixes #22580

* Backport #33021 manually to 2015.5 (#33044)

* Saltfile with pillar tests (#33045)

* add file.managed with pillar data tests

* do not require git for other tests

* Fix minor document error of test.assertion (#33067)

* test pillar.items output (#33060)

* File and User test fixes for 2015.5 on Fedora23 (#33055)

* Fix file_test.test_symlink on 2015.5

* Fix failing user present test

* add test for installing package while using salt-call --local (#33025)

* add test for installing package while using salt-call --local

* fix pylint

* ssh docs: install py-2.6 for RHEL 5

* Bugfix: Restore boolean values from the repo configuration

* Add test data for repos

* Add repo config test

* Bugfix (follow-up): setting priority requires non-positive integer

* modules.npm: do not log npm --version at info level (#33084)

* salt-cloud: fix ipv6-only virtual machines (#32865)

* salt-cloud: fix ipv6-only virtual machines

* fix hostname for rsync fallback in scp_file function

* use 4 spaces instead of 2

* remove global variable, use direct socket call instead

* Use saltstack repo in buildpackage.py on CentOS 5 (#33080)

* Lower display of msgpack failure msg to debug (#33078)

Closes #33074

* cloud.query needs to define mapper.opts (#33098)

* clarify docs that map is designed to be run once. is not stateful (#33102)

* Moved _finger_fail method to parent class.

Method _finger_fail method from SAuth to AsyncAuth class to make method available
in both class and fix an issue where _finger_Fail is called inside AsyncAuth.

* Fix 33058 (#33099)

* Fix servermanager module

- Added check for 2008 version of windows
- Added Import-Module ServerManager to _pshell_json.
  Apparently this needs to run each time we issue a
  servermanager command.

* Fix list_available

* salt.utils.gitfs: fix formatting for warning messages (#33064)

* salt.utils.gitfs: fix formatting for warning messages

When git_pillar support was added to salt.utils.gitfs, the
recommendation globals had string formatting placeholders added to them,
but the locations where these values are referenced do not call
``.format()`` to properly replace them. This commit fixes that
oversight.

* Remove more gitfs and master-specific wording from log messages

* Add a check that the cmdline of the found proc matches (#33129)

* Doc mock decorators (#33132)

* Add mock function for mocking decorators

* Mock the stdlib user module because importing it will open the repl

* Fix broken parsing of usermgmt.conf on OpenBSD (#33135)

When creating a new user, if a group of the same name already exists,
the usermgmt.conf file is consulted to determine the primary group.
It's in these cases that the parsing bug is triggered.

This code change addresses several of the existing issues:

- The previous split statement explicitly specified a single space.
  Since a config line may have any number of spaces and/or tabs
  surrounding the entries, the resulting array's elements may be
  incorrect.

- According to the man pages for usermgmt.conf, the "group" config
  entry accpets a single parameter -- so we shouldn't iterate.

- The "val[1]" was returning the 2nd letter of each word and not the
  second word on the config line as intended.

* Move salt-ssh thin dir location to /var/tmp (#33130)

* Move salt-ssh thin dir location to /var/tmp

Closes #32771

* Remove performance penelty language

* If cache_jobs: True is set, populate the local job cache when running salt-call (#33100)

* If cache_jobs: True is set, populate the local job cache

Fixes #32834

Allows a masterless minion to query the job cache.

* Refactor cache_jobs functionality to be DRY

* Skipping salt-call --local test

* Back-port #31769 to 2015.8 (#33139)

* Handle empty acl_name in linux_acl state

Calls to setfacl interpret an empty group or user name to mean to be the
owner of the file they're operating on. For example, for a directory
owned by group 'admin', the ACL 'default:group::rwx' is equivalent to
'default:group:admin:rwx'.

The output of the getfacl execution module returns ACLs in the format of
'group:admin:rwx' instead of 'group::rwx'. This commit changes the
acl.present state to look for the owner of the file if the acl_name
paremeter is empty.

* Fix acl.present/acl.absent changing default ACLs

The behaviour of the acl.present and acl.absent is to check the data
structure returned by getfacl contains a key by the name of acl_type.

However, this data structure does not contain any default ACLs if none
exist, so this check will fail. We omit the check if a default ACL was
passed into the state functions.

Unfortunately, the call to modfacl may fail if the user passes in an
acl_type such as 'default:random'. In this case the state will appear to
succeed, but do nothing.

This fixes the state module to allow setting default ACLs on files which
have none.

* Fix regression in 2016.3 HEAD when version is specified (#33146)

Resolves #33013.

* Hash fileclients by opts (#33142)

* Hash fileclients by opts

There was an issue whereby the cache of the fileclient was being overwritten
by dueling minion instances in multimaster mode. This protects them by hashing
by the id of opts.

Closes #25040

* Silly typo!

* Remove tests which do not test any actual functionality or are too tightly coupled to the implementation

* Strip ldap fqdn (#33127)

* Add option to strip off domain names on computer names that come from LDAP/AD

* Add strip_domains option for ldap.

* Add documentation for auth.ldap.minion_stripdomains.

* [2015.5] Update to latest bootstrap script v2016.05.10 (#33155)

* [2015.8] Update to latest bootstrap script v2016.05.10 (#33156)

* [2016.3] Update to latest bootstrap script v2016.05.10 (#33157)

* add 2015.5.11 release notes (#33160)

* add 2015.8.9 release notes (#33161)

* Pip fix (#33180)

* fix pip!!

* make it work with old pip as well

* Added resiliency

* Don't need to check, just get the right name

* [2015.5] Update to latest bootstrap script v2016.05.11 (#33185)
2016-05-12 07:53:39 -07:00
rallytime
c6f18fac3f Merge branch '2015.8' into '2016.3'
Conflicts:
  - salt/minion.py
2016-05-10 15:13:24 -06:00
Mike Place
033bef2ed2 Hash fileclients by opts (#33142)
* Hash fileclients by opts

There was an issue whereby the cache of the fileclient was being overwritten
by dueling minion instances in multimaster mode. This protects them by hashing
by the id of opts.

Closes #25040

* Silly typo!

* Remove tests which do not test any actual functionality or are too tightly coupled to the implementation
2016-05-10 15:04:52 -06:00
rallytime
449176f06e Merge branch '2015.5' into '2015.8'
No conflicts.
2016-05-10 11:58:55 -06:00
Justin Anderson
8b1e34fb17 Skipping salt-call --local test 2016-05-10 10:48:18 -06:00
rallytime
92e0c17645 Merge branch '2015.8' into '2016.3'
No conflicts.
2016-05-09 13:55:06 -06:00
Nicole Thomas
b6cf601722 Merge pull request #33103 from rallytime/merge-develop
[develop] Merge forward from 2016.3 to develop
2016-05-09 13:24:25 -06:00
plastikos
0efbbcd17f * Improve init script: specifically manage salt configurations rather than arbitrary salt processes (#32666)
* * Improve init script: specifically manage salt configurations rather than arbitrary salt processes

Unfortunately SysV init scripts tend to rummage through PIDs filtering for
appropriate processes to manage.  Unfortunately the filters are usually weak
and don't account for similar processes run by other users, PIDs of dead
processes being re-used for completely different executables, etc..  These
weaknesses can result in killing unrelated processes with potentially serious
results.

These improvements to the SysV init script is a complete rewrite with the
following improvements:

  * Specifically manage individual salt configurations rather than looking for
    salt minion-like processes.
  * Obtain salt minion information from the salt configuration - use the
    information to manage the specifically configured process.
  * Drop all of the platform-specific helper functions that allow the
    previously-mentioned weaknesses.

    + Unfortunately this means that the output information may not match the
      specific platform (this could easily be corrected).

  * Now can manage multiple salt processes started by different users

    + Unfortunately starts/stops/restarts as a group and is unable to manage
      them both as a group or as individual processes (this could easily be
      corrected)

The new initscript also allows various control variables to be overridden by
environment variables or through settings put in ``/etc/sysconf/salt`` or
``/etc/default/salt``.

:SALTMINION_DEBUG: Dump each line expansion before execution, output system
                   information on failure.  Default: unset

:SALTMINION_BINDIR: Location of ``salt-minion``, ``salt-call`` and other
                    executables.  Default: ``/usr/bin``

:SALTMINION_SYSCONFDIR: The parent directory for the ``salt`` configuration
                        directory and the ``sysconfig`` or ``default``
                        directory.

* Add lines that went missing in the rebase+squash
2016-05-09 10:57:13 -07:00
rallytime
f2dec459d8 Take the develop version of glusterfs.py state 2016-05-09 11:17:46 -06:00
Jεan Sacren
479e643b62 Develop 2016 0509 0030 (#33111)
* Disallow negative value for fib number

Fibonacci number is supposed to be nonnegative. Add this new feature to
disallow negative value to be passed in for fib number.

* Minimize code duplication

* Use /etc/adjtime for Gentoo

* Add integration test for timezone module
2016-05-09 10:06:44 -07:00
Mike Place
3690598301 Remove poorly written test (#33124)
This tests nothing at all. Removing with extreme prejudice.
2016-05-09 10:06:18 -07:00
rallytime
ced033c0a4 Merge branch '2016.3' into 'develop'
Conflicts:
  - doc/topics/releases/2016.3.0.rst
  - salt/scripts.py
  - salt/states/glusterfs.py
2016-05-06 16:05:58 -06:00
rallytime
0fd5e9d157 Merge branch '2015.5' into '2015.8'
Conflits:
  - salt/minion.py
  - tests/integration/states/file.py
2016-05-06 12:04:06 -06:00
Justin Anderson
d4928c5a22 Use saltstack repo in buildpackage.py on CentOS 5 (#33080) 2016-05-06 08:27:31 -07:00
rallytime
180c03ca24 Merge branch '2015.8' into '2016.3'
Conflicts:
  - salt/cli/salt.py
  - salt/modules/zypper.py
  - salt/scripts.py
  - salt/states/boto_elb.py
  - tests/integration/states/user.py
  - tests/unit/states/file_test.py
2016-05-06 09:20:05 -06:00
Mike Place
6d604926d3 Merge pull request #33088 from isbm/isbm-zypper-fix-booleans
Bugfix: Restore boolean values from the repo configuration
2016-05-06 08:13:27 -07:00
Megan Wilhite
2c6326f14a fix tests for file.blockplace to remove newline (#33082) 2016-05-06 08:44:20 -06:00
Bo Maryniuk
79a46e091c Add repo config test 2016-05-06 12:57:52 +02:00
Bo Maryniuk
222b8369ca Add test data for repos 2016-05-06 12:57:36 +02:00
Mike Place
fb89877cf2 Merge pull request #32892 from isbm/isbm-zypper-env-variables
Resolve Zypper locks on asynchronous calls
2016-05-05 07:34:59 -07:00
Andrew Hammond
dd20299087 Refactor ipset tests (#32973)
* remove spurious return

* refactor state.ipset tests

* ipset comments: consistency and correct english

* trim out broken code
2016-05-05 07:31:49 -07:00
Aditya Kulkarni
df6296e3ce Replace args and kwargs (plural) by arg and kwarg (singular) for `RunnerClient` (#32938)
* Replace args and kwargs (plural) by arg and kwarg (singular)

* Add test and deprecation warning

* Add deprecation warning
2016-05-05 07:31:08 -07:00
Kevin Quinn
581f9d328a Fix 'present' option when used without 'key_type' (#32965) 2016-05-05 07:27:30 -07:00
Shane Lee
280d10af01 rewrite win_service.py (#32998)
* Rewrite service.get_all

* Add service.info

* Add try/except for service not found

* Simplify raise error

* Add lookup dicts for service.info

* Fix lookup dictionaries

* Add Description to service.info

* Add additional status details

* Add service.modify function

* Fix _get_service_handles function

* Fix modify function, transition others

* Modified enable, disable, enabled, and disabled

* Fix service.disable

* Add documentation

* Find mismatched case service names

* Fix some lint

* Fix unit tests

* Fix lint in win_service_test

* Skip tests that will fail when WINAPI not available
2016-05-05 07:20:55 -07:00
Megan Wilhite
61d126cb98 add test for installing package while using salt-call --local (#33025)
* add test for installing package while using salt-call --local

* fix pylint
2016-05-05 07:17:12 -07:00
Mike Place
e9c94a4141 Skip Unicode test if the system does not have a filesystem encoding set (#33057)
In the case where a user does not have the LANG env set,
Python can't figure out how to encode Unicode during a popen call.

I could not find any combination of tricks, including setting the encoding
or the locale or the environment variable itself in the call to popen that
would mitigate this issue. This may well be a bug in the Python stdlib itself.
2016-05-05 07:06:07 -07:00
Nicole Thomas
111701c8bb [2015.8] Merge forward from 2015.5 to 2015.8 (#33054)
* Add run_on_start docs to schedule.rst (#32958)

Fixes #22580

* Backport #33021 manually to 2015.5 (#33044)

* Saltfile with pillar tests (#33045)

* add file.managed with pillar data tests

* do not require git for other tests

* Whitespace...
2016-05-05 07:05:55 -07:00
Justin Anderson
1066063a19 File and User test fixes for 2015.8 on Fedora23 (#33056)
* Fix failing user present test

* Fix file_test.test_symlink failure on 2015.8
2016-05-05 07:05:10 -07:00
Justin Anderson
6d3e4e8935 File and User test fixes for 2015.5 on Fedora23 (#33055)
* Fix file_test.test_symlink on 2015.5

* Fix failing user present test
2016-05-05 07:00:59 -07:00
Megan Wilhite
d48b2b8b52 test pillar.items output (#33060) 2016-05-05 06:51:27 -07:00
Justin Findlay
a78bbd0544 Update mac_assistive module for El Capitan (10.11) (#33047)
* modules.mac_assistive int tests: wrap args in list

* modules.mac_assistive.install: match schema on El Capitan

* modules.mac_assistive: remove redundant LooseVersion

* modules.mac_assistive unit tests: mock __grains__
2016-05-04 15:34:03 -06:00
Megan Wilhite
f8757631b2 Saltfile with pillar tests (#33045)
* add file.managed with pillar data tests

* do not require git for other tests
2016-05-04 14:37:57 -06:00
Justin Findlay
186352a8b8 fix dimensiondata, gce unit test certs on MacOS (#33020) 2016-05-04 09:09:02 -07:00
Justin Anderson
28ba98c613 Skip some tests related to #32902 (#32995) 2016-05-03 08:55:23 -07:00
rallytime
16c9ce70ad Merge branch '2016.3' into 'develop'
No conflicts.
2016-05-02 12:58:24 -06:00
rallytime
c12b9a5094 Merge branch '2015.8' into '2016.3'
No conflicts.
2016-05-02 10:50:27 -06:00
Justin Anderson
00fbeaba5f Fix boto_secgroup_test (#32986) 2016-05-02 10:46:19 -06:00
Jεan Sacren
ad3b8b5b3d Add integration test for gentoolkit module (#32977) 2016-05-02 08:27:09 -07:00
Anthony Shaw
af7593ae53 Introduce a lightweight unit test runner for execution modules (#32792)
* Added servicenow execution module

* Fixed up the linting

* Fix docstrings

* Setup basic unit test runner

* Setup basic loader mock and wrapper for declaring dependent packages

* Updated unit test runner and setup my first test example

* Update the servicenow module after a bad merge commit

* Code comments for the base unit test runners

* Fix linting issues

* remove empty line endings
2016-04-29 13:36:17 -07:00
Justin Findlay
cc854f1464 update pip state and integration tests for newer pip versions (#32905)
* modules.virtualenv_mod: use correct pip bootstrap url

* modules.pip: raise error on mirrors arg

* states.pip: run mirrors test on < 7.0.0

* update pip integration test states to not use mirrors

* modules.pip: run mirrors tests on pip < 7.0.0
2016-04-29 10:49:29 -07:00
Nicolas Delaby
87b70186c3 When move a function to a new namespace, allow to keep original context. (#32943) 2016-04-29 10:48:20 -07:00
Megan Wilhite
c57a2b8f3b Fix user present tests (#32895)
* fix user present tests for mac

* add setup and teardown methods

* add destructive and root decorators

* forgot teardown decorators

* fix pylint
2016-04-29 10:40:54 -06:00
rallytime
5952e3e300 Merge branch '2016.3' into 'develop'
Conflicts:
  - salt/modules/mac_brew.py
  - salt/states/archive.py
2016-04-28 15:35:34 -06:00
Justin Anderson
fa7e32afcc Fixing failures in gce_test and dimensiondata_test (#32921)
* Fixing failures in gce_test and dimensiondata_test

* Fixed lint
2016-04-28 14:15:22 -06:00
Bo Maryniuk
c55b0fab58 Test DOM parsing 2016-04-27 15:43:35 +02:00
Bo Maryniuk
c54e928e4f Add exception handling test 2016-04-27 15:43:17 +02:00
Bo Maryniuk
6a98f523ac Add Zypper caller test suite 2016-04-27 15:21:00 +02:00
Bo Maryniuk
7e1712dd80 Fix tests according to the new calling model 2016-04-27 14:35:22 +02:00
Bo Maryniuk
3a30b7fbcd Remove an obsolete test case 2016-04-27 14:34:54 +02:00
Bo Maryniuk
6e5877a2ee Add Zypper Call mock 2016-04-27 14:34:31 +02:00
Ch3LL
3520d496ba add /Users directory for mac minion in user present test 2016-04-26 15:32:11 -06:00
rallytime
cbf42a8407 Merge branch '2016.3' into 'develop'
Conflicts:
  - conf/master
  - doc/ref/configuration/master.rst
  - salt/cli/batch.py
  - salt/cli/daemons.py
  - salt/config/__init__.py
  - salt/minion.py
  - salt/modules/aptpkg.py
  - salt/modules/beacons.py
  - salt/states/archive.py
  - salt/states/cmd.py
  - salt/utils/gitfs.py
  - tests/unit/states/cmd_test.py
2016-04-26 14:42:26 -06:00
rallytime
80fcdfb9d8 Merge branch '2015.8' into '2016.3'
Conflicts:
  - doc/topics/targeting/grains.rst
  - salt/cli/daemons.py
  - salt/exceptions.py
  - salt/minion.py
  - salt/modules/schedule.py
  - salt/scripts.py
  - salt/states/archive.py
2016-04-26 12:07:42 -06:00
Nicole Thomas
02c681311f Merge pull request #32844 from rallytime/merge-2015.8
[2015.8] Merge forward from 2015.5 to 2015.8
2016-04-26 11:38:08 -06:00
Damon Atkins
cf4826aad4 Windows Registry Unicode Support and PY2 character encoding (module.reg) (#32835)
* reg.py
* Start at PY3 support, however not tested against PY3
* Change to Unicode including from __future__ import unicode_literals
* If PY2 converts all parameter input unicode to local encoding i.e. Unicode to String
* If PY3 stays as Unicode as PY3 uses Windows Wide Char
* Supports non-asiic characters i.e. > 126
* All output is Unicode, before most of it was Unicode output
* Added a safty check to recursive delete to try and prevent a mistake like removing all of SOFTWARE
* Fixed all the pylint errors
* add _ prefix to internal functions
* Provided unit test see reg_win_test.py
reg_win_test.py
* All tests currently make real changes to the registry
* All changes are performed under SOFTWARE\SaltStackTest under HKEY_LOCAL_MACHINE and HKEY_CURRENT_USER
* Their is still room for more tests to be developed
* Test target the new Unicode features of reg.py e.g. Copyright, Tradmark and Register characters
* General the values set in the registy contain date/time and then checked that they are the current date/time to make sure they are not left over from old tests

* Update test unit to only run the tests on windows.
Removed some code which was commented out which is not required

* chmod 644 tests/unit/modules/reg_win_test.py
2016-04-26 11:07:04 -06:00
Justin Findlay
5a4398a746 netapi.rest_cherrypy: use unsalted PW on MacOS (#32850) 2016-04-26 11:04:25 -06:00
Nicole Thomas
eb8fb6b9df Back-port #31139 to 2015.8 (#32868)
* Evaluate %h and %u before deciding if the ssh config path is absolute

Since %h is the user's home directory, it's not very useful unless it
appears at the beginning of the path.  However, putting it at the
beginning of the path does not have the expected effect: %h/.ssh
will become /home/someuser/home/someuser/.ssh, since "%h/.ssh" is
identified by Python as a non-absolute path, causing the user's
home directory to be tacked on the front.

* Improved ssh_auth path expansion test
2016-04-26 10:44:01 -06:00
rallytime
1fc9de1d04 Add 'file.source_list' mock to archive state unit tests 2016-04-26 10:39:43 -06:00
Justin Findlay
aac1ae35c5 fix some shell tests for MacOS (#32852)
* auth.pam int test: use unhashed pw for MacOS

* shell tests: strip whitespace from shell return

Similar to 2f1c0cf.

* modules.mac_user.delete: update example for int test

integration.shell.call.CallTest.test_user_delete_kw_output expects this
exact string to be in the doc for user.delete:
```
salt '*' user.delete name remove=True force=True
```
2016-04-26 09:47:35 -06:00
rallytime
9064d3bbfb Merge branch '2015.5' into '2015.8'
Conflicts:
  - salt/cloud/clouds/vmware.py
  - salt/modules/file.py
  - salt/states/archive.py
2016-04-25 15:45:17 -06:00
Nicole Thomas
f9ffcb697a [2016.3] Merge forward from 2015.8 to 2016.3 (#32784)
* json encode arguments passed to an execution module function call

this fixes problems where you could pass a string to a module function,
which thanks to the yaml decoder which is used when parsing command line
arguments could change its type entirely. for example:

__salt__['test.echo')('{foo: bar}')

the test.echo function just returns the argument it's given. however,
because it's being called through a salt-call process like this:

salt-call --local test.echo {foo: bar}

salt thinks it's yaml and therefore yaml decodes it. the return value
from the test.echo call above is therefore a dict, not a string.

* Prevent crash if pygit2 package is requesting re-compilation of the e… (#32652)

* Prevent crash if pygit2 package is requesting re-compilation of the entire library on production systems (no *devel packages)

* Fix PEP8: move imports to the top of the file

* Move logger up

* Add log error message in case if exception is not an ImportError

* align OS grains from older SLES with current one (#32649)

* Fixing critical bug to remove only the specified Host instead of the entire Host cluster (#32640)

* yumpkg: Ignore epoch in version comparison for explict versions without an epoch (#32563)

* yumpkg: Ignore epoch in version comparison for explict versions without an epoch

Also properly handle comparisions for packages with multiple versions.

Resolves #32229

* Don't attempt downgrade for kernel and its subpackages

Multiple versions are supported since their paths do not conflict.

* Lower log level for pillar cache (#32655)

This shouldn't show up on salt-call runs

* Don't access deprecated Exception.message attribute. (#32556)

* Don't access deprecated Exception.message attribute.

To avoid a deprecation warning message in logs.
There is a new function salt.exceptions.get_error_message(e) instead.

* Fixed module docs test.

* Fix for issue 32523 (#32672)

* Fix routes for redhat < 6

* Handle a couple of arguments better (Azure) (#32683)

* backporting a fix from develop where the use of splay would result in seconds=0 in the schedule.list when there was no seconds specified in the origina schedule

* Handle when beacon not configured and we try to enable/disable them (#32692)

* Handle the situation when the beacon is not configured and we try to disable it

* a couple more missing returns in the enable & disable

* Check dependencies type before appling str operations (#32693)

* Update external auth documentation to list supported matcher. (#32733)

Thanks to #31598, all matchers are supported for eauth configuration.
But we still have no way to use compound matchers in eauth configuration.
Update the documentation to explicitly express this limitation.

* modules.win_dacl: consistent case of dacl constants (#32720)

* Document pillar cache options (#32643)

* Add note about Pillar data cache requirement for Pillar targeting method

* Add `saltutil.refresh_pillar` function to the scheduled Minion jobs

* Minor fixes in docs

* Add note about relations between `pillar_cache` option and Pillar Targeting
to Master config comments with small reformatting

* Document Pillar Cache Options for Salt Master

* Document Minions Targeting with Mine

* Remove `saltutil.refresh_pillar` scheduled persistent job

* Properly handle minion failback failure. (#32749)

* Properly handle minion failback failure.

Initiate minion restart if all masters down on __master_disconnect like
minion does on the initial master connect on start.

* Fixed unit test

* Improve documentation on pygit2 versions (#32779)

This adds an explanation of the python-cffi dep added in pygit2 0.21.0,
and recommends 0.20.3 for LTS distros. It also links to the salt-pack
issue which tracks the progress of adding pygit2 to our Debian and
Ubuntu repositories.

* Pylint fix
2016-04-25 15:26:09 -06:00
Andrew Hammond
06b7b4fe52 file.retention_schedule state (#32800) 2016-04-25 15:21:13 -06:00
Knut Auvor Grythe
478856815c Support unicode in all GECOS fields on FreeBSD (#32794)
* Support unicode in all GECOS fields on FreeBSD

* Revert erroneous change

* Add unit tests
2016-04-25 15:19:13 -06:00
Justin Findlay
4e87700e8c tests.runtests: make test suite args consistent (#32808) 2016-04-25 14:57:33 -06:00
Alejandro Bednarik
5b59840373 Rsync synchronized updates. (#32739)
Aadded --dry-run option which is also used for test mode
taking adventage of this option in rsync.

Update state documentation to follow Salt standards

Finally synchronized was not working, See #32478. Changes cmd.run to cmd.run_all make this works.
Tests updated
2016-04-25 10:54:33 -06:00
Alejandro Bednarik
af64c95593 Append failed cmd in comments. (#32651)
When onlyif fail, append the message to comment so we know which command
is failing. Only in a list context.

Fixes #32575.
2016-04-22 12:54:58 -06:00