Commit Graph

551 Commits

Author SHA1 Message Date
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
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
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
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
Nicole Thomas
216d9fdc9a [develop] Merge forward from 2016.3 to develop (#32494)
* fix sorting by latest version when called with an attribute

* remove reference to master_alive_check

* Fixes saltstack/salt#28262

* Resolve memory leak in authentication

* outputter virt_list does not exist anymore

* Update proxmox documentation

* Fix documentation on boto_asg and boto_elb modules and states

* modules.win_timezone: don't list all zones in debug log

* Correcty index glusterfs bricks

Fixes issue #32311

* Cleaner deprecation process with decorators

* Add deprecation decorator scaffold

* Capture type error and unhandled exceptions while function calls

* Aware of the current and future version of deprecation

* Implement initially is_deprecated decorator

* Add an alias for the capitalization

* Fix capitalization easier way

* Remove an extra line

* Add successor name to the deprecation decorator.

* Granulate logging and error messages.

* Implement function swapper

* Raise later the caught exception

* Clarify exception message

* Save function original name

* Remove an extra line

* Hide an alternative hidden function name in the error message, preserving the error itself

* Rename variable as private

* Add a method to detect if a function is using its previous version

* Message to the log and/or raise an exception accordingly to the status of used function

* Log an error along with the exception

* Add internal method documentation

* Add documentation and usage process for decorator "is_deprecated"

* Add documentation and process usage for the decorator "with_deprecated"

* Hide private method name

* Fix PEP8, re-word the error message

* Deprecate basic uptime function

* Add initial decorator unit test

* Rename old/new functions, mock versions

* Move frequent data to the test setup

* Add logging on EOL exception

* Rename and document high to low version test on is_deprecated

* Implement a test on low to high version of is_deprecated decorator

* Add a correction to the test description

* Remove a dead code

* Implement a test for high to low version on is_deprecated, using with_successor param

* Correct typso adn mistaeks

* Implement high to low version with successor param on is_deprecated

* Setup a virtual name for the module

* Implement test for with_deprecated should raise an exception if same deprecated function not found

* Implement test for with_deprecated an old function is picked up if configured

* Correct test description purpose

* Implement test with_deprecated when no deprecation is requested

* Add logging test to the configured deprecation request

* Add logging testing when deprecated version wasn't requested

* Implement test EOL for with_deprecated decorator

* Correct test explanation

* Rename the test

* Implement with_deprecated no EOL, deprecated other function name

* Implement with_deprecated, deprecated other function name, EOL reached

* Add test description for the with_deprecated + with_name + EOL

* Fix confusing test names

* Add logging test to the is_deprecated decorator when function as not found.

* Add more test point to each test, remove empty lines

* Bugfix: at certain conditions a wrong alias name is reported to the log

* Fix a typo in a comment

* Add test for the logging

* Disable a pylint: None will _never_ be raised

* Fix test for the deprecated "status.uptime" version

* Bugfix: Do not yank raised exceptions

* Remove unnecessary decorator

* Add test for the new uptime

* Add test for the new uptime fails when /proc/uptime does not exists

* Rename old test case

* Skip test for the UTC time, unless freeze time is used.

* Fix pylint

* Fix documentation

* Bugfix: proxy-pass the docstring of the decorated function

* Lint fix

* Fixes saltstack/salt#28262 for 2015.5 branch

* Update master config docs

* Improve git_pillar documentation/logging

* Add note about different behavior of top file in git_pillar

* Make log entry for a missing pillar SLS file more accurate for git_pillar

* FreeBSD supports packages in format java/openjdk7 so the prior commit broke that functionality. Check freebsd/pkg#1409 for more info.

* FreeBSD supports packages in format java/openjdk7 so the prior commit broke that functionality. Check freebsd/pkg#1409 for more info.

* Update glusterfs_test to be inline with #32312

* Fix salt-cloud paralell provisioning

Closes #31632

* Ignore Raspbian in service.py __virtual__ (#32421)

* Ignore Raspbian in service.py __virtual__

This prevents more than one execution module from trying to load as the
service virtual module.

Refs: #32413

* pack __salt__ before loading provider overrides

We can (and should) pack here since we're just packing a reference to the
object. __salt__ needs to be available when we're loading our provider
overrides

* Fix broken __salt__ dict in provider override

Using ret.items() here sets ``__salt__`` to its items (tuple containing
function name and reference), breaking usage of ``__salt__`` inside
overridden functions.

* Merge #32293 with test fixes (#32418)

* Fix issue #11497

* Remove check for working directory presence in tests

* Fix Domainname introspection

Default value needs to be extracted from the container itself,
because dockerd set Domainname value when network_mode=host.

* Add pgjsonb_queue to queue doc index

* Pylint fixes

* Pass parser options into batch mode

Resolves #31738

* Changed the target file in file.symlink test (#32443)

* Argument name in docs should match actual arg name (#32445)

Fixes #31851

* tests.integration: bypass MacOS TMPDIR, gettempdir (#32447)

Updates 0edd532, 8f558a5.

When logging in as root over `ssh root@host`, `$TMPDIR` and
`tempfile.gettempdir()` are both set to a variation of:
```
/private/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/
```
When logging in as root over `sudo -i`, `$TMPDIR` is unset and
`tempfile.gettempdir()` is set to `/tmp`.

My guess is that the second case is an unintended or uncorrected omision
by Apple as they have introduced the longer, randomized temp path in a
recent version of MacOS.

* Issue #28706: Fix state user.present behavior. (#32448)

- As mentionned in issue #28706, state user.present no longer remove
      user from groups if the keyword 'groups' with empty value '[]' is not
      explicitly set, salt will assume current groups are still wanted.

* tests.integration: fix 4230c8a

* Move the tables of virtual modules to individual documentation pages

* Add new doc pages to toctree

* Add external ref to windows package manager docs

* Improve docstrings

* Add documentation on virtual module provider overrides to the module docs

* Clarify the scope of the provider param in states.

* Add link to provider override docs to all package providers

* Add link to provider override docs to all service providers

* Add link to provider override docs to all user providers

* dd link to provider override docs to all shadow providers

* Add link to provider override docs to all group providers

* Backport 31164 and 31364 (#32474)

* Don't send REQ while another one is waiting for response.

The message has to be removed from the queue the only *after* it's
already processed to don't confuse send() functionality that expects
empty queue means: there's no active sendings.

* Fixed zeromq ReqMessageClient destroy

* Add link to provider override docs to opkg.py

This is a companion to https://github.com/saltstack/salt/pull/32458, but
this module was not added until the 2016.3 branch, so the documentation
is being updated there for this module.

* Add documentation for some master/minion configs (#32454)

Refs #32400

Adds docs for:

- cli_summary
- event_return_queue
- event_return_whitelist
- event_return_blacklist
- file_recv_max_size
- fileserver_followsymlinks
- fileserver_ignoresymlinks
- fileserver_limit_traversal

* Automatically detect correct MySQL password column for 5.7 and fix setting passwords (#32440)

* Automatically detect MySQL password column

* Fix changing password in MySQL 5.7

* Fix lint test

* Fix unit tests (?)

They will still fail if "authentication_string" is legitimately the right column name, but I don't know what to do about that.

* Additional unit test fix

* Only unsub if we have a jid

Closes #32479
2016-04-11 17:07:15 -06:00
Justin Findlay
117d641830 tests.integration: fix 4230c8a 2016-04-08 16:54:00 -06:00
Justin Findlay
fa8d030ab7 tests.integration: bypass MacOS TMPDIR, gettempdir (#32447)
Updates 0edd532, 8f558a5.

When logging in as root over `ssh root@host`, `$TMPDIR` and
`tempfile.gettempdir()` are both set to a variation of:
```
/private/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/
```
When logging in as root over `sudo -i`, `$TMPDIR` is unset and
`tempfile.gettempdir()` is set to `/tmp`.

My guess is that the second case is an unintended or uncorrected omision
by Apple as they have introduced the longer, randomized temp path in a
recent version of MacOS.
2016-04-08 16:00:48 -06:00
Justin Findlay
0edd532add tests.integration: TMPDIR on MacOS gives too long paths 2016-03-30 21:09:39 -06:00
Justin Findlay
c74c241831 tests.integration: use os.path.realpath
This reverts bf894c37, 6b99798b, and 4028d80e.  `os.path.realpath`
behaves identically to `salt.utils.abs_readlink` on the doc tests in
that function.
2016-03-30 21:09:39 -06:00
Thomas S Hatch
81d267bcfd try to change the test run to always clean the thindir 2016-03-24 10:40:23 -06:00
Justin Findlay
6b99798b1e tests.integration: use system tmpdir on darwin 2016-03-10 10:57:18 -07:00
rallytime
838dc12b77 Merge branch '2015.8' into '2016.3'
Conflicts:
  - salt/cli/daemons.py
  - salt/config/__init__.py
  - salt/exceptions.py
  - salt/pillar/foreman.py
  - salt/returners/local_cache.py
  - salt/states/saltmod.py
  - salt/utils/__init__.py
  - salt/utils/cloud.py

The merge conflicts in salt/cli/daemons.py are still present in this commit.
@s0undt3ch is going to resolve them after this commit.
2016-03-08 10:14:32 -07:00
rallytime
beb9d0fe84 Ensure all integration test classes and funcs are documented w/examples 2016-03-04 12:13:27 -07:00
Justin Findlay
8623c24335 add integration tests for minion blackout
Related to #30868.
2016-02-19 18:04:31 -07:00
Sergey Kizunov
793c0bef75 Fixed Windows salt-master memory leaks in logger
__process_multiprocessing_logging_queue:
- A leak was observed in this process on Windows. On Windows, creating a
new process doesn't fork (copy the parent process image). Due to this, we
need to setup extended logging inside this process. The leak was due to
the temp null and temp logging handlers being active which just store
messages but don't process them. Setting up extended logging removes
those handlers and fixes the leak (as well as properly dealing with
incoming logging messages).

setup_multiprocessing_logging:
- A leak was obversed in processes that used this on Windows. Similar
to above, due to lack of fork, the new process will have the temp null
and temp logging handlers enabled, causing the leak. In this function,
removing those handlers prevents the leak.

Signed-off-by: Sergey Kizunov <sergey.kizunov@ni.com>
2015-12-20 09:05:19 -06:00
Christophe Drevet-Droguet
f13e9435b1 loader test for custom grains 2015-11-18 22:08:24 +01:00
Mike Place
26fd2bc89e Merge pull request #28215 from s0undt3ch/features/signal-handling
Proper signal handling
2015-11-09 12:11:15 -07:00
rallytime
cded9ac01d Merge branch '2015.8' into 'develop'
Conflicts:
- salt/cloud/clouds/vmware.py
- salt/modules/freebsdpkg.py
- salt/modules/virtualenv_mod.py
- salt/states/boto_asg.py
- tests/integration/__init__.py
- tests/runtests.py
2015-11-06 09:34:31 -07:00
Pedro Algarvio
058cd00aea Name some more runtests daemon processes 2015-11-06 13:15:12 +00:00
Pedro Algarvio
9dc5533fae Name the test daemon processes for ps output 2015-11-06 13:15:12 +00:00
rallytime
eec9d69387 Merge branch '2015.5' into '2015.8'
Conflicts:
	salt/modules/virtualenv_mod.py
	salt/states/file.py
	tests/integration/__init__.py
2015-11-04 15:52:59 -07:00
twangboy
cf1e059be5 Fixed windows tests 2015-11-02 16:16:22 -07:00
Pedro Algarvio
10a9189d83 Merge remote-tracking branch 'upstream/2015.8' into hotfix/merge-forward-develop 2015-09-06 12:42:58 +01:00
Pedro Algarvio
00b9cc9a83 Only place salt's code root dir in sys.path, not anything above that 2015-09-03 10:49:01 +01:00
Erik Johnson
d6b4e8d033 tests/integration/__init__.py: remove raw string formatting 2015-08-26 23:26:07 -05:00
Pedro Algarvio
37924b2843 Shutdown the multiprocessing logging queue listener 2015-08-03 21:37:56 +01:00
Pedro Algarvio
8f3199f933 Make sure the mp logging queue listener is configured 2015-08-03 13:20:08 +01:00
Pedro Algarvio
e7681f7c75 Try to overcome a failure to get cwd in Cent tests 2015-07-28 12:07:04 +01:00
Justin Findlay
146e6e519a fix transport settings in 3083c71 2015-07-21 16:42:33 -06:00
Justin Findlay
3083c71ec3 add tcp transport opt to test runner 2015-07-20 16:52:48 -06:00
Michael Steed
83a96367a4 Manual merge of #24414 per thatch45 2015-06-06 07:47:52 -06:00
Colton Myers
befb666623 Merge remote-tracking branch 'upstream/2015.2' into merge-forward-develop
Conflicts:
    salt/modules/mongodb.py
    salt/utils/http.py
    salt/utils/process.py
    tests/integration/__init__.py
2015-04-27 10:28:53 -06:00
rallytime
9830708f86 Some small test clean up changes 2015-04-24 16:27:22 -06:00
Thayne Harbaugh
f155daf700 Update time so that minion startup can timeout. 2015-04-23 10:55:42 -06:00
Mike Place
6a11ead5b4 Merge pull request #22453 from jacksontj/transport
Abstracted Transport
2015-04-13 09:38:52 -06:00
Pedro Algarvio
35b3cdcc82 Get the first iteration the right way
Fixes `TypeError: 'dictionary-valueiterator' object has no attribute '__getitem__'`
2015-04-08 19:43:55 +01:00
Thomas Jackson
d21e180a5a Fix race condition in integration test startup 2015-04-07 21:01:43 -07:00
Thomas Jackson
064896d4d9 Update commented out version as well 2015-04-07 20:53:20 -07:00
Thomas Jackson
e376b283ef Refactor the start_daemon function 2015-04-07 20:53:20 -07:00
Thomas Jackson
403c81c2a6 Move daemon init and execution into the same process.
These daemon processes aren't all thread safe, so having the test suite init then fork is disingenuous since that isn't supported anyways.
2015-04-07 20:53:20 -07:00
Mike Place
f3df92834d More helper text, refactor filehandles, clean up 2015-04-03 15:34:47 -06:00
Mike Place
baf2c40f88 More helper text, refactor filehandles, clean up 2015-03-13 16:15:23 -06:00
Colton Myers
244c916b10 Merge remote-tracking branch 'upstream/2015.2' into merge-forward-develop
Conflicts:
	salt/modules/cron.py
	salt/states/npm.py
2015-02-06 15:41:21 -07:00
Colton Myers
56520f4ac9 Merge remote-tracking branch 'upstream/2014.7' into merge-forward-2015.2
Conflicts:
	conf/minion
	salt/modules/cron.py
	salt/modules/pip.py
	salt/modules/tls.py
2015-02-06 13:00:14 -07:00
Justin Findlay
7c943ec8a7 only add successfully generated ssh keys to config 2015-02-04 16:16:41 -07:00
Pedro Algarvio
34c75b1a8d The dictionary changes while iterating. Run over a list of keys. 2015-01-30 22:27:14 +00:00
Pedro Algarvio
ca06f278eb Py3 compatibility fixes. 2015-01-30 22:25:31 +00:00
Pedro Algarvio
3f24dcfa80 Import six at a later stage 2015-01-30 22:25:07 +00:00
Pedro Algarvio
5bc0c157b6 Py3 compatibility fixes 2015-01-30 22:25:04 +00:00
Pedro Algarvio
60f215f191 Add from __future__ import absolute_import 2015-01-30 22:25:04 +00:00
rallytime
c65d9673a7 Merge branch '2014.7' into merge_forward_fifteen_second_try
Conflicts:
	salt/states/file.py
2015-01-29 13:42:49 -07:00
Mike Place
7c066c38a0 Increae default runner timeout to 60s 2015-01-28 13:56:41 -07:00
Mike Place
0b38efaaad Increae default runner timeout to 60s 2015-01-26 10:59:55 -07:00
Pedro Algarvio
c3bc043b23 Merge branch '2015.2' into develop
Conflicts:
	salt/syspaths.py
	setup.py
	tests/integration/__init__.py
2015-01-11 22:45:35 +00:00
Pedro Algarvio
9d0fe5b1d1 Merge branch '2014.7' into 2015.2
Conflicts:
	salt/modules/brew.py
	tests/integration/__init__.py
2015-01-11 22:40:16 +00:00
Mike Place
1277b71e2d Typo 2015-01-09 21:22:40 -07:00
Mike Place
7d4123c6b3 Async flag and test cleanup 2015-01-09 21:21:50 -07:00
Mike Place
7aec24e8e1 Typo 2015-01-09 13:26:25 -07:00
Mike Place
9d7990f264 Async flag and test cleanup 2015-01-09 13:14:33 -07:00
Justin Findlay
751e0c7f43 update color name consistency 2014-12-27 12:20:08 -07:00
Mike Place
a8ab27df4c Make tests run 2014-12-15 11:36:19 -07:00
Pedro Algarvio
71df7ac58a Skip tests which require the SSHD server running in case it's not 2014-12-13 00:11:41 +00:00
Elias Probst
2fe5e0309c Typo (assertInSalStatetWarning → assertInSaltStateWarning). 2014-12-10 21:04:11 +01:00
Pedro Algarvio
733b31da23 Merge branch '2014.7' into develop
Conflicts:
	tests/unit/modules/hashutil_test.py
	tests/unit/templates/jinja_test.py
2014-11-27 03:59:40 +00:00
Pedro Algarvio
78bc5107ee Switch open() for salt.utils.fopen() 2014-11-26 23:38:34 +00:00
Pedro Algarvio
bfe99dbb3f Merge branch '2014.7' into develop
Conflicts:
	salt/cloud/__init__.py
	salt/modules/file.py
	salt/modules/zcbuildout.py
	salt/runners/lxc.py
	salt/runners/manage.py
2014-11-26 20:14:56 +00:00
Pedro Algarvio
0723b24feb Switch open() for salt.utils.fopen() 2014-11-26 17:39:18 +00:00
Pedro Algarvio
50c437f8c5 Use atexit for the cleanup 2014-11-26 00:41:02 +00:00
Pedro Algarvio
593544b577 Move cleanup_runtime_config_instance out of TestDaemon 2014-11-26 00:20:27 +00:00
Mike Place
d746bb272c Run runner tests async 2014-11-24 20:48:04 -07:00
Pedro Algarvio
e8104167f4 Forced clean up of runtime config dictionary which includes a local client 2014-11-25 00:33:45 +00:00
Colton Myers
dc43840cee Merge branch '2014.7' into merge-forward
Conflicts:
	salt/modules/glusterfs.py
	salt/modules/macports.py
	salt/modules/makeconf.py
	salt/modules/mdadm.py
	salt/modules/smartos_vmadm.py
	salt/modules/zypper.py
	salt/utils/event.py
	tests/integration/netapi/rest_tornado/test_app.py
	tests/unit/netapi/rest_tornado/test_handlers.py
2014-11-21 12:05:32 -07:00
Thomas Jackson
c68066d60b Decrease timeout to fit into "long", before this timeout wasn't passed anywhere, but now that it is it has to fit into a C long otherwise you get errors like:
"OverflowError: Python int too large to convert to C long"
2014-11-20 07:46:13 -08:00
Chris Rebert
67b3e19690 tests/integration/__init__.py: salt._compat => six 2014-11-11 14:36:25 -08:00
Pedro Algarvio
4235d15184 Merge branch '2014.7' into develop 2014-11-07 21:47:49 +00:00
Pedro Algarvio
31d3b7b955 Revert "Freeze the testing runtime configs at a latter stage"
This reverts commit 5da3ad341b.
2014-11-07 20:39:49 +00:00
Pedro Algarvio
b425c20919 2 of 500000
Let's not hardcode the SSH tests to the root user without the need for
that.
2014-11-06 19:42:59 +00:00
Pedro Algarvio
1b2e16a19e Merge branch '2014.7' into develop 2014-11-05 22:47:06 +00:00
Pedro Algarvio
5da3ad341b Freeze the testing runtime configs at a latter stage 2014-11-05 22:42:38 +00:00
Colton Myers
f625c21d77 Merge branch '2014.7' into mergeforward
Conflicts:
	salt/cloud/clouds/ec2.py
	salt/daemons/flo/worker.flo
	salt/master.py
	salt/minion.py
	salt/modules/lxc.py
	salt/states/win_update.py
	salt/states/zk_concurrency.py
2014-10-30 17:42:36 -06:00
Pedro Algarvio
17564057c9 Actually kill the tests sshd process. Provide a custom know_hosts file to use. 2014-10-30 06:45:52 +00:00
Thomas S Hatch
5ab6743b85 Merge branch '2014.7' into develop 2014-10-13 20:06:17 -06:00
Pedro Algarvio
ab6a54dbf5 The runtime client gets an unfreeze version of the configs 2014-10-08 01:02:10 +01:00
Pedro Algarvio
d569f0811e Let's go wild and cache the local client as reusable a runtime global instance 2014-10-08 01:02:10 +01:00
Pedro Algarvio
d0ca8274ae Remove the unnecessary integration.ClientCase class 2014-10-08 01:00:19 +01:00
Pedro Algarvio
b32d86d0f4 Allow getting the configuration from scratch.
Properly handle `client_config` when loading from cache.
Only delete the `_client` attribute if it has been set.
2014-10-08 01:00:06 +01:00
Pedro Algarvio
93e8b12b93 Try caching the client too 2014-10-08 00:57:22 +01:00
Pedro Algarvio
bbc9120471 The syndic_config call needs the path to the minion config file 2014-10-08 00:57:22 +01:00
Pedro Algarvio
4d047a67f5 Handle more config filenames 2014-10-08 00:57:22 +01:00
Pedro Algarvio
3a3c6b06dd First attempt at caching the loaded configuration from the filesystem.
This basically should avoid loading and parsing YAML over and over again.
2014-10-08 00:57:22 +01:00
vs
ca5e63ed24 create minions_denied in test-env, update wheel-test to expect minions_denied 2014-09-22 19:44:24 +02:00
Colton Myers
e92dc99e9a Merge branch '2014.7' into temp-merge-forward
Conflicts:
	salt/minion.py
2014-09-12 10:37:24 -06:00
rallytime
6679f26736 Remove unused kwarg from _check_state_return 2014-09-11 23:32:51 -06:00
Pedro Algarvio
0a1857b8f1 Update test case to also use --first-parent 2014-09-06 02:32:18 +01:00
rallytime
73b185cb72 Allow OSX to run tests with change to TMPDIR 2014-07-21 14:26:59 -06:00
Pedro Algarvio
698784d1e7 White-space lint fix 2014-07-15 01:43:52 +01:00
Aditya Kulkarni
91943766d3 Refactor salt key tests to be raet compatible 2014-07-14 15:22:38 -04:00
Thomas S Hatch
2ca17d451a me english so fail 2014-07-10 16:11:00 -06:00
Thomas S Hatch
b7a6200708 Merge pull request #14027 from pass-by-value/ext_pillar_12647
Make sure multiple git pillar sources work
2014-07-08 13:41:38 -06:00
Thomas S Hatch
f0724b3b41 Use salt.utils.process.clean_proc instead of the one in master.py
We need to clean up the master.py clean_proc so we only use one
2014-07-08 12:18:24 -06:00
Aditya Kulkarni
a7b52855d3 Make sure multiple git pillar sources work 2014-07-08 10:58:31 -06:00
Thomas S Hatch
c1d151067d verify the raet cacedir in tests 2014-07-07 15:56:16 -06:00
Thomas S Hatch
a56bed4d03 Don't force import of salt.master in integration tests 2014-06-27 13:13:41 -06:00
Pedro Algarvio
b2f3cecea5 Copy the extension modules into the new master root_dir 2014-06-15 13:05:19 +01:00
Pedro Algarvio
ccdd70750c Leave any cleanup for the end 2014-06-15 13:05:18 +01:00
Pedro Algarvio
70f6a90ed6 Store evaluated configs as cls attributes 2014-06-15 13:05:17 +01:00
Pedro Algarvio
007f86b5d6 Remove stray print and commented out entries 2014-06-15 13:05:17 +01:00
Pedro Algarvio
d9ce87c04c Call verify_env on transplant_configs 2014-06-15 13:05:17 +01:00
Pedro Algarvio
7fbc839942 Lay down computed configuration and use that source for all of the tests 2014-06-15 13:05:17 +01:00
Pedro Algarvio
97f150db74 Revert "detect the right transport for the client in tests"
This reverts commit d33b01d635.
2014-06-15 13:05:17 +01:00
Pedro Algarvio
9fbc894f51 Revert "Cache the salt client"
This reverts commit b4786b0d8c.
2014-06-14 19:19:44 +01:00
Pedro Algarvio
b4786b0d8c Cache the salt client 2014-06-13 23:47:03 +01:00
Thomas S Hatch
d33b01d635 detect the right transport for the client in tests 2014-06-12 16:53:50 -06:00
Thomas S Hatch
525cd2a064 Use new client function 2014-06-12 12:41:00 -06:00
Thomas S Hatch
af1a21691a Skip cleaning up syndic stuff so we don't have issues with raet tests
before the syndic stuff is all ready for testing
2014-06-12 12:35:24 -06:00
Thomas S Hatch
0b02be9af1 Initial code to do raet integration salt tests 2014-06-11 15:35:27 -06:00
Pedro Algarvio
da42560286 When using integration.run_tests the SSH option is not available 2014-06-05 10:10:56 +01:00
Mike Place
535ea24eea Now we don't need root anymore 2014-05-23 15:00:26 -06:00
Mike Place
d4be5906e0 Pylint 2014-05-23 14:52:28 -06:00
Mike Place
c753b77e10 Pass -i to salt-ssh 2014-05-23 14:38:52 -06:00
Mike Place
7abc25f67f Generate server keys too 2014-05-23 14:11:14 -06:00
Mike Place
cf25592c53 Working salt-ssh test runner
This rounds out initial (alpha) support for a salt-ssh test runner.

At present, one must manually specify the --ssh flag to ensure that
the ssh deamons are spun up properly.

Conflicts:
	tests/integration/__init__.py
	tests/integration/files/conf/_ssh/sshd_config
	tests/integration/files/conf/sshd_config
	tests/integration/files/ext-conf/sshd_config
2014-05-23 14:11:14 -06:00
Pedro Algarvio
5a8575dbb9 The helper method is now released 2014-05-20 10:53:47 +01:00
Pedro Algarvio
6b1380a25c Move sshd_config file to another directory to avoid problems. 2014-05-12 19:06:09 +01:00
Pedro Algarvio
8f1f212a7f Remove trailing white-space. 2014-05-10 14:41:48 +01:00
Mike Place
1fe291346f Cleanup 2014-05-10 14:18:53 +01:00
Mike Place
0cbac67a3f Support for continuous integration testing of salt-ssh 2014-05-10 14:18:53 +01:00
Chris Rebert
45981a56f9 lots of copyediting 2014-04-30 12:06:27 -07:00
Pedro Algarvio
1a65ee6bc7 In order not to change the arguments order 2014-04-25 23:34:15 +01:00
Pedro Algarvio
5b790dbb79 Allow getting stderr from the commands. 2014-04-24 15:42:17 +01:00
Pedro Algarvio
362e162496 Remove un-necessary code 2014-02-10 15:10:19 +00:00
Pedro Algarvio
ec5614bd08 Remove the vim jedi output from the code 2014-02-10 13:28:28 +00:00
Pedro Algarvio
74dae3b842 And, as a last resort, kill the process after failing to terminate them. 2014-02-10 13:11:09 +00:00
Pedro Algarvio
bb9e431491 No need for the line breaks 2014-02-08 00:33:26 +00:00
Pedro Algarvio
c8010bbf4f We don't narrow check's to state calls no more. 2014-02-07 18:01:09 +00:00
Pedro Algarvio
420fe3cc50 Let's try without passing the --out option. 2014-02-07 18:00:40 +00:00
Pedro Algarvio
499a508a0f Use the correct .format() index. 2014-02-07 10:25:27 +00:00
Pedro Algarvio
c304660f88 Fix typo 2014-02-05 02:32:04 +00:00
Pedro Algarvio
74376c40ef Include what happened in the returned list. 2014-02-04 22:49:13 +00:00
Pedro Algarvio
6045f0901f Try to match some more stalled functions. 2014-02-04 22:36:39 +00:00
Pedro Algarvio
6248850055 Show and kill stalled states jobs when running the tests. 2014-02-04 21:07:13 +00:00
Joseph Hall
6b39fbec81 Merge pull request #10137 from s0undt3ch/hotfix/rabbitmq-virtual-fixes
rabbitmq module and test fixes/simplifications
2014-02-03 04:33:08 -08:00
Pedro Algarvio
69d0f907f9 Make use of the print() function. 2014-02-03 11:07:43 +00:00
Pedro Algarvio
f417bb5b5a Minor cosmetic change for consistency. 2014-02-03 10:31:13 +00:00
Thomas S Hatch
ce1f305745 Merge pull request #10031 from kaithar/feature/test-fixes
Feature/test fixes
2014-01-31 09:38:38 -08:00
Daniel Bradshaw
749e4871db Fixing some missing PEP8ness 2014-01-29 19:48:57 +00:00
Daniel Bradshaw
a5fee18ac8 Handle directories in the config directory when we try to clone config 2014-01-29 18:02:36 +00:00
Mathieu Le Marec - Pasquet
165b5e4af2 Handle better state errors
This fixes #9983.
2014-01-28 16:01:34 +01:00
Pedro Algarvio
b45900e903 Remote empty lines 2014-01-14 16:15:08 +00:00
Pedro Algarvio
ff75e49c86 Prepare the code to support passing the colums to use in output 2014-01-14 15:16:30 +00:00
Pedro Algarvio
44bdfee0a3 Merge pull request #9700 from s0undt3ch/hotfix/no-hardcoded-virtualenv-bin
no hardcoded virtualenv bin
2014-01-11 14:46:52 -08:00
Pedro Algarvio
8268b7b532 Ignore it PyLint!!! 2014-01-11 21:35:18 +00:00
Pedro Algarvio
5642db5032 Simplify the code 2014-01-11 21:20:42 +00:00
Pedro Algarvio
a5a791695c Import from the right module. 2014-01-11 21:12:03 +00:00
Pedro Algarvio
bdec26f812 Tell Pylint to ignore these imports. 2014-01-11 21:01:58 +00:00
Pedro Algarvio
ba4bf1b05d Add helper function while there's no new release of salt-testing. 2014-01-11 20:51:32 +00:00
Pedro Algarvio
c8038d87b1 Use KNOWN_BINARY_NAMES from salt.modules.virtualenv 2014-01-11 12:19:29 -07:00
Pedro Algarvio
2cab3227fd The virtualenv binary can have multiple CLI names. 2014-01-02 20:27:18 +00:00
Thomas S Hatch
d713cb919c Fix missed import 2013-12-20 13:52:45 -07:00
Pedro Algarvio
edcf47ccc2 White-space related lint fixes. 2013-12-20 20:02:05 +00:00
Seth House
78f4d77681 Added helper function to easily create directories 2013-12-19 21:07:46 -07:00
Seth House
932cd9708a Added new TestCase for testing the *Client interfaces 2013-12-13 16:00:19 -07:00
Pedro Algarvio
63cb0571c1 Skip temporary files. 2013-12-03 18:38:53 +00:00
Pedro Algarvio
31200152bb Use the new form of passing the configuration file. 2013-11-28 19:52:03 +00:00
Pedro Algarvio
660a91d1ea Merge the salt-cloud cli integration tests into salt's test suite. Refs #8886. 2013-11-28 17:55:58 +00:00
Pedro Algarvio
6e596738de Disable some PyLint warnings. 2013-11-27 13:07:24 +00:00
Pedro Algarvio
d02a2bc224 Include the python encoding file header on tests. 2013-11-27 11:19:24 +00:00
Pedro Algarvio
097aed1e7e Show the error in case of failure. 2013-11-12 01:01:51 +00:00
Pedro Algarvio
148cef5772 Reintroduce the removed grains information.
Removed on 4617a931be and 52be720d62.
2013-11-08 19:53:43 +00:00
Pedro Algarvio
47ccaf959e Revert "Remove debugging pprint"
This reverts commit 4617a931be.
2013-11-08 19:53:38 +00:00
Pedro Algarvio
e8e19baf8d Revert "Remove unused grains lookup"
This reverts commit 52be720d62.
2013-11-08 19:53:29 +00:00
Pedro Algarvio
962f8d4149 Support adding files to the testing prod state env. 2013-11-06 20:18:47 +00:00
Pedro Algarvio
2924f1c14a Add a test case to check for proper env selection when passing ?env=foo. Refs #8196. 2013-11-06 20:03:44 +00:00
David Anderson
ec4475cf30 Fix issue 5951 - correct __opts__['file_roots'] in ext_pillars 2013-10-11 11:53:00 -06:00
Pedro Algarvio
c8f1e457d7 Allow tests.integration.run_tests to execute more than one TestCase instance. 2013-10-03 16:09:57 +01:00
Pedro Algarvio
f75c59ecbf Properly handle shell unit tests which check versions. 2013-09-19 18:50:51 +01:00
Pedro Algarvio
05be7064d5 0.17.0 has been tagged. The 0.16.x requires_network is no longer necessary. 2013-09-19 11:16:37 +01:00
David Anderson
583d0b8a3e Add with_retcode options for ShellCase functions 2013-09-13 10:51:25 -06:00
David Anderson
1d7309970f Add with_retcode option to ShellCase.run_call(). Also adds a test case for https://github.com/saltstack/salt/issues/6973 - expect a non-zero exit code when running "salt-call --retcode-passthrough state.highstate" 2013-09-13 10:12:11 -06:00
Pedro Algarvio
bd707c4763 Finish what was started in 53abda36 2013-09-10 10:40:10 +01:00
Pedro Algarvio
ba096cdedf ssh.recv_known_host is known to return None, should be flagged as such. 2013-09-05 23:06:41 +01:00
Pedro Algarvio
a685a05a0c Fix the salt CLI tools version check test case 2013-09-05 03:34:12 +01:00
Pedro Algarvio
d7c9db70e2 Adapt tests configuration to the running user.
Since salt's cli tools now try to change the user to the configured one, when running the tests suite as non-root, we need to adapt the user setting on the configuration files.
2013-08-30 17:25:28 +00:00
Pedro Algarvio
1a12829637 Switched arguments in SaltReturnAssertsMixIn.assertInSaltReturn() 2013-08-22 19:02:17 +01:00
Pedro Algarvio
2c09600ea4 Switched arguments in SaltReturnAssertsMixIn.assertNotInSaltReturn() 2013-08-22 19:02:17 +01:00
Pedro Algarvio
ae5d9f5038 Switched arguments in SaltReturnAssertsMixIn.assertNotInSaltComment() 2013-08-22 19:02:17 +01:00
Pedro Algarvio
b880af89e1 Switched arguments in SaltReturnAssertsMixIn.assertInSaltComment() 2013-08-22 19:02:17 +01:00
Pedro Algarvio
2f750ed06c Allow network related tests to be skipped if no network is available. Fixes #6710. 2013-08-16 02:02:37 +01:00
Pedro Algarvio
c072fa0241 Also deprecate runas on salt.states.pip.
* Added mock tests to check if the deprecation is triggered, and to see if the deprecation is also returned to the user in a warnings key.
2013-07-27 15:58:28 +01:00
Pedro Algarvio
e467b1e00b Simplify the Syndic configuration testing.
* Inherit the master configuration file on the syndic one.
* Recreate the Syndic on the test. Don't pass it as a module global.
2013-07-17 16:22:18 +01:00
Pedro Algarvio
54ea179467 Only create TMP if it doesn't already exists (hint: --no-clean) 2013-07-17 12:34:36 +01:00
Mathieu Le Marec - Pasquet
cff1fa6f53 fix/feat: let the syndic be way more configurable
- Fix micmac between configs
- Add options to configure pidfile, logfile, masterofmaster port

This fixes #6024.
2013-07-15 20:30:26 +00:00
Pedro Algarvio
cc7ecbceaa ensure_in_syspath now accepts multiple paths. Make use of it. 2013-06-29 20:57:23 +01:00
Pedro Algarvio
e772f0d8b6 Re-use salt-testing mixin. 2013-06-28 00:12:58 +01:00
Pedro Algarvio
77e108a281 Removed duplicate variables moved some others. 2013-06-28 00:12:58 +01:00
Pedro Algarvio
b17bc305c8 Reuse salt-testing shell test case. 2013-06-28 00:12:58 +01:00
Pedro Algarvio
1473a0a3b6 Make use of the SaltTestcaseParser added to salt-testing. 2013-06-28 00:12:57 +01:00
Pedro Algarvio
9cd7efb0dc Only update sys.path once. 2013-06-28 00:12:57 +01:00
Pedro Algarvio
0a9f157262 Update sys.path before import salt. This way salt does not need to be installed. 2013-06-28 00:12:57 +01:00
Pedro Algarvio
222be7b446 Make sure every test module is runnable by __main__.
* Double to single quotes
2013-06-28 00:12:56 +01:00
Pedro Algarvio
860f74847e Remove the now unnecessary saltunittest. Moved remaining functionality to integration. 2013-06-28 00:12:56 +01:00
Pedro Algarvio
d4fd1baa2f Adapted the tests suite to work with salt-testing 2013-06-28 00:12:56 +01:00
Thomas S Hatch
e0c10755b9 Some cleaning of quotes and prints 2013-06-18 16:11:36 -06:00
Chris Rebert
31e5c275c5 rm unnecessary parens around 'del'; it's not a function 2013-06-03 11:53:04 -07:00
Chris Rebert
c487d86fff tests: standardize to modern 'except FooError as err:' syntax 2013-05-03 19:55:50 -07:00
Pedro Algarvio
a4e9e196a3 Improve information available and handle IndexError in our salt asserts mix-in. 2013-04-25 20:59:34 +01:00
Pedro Algarvio
2552f2cfc3 Join the processes in order to wait for them to finish. 2013-04-24 22:31:57 +01:00
Pedro Algarvio
50a12a13f5 kwargs should be passed as kwarg to client.cmd. 2013-04-22 22:04:33 +01:00
Pedro Algarvio
7836a26c97 Reduce timeout's by a third. 2013-04-22 19:39:02 +01:00
Denis Generalov
56f221018d * fix bt if environment empty or absent
* fix tests
2013-04-10 16:24:41 +04:00
Thomas S Hatch
52be720d62 Remove unused grains lookup 2013-02-07 17:37:13 -07:00
Thomas S Hatch
86ed822148 Single quotes 2013-01-19 18:22:54 -07:00
Pedro Algarvio
dcb8477f7d Fix phrasing. 2013-01-16 00:11:48 +00:00
Pedro Algarvio
d2f5461a09 Fix the test skip in case of a lower git describe parsed version info. 2013-01-16 00:02:20 +00:00
Thomas S Hatch
603be37e2b Merge pull request #3280 from s0undt3ch/develop
Several deprecation fixes, enhancements, clarifications, for 0.12
2013-01-15 13:43:53 -08:00
Pedro Algarvio
b9afd32994 If the parsed version info is higher, then we're most likely about to release a new salt version. 2013-01-15 19:42:24 +00:00
Pedro Algarvio
392bb8ce1d Remove the deprecation config tests. Lower the salt call's timeout to 30 secs. Refs #3271. 2013-01-15 19:19:57 +00:00
Pedro Algarvio
9e804add7a Simplify logic of getting the temporary directory. 2013-01-15 17:50:09 +00:00
Pedro Algarvio
d61ef51e7a Show why git describe failed on the tests. 2013-01-15 14:16:39 +00:00
Thomas S Hatch
4617a931be Remove debugging pprint 2013-01-14 23:53:18 -07:00
Thomas S Hatch
ad452f0b64 clean up stray prints 2013-01-14 23:08:36 -07:00
Thomas S Hatch
2ca04f4671 Stop downloading giant git repos in the test suite
THIS WAS NOT OK!!!
2013-01-14 22:51:21 -07:00
Pedro Algarvio
0bf51ba5b0 Allow a test to specify it's own run_function timeout. Increase timeout for some tests. 2013-01-14 14:07:58 +00:00
Pedro Algarvio
2f3bb49f83 Fix getting the output of git describe into salt's version string. Added a test case for this too. 2013-01-14 12:35:42 +00:00
Pedro Algarvio
e9ca0a26d7 A little longer timeout. 2013-01-13 18:18:34 +00:00
Pedro Algarvio
3ff77c1958 Wait for the integration tests local client cmd's for, at most, 30 seconds. 2013-01-13 12:49:10 +00:00
Pedro Algarvio
633a313587 Lower integration tests local client timeout to 5 minutes. 2013-01-13 11:31:04 +00:00
Pedro Algarvio
fd2739401c Adapt to the new local client events changes. Fixes #3214. 2013-01-11 19:03:53 +00:00
Pedro Algarvio
39f03c59cd The test suite local client now properly receives the events. Fixes #3214.
* We were instantiating the integration testing local client too soon in the process. Deferring it to a little latter made it all work.
* Added the ability to dump the master and minion testing configurations to files. Just prepend the `runtests` call with `DUMP_SALT_CONFIG=1` and you'll get the computed configuration files in `/tmp/salttest/{master,minion}`.
* We now also un-subscribe from the event's once done.
* Added `salt.utils.event.LocalClientEvent` just to differentiate from `salt.utils.event.MasterEvent` in the logs so we know who's who. It's just a subclass of the latter.
2013-01-11 16:21:04 +00:00
Thomas S Hatch
d95a8e612f clean up some double quotes 2013-01-10 00:25:02 -07:00
Ryan Schneider
8f8cc74b34 Some minor cleanup of unit and integration tests. 2012-12-18 17:39:16 -08:00
Pedro Algarvio
c0455f8fa9 Support creating state files at runtime.
We now support runtime created files that can be used like `salt://my-temp-file.txt`.
Just make sure you write them to `os.path.join(integration.TMP_STATE_TREE, 'my-temp-file.txt')`.
2012-12-12 18:38:39 +00:00
Pedro Algarvio
952779aa26 More code reuse in SaltReturnAssertsMixIn.
The methods `assertSaltTrueReturn`, `assertSaltFalseReturn` and `assertSaltNoneReturn` now reuse the code from `__getWithinSaltReturn` making `__assertReturn` obsolete and for that removed.
2012-12-12 17:11:44 +00:00
Pedro Algarvio
b9e72e7c3c Abstract SaltReturnAssertsMixIn to allow more tests using it.
* Created a method which gets a deep keyed value in a salt state return. For example, allow getting, `ret['changes']['new']`.
* Created a method which tries to make sure the correct type of the passed keys for the above added method.
* Also added were the methods, `assertInSaltReturn`, `assertNotInSaltReturn`, `assertInSaltReturnRegexpMatches`, which simplified the existing `assertInSaltComment`, `assertNotInSaltComment`, `assertSaltCommentRegexpMatches`, `assertSaltStateChangesEqual` and `assertSaltStateChangesNotEqual`, also allowing to do similar tests in every key(deep or not) of a salt state return dictionary.
2012-12-12 13:38:03 +00:00
Pedro Algarvio
7c6feb8c18 Fix a bug! It's basestring not string. 2012-12-12 00:33:54 +00:00
Pedro Algarvio
0baa63c19f Remove deprecated tests functions.
Removed `ModuleCase.assert_success()` and `ModuleCase.state_result()` which are now better tested using `SaltReturnAssertsMixIn`
2012-12-07 17:09:11 +00:00
Pedro Algarvio
fc3b272809 Migrated test.integration.states.pip to use SaltReturnAssertsMixIn.
* Added `assertSaltCommentRegexpMatches()` to `SaltReturnAssertsMixIn` to add the ability to match salt comments using regular expressions.
2012-12-07 16:59:24 +00:00
Pedro Algarvio
4b1747468b Adapted tests.integration.states.ssh to use SaltReturnAssertsMixIn.
* Two new methods were added to `SaltReturnAssertsMixIn`, `SaltReturnAssertsMixIn.assertSaltStateChangesEqual()` and `SaltReturnAssertsMixIn.assertSaltStateChangesNotEqual()`, in order to be able to test salt state returns. These methods, besides asserting that the state was correctly applied using `SaltReturnAssertsMixIn.assertSaltTrueReturn()`, are also able to test for what's in the `changes` key of salt's return, it can even "go inside" the `changes` dictionary, just have a look at what was done in `tests.integration.states.ssh`.
2012-12-07 12:46:02 +00:00
Pedro Algarvio
2d15b79114 Fix sync minions Process target. Correct sync'ed output. 2012-12-04 17:36:45 +00:00
Pedro Algarvio
65094c744a Stop using py27_subprocess under python 2.6 2012-12-04 16:29:53 +00:00
Pedro Algarvio
42799e0953 Fix '--clean/--no-clean' logic needed to sync minions. 2012-12-04 13:36:33 +00:00
Pedro Algarvio
f66c7741ff Allow more time for minions to sync. 2012-12-04 13:02:56 +00:00
Pedro Algarvio
a004639b99 Reuse getting a local client code with SaltClientTestCaseMixIn. 2012-12-04 11:51:37 +00:00
Pedro Algarvio
08aaecee12 Merge branch 'develop' of github.com:saltstack/salt into hotfix/gdb-resources 2012-12-04 00:55:50 +00:00
Pedro Algarvio
b0f594f452 run_script timeout's are not supported under windows. 2012-12-03 23:58:08 +00:00
Pedro Algarvio
3b0388c8f4 Merge branch 'develop' of github.com:saltstack/salt into hotfix/gdb-resources 2012-12-03 23:42:23 +00:00
Pedro Algarvio
b866ca3af0 Just detach from parent group. 2012-12-03 23:41:45 +00:00