Commit Graph

1327 Commits

Author SHA1 Message Date
Mike Place
8b834e341d
Merge pull request #44288 from eradman/onlyif_unless
Report 'onlyif' and 'unless' conditions as true or false
2017-11-10 11:37:01 -07:00
Erik Johnson
c1b6d35c0c
Python 3 compatibility fixes for kubernetes
dict.keys() is not a list in Python 3, and base64.b64encode requires
a bytestring.
2017-11-09 15:05:43 -06:00
Erik Johnson
5932e8a8ae
Merge pull request #44407 from rallytime/merge-develop
[develop] Merge forward from 2017.7 to develop
2017-11-08 11:50:05 -08:00
rallytime
2c052e34b3
Merge branch '2017.7' into 'develop'
Conflicts:
  - .gitignore
  - salt/modules/win_lgpo.py
  - salt/utils/__init__.py
  - tests/integration/spm/test_build.py
  - tests/unit/test_pydsl.py
2017-11-05 20:28:51 -07:00
Jeff Schroeder
eaaa4dcf8e
Up the total test coverage of the kubernetes state to 54%!
* Add 100% test coverage for the kubernetes.node_label_absent state
* Add 100% test coverage for the kubernetes.namespace_present state
* Add 100% test coverage for the kubernetes.namespace_absent state
2017-11-05 20:11:25 -06:00
Jeff Schroeder
2b44f7ca85
Small formatting fixup 2017-11-05 20:11:17 -06:00
Jeff Schroeder
7039d74e90
More kubernetes state tests
* Add 100% test coverage for the kubernetes.secret_absent state
* Add 100% coverage for kubernetes.node_label_present
* Also add 'comment' to kubernetes.node_add_label
* Make the faux test objects more believable in test_kubernetes.py
2017-11-05 17:57:29 -06:00
Jeff Schroeder
2b02a46544
Add the beginning of tests for states.kubernetes and update things
* Add 100% test coverage for the kubernetes.secret_present state
* Add 100% test coverage for the kubernetes.configmap_absent state
* Add 100% test coverage for the kubernetes.configmap_present state
* Make some fields optional to kubernetes.create_secret and add examples
* Make some fields optional to kubernetes.replace_secret and add examples
* Make some fields optional to kubernetes.create_configmap and add examples
* Make some fields optional to kubernetes.replace_configmap and add examples
* Add 'comment' when a kubernetes configmap or secret is going to be replaced
* Update 'source', 'template', and 'saltenv' kwargs to defaults from the rest of the codebase
* Allow passing empty 'data' to the kubernetes.configmap_present state to remove the existing contents
2017-11-05 13:34:37 -06:00
rallytime
055b0701de
Lint fix from sloppy merge conflict resolution 2017-10-25 11:58:44 -04:00
Eric Radman
d921e1e6cb
Report 'onlyif' and 'unless' conditions as true or false
Elide terminology "execution failed/succeeded" since the result of these
conditions does not indicate a failure in state execution. Instead
simply report the result of each condition.
2017-10-25 11:03:13 -04:00
rallytime
1c3cb5c6a4
Merge branch '2016.11' into '2017.7'
Conflicts:
  - .gitignore
  - tests/unit/states/test_file.py
