Commit Graph

18 Commits

Author SHA1 Message Date
Erik Johnson
683e2cc502
Rename 'environment' config option to 'saltenv'
'environment' predates the 'saltenv' nomenclature, and since we have
been using saltenv on the CLI for years, and now also have pillarenv, it
makes sense to make this change.
2017-11-30 13:08:49 -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
twangboy
00dbba5712
Fix unit.test_pillar for Windows
Use delete=True in NamedTemporaryFile command otherwise the handle to
the file isn't released and the file can't be opened by the actual test.
2017-10-10 13:44:58 -06:00
Alexandru Bleotu
33feda7a5b Mocked salt.utils.args.get_function_argspec instead of inspect.getargspec in all external pillar data tests 2017-09-06 12:26:40 -04:00
Alexandru Bleotu
dc082a2087 pylint fix and fix when calling _external_pillar_data function 2017-08-25 06:41:30 -04:00
Alexandru Bleotu
a771dd94f3 Added tests for external pillar function calls 2017-08-25 06:41:27 -04:00
Alexandru Bleotu
2090d9d32f Added tests for AsyncRemotePillar adding extra minion data from config 2017-08-25 06:41:25 -04:00
Alexandru Bleotu
5b383f0036 Added tests for RemotePillar adding extra minion data from config 2017-08-25 06:41:23 -04:00
Erik Johnson
3184168365 Use explicit unicode strings + break up salt.utils
This PR is part of what will be an ongoing effort to use explicit
unicode strings in Salt. Because Python 3 does not suport Python 2's raw
unicode string syntax (i.e. `ur'\d+'`), we must use
`salt.utils.locales.sdecode()` to ensure that the raw string is unicode.
However, because of how `salt/utils/__init__.py` has evolved into the
hulking monstrosity it is today, this means importing a large module in
places where it is not needed, which could negatively impact
performance. For this reason, this PR also breaks out some of the
functions from `salt/utils/__init__.py` into new/existing modules under
`salt/utils/`. The long term goal will be that the modules within this
directory do not depend on importing `salt.utils`.

A summary of the changes in this PR is as follows:

* Moves the following functions from `salt.utils` to new locations
  (including a deprecation warning if invoked from `salt.utils`):
  `to_bytes`, `to_str`, `to_unicode`, `str_to_num`, `is_quoted`,
  `dequote`, `is_hex`, `is_bin_str`, `rand_string`,
  `contains_whitespace`, `clean_kwargs`, `invalid_kwargs`, `which`,
  `which_bin`, `path_join`, `shlex_split`, `rand_str`, `is_windows`,
  `is_proxy`, `is_linux`, `is_darwin`, `is_sunos`, `is_smartos`,
  `is_smartos_globalzone`, `is_smartos_zone`, `is_freebsd`, `is_netbsd`,
  `is_openbsd`, `is_aix`
* Moves the functions already deprecated by @rallytime to the bottom of
  `salt/utils/__init__.py` for better organization, so we can keep the
  deprecated ones separate from the ones yet to be deprecated as we
  continue to break up `salt.utils`
* Updates `salt/*.py` and all files under `salt/client/` to use explicit
  unicode string literals.
* Gets rid of implicit imports of `salt.utils` (e.g. `from salt.utils
  import foo` becomes `import salt.utils.foo as foo`).
* Renames the `test.rand_str` function to `test.random_hash` to more
  accurately reflect what it does
* Modifies `salt.utils.stringutils.random()` (née `salt.utils.rand_string()`)
  such that it returns a string matching the passed size. Previously
  this function would get `size` bytes from `os.urandom()`,
  base64-encode it, and return the result, which would in most cases not
  be equal to the passed size.
2017-08-08 13:33:43 -05:00
Andrew Pashkin
b0148c15c7 Revert "Make possible to reference previous pillars from subsequent pillars, as they specified in the top file" 2017-07-19 12:25:22 +03:00
Andrew Pashkin
7d59f7a6c6 Make possible to reference pillars, that come before current pillar in the top file 2017-07-12 19:03:05 +03:00
Marlowe W
d66281bda6 pillar: fix tests 2017-05-26 13:41:21 +08:00
Pedro Algarvio
abe608d739
Drop @patch usage 2017-04-28 13:36:42 +01:00
Pedro Algarvio
b25b26e23d
Cleanup test attributes once finished 2017-03-28 19:00:51 +01:00
Brian Harring
80ebd77d67 ticket 40348: fix pillar include key nested support
Extend pillar include support so that nesting is possible
for the key directive.

Given the following pillar files:

foo1.sls:
include:
- foo:
    key: two:levels

foo2.sls:
foon: blah

After this commit, it'll result in the following pillar data:

two:
  levels:
    foon: blah

Currently, it results in the following data which is far less useful
for usage, and in ability to be addressed:

two:levels:
  foon: blah
2017-03-27 17:19:24 -07:00
Pedro Algarvio
40a64191a1
Absolute imports and A LOT of code cleanup. 2017-03-01 01:33:07 +00:00
Pedro Algarvio
3beb3fb801
Move whatever we need from salttesting to salt.
Let's drop the salttesting dependency cycle.
2017-02-28 22:52:49 +00:00
Pedro Algarvio
15af4c9728
Test filenames conformity. Adjust for pytest. 2017-02-23 23:19:42 +00:00