Toshio Kuratomi
318bfbb207
Migrate cli and dependencies to use global display
2015-11-11 10:44:22 -08:00
Toshio Kuratomi
e45ce871a7
Fix for traceback when neither name nor pkg are in the module params
2015-11-11 07:32:21 -08:00
Toshio Kuratomi
4737305837
Remove dead code as this was moved to another class
2015-11-10 12:18:20 -08:00
James Cammarata
a99f2fd52f
Save delegated vars in result for use in callback methods
...
Fixes #13014
2015-11-10 10:14:30 -05:00
Yannig Perré
0c360d17cb
New parameter for template method.
...
We do not compute hash when we know that the result does not need to be cached (like with_items loop).
It also result in a small speed improvement.
2015-11-10 07:19:19 +01:00
Toshio Kuratomi
1a04f354f3
For with_first_found loops, set undefined variables to fall through rather than failing the task
2015-11-09 10:51:54 -08:00
James Cammarata
59b67a2f68
Reset workers list when recreating processes
...
Also renames some things to be more accurate
2015-11-06 12:10:15 -05:00
Brian Coca
9c24f88eca
updated forks comment
2015-11-06 08:31:56 -05:00
James Cammarata
1027abd596
Cleaning up bugs related to perf improvement changes
2015-11-05 16:42:12 -05:00
James Cammarata
efbc6054a4
Add variable compression option
2015-11-05 16:22:37 -05:00
James Cammarata
63c47fb271
Fixing up performance
2015-11-05 16:22:37 -05:00
Brian Coca
f4912dd88a
added callback fallback to v1 methods for backwards compat with existing callbacks
2015-11-05 13:04:50 -05:00
Brian Coca
e2c56efca6
Merge pull request #12867 from bcoca/callback_whitelist_tweak
...
make callbacks declare needing whitelisting
2015-11-05 12:58:05 -05:00
Toshio Kuratomi
4f6d4c6bf6
Set task_action when the action does not need to be templated
...
Fixes #13042
2015-11-05 08:38:21 -08:00
Brian Coca
9753de35a7
Merge pull request #13038 from bcoca/min_forks_to_play
...
use minimal number of forks
2015-11-05 11:22:15 -05:00
Toshio Kuratomi
483491ddfb
template the task_action before checking whether to optimize with_item loops for it.
...
Fixes the second problem discovered in #12976
2015-11-04 19:41:55 -08:00
Toshio Kuratomi
9e758d3d97
Do not optimize with_items loop if the items are not strings
...
The code isn't sophisticated enough to understand lists and dicts yet.
This mirrors how 1.9.x handled non-string items so its not a regression.
One portion of a fix for #12976
2015-11-04 18:48:41 -08:00
Brian Coca
931eb16e55
clearer selection of min value
...
cleanup workers at each run to avoid stragglers
2015-11-04 17:28:08 -05:00
Brian Coca
b44f1428d0
use minimal number of forks taking serial, forks and play patterns into account
2015-11-04 15:16:20 -05:00
Brian Coca
3c35655b52
removed serial as it is not avialable for fork control
...
fixes #13037
2015-11-04 14:04:47 -05:00
Brian Coca
0abeff4511
better limiting of forks to lowest actual restriction
2015-11-04 12:47:10 -05:00
Lars Larsson
3289670a04
treat forks config parameter as max value instead of always creating that number of workers
2015-11-04 17:13:26 +01:00
Brian Coca
f5b095f6c8
properly sanitize registered vars
2015-10-30 16:42:06 -04:00
Brian Coca
b6c92dacb5
removed key striping as they are read up the chain
2015-10-30 14:03:37 -04:00
James Cammarata
a5bd92ca4b
Merge branch 'devel_fix_debug_var' of https://github.com/Yannig/ansible into Yannig-devel_fix_debug_var
2015-10-30 08:37:03 -04:00
James Cammarata
479cbfc63c
Don't immediately fail on PlayContext setup
...
As we may end up skipping the task due to conditionals.
Fixes #12774
2015-10-29 19:23:42 -04:00
Yannig Perré
1febf7cb88
Fix for issue #12952 : this code interfere with debug+var and seems to be unnecessary.
2015-10-28 22:09:13 +01:00
James Cammarata
5d92b00d9c
Cleanup some include logic
...
* Properly mark hosts with failures in includes as failed
* Don't send callbacks until we're sure we're done, and also fix how
we increment stats so failures don't show up as ok's
* Fix a bug in the include file logic where a failed include could lead
to an infinite loop in the task iteration logic
Fixes #12933
2015-10-28 14:02:24 -04:00
James Cammarata
87269599a0
Also consider the full role name when searching for --start-at-task
2015-10-27 16:31:23 -04:00
Toshio Kuratomi
7334389de6
Merge pull request #12930 from ansible/dict-key-overwrite-warning
...
Break apart a looped dependency to show a warning when parsing playbooks
2015-10-27 12:44:01 -07:00
Toshio Kuratomi
4203850d1a
Break apart a looped dependency to show a warning when parsing playbooks
...
Display a warning when a dict key is overwritten by pyyaml
Fixes #12888
2015-10-27 12:39:42 -07:00
James Cammarata
3fc2209ca0
Fixing retry/until logic and default value for retries
...
Fixes #12928
Fixes #12929
2015-10-27 15:37:48 -04:00
Brian Coca
8ce864db6f
sanatize results
2015-10-24 15:23:12 -04:00
Toshio Kuratomi
92dd563a75
Fix invocation from bad merge and note where it would need to go to keep
...
it out of registered vars as well.
2015-10-24 07:29:42 -07:00
Brian Coca
5017a96948
Revert "make callbacks declare needing whitelisting"
...
another premature merge
This reverts commit df8ff85787
.
2015-10-22 16:34:51 -04:00
James Cammarata
86de1429e5
Cleaning up FIXMEs
2015-10-22 16:03:50 -04:00
Brian Coca
df8ff85787
make callbacks declare needing whitelisting
...
this will allow for custom or v1 callbacks locally loaded to automatically be triggered as they were in 1.x
2015-10-22 12:30:23 -04:00
Brian Coca
c267c23020
make callbacks declare needing whitelisting
...
this will allow for custom or v1 callbacks locally loaded to automatically be triggered as they were in 1.x
2015-10-22 08:27:32 -04:00
Brian Coca
fc3a44485b
skip errors on conditional if task is include
...
fixes #12843
2015-10-22 07:50:43 -04:00
James Cammarata
ec56b29ba4
Fix setting of interpreter values for delegated hosts
...
Fixes #12772
2015-10-21 11:05:45 -04:00
Victor Salgado
c5c5f3bf7a
Revert back to copying self._task.args
2015-10-20 16:21:25 -02:00
Victor Salgado
0e671baa33
Fix typo
2015-10-20 16:18:01 -02:00
James Cammarata
1fa975d81a
Simplify group_by by removing BYPASS_HOST_LOOP from the action
...
Fixes #12825
2015-10-19 14:57:07 -04:00
Toshio Kuratomi
a526eae543
Clean up a few more pyflakes warnings
2015-10-19 11:20:21 -07:00
James Cammarata
892d9b8dfb
Move post_validate for tasks after checking for an include
...
Simplifies logic and prevents us from accidentally post_validating
an include that would otherwise be skipped due to tags causing a
problem because of potentially missing variables.
Fixes #12793
2015-10-19 13:42:17 -04:00
James Cammarata
a88c59f451
Reset basedir for plays that are not from a PlaybookInclude
...
Fixes #12524 (again)
2015-10-17 12:44:28 -04:00
Toshio Kuratomi
baa309309d
Bundle a new version of python-six for compatibility along with some code to make it easy for distributions to override the bunndled copy if they have a new enough version.
2015-10-16 08:21:28 -07:00
Marius Gedminas
4fb6f62f1b
Fix Unexpected Exception: global name 'os' is not defined
...
I inadvertently introduced it in
ca826508d9
and didn't notice, because
there are no unit tests for playbook_executor.py. Sorry!
(The "from ansible.errors import *" was used *only* to get the 'os'
module, which makes go "what?")
2015-10-15 10:41:00 +03:00
Marius Gedminas
9ba6c087d3
Python 3: there's no basestring
2015-10-13 09:56:12 +03:00
James Cammarata
82e76e42e5
Tweak to the way serial percentages are handled
2015-10-12 09:00:43 -04:00
Toshio Kuratomi
01ba2e94c0
Wait until later to convert to byte strings for output
...
Also some pre-emptive python3 compat and a code simplification
2015-10-08 08:22:17 -07:00
Brian Coca
76feba00c4
avoid callbacks during syntax check and listing
...
fixes #12682
2015-10-08 10:15:48 -04:00
James Cammarata
d91b3c6b9d
Make sure magic variables are available when templating vars_files
...
Also does some reorganization/cleanup on the magic vars/delegated
variable generation portions of VariableManager to make the above
possible.
Fixes #12633
2015-10-05 16:32:58 -04:00
Brian Coca
e2ae3215f6
corrected no_log for items and skipped tasks
...
corrected output from default callback
added new tests for no_log loops
updated makefile test to check for both positive and negative occurrences of no_log
2015-10-02 14:35:33 -04:00
Brian Coca
ba4afcbbb6
added no_log to results
...
normalized outputs to use display class
cleaned up unused imports
2015-10-02 09:11:41 -04:00
James Cammarata
8ef78b1cf8
Fixing accelerated connection plugin
2015-10-02 00:50:02 -04:00
James Cammarata
deff045aa9
Fix bug caused by options not having start_at_task when used through adhoc
...
Fixes #12590
2015-10-01 10:09:58 -04:00
James Cammarata
dcb8caf9e8
Remember if we already skipped tasks via --start-at-task
...
Fixes #12482
2015-09-30 14:12:38 -04:00
James Cammarata
a3e913da62
Don't assume handlers exist in the same role (if any)
...
Fixes #12536
2015-09-29 14:52:43 -04:00
James Cammarata
ffdba96668
Save the included directory for playbook includes for use as the basedir
...
Fixes #12524
2015-09-29 00:28:45 -04:00
James Cammarata
31d5f88a1d
Use the task loop to calculate multiple delegated hosts
...
Due to the way we're now calculating delegate_to, if that value is based
on a loop variable ('item') we need to calculate all of the possible
delegated_to variables for that loop.
Fixes #12499
2015-09-25 01:41:09 -04:00
Brian Coca
de18bcb95f
correct typo on error reporting
...
fixes #12495
2015-09-23 10:11:52 -04:00
Toshio Kuratomi
2a614c1c0f
Close module file once we're done reading from it
2015-09-21 01:46:29 -07:00
James Cammarata
88e1aa94fa
Add play context vars to list of variables before post validation
...
Fixes #12437
2015-09-19 21:51:24 -04:00
James Cammarata
1f5584aa5b
Refactoring delegate_to code
...
Now, instead of relying on hostvars on the executor side, we compile
the vars for the delegated to host in a special internal variable and
have the PlayContext object look for things there when applying task/
var overrides, which is much cleaner and takes advantage of the code
already dealing with all of the magic variable variations.
Fixes #12127
Fixes #12079
2015-09-18 15:25:10 -04:00
James Cammarata
fa69e8ebb8
Fixing some bugs in _compute_delegate() in TaskExecutor
...
* Clearing interpreter settings from variables, so those set for the
original host aren't incorrectly applied to the delegated to host
* Fixed incorrect string for remote user in delegated hosts hostvars
* Properly looking for multiple possiblities in the delegated-to hosts
hostvars (ansible_ssh_host vs. ansible_host)
2015-09-18 15:25:10 -04:00
James Cammarata
cc6627cdd6
Remove custom json encoder cleaner and strip proxy var stuff out before encoding
...
Fixes #12349
2015-09-17 16:04:47 -04:00
James Cammarata
bde5ed9672
Catch worker errors that may be subclassed on others that lead to incorrect exits
2015-09-17 14:46:53 -04:00
Abhijit Menon-Sen
575a8b8c77
Merge Host.ipv[46]_address into .address
...
The earlier distinction was never used; .ipv6_address was always a copy
of .ipv4_address, and the latter was always used to set the remote_addr
field in the PlayContext.
Also uses the canonical ansible_host/ansible_port names when setting the
address and port from variables.
2015-09-17 23:03:48 +05:30
James Cammarata
a7e1113b26
Removing FIXME comment which is no longer required
2015-09-15 14:47:49 -04:00
James Cammarata
60c139e482
Fix logic for changed/failed_when + retry/until loops
...
Fixes #11809
2015-09-15 13:37:35 -04:00
James Cammarata
8e664ad226
Fix delegate_to localhost vs. 127.0.0.1 (and ::1)
2015-09-15 13:08:54 -04:00
James Cammarata
4156bcedf5
Fix typo in 049a48f
2015-09-11 15:54:24 -04:00
Abhijit Menon-Sen
049a48f3d3
Test state.tasks_child_state before dereferencing
...
I hit a traceback in the FAILED_TASKS case, but it seemed prudent to add
guards in the other similar branches.
2015-09-11 21:59:08 +05:30
Thomas Quinot
0bc9223826
Test for Python must be against basename of interpreter
...
Followup on issue #12076
2015-09-11 13:29:34 +02:00
James Cammarata
441a8af671
Merge pull request #12267 from h-hirokawa/add_replacer_jsonargs
...
Add the new module replacer <<INCLUDE_ANSIBLE_MODULE_JSON_ARGS>>.
2015-09-11 02:44:50 -04:00
James Cammarata
0c5bbe3c32
Use the original (un-templated) args for include params
...
Fixes #12314
2015-09-11 00:53:27 -04:00
James Cammarata
aa3b290efd
Fix indent on line in playbook executor
2015-09-09 18:10:38 -04:00
James Cammarata
e81947c3b4
Fix vars_prompt short form support (and mark deprecated)
2015-09-09 17:52:44 -04:00
James Cammarata
be7bd392cb
Fix unreachable host detection and have plays continue after unreachable failures
...
Fixes #12284
2015-09-09 15:27:26 -04:00
Brian Coca
0dbebfddaa
Revert "remove closing connections after every task, this goes against conneciton caching and was not expected behaviuor nor inhertited from v1"
...
needed for winrm, disabled closing connections in ssh to avoid issues with that persistance, need to normalize all this in future
This reverts commit 23a22397bf
.
2015-09-09 14:21:56 -04:00
James Cammarata
926f127245
set_fact should put facts in the fact_cache, not vars_cache
...
Also fixes a template path lookup issue when using an include
Fixes #12277
2015-09-09 11:10:18 -04:00
James Cammarata
30399edada
Use UnsafeProxy for lookup results too
...
Also fixes a couple of bugs that popped up when using the proxy class
2015-09-08 12:19:39 -04:00
h-hirokawa
cd478a76fc
Add the new module replacer <<INCLUDE_ANSIBLE_MODULE_JSON_ARGS>>.
...
Fixes #12266
2015-09-07 12:01:26 +09:00
Brian Coca
23a22397bf
remove closing connections after every task, this goes against conneciton caching and was not expected behaviuor nor inhertited from v1
2015-09-04 10:11:25 -04:00
Marius Gedminas
37be9539ff
Python 3: use six.text_type instead of unicode
...
Replace 'unicode' with six.text_type, everywhere but in module_utils.
2015-09-04 08:40:10 +03:00
James Cammarata
4ac2bafc4b
Set hosts fact gathering flag based on fact cache entries
...
Fixes #12213
2015-09-03 14:11:19 -04:00
James Cammarata
8774ff5f57
Make sure PlayContext is copied when iterating in a with_ loop
2015-09-03 08:11:30 -04:00
James Cammarata
c16961db60
Fix two PlayIterator bugs
...
* When iterating over a child state, a failure should be propagated
up so parent blocks don't continue iterating
* Make sure a child state exists before trying to search it
Fixes #12210
2015-09-03 07:48:42 -04:00
Toshio Kuratomi
1ae28f606b
Refactor to replace filter and lambda with a generator expression
2015-09-03 00:06:34 -07: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
5adcd7054b
Allow setup to run when using --start-at-task
...
Fixes #12147
2015-08-31 22:10:34 -04:00
James Cammarata
057712c129
Also move action/connection plugins to shared plugin loader code
...
Fixes #12099
2015-08-28 16:32:09 -04:00
James Cammarata
266a069a73
Merge pull request #12107 from TravisPaul/devel
...
Update "smart" transport to handle Sun_SSH_1.5 on SmartOS
2015-08-28 10:43:48 -04:00
Marius Gedminas
0c6ce31f76
Use 'except ... as' syntax
...
This syntax works on Python 2.6 through 3.x. lib/ansible/module_utils
(and lib/ansible/modules) need to support Python 2.4, so I didn't touch
those.
2015-08-27 22:15:04 +03:00
James Cammarata
50448d68e1
Implement max_fail_percentage and any_errors_fatal support
...
Fixes #11997
2015-08-26 12:03:47 -04:00
Travis Paul
604f825a8e
Update "smart" transport to handle Sun_SSH_1.5 on SmartOS
2015-08-26 15:00:45 +00:00
James Cammarata
601a1cc6d9
Multiple fixes for include statements and blocks in general
...
Fixes #11981
Fixes #11995
Fixes #12039
Fixes #12077
2015-08-26 02:23:22 -04:00