2017-10-25 10:04:08 -04:00
Łukasz Mierzwa
58b84c7f71
Fix test case when postgres extension is already present and test=true is passed
Currently test expects that if the extension is already present salt will indicate that it will create it (which won't really happen without test=true since the extension is present), state was fixed so now salt will return correct information with test=true so fix the test to follow correct behaviour.
2017-10-23 17:48:27 -07:00
Nicole Thomas
304dd2529d Merge pull request #44160 from gtmanfred/directory
add changes to test return
2017-10-23 10:35:20 -04:00
rallytime
2617cf851f
Merge branch '2017.7' into 'develop'
Conflicts:
  - salt/modules/aptpkg.py
  - salt/utils/win_functions.py
  - tests/unit/states/test_mount.py
2017-10-20 10:44:29 -04:00
Daniel Wallace
a7d3d668f4
missed removing changes in the next test 2017-10-20 08:11:44 -06:00
twangboy
a862e0bf2d
Remove unneeded import 2017-10-19 13:30:16 -06:00
twangboy
d78f27466d
Fix unit.states.test_mount for Windows
Use `os.path.realpath` to convert paths
Mock `os.path.exists`
2017-10-19 13:30:16 -06:00
Nicole Thomas
f0175623ed Merge branch 'develop' into ssh_known_hosts_improvements 2017-10-19 13:44:29 -04:00
Daniel Wallace
ac0b5ec440
fix test 2017-10-19 09:28:59 -06:00
rallytime
b8dc018178
Merge branch '2017.7' into 'develop'
Conflicts:
  - salt/modules/opkg.py
  - salt/utils/templates.py
  - tests/unit/templates/test_jinja.py
2017-10-18 09:37:47 -04:00
Matthew Summers
bebf301976
fixed test addressing issue #43307, disk.format_ to disk.format 2017-10-16 16:35:57 -04:00
rallytime
c0f16dae74
Merge branch '2017.7' into 'develop'
Conflicts:
  - doc/topics/tutorials/index.rst
  - salt/crypt.py
  - salt/modules/cmdmod.py
  - salt/modules/grains.py
  - salt/pillar/git_pillar.py
  - salt/roster/clustershell.py
  - tests/unit/states/test_augeas.py
  - tests/unit/utils/test_utils.py
2017-10-16 15:26:19 -04:00
Matthew Summers
16e1c1dfc8
fixed test addressing issue #43307, disk.format_ to disk.format 2017-10-16 09:47:40 -05:00
Erik Johnson
877abb89d0
Complete the salt.utils refactor
This moves the remaining 30 functions from salt.utils to new locations.
2017-10-15 09:43:31 -05:00
Erik Johnson
c6b655b6e9
Move 14 more functions from salt.utils
These functions are:

salt.utils.test_mode -> salt.utils.args.test_mode
salt.utils.split_input -> salt.utils.args.split_input
alt.utils.pem_finger -> salt.utils.crypt.pem_finger
salt.utils.is_bin_file -> salt.utils.files.is_binary
salt.utils.list_files -> salt.utils.files.list_files
salt.utils.safe_walk -> salt.utils.files.safe_walk
salt.utils.st_mode_to_octal -> salt.utils.files.st_mode_to_octal
salt.utils.normalize_mode -> salt.utils.files.normalize_mode
salt.utils.human_size_to_bytes -> salt.utils.files.human_size_to_bytes
salt.utils.get_hash -> salt.utils.hashutils.get_hash
salt.utils.is_list -> salt.utils.data.is_list
salt.utils.is_iter -> salt.utils.data.is_iter
salt.utils.isorted -> salt.utils.data.sorted_ignorecase
salt.utils.is_true -> salt.utils.data.is_true
2017-10-13 09:29:03 -05:00
Erik Johnson
5d56a03a67
Improve failures for module.run states
Bare asserts are zero help in troubleshooting. This commit changes the
tests that uses bare asserts such that they fail with a useful error
mesage as well as the return data from the module.run call.
2017-10-02 10:48:45 -05:00
twangboy
fd1d6c31de
Fix unit.states.test_augeas for Windows
Mock `os.path.isfile` so the test will continue
2017-09-29 12:52:32 -06:00
rallytime
a38ceab7cf
Merge branch '2017.7' into 'develop'
Conflicts:
  - salt/cli/batch.py
  - salt/master.py
  - salt/utils/path.py
  - tests/unit/modules/test_state.py
2017-09-29 11:48:33 -04:00
twangboy
1c01e06097
Only skip test on Windows 2017-09-26 14:36:12 -06:00
twangboy
ec99a3ce3c
Fix lint error 2017-09-26 14:36:11 -06:00
twangboy
61f8a2f7ff
Skip mac specific tests 2017-09-26 14:36:11 -06:00
Mike Place
426eb92474 Merge branch 'develop' into raid_add 2017-09-21 15:37:31 -06:00
Vladimir Nadvornik
1c006db2a6 Fix and extend mdadm unit tests 2017-09-21 17:46:15 +02:00
Mike Place
99c6375d9a Merge branch 'develop' into ssh_known_hosts_improvements 2017-09-19 18:13:20 -06:00
Alexei Pope Lane
ad80801d0f Improvements to SSH known_hosts module and state. 2017-09-19 13:28:48 +10:00
Gareth J. Greenaway
132b56d785 Updating mount to allow opts in the state file to be removed and have the volume remounted 2017-09-13 10:30:15 -07:00
Mike Place
1a81663e46 Merge pull request #43302 from lyft/upstream-boto_cloudfront
Upstream boto_cloudfront execution and state modules
2017-09-12 10:10:20 -06:00
Aneesh Agrawal
2e9f1999f6 Upstream boto_cloudfront execution and state modules
AWS recently added support for tagging CloudFront distributions,
which allows us to start managing them via Salt
as we can insert a Salt-controlled identifier as a `Name` tag.
(CloudFront distributions get unique IDs generated by AWS,
which we can't predict and thus use to manage them idempotently.)
2017-09-11 23:36:31 +00:00
Mike Place
da16b6670a Merge pull request #42752 from skizunov/develop4
Add config option to ensure jid is unique
2017-09-11 13:38:30 -06:00
rallytime
e11aa7e5ef Adjust test mocking to handle __utils__['files.is_text_file'] 2017-09-11 10:25:00 -04:00
rallytime
1279556873 Move salt.utils.istextfile to salt.utils.files.is_text_file
Moves the original function to `salt.utils.files.py`, adds a deprecation
warning to the original function, and updates all of the istextfile
references in salt code.
2017-09-11 10:21:43 -04:00
Sergey Kizunov
3c58717c58 Add config option to ensure jid is unique
Having a jid that is occasionally not unique (eg two processes creating
jobs at about the same time) causes problems in my usage due to
job tracking assuming unique jids. Add a config option called `unique_jid`
that will enforce unique jids, but will change the jid format by
appending an underscore and the process id.

Signed-off-by: Sergey Kizunov <sergey.kizunov@ni.com>
2017-09-07 13:25:35 -05:00
Mike Place
a414325a82 Merge pull request #43070 from lyft/support-states-returning-a-list-of-comments
Support states returning a list for ret['comment']
2017-09-05 16:19:26 -06:00
Mike Place
9c57869234 Merge pull request #43276 from rallytime/utils-state-moves
Move state-related utils to salt.utils.state.py
2017-09-05 14:20:08 -06:00
Aneesh Agrawal
ba63920874 Support states returning a list for ret['comment']
Some states are complicated and multiple subparts,
or maybe cross-call into __states__ if they manage subresources.
In these cases, they will have multiple comments.
Make this more ergonomic by supporting a list of strings as the
value for ret['comment'] in state returns and documenting this.
By joining comments on newlines, it is possible to combine
single-line and multi-line comments cleanly, as opposed to e.g. commas.

The driving impetus for this is some of the boto modules.
An update to the boto_sqs module is included as an example.

Add a check that outgoing state return data has the right shape,
and add a testcase as well.
Fix the NPM state tests and the saltmod runner & wheel state functions
to comply with the prescribed format.
2017-09-05 19:52:42 +00:00
rallytime
4322f009cf Merge branch '2017.7' into 'develop'
Conflicts:
  - salt/auth/__init__.py
  - salt/auth/ldap.py
  - salt/grains/metadata.py
  - salt/master.py
  - salt/modules/apache.py
  - salt/modules/dockermod.py
2017-09-01 16:37:29 -04:00
rallytime
d891433214 Adjust test mocking to handle __utils__['state.check_result'] 2017-09-01 16:09:59 -04:00
rallytime
26410c662f Update some salt.utils.x paths for moved util functions
Through merge forwards, some of the old-style paths have made their
way into develop. This PR corrects some of these instances on the more
popular functions.
2017-08-29 16:24:47 -04:00
Nicole Thomas
df18a89836 Lint: Remove unused import 2017-08-28 09:21:52 -04:00
Erik Johnson
7279f98e92 docker_image states: Handle Hub images prefixed with "docker.io/"
On some platforms, for reason which I do not yet grok, images pulled
from the Hub are prefixed with "docker.io/". This causes the
docker_image states to fail unless the user manually adds "docker.io/"
before the image name.

This commit adds a new function called "docker.resolve_tag" which
disambiguates this variance and allows images to be specified without
the "docker.io/" prefix.

Resolves #42935.
2017-08-25 00:06:28 -05:00