Commit graph

16460 commits

Author SHA1 Message Date
Marius Gedminas
38a96d7e8f Python 3: avoid iteritems() in a template
I don't think six.iteritems is available here, but I also don't expect
there to be enough platforms to ever make the speed difference between
.items() and .iteritems() noticeable.
2015-09-03 10:11:32 +03:00
Toshio Kuratomi
364313c01f Simplify and speed up _split_role_params() by moving an invariant outside of a loop. 2015-09-03 00:06:34 -07:00
Toshio Kuratomi
1ae28f606b Refactor to replace filter and lambda with a generator expression 2015-09-03 00:06:34 -07:00
Toshio Kuratomi
dac562a132 Add note about the trailing newlines change 2015-09-03 00:06:34 -07:00
Toshio Kuratomi
9e023fedf2 Merge pull request #12228 from mgedmin/py3k
Simplify FactCache.copy()
2015-09-02 23:55:31 -07:00
Marius Gedminas
a32bf1ec18 Simplify FactCache.copy()
Also fix the bug (missing from six import iteritems) I introduced in
823677b490.
2015-09-03 09:44:44 +03:00
Toshio Kuratomi
ce97874523 Merge pull request #12226 from mgedmin/py3k
Replace .iteritems() with six.iteritems()
2015-09-02 23:40:58 -07:00
Arbab Nazar
d2e547c31f Update developing_modules.rst 2015-09-03 11:27:56 +05:00
Marius Gedminas
823677b490 Replace .iteritems() with six.iteritems()
Replace .iteritems() with six.iteritems() everywhere except in
module_utils (because there's no 'six' on the remote host).  And except
in lib/ansible/galaxy/data/metadata_template.j2, because I'm not sure
six is available there.
2015-09-03 09:23:27 +03:00
James Cammarata
9e1bc434c7 Further cleanup from locking changes 2015-09-03 01:07:29 -04:00
James Cammarata
b93f27e260 Move the lockfile back to tqm to make sure it stays unique 2015-09-03 00:45:42 -04:00
James Cammarata
ba658ff3a9 Merge branch 'amenonsen-connection-locking' into devel 2015-09-03 00:20:33 -04:00
James Cammarata
b9afbf0ee4 Reorganizing the way the connection lockfile is created 2015-09-03 00:18:52 -04:00
James Cammarata
7034bbef30 Merge branch 'connection-locking' of https://github.com/amenonsen/ansible into amenonsen-connection-locking 2015-09-02 23:54:52 -04:00
James Cammarata
3e5b90c6fb Merge pull request #12195 from amenonsen/ssh-lesswork
Make lock_host_keys a real noop, instead of half-a-noop
2015-09-02 23:53:53 -04:00
Abhijit Menon-Sen
9378c8e2da Make the paramiko plugin use locking 2015-09-03 08:43:21 +05:30
Abhijit Menon-Sen
5887e96b27 Introduce a connection locking infrastructure
The lock file is (a temporary file) opened in the parent process, whose
open fd is inherited by the workers after fork, and passed down through
the PlayContext. Connection grows lock/unlock methods which can be used
by individual connection plugins.
2015-09-03 08:43:21 +05:30
Abhijit Menon-Sen
12d8f9132e Make lock_host_keys a real noop, instead of half-a-noop
Right now, we don't do any locking, but we still scan known_hosts files
twice per connection. That's completely unnecessary, and the proposed
solutions to the locking problem wouldn't need known_hosts scanning
anyway, so this code can go away.
2015-09-03 05:52:57 +05:30
Brian Coca
88d3751c28 Merge pull request #12217 from thyming/hacking-remove-pyc
Delete all compiled python files when running hacking/env-setup
2015-09-02 17:13:04 -04:00
Luke Rohde
cba4642d8d Use find ... -delete instead of non-portable globbing 2015-09-02 17:05:16 -04:00
Brian Coca
099d1797f2 added new path config setting handling 2015-09-02 16:14:40 -04:00
Brian Coca
a006e85947 removed printing module args as it violates no_log settings 2015-09-02 16:14:40 -04:00
Toshio Kuratomi
1b64702b9a Fix templar unittests for change in preserve_trailing_newline parameter's default value 2015-09-02 11:58:01 -07:00
Toshio Kuratomi
1998eddf8d Keep newlines by default now.
In v1, a trailing newline was kept if the parameter was passed as key=value.  If
the parameter was passed as yaml dict the trailing newline was
discarded.  Since key-value and yaml dict were unified in v2 we have to
make a choice as to which behaviour we want.  Decided that keeping trailing
newlines by default made the most sense.

Fixes #12200
Fixes #12199
2015-09-02 11:55:45 -07:00
Luke Rohde
647e48f776 Delete all compiled python files when running hacking/env-setup 2015-09-02 14:49:02 -04:00
James Cammarata
45aac6a739 Adding unit tests for safe_eval 2015-09-02 14:12:06 -04:00
Toshio Kuratomi
d0d40dff9e Enable the var precedence test in travis 2015-09-02 11:04:13 -07:00
Toshio Kuratomi
41da8de094 Speedup for counting newlines 2015-09-02 10:59:51 -07:00
James Cammarata
843138e7d9 Merge pull request #12202 from mgedmin/py3k
Use rich comparisons for Attribute and FieldAttribute
2015-09-02 13:57:04 -04:00
James Cammarata
5434ed973b Make sure locals in safe_eval is a plain dict when running eval
Fixes #12206
2015-09-02 13:54:58 -04:00
Toshio Kuratomi
9ecfc30f9a * Mark all strings as unicode -- shouldn't matter for this dataset but
ansible is passing unicode arond internally so we should test the same
  data.
* Add a zero length test for _count_newlines and fix the zero newlines
  test to have no newlines.
2015-09-02 09:43:42 -07:00
Toshio Kuratomi
417bf1c805 Unittest the _count_trailing_newlines function 2015-09-02 08:59:31 -07:00
Toshio Kuratomi
7ed746ad45 Fix preserve_trailing_newlines (broken by 7f5080f64a )
Fix for one half of hte bug reported in #12198
2015-09-02 08:47:20 -07:00
Brian Coca
a7231c2203 actually implemented flags correctly for all priv escalation methods 2015-09-02 11:31:39 -04:00
Brian Coca
14f061d5ea fixed become tests 2015-09-02 10:30:00 -04:00
Brian Coca
dfb94f0def added ec2_vpc_route_table to changelog 2015-09-02 09:58:39 -04:00
Brian Coca
b9642585bd added missing become_exe from config 2015-09-02 09:52:26 -04:00
Brian Coca
e156d9b677 fixed and generalized privilege escalation exe settings 2015-09-02 09:29:34 -04:00
Marius Gedminas
33a374edde Use rich comparisons for Attribute and FieldAttribute
Because __cmp__ is not supported on Python 3.
2015-09-02 12:33:42 +03:00
Marius Gedminas
ca908f2e12 Fix indentation to be a multiple of 4 2015-09-02 12:22:18 +03:00
James Cammarata
e8d7fafc52 Merge pull request #12194 from amenonsen/dupe-fix
Remove duplicated function definition (fallout from earlier repeated merge)
2015-09-01 22:30:48 -04:00
Abhijit Menon-Sen
147b04b682 Remove duplicated function definition (fallout from earlier repeated merge) 2015-09-02 07:47:48 +05:30
James Cammarata
f162990cb3 Properly assign the searchpath for templates to the environment loader
dbd755e0 previously assigned the value to self._templar.environment.searchpath,
which is incorrect - it needs to be assigned to the environment.loader.searchpath
value instead.

Fixes #11931
2015-09-01 17:33:14 -04:00
James Cammarata
2761df232e Small tweak to 7551b75 to correct the ordering of tests 2015-09-01 14:48:59 -04:00
James Cammarata
7551b75e61 Add ispath type for constants and make sure all local paths are ispath=True
Fixes #12180
2015-09-01 14:47:45 -04:00
Toshio Kuratomi
aeff960d02 Cleanup combine_vars
* Dedupe combine_vars() code (removed from VariableManager)
* Fix merge_hash algorithm to preserve the type
* unittest combine_vars and merge_hash
2015-09-01 11:23:12 -07:00
James Cammarata
7fe495d619 Merge pull request #12187 from caphrim007/add-utf-8-encoding-to-f5-module-utils
Adds utf-8 encoding to f5 module_utils
2015-09-01 14:15:42 -04:00
James Cammarata
d00c445d2c Merge pull request #12188 from amenonsen/easy-debug
Show module name and args with -vvv
2015-09-01 14:15:15 -04:00
Abhijit Menon-Sen
d6d523bcae Show module name and args with -vvv
This information was earlier shown only with ANSIBLE_DEBUG, but it's
extremely useful in a user context, especially with module invocations
with deeply nested args like the ec2_vpc/ec2 modules.

Closes #11680
2015-09-01 23:44:13 +05:30
James Cammarata
3e1a774ba5 Don't use iteritems() in templar to avoid (hostvars) dict size change errors 2015-09-01 14:11:23 -04:00