Commit Graph

4132 Commits

Author SHA1 Message Date
Pablo Suarez Hernandez
7f7800ffc9 testing if SUSE os grain is set from /etc/os-release 2016-06-09 15:09:00 +01: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
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
Mike Place
64c7dd7032 Merge pull request #33626 from evonzee/feature/issue-15749
Feature/issue 15749
2016-06-02 11:23:36 -07:00
Dmitry Kuzmenko
66bd75cd3b New schedule tests and fixes 2016-06-02 17:14:50 +03:00
Pablo Suárez Hernández
f9b6858cf9 unit tests for udev execution module
tests improvements
2016-06-01 12:23:30 +01: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
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
anthony-shaw
83461e0940
fixes for docs in servicenow module and more tests 2016-05-29 21:03:33 +10: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
Stefan Schweer
a6c9f2b120 added missing whitespaces 2016-05-25 19:56:00 +02: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
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
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
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
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
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
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
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
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
rallytime
f2dec459d8 Take the develop version of glusterfs.py state 2016-05-09 11:17:46 -06: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
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