1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
Commit graph

1109 commits

Author SHA1 Message Date
Deon Bredenhann
c85aac8b17 Treat a False mandatory variable as defined. 2013-12-31 13:41:40 +02:00
Deon Bredenhann
4f1f13b100 Remove trailing space 2013-12-31 13:40:21 +02:00
Levi Gross
dc6a26123b
Fixed syntax error and removed unused imports 2013-12-25 11:04:47 -05:00
Michael DeHaan
643690ffec Remove depedency of lookup plugin on setting in ansible.cfg 2013-12-21 08:49:08 -05:00
Stephen Fromm
833e1f6e2a Make sure action plugin copy cleans up tmp dir
The copy action plugin creates its own tmp dir for each file that it
copies to the target machine.  However, it does not clean up the
original tmp path it was given when run() is called.  This cleans up the
tmp path before it begins looping on source files.
2013-12-20 14:58:34 -08:00
dparalen
6bf5d664dc allow per-host sudo operation 2013-12-20 15:49:25 +01:00
jeromew
e4a3f49fa2 ssh_alt - only trigger 'fatal' when returncode == 255 (interpreted as 'could no connect') 2013-12-17 11:42:00 -05:00
jeromew
5c965a75f0 ssh_alt.py / decrease # of ssh roundtrips 2013-12-13 14:23:40 -05:00
Jesse Keating
8cef210aea Make sure ssh pipes are empty before moving on
Resolves issue #5082

Code as it was would hit a scenario where one of the FDs was not ready for
reading the first time through -- but p.poll() would show the process as
complete. This would cause ansible to continue on, while leaving some content
left in a pipe.

The other scenario -- the one that causes the unclosed quote, is if we go
through select.select() and we do get stdout in the ready for reading -- we
read from it (9000 bytes), but that's not all that is there. Again we'd get to
the p.poll() check and it would be indeed not none, but we would have left some
of stdout on the FD and thus the json blob would be malformed.

Tested with and without full ssh debugging.
Tested with and without ControlPersist
Tested with and without ControlPersist sockets already created
2013-12-11 21:32:37 -08:00
Michael DeHaan
929f8a5c93 Had to revert commits due to async. 2013-12-10 19:24:08 -05:00
Michael DeHaan
74e4ccb59b Revert "ssh_alt.py / decrease # of ssh roundtrips"
This reverts commit 7f8863f96d.
2013-12-10 19:23:52 -05:00
jeromew
7f8863f96d ssh_alt.py / decrease # of ssh roundtrips 2013-12-10 06:00:21 -05:00
jeromew
db182ba498 copy ssh.py to ssh_alt.py 2013-12-09 14:11:29 -05:00
Steve Smith
5b81f88c8f Cast the retrieved retries var to an int before incrementing as it may be in string form.
For example, the following method of calculating the value will result in a type error:

    appstatus_waitfor: 4  # Minutes
    appstatus_delay: 5 # seconds
    appstatus_retries: "{{ mins * 60 / delay }}"
2013-12-07 10:35:14 +01:00
jctanner
7aa35d64c2 Merge pull request #5091 from EspadaV8/5089_assemble_fix
#5089 hack-fix assemble module
2013-12-04 10:13:16 -08:00
Paul Bonser
58acd8cce1 If there is no tmp_src, don't modify the args 2013-12-03 18:59:50 -06:00
Paul Bonser
4afcd50487 properly convert arg into boolean 2013-12-03 18:46:37 -06:00
Matt Martz
5f0f3566a6 Skipped only has 2 p's not 3 2013-12-03 15:42:34 -06:00
James Tanner
d227614529 Fixes #5109 synchronize module ssh port
Added a parameter for dest_port and also check ansible_ssh_port inventory variable.
2013-12-03 14:48:20 -05:00
Paul Bonser
5626efba7e Optionally unarchive a file already on the remote machine 2013-12-02 19:51:10 -06:00
Andrew Smith
eed32ea70c dest_contents isn’t always defined, so don’t pass it around
I think this is also a bit of a hack since it should probably be set
before being used, I’m just not sure what it should be set to.
2013-11-28 10:59:51 +10:00
Andrew Smith
e2d03173d2 The file module doesn’t have it’s module_args reset
I believe that this should be reset in the same way that the copy module
does
2013-11-28 10:58:14 +10:00
Andrew Smith
7b01c83159 Passing in complex_args throws ‘unsupported parameter for module’ errors
When using assemble only params (e.g. remote_src) the copy (and I’m
guessing file) modules throw an error that the param isn’t supported.
Simply removing the complex_args param fixes it for me, but I’m not sure
that’s the correct thing to do
2013-11-28 10:55:35 +10:00
Andrew Smith
da44a7f0cb I think that resultant is meant to be the contents of the combined file
It is used for the transfer and as a diff param but isn’t actually
defined anywhere before it’s used. This seemed like the least bad place
to set it.
2013-11-28 10:53:00 +10:00
Andrew Smith
4503413baa ReturnData is used throughout but not actually imported 2013-11-28 10:51:04 +10:00
Andrew Smith
7d007cac16 Correct the invocation of ‘_assemble_from_fragments’ 2013-11-28 09:44:14 +10:00
jctanner
920bc6e75b Merge pull request #5086 from j2sol/fix-accelerate_inventory
Avoid a traceback when using accelerate
2013-11-27 14:46:12 -08:00
James Tanner
b6879ca2bd Fixes #5030 compare connection user and sudo user and disable sudo if identical 2013-11-27 17:01:53 -05:00
Jesse Keating
5522d489e3 Avoid a traceback when using accelerate
This bit of code is attempting to access accelerate_inventory_host,
which may not have been set/created. This will cause a traceback.
Instead use getattr with a fallback to False.
2013-11-27 13:58:11 -08:00
James Tanner
12ed39ef7b Fixes #5056 Append new hosts to the groups cache 2013-11-27 13:04:31 -05:00
Brian Coca
65885feeeb fixed typo for assemble function 2013-11-26 08:30:28 -05:00
James Tanner
b8146e3bc7 Fixes #4979 Check for the correct context when inside the inventory_hostnames plugin 2013-11-25 10:57:10 -05:00
James Tanner
903c4cae7b Fixes #5031 Template the delay value and cast to float for loops 2013-11-25 10:13:55 -05:00
Serge van Ginderachter
2f9470ec1d synchronize: allow ansible_ssh_host to be templated
This is already enabled in the runner also.
2013-11-25 15:33:04 +01:00
James Tanner
bca2634d54 Fix missing eval for string search in ssh controlpersist 2013-11-22 12:22:53 -05:00
James Tanner
a16fe923ed Addresses #5011 check for proper string in smartos ssh error output 2013-11-22 12:13:24 -05:00
jctanner
5c84d7e445 Merge pull request #5002 from ovcharenko/devel
Allow to specify ansible_ssh_private_key_file location related to user home directory
2013-11-22 06:39:07 -08:00
James Tanner
512ebdb971 Revert "Merge pull request #5001 from ovcharenko/devel"
This reverts commit d6c3103a00, reversing
changes made to b11f96eaa4.
2013-11-22 00:09:37 -05:00
Aleksey Ovcharenko
9af44b1b42 Update to 4 space indent 2013-11-22 04:20:14 +02:00
Aleksey Ovcharenko
30678e04ac Make tests happy 2013-11-22 04:06:10 +02:00
Aleksey Ovcharenko
2222f6df58 Allow to specify ansible_ssh_private_key_file location related to user home directory 2013-11-22 01:47:03 +02:00
Jan-Piet Mens
252a51be91 New lookup plugin csvreader 2013-11-21 09:39:52 +01:00
James Tanner
b815a09529 Fix pep8 error in password lookup 2013-11-19 16:36:18 -05:00
James Tanner
e81c976636 Fix pep8 errors in unarchive module 2013-11-19 16:35:06 -05:00
jctanner
68afd9da9f Merge pull request #4866 from sergevanginderachter/known_hosts_sudo
Check real user's known_hosts when sudo ansible...
2013-11-19 12:13:24 -08:00
Brian Coca
34c33f7ea1 now correctly spell symmetric
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-11-19 14:48:11 -05:00
Brian Coca
460bbfaec1 added union filter
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-11-19 14:40:55 -05:00
Brian Coca
afe30a6633 added difference and symetric difference filters
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-11-19 00:06:38 -05:00
Matt Haggard
389602b8dd Merge pull request #4920 from iffy/ansible
Collect all stdout over ssh transport before returning data
2013-11-18 15:09:21 -05:00
Skylar Saveland
7bc64581d7 KeyError: 'delegate_to' no more 2013-11-17 21:26:17 -08:00
jctanner
04847191b4 Merge pull request #4879 from bcoca/unique_intersect
added unique and intersect filters for dealing with lists
2013-11-14 12:46:50 -08:00
jctanner
77affdefbc Merge pull request #4585 from mscherer/connec_func
connection plugin to reuse the func/certmaster interface instead of ssh
2013-11-14 08:15:17 -08:00
jctanner
be67a6f815 Merge pull request #4625 from pileofrogs/devel
unarchive module & action plugin
2013-11-14 07:57:57 -08:00
James Tanner
33242cacf3 Merge pull request #4375 from pfalcon/ansible
copy: Implement recursive copying if src is a directory.
2013-11-13 15:52:40 -05:00
jctanner
6dd81f25d9 Merge pull request #4856 from akuznecov/devel
Resolves #4855 issue with synchronize module failing on multiple items
2013-11-12 15:37:26 -08:00
James Tanner
f31cb7c6e8 Merge pull request #4664 from jpmens/ansible
Lookup plugin for etcd

with support for configurable etcd URL in ansible.cfg (and environment)
2013-11-12 15:29:05 -05:00
jctanner
2cf335969f Merge pull request #4738 from bcoca/assemble_action_plugin
assemble can now use src from master/origin
2013-11-12 08:23:39 -08:00
Brian Coca
efd87534eb added unique and intersect filters for dealing with lists
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
2013-11-12 10:34:57 -05:00
James Tanner
6e49ee6cfc Remove commented code block 2013-11-11 14:44:13 -05:00
James Tanner
288c33e286 Merge pull request #4078 from mkaluza/ansible
add 'chars' parameter to password plugin to allow custom character set
2013-11-11 14:30:49 -05:00
Serge van Ginderachter
80fd22dce6 Check real user's known_hosts when sudo ansible...
closes #4834
2013-11-09 13:29:39 +01:00
Alexander Kuznecov
9d2f9bf93c resolves #4855 2013-11-09 00:14:55 +07:00
jctanner
8e8c8efc8f Merge pull request #4769 from alanfairless/more-password-entropy-revised
Revised patch for more password entropy
2013-11-07 13:39:05 -08:00
jctanner
8d9b53b445 Merge pull request #4733 from sivel/4323-sudo-pass
Add ansible_sudo_pass hostvar support. Fixes #4323
2013-11-05 15:01:19 -08:00
James Tanner
c1ed47933b Fixes #4485 add an ipv6 parameter to accelerate so that the daemon will bind to an ipv6 port instead of ipv4 2013-11-04 17:20:03 -05:00
Michael DeHaan
70c9028e1e include_vars plugin should look in vars/ path for a role. 2013-11-02 09:34:44 -04:00
Michael DeHaan
99687749a3 Merge pull request #4775 from steverweber/fix-4640
dont sudo if sudo_user is the same as the connection user
2013-11-01 15:27:55 -07:00
Steve Weber
5bd52796ec dont sudo if sudo_user is the same as the active user 2013-11-01 14:19:33 -04:00
Alan Fairless
0824f004d9 Revised patch for more password entropy 2013-11-01 09:51:35 -05:00
Michael DeHaan
51fbc6d20a Further simplify the debug: var=foo action plugin code. 2013-10-31 19:39:32 -04:00
Michael DeHaan
bbf212a268 Simplify the way the debug: var=varname plugin works. 2013-10-31 19:35:50 -04:00
Michael DeHaan
7f125567cb Some simplification of include_vars and renamed include_files to include_vars. 2013-10-31 19:24:35 -04:00
Michael DeHaan
b69ab89eb1 Merge branch 'include_files' of git://github.com/bennojoy/ansible into devel 2013-10-31 19:14:27 -04:00
Michael DeHaan
d34a26e307 Undo an inadvertant revert from template changes so we still allow pythonic imports in module land. 2013-10-31 16:53:05 -04:00
Brian Coca
ac40d15120 now assemble module is also action plugin and can use local source for
files
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-10-30 21:40:42 -04:00
Michael DeHaan
7b331ef6ed Fix code typo. I'll blame jet lag for now :) 2013-10-30 21:28:47 -04:00
Michael DeHaan
90cce35919 This allows variable references in playbooks in a different way. 2013-10-30 21:26:16 -04:00
Michael DeHaan
7201a6ffad Evaluate the conditional for each item for modules that normally try to group with_items results
like yum and apt.
2013-10-30 20:35:33 -04:00
James Tanner
078aaa95a2 Revert 1f6edf7d76 and re-enable passing lists to yum and apt 2013-10-30 20:17:17 -04:00
Matt Martz
ea2ec6237a Add ansible_sudo_pass hostvar support 2013-10-30 13:18:35 -05:00
James Tanner
d154bf8781 Revert templating enhancements from 73dbab70 e6c28658 d409352c 9858b1f2 4587528b 9b1fe455 214b0b05 8d3db803 7f9504d1 5031104c 35cb9dc2 2bd8cb57 1e85c754 2013-10-30 10:50:16 -04:00
James Tanner
0faecdf7d1 Fixes #4653 Set dest on results for copy module even if using file module 2013-10-28 22:50:55 -04:00
James Tanner
9249cf578d Fixes #4572 Run until loop if until is set, ignoring result failures 2013-10-28 12:56:46 -04:00
bennojoy
b53e7353f9 include files 2013-10-28 17:40:09 +05:30
Michael DeHaan
603db60828 Merge pull request #4288 from sivel/3725-regex
Add regex (search, match, regex) jinja2 filters. Fixes #3725
2013-10-27 08:48:12 -07:00
Michael DeHaan
9858b1f2f3 Enable imports to work on a snippet based system, allowing for instance a library of common EC2 functions
to be reused between modules.  See library/system/service and library/system/ping for initial examples.  Can
work the old way to just import 'basic', or can import the new way to import multiple pieces of code from
module_utils/.
2013-10-26 11:09:30 -04:00
jctanner
43f48a2e02 Merge pull request #4167 from tima/rsync3
synchronization module take 3
2013-10-25 14:43:08 -07:00
James Tanner
1f6edf7d76 Fixes #4665 and #4666 If task is conditional do not flatten items list for packaging modules 2013-10-25 13:46:41 -04:00
Serge van Ginderachter
6277e770a1 include basedir as 'playbook_dir' variable
closes #4246
2013-10-25 07:53:52 +02:00
Jan-Piet Mens
bd5cd8e652 Lookup plugin for etcd
with support for configurable etcd URL in ansible.cfg (and environment)
2013-10-24 21:28:48 +02:00
James Cammarata
b9dd514713 Minor fix for putting 0-length files over accelerated connections
Fixes #4652
2013-10-23 13:09:25 -07:00
Dylan Martin
2c28e1daea unarchive module & action_plugin added 2013-10-21 15:22:42 -05:00
Timothy Appnel
cbae9c913e synchronize module src and dest handles template markers. 2013-10-19 22:39:25 -04:00
Michael DeHaan
5031104c3a Finishing touches on template cleanup. 2013-10-19 11:40:48 -04:00
Michael Scherer
af796d6556 connection plugin to reuse the func/certmaster interface instead of ssh
This plugin permit to use func to run playbook and ansible command instead
of ssh. It can be used for a smooth transition from func/taboot to ansible by
letting people use ansible without having to change their network architecture.
2013-10-19 00:32:59 +02:00
Brian Coca
c476ed93ca now correctly changes script permission in all cases
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
2013-10-18 16:52:15 -04:00
Michael DeHaan
b0f6e77f66 Merge pull request #4571 from tgerla/whitespace
add_group module: strip trailing/leading whitespace from comma-separated group names
2013-10-17 16:09:09 -07:00
Tim Gerla
51a1709253 add_group module: strip trailing/leading whitespace from comma-separated group names 2013-10-17 14:13:55 -07:00
James Tanner
242f20c297 Fixes #4402 wrong order for isinstance parameters in dnstxt.py 2013-10-17 15:43:39 -04:00
Gabe Mulley
84a57b7545 ensure non-root users can read arguments file when using sudo_user
Non-standard modules must read in the arguments file in order to access their arguments, however, when this file is transfered to the remote host it may only have the permissions 600.  This means that using sudo and sudo_user will result in permission denied errors when attempting to read the arguments file.

This patch fixes #4438 by explicitly forcing the arguments file to be world readable before executing the module.
2013-10-16 08:18:11 -04:00
Paul Sokolovsky
2e668f14f7 copy: Handle "no copy/propagate attrs only" for recursive mode well.
For this, add internal "original_basename" param to file module,
similar to copy module. (Param name is a bit misnormer now, should
be treated as "original basepath").
2013-10-15 18:40:40 +03:00
Paul Sokolovsky
ce88df3cf4 copy: Handle dest path variations for recursive mode. 2013-10-15 18:40:39 +03:00
Paul Sokolovsky
6cf3975e2e copy: Set suitable default result for check mode. 2013-10-15 18:40:39 +03:00
Paul Sokolovsky
612b446856 copy: Don't modify input module_args in a recursive file handling loop. 2013-10-15 18:40:39 +03:00
Paul Sokolovsky
b3b4f9885f copy: Implement recursive copying if src is a directory.
If src param to copy is a directory, all files under it are collected
and pushed one by one to target. Source dir path handled in a way
simalar to rsync: if it ends with slash, only inside contents of
directory are copied to destination, otherwise the dir itself is
copied (with all contents of course). Original idea and implementation
by https://github.com/ansible/ansible/pull/1809 . Rewritten to address
review comments and simplify/correct logic.
2013-10-15 18:40:39 +03:00
Michael DeHaan
e131de4de0 Added "debug: var=variableName" capability. 2013-10-14 21:01:38 -04:00
egghead
ca7e2d283c Adding os realpath filter.
This is particularly useful when wanting to get the absolute path of filepaths found by the 'fileglob' filter.
This also lets you provide absolute paths to roles, which search for files in different areas unless absolutely pathed.
2013-10-14 23:41:16 +00:00
Michael DeHaan
41aaad69aa Make add_host clear the inventory pattern cache, add some more aliases. Fixes #4442. 2013-10-11 16:37:10 -04:00
jctanner
65ef6a62dc Merge pull request #4425 from jeromew/ansible_sudo_user_with_items
Template sudo_user via with_items
2013-10-11 10:18:46 -07:00
Matt Martz
61525a97df Add regex (search, match, regex) jinja2 filters. Fixes #3725 2013-10-11 08:03:04 -05:00
Serge van Ginderachter
c4d20094b4 make changed filter understand results lists 2013-10-10 22:08:38 +02:00
Serge van Ginderachter
e5d45311f9 Implement a |changed filter plugin 2013-10-10 21:34:37 +02:00
jeromew
dec364ae80 Template sudo_user via with_items 2013-10-10 09:22:26 +00:00
Michael DeHaan
3f968ff46a Check one more skipped scenario in with_subelements. 2013-10-09 17:14:42 -04:00
James Cammarata
9124ebb4f1 Clear out complex_args before running async_status
When using complex args with an async task, the subsequent runs of
async_status would inherit them, causing a module error (invalid params).

Fixes #3150
2013-10-09 15:08:47 -05:00
Michael DeHaan
2078518735 Allow subelements to work right with skipped results. 2013-10-09 15:55:47 -04:00
Michael DeHaan
5ed28efe45 Script module should return changed attribute so handlers always fire, unless "changed_when" is specified.
Fixes #4053
2013-10-07 17:06:25 -04:00
Michael DeHaan
a7adc8ef4d Allow doing things like "groups.groupname" in with_nested.
Fixes #3858
2013-10-07 16:58:29 -04:00
Michael DeHaan
19386c43a7 Merge 2013-10-07 10:02:21 -04:00
James Cammarata
d10582225b Merge branch 'issue_4215_fetch_expanduser' into devel 2013-10-07 08:27:52 -05:00
Stoned Elipot
e7957b6d58 Fix group_by: do not group a host for which a condition is false 2013-10-07 08:44:42 -04:00
Michael DeHaan
65178290e7 Merge branch 'devel' of git://github.com/nextus/ansible into devel
Conflicts:
	lib/ansible/constants.py
2013-10-07 08:39:23 -04:00
Michael DeHaan
4987c73bb6 Proper check for raw as module options versus raw being in the string. 2013-10-06 09:54:28 -04:00
James Tanner
52aea868df Allow for updating host vars in add_host 2013-10-04 16:15:17 -04:00
James Cammarata
d21714a37f Fix for network byte order issues in accelerate 2013-10-02 15:37:15 -05:00
James Cammarata
912e3a7b0b Merge branch 'accelerate_improvements' into devel
Conflicts:
	library/utilities/accelerate
2013-10-01 21:22:17 -05:00
James Cammarata
fa80a17aa3 Make recv_data less greedy so it doesn't eat other packets 2013-10-01 16:50:32 -05:00
James Cammarata
12f6957596 Cleaning up some vvvv log messages in accelerate 2013-10-01 15:34:58 -05:00
James Cammarata
8c17711247 Removing accelerate_timeout as a playbook option
This will remain in ansible.cfg only.
2013-10-01 15:33:18 -05:00
James Cammarata
d317103371 Added in an accelerate connection timeout setting 2013-10-01 15:28:59 -05:00
James Cammarata
59a5ce23d9 Adding an accelerate_timeout parameter for plays
This setting makes the timeout for each play configurable, rather than
hard-coding it at 300 seconds (now the default if left unspecified)

Fixes #4162
2013-10-01 15:26:50 -05:00
James Cammarata
f9c87868ac Added keepalive packets to accelerate mode
Commands will now be started up in a separate task from the main
handler thread, so that it can be monitored for completeness while
sending a keepalive packet back to the controller to avoid a socket
receive timeout.
2013-10-01 15:19:21 -05:00
jctanner
32a1dd422c Merge pull request #4269 from jphalip/issue-4256
In the script action: Get around a Python bug.
2013-09-30 20:24:49 -07:00
James Cammarata
52a42bf607 Add more verbose debugging options for accelerate 2013-09-30 14:08:07 -05:00
Matt Martz
535ce97067 Add fileglob Jinja2 filter. Fixes #3563 2013-09-30 12:55:13 -05:00
Julien Phalip
44aeea7afc In the script action: Get around a bug in that's been fixed in Python 2.7 but not Python 2.6.
See: http://bugs.python.org/issue6988
Fixes #4256.
2013-09-27 08:57:07 -07:00
Preston Marshall
3ee7b177e8 Allow storing input from user in a pause prompt 2013-09-25 17:28:25 -05:00
James Cammarata
994dfb84fc Minor pep8 cleanup and CHANGELOG update for do-until 2013-09-25 15:51:49 -05:00
James Cammarata
202c4f5294 Merge branch 'do_until_14' of https://github.com/bennojoy/ansible into bennojoy-do_until_14 2013-09-25 15:49:14 -05:00
James Cammarata
478c400817 Minor pep8 cleanup in the new jail connection plugin 2013-09-25 14:48:30 -05:00
James Cammarata
0e0595bdb2 Merge branch 'jail' of https://github.com/mscherer/ansible into mscherer-jail 2013-09-25 14:47:24 -05:00
bennojoy
70a9a797fa Fix for accelerate when ansible_ssh_user is specified 2013-09-25 19:24:54 +05:30
nextus
ca96d74572 #4227 in upstream repo 2013-09-25 16:15:49 +04:00
bennojoy
0e749611ac doc update and add attempts 2013-09-25 09:56:14 +05:30
bennojoy
21529de82e dountil feature commit 2 2013-09-24 15:23:01 +05:30
bennojoy
53e48b63a9 dountil feature commit 1 2013-09-24 13:59:38 +05:30
James Cammarata
2f39d37a97 Expand destination path in the fetch action
Fixes #4215
2013-09-23 20:23:48 -05:00
Michael DeHaan
319a0f9523 Merge pull request #4154 from mplonka/AIX_MD5
using AIX 'csum' command for generating MD5 checksums
2013-09-23 08:27:12 -07:00
Michael DeHaan
7f8126a6c9 Merge pull request #4168 from nigelm/md5_filter
Added md5 as a jinja filter - returns hex digest of input
2013-09-23 08:21:11 -07:00
Andrey Shorin
cb4b964070 Allow for dynamic accelerate_port: and port: in plays 2013-09-23 13:33:36 +04:00
James Cammarata
c840cbaad9 Merge branch 'fork_fixes' of https://github.com/akerl/ansible into akerl-fork_fixes 2013-09-19 10:37:45 -05:00
James Cammarata
69cfcf7ed0 Minor change to -vvvv mode to only show debugging info for ssh conns
Also added this feature to the CHANGELOG
2013-09-19 08:12:43 -05:00
James Cammarata
d5b96abd80 Added support for -vvvv to enable ssh connection debugging
This patch also checks specifically for a return code of 255, which
indicates an unknown SSH error of some kind. When that happens, ansible
will now recommend running with -vvvv (if not enabled) or show the
output from 'ssh -vvv' (when it is enabled)
2013-09-19 05:58:54 -05:00
Nigel Metheringham
f0cc2d6efe Added md5 as a jinja filter - returns hex digest of input 2013-09-19 09:38:22 +01:00
Timothy Appnel
d8cd3d603e Straightened out the logic for delegate handling in synchronize action module 2013-09-19 03:17:44 -04:00
Timothy Appnel
61e726fe82 Fix to local delegate_to override and proper sudo handling from @smoothify 2013-09-19 03:17:44 -04:00
Timothy Appnel
32ae6fdd43 Return of sychronize module code for take 3 2013-09-19 03:17:43 -04:00
Marcin Płonka
d0c78bdc83 using AIX 'csum' command for generating MD5 checksums 2013-09-18 21:07:25 +02:00
Brian Harring
5b1b831cc7 Make ssh's ControlPath configurable via ansible.cfg
This shouldn't generally be needed unless you're working in an environment
that uses rediculously long FQDNs; if the name is too long, you wind up
hitting unix domain socket filepath limits enforced by ssh.
2013-09-18 15:07:07 -04:00
Les Aker
98bf473cb2 fixes for PTY handling 2013-09-16 17:44:32 -04:00
James Cammarata
3b801dec72 Merge branch 'failed_when' of https://github.com/hnakamur/ansible into hnakamur-failed_when 2013-09-16 07:35:34 -05:00
James Cammarata
fcc18fa105 Merge branch 'subelements' of https://github.com/sergevanginderachter/ansible into sergevanginderachter-subelements 2013-09-16 06:14:42 -05:00
James Cammarata
3848e02959 Merge branch 'issue4022' of https://github.com/sfromm/ansible into sfromm-issue4022
Conflicts:
	lib/ansible/runner/connection_plugins/accelerate.py
2013-09-16 05:50:35 -05:00
James Cammarata
d9cf1dfefb Merge branch 'fetch' of https://github.com/bpennypacker/ansible into bpennypacker-fetch 2013-09-16 05:39:48 -05:00
James Cammarata
f4b3defcbf Set sudo in accelerate commands correctly
Fixes #4111
2013-09-15 20:20:22 -05:00
Michael Scherer
5e1828a524 add jail module, based on lxc and chroot connexion plugin 2013-09-15 17:26:48 +02:00
Marcin Kałuża
6786773797 filter out qoutes since they cause random errors 2013-09-10 15:00:29 +02:00
Marcin Kałuża
aab445a28f add 'chars' parameter to password plugin to allow custom character set
It accepts comma separated list of names that are
either string module attributes (ascii_letters,digits, etc)
or are used literally

To enter comma use two commas ',,' somewhere - preferably at the end
Qoutes and double qoutes are not supported
2013-09-10 11:59:16 +02:00
Hiroaki Nakamura
2357194b39 Add failed_when module variable.
Implementation note: Ternery operator trick for python prior to 2.5 is used.
(test and [when_true_value] or [when_false_value])[0]
http://stackoverflow.com/questions/394809/ternary-conditional-operator-in-python#comment1466794_394887
2013-09-10 08:34:01 +09:00
Serge van Ginderachter
4f9af7efad subelements lookup plugin 2013-09-09 23:45:55 +02:00
Michael Scherer
dfb9d8c2fb Add a plugin that permit to use ansible for lxc system, using libvirt
Using -c lxc and the domain name as hostname, this permit to manage a whole
range of container, provided they are managed and created by libvirtd.
2013-09-08 18:47:09 +01:00
James Cammarata
6e9fa5019f Reverting HostVars change from a mapping back to a dictionary 2013-09-06 20:24:16 -05:00
James Cammarata
2a47f72139 Merge pull request #4049 from mscherer/fix_no_kerberos
Fix no kerberos
2013-09-06 07:10:10 -07:00
Michael Scherer
f489702973 Also add back gssapi-keyex
While this is not currently implemented in openssh as far as I know,
there is patch floating around on the web and this may land one day
upstream.
2013-09-06 10:40:34 +02:00
Keiichi Mori
17c39b94a3 support GSSAPIAuth back
GSSAPIAuthentication has not been supported
due to PreferredAuthentications trick ( 2bdba17a85 )
2013-09-06 10:40:25 +02:00
James Cammarata
ae9e38daf8 Change hostvars to a mutable mapping to more closely resemble a dict
Fixes #4030
2013-09-05 23:04:16 -05:00
James Cammarata
2cbf28385a Move check for accelerate mode deeper to account for ansible_connection
Fixes #4045
2013-09-05 20:20:25 -05:00
James Cammarata
20b0dc4abd Check for an empty executable passed into the accelerate plugin
This was breaking at least the script module, so it would seem best
to check for it and set it to the default executable value
2013-09-05 15:11:26 -05:00
James Cammarata
4bf506f683 Always run the accelerate module as the user specified in the play
Currently, the accelerate daemon will be run as the sudo_user if
specified, which is incorrect.
2013-09-05 12:04:48 -05:00
Scott Sturdivant
68bffb1233 Don't force accelerate connection for local actions. 2013-09-05 09:37:47 -06:00
James Cammarata
f6e1bdabea Ensure ports are set correctly in accelerate module 2013-09-05 09:52:10 -05:00
guersam
64db327411 Fix: raise correct error in accelerate mode 2013-09-05 15:10:45 +09:00
Stephen Fromm
d704b55860 Support using paramiko to set up accelerate connection
Adds original_transport attribute to Runner to track what the original
transport was before it is changed to 'accelerate'.
If using paramiko in original_transport, uses ParamikoConnection.  If
not, falls back to SSHConnection like before.
2013-09-04 13:57:03 -07:00
James Cammarata
fff497a1ae Make sure the accelerated port is set to a sane value 2013-09-04 15:52:39 -05:00
James Cammarata
cc21e5c90c Adding hostvars to injected variables in accelerate ssh runner
Also some minor cleanup of some fb* variables and functions, which
were remnants of the old fireball2 name

Fixes #4021
2013-09-04 15:29:46 -05:00
James Cammarata
c0fecf87d1 Increase default socket timeout to 5 minutes 2013-09-04 09:47:40 -05:00
James Cammarata
2696135b3b Display error during launch of accelerated daemon
* also minor tweak to the # of retries in the connection attempt

Fixes #4012
2013-09-03 12:28:32 -05:00
James Cammarata
53c2f4c1bb Fix race condition on creating the temp directory for ControlPersist
Fixes #3943
2013-09-03 11:00:33 -05:00
James Cammarata
d05c61d1f0 Merge branch 'devel' into fireball2
Conflicts:
	lib/ansible/playbook/__init__.py
	lib/ansible/playbook/play.py
2013-09-02 21:54:02 -05:00
James Cammarata
d69d5c294f Renaming fireball2 as 'accelerate' and removing old references 2013-08-30 13:26:27 -05:00
James Cammarata
6f6efa268b Merge branch 'smoothify-defaults' into devel 2013-08-30 08:40:47 -05:00
James Cammarata
637d3070dc Allow default variables to be overridden by inventory variables 2013-08-29 17:21:28 -05:00
James Cammarata
9806f89a04 Revert "Construct the multiprocessing manager only once."
This reverts commit 1d13ec2da3.
2013-08-29 11:00:25 -05:00
James Cammarata
7d3ae9fc75 Fixing a few bugs related to fireball2
* ssh port not being picked up, always uses default of 22
* forgot to 'import time' in the fireball2 connection plugin
2013-08-28 19:27:18 -05:00
James Cammarata
faf82bf841 Fix bug with fetch when using sudo: true
Fixes #3111
2013-08-28 13:24:16 -05:00
James Cammarata
af1dd7075f Adding chunked file transfers to fireball2 2013-08-28 11:14:58 -05:00
James Cammarata
959138d00d Added accelerate_port to plays, and made it configurable 2013-08-28 11:14:58 -05:00
James Cammarata
167f185092 Initial support for running gather_facts through fireball2 2013-08-28 11:14:58 -05:00
James Cammarata
b45342923c Initial support for sudoable commands over fireball2
Caveats:
* requiretty must be disabled in the sudoers config
* asking for a password doesn't work yet, so any sudoers users must
  be configured with NOPASSWD
* if not starting the daemon as root, the user running the daemon
  must have sudoers entries to allow them to run the command as the
  target sudo_user
2013-08-28 11:14:58 -05:00
James Cammarata
4b552457e7 Bail out correctly if socket.recv gets nothing (indicating a closed socket) 2013-08-28 11:14:58 -05:00
James Cammarata
86f01965cd Fireball2 module will now launch in a proper tmp path 2013-08-28 11:14:58 -05:00
James Cammarata
521e14a3ad Fireball2 mode working! 2013-08-28 11:14:58 -05:00
James Cammarata
acc5d09351 Initial commit for the "fireball2" connection plugin
Still needs:
* chunked file transfer/receive
* should probably move all send/recv operations to separate
  functions to reduce code duplication
* initial connection setup over ssh? or do we handle that in runner?
2013-08-28 11:14:58 -05:00
Bruce Pennypacker
cf6a76c814 changed ignore_md5_mismatch to validate_md5 2013-08-28 14:41:00 +00:00
Bruce Pennypacker
41c474d129 added optional ignore_md5_mismatch parameter 2013-08-28 14:16:57 +00:00
James Cammarata
8262f7bfac Merge branch 'with_items_and_complex_args' of https://github.com/lberruti/ansible into lberruti-with_items_and_complex_args 2013-08-22 23:01:11 -05:00
James Cammarata
462cd4f728 Merge branch 'pulls/fix-hostvars-inconsistancy' of https://github.com/ferringb/ansible into ferringb-pulls/fix-hostvars-inconsistancy 2013-08-22 13:56:34 -05:00
James Cammarata
e6ad3b7792 Merge pull request #3895 from mscherer/fix_option_new_ssh
make sure ssh do not ask password
2013-08-22 10:26:54 -07:00
James Cammarata
157b697a83 Merge branch 'always_run-6' of https://github.com/stoned/ansible into stoned-always_run-6 2013-08-22 12:10:28 -05:00
James Cammarata
af4f0bd008 Fix for "argument must be an int, or have a fileno() method" error
The issue was that, when forks == 1, the _executor() function was
being called with None for the value of new_stdin.

Fixes #3841, #3902
2013-08-21 22:45:34 -05:00
James Cammarata
978af89175 Disallow running async tasks with lookup plugins
Fixes #2897
2013-08-21 16:44:10 -05:00
James Cammarata
6bf5d19506 SSH connection plugin creates ControlPersist socket files in a secure directory
Files were being created in /tmp, but will now be created in $HOME/.ansible/cp/
Addresses CVE-2013-4259: ansible uses a socket with predictable filename in /tmp
2013-08-21 11:40:46 -05:00
Stoned Elipot
f0743fc32a Introduce the 'always_run' task clause.
The 'always_run' task clause allows one to execute a task even in
check mode.

While here implement Runner.noop_on_check() to check if a runner
really should execute its task, with respect to check mode option
and 'always_run' clause.

Also add the optional 'jinja2' argument to check_conditional() :
it allows to give this function a jinja2 expression without exposing
the 'jinja2_compare' implementation mechanism.
2013-08-20 23:09:44 +02:00
Michael Scherer
2bdba17a85 make sure ssh do not ask password
For some reason, ssh seems to ask for password even when
PasswordAuthentication is set to no, adding PreferredAuthentications
with the 2 options removed do the trick.
2013-08-20 22:02:37 +02:00
Brian Harring
31061213fa Fix inconsistency in hostvars access.
Previously, hostvars would only expose a keys() list of hosts that had
been seen yet- however you could explicitly access the host if you knew
the name, and get the content that way.  This precludes template code
from being able to safely access information about other hosts if any
limiters/tags were in use.

Additionally, the object was inconsistent for hostvars['myhost'] access
and [x[1] for x in hostvars.items() if x[0] == 'myhost'] access; this is
due to the original derivation from the dict object.  .items() would be
handled by dict.items(), using the passed in setup_cache values without
using the actual lookup content.

This patch rebases the class implementation to a py2.6 dictmixin, fixing
those issues and restoring behaviour to match what the docs claim.
2013-08-19 23:57:08 -04:00
Michael Scherer
3aac187387 fix ssh connection plugin to work with ipv6 address
Due to various inconsistencies of ssh and sftp regarding ipv6 and
ipv4 handling, some special arguments must be passed, and the
ipv6 must be passed in a specific format.
2013-08-19 15:27:20 -05:00
Michael DeHaan
dacd311474 Removing synchronize momentarily as it looks like this won't make 1.3 dates 2013-08-16 15:22:39 -04:00
Luca Berruti
eee278e02b fix 2013-08-14 13:26:14 +02:00
Luca Berruti
5048218ab5 Fix: with_items and complex_args 2013-08-14 11:49:46 +02:00
Michael DeHaan
bc02e20503 Merge branch 'rsynctake2' into devel
Conflicts:
	CHANGELOG.md
2013-08-11 16:22:36 -04:00
Abhijit Menon-Sen
1a90d01ba9 Fix some typos discovered during casual reading 2013-08-11 18:41:23 +05:30
Michael DeHaan
f8c97d6e79 Style/docs cleanup, and also improve an error message. 2013-08-10 18:58:45 -04:00
Michael DeHaan
aeb8649da5 Merge branch 'ansible-rsync-take2' of git://github.com/tima/ansible into rsynctake2 2013-08-10 18:31:45 -04:00
Michael DeHaan
4d1f447908 Merge pull request #3650 from bcoca/forking_optimizations
forking least possible
2013-08-10 15:29:19 -07:00
Michael Vogt
89bc43cab0 support i18n on sudo failure 2013-08-10 17:56:39 -04:00
Serge van Ginderachter
9991a530ab fix an encoding bug in copy content = lookup plugin
closes #3518
2013-08-10 17:37:04 -04:00
Michael DeHaan
66b29b6813 Merge branch 'feature/gh-3789-inventory-file' of https://github.com/resmo/ansible into devel 2013-08-10 17:11:48 -04:00
Michael DeHaan
1d13ec2da3 Construct the multiprocessing manager only once. 2013-08-10 09:32:46 -04:00
René Moser
e8272e365d
implemented 'inventory_file' variable. Closes GH-3789. 2013-08-10 13:04:56 +02:00
Timothy Appnel
2288a11b6a Implemented setup method in rsync action module. 2013-08-09 21:24:50 -04:00
Timothy Appnel
4a9635e04e Straighten out local-remote-delegate logic in rsync action module. Force set delegate to local if one is not defined. 2013-08-09 21:24:49 -04:00
Timothy Appnel
adbca9d251 Fixed identity key logic. 2013-08-09 21:24:47 -04:00
Timothy Appnel
9f170f579a Introduced ansible-rsync to core. 2013-08-09 21:24:46 -04:00
Chris Church
6ba4331161 Correctly check for failed status from an async task. Use runner_on_async_failed callback (instead of runner_on_failed) when an async task times out. Add runner_on_async_ok callback when a task is started in fire and forget mode. 2013-08-06 12:42:44 -04:00
Michael DeHaan
1c6b81233c Merge pull request #3692 from tima/action-init
Added support of an optional init method for action modules like rsync that need to alter the connection and other inject data before it's established.
2013-08-03 12:00:04 -07:00
Michael DeHaan
76fd769704 Merge pull request #3685 from mspaulding06/indexed_items
Indexed items lookup plugin
2013-08-03 11:36:51 -07:00
Michael DeHaan
c0ab417ef9 Don't iterate across strings in with_nested. 2013-08-03 14:22:18 -04:00
James Cammarata
ba38d6bc16 Adding support for hashed known_hosts entries
Fixes Issue #3716 - SSH known host checking needs to understand
hashed known hosts
2013-08-02 11:08:02 -05:00
Timothy Appnel
11beb38c66 Added support of an optional setup method for action modules like rsync that need to alter the connection and other inject data before it's established. 2013-07-29 19:10:43 -04:00
Matt Spaulding
5d15515bbf Add indexed_items lookup plugin 2013-07-28 13:54:17 -07:00
Vincent Hardion
09ef7751e1 Fix nested loop for more than 3 elements
- combine flatten list for each nested level instead once at the end
2013-07-24 14:19:13 +02:00
Brian Coca
576962d335 now if you set fork to 0 or a number higher than the number of hosts, it
will be readjusted to the number of hosts runner is going to deal with.
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-07-23 20:44:06 -04:00
Michael DeHaan
f0eafff1b4 Merge pull request #3621 from sergevanginderachter/rename2flattened
also rename plugin name in error message
2013-07-22 10:32:38 -07:00
Serge van Ginderachter
b40295910d also rename plugin name in error message 2013-07-22 16:47:36 +02:00
Michael DeHaan
2fe25f19dc Fix to group_by module as a result of previous conditional upgrades. 2013-07-22 10:11:19 -04:00
Michael DeHaan
e3f213e030 Fixup error reporting. 2013-07-22 08:35:31 -04:00
Michael DeHaan
c07dd07767 Add raw copy support (raw=yes), tweak tempfile error message string. 2013-07-22 08:25:55 -04:00
Michael DeHaan
0cf5e5cec3 Merge branch 'devel' of git://github.com/bradleyy/ansible into together 2013-07-21 11:47:05 -04:00
Michael DeHaan
7f462a346a Work in progress on merging changed_when. 2013-07-21 10:34:47 -04:00
Michael DeHaan
88720516a1 Merge branch 'changed_when' of git://github.com/stoned/ansible into changed_when 2013-07-21 10:14:03 -04:00
Michael DeHaan
62b39d3de5 Fix for saving conditionals in variable expressions. 2013-07-21 08:52:00 -04:00
Michael DeHaan
419661542b Added some pipes.quote ops to make sure paths with spaces in them are ok. 2013-07-20 18:28:11 -04:00
Stoned Elipot
667ad2480e Use AnsibleFilterError exception 2013-07-20 23:39:25 +02:00
Michael DeHaan
e1167d6977 tweak indentation for 'make pep8' 2013-07-20 12:48:11 -04:00
Michael DeHaan
0f4229f6c4 Merge pull request #3462 from stoned/filtererror
Introduce exception AnsibleFilterError and use it in Jinja filters.  Ign...
2013-07-20 09:12:26 -07:00
Michael DeHaan
f7dec4f8f4 Rename plugin. 2013-07-20 11:02:16 -04:00
Michael DeHaan
9dec701728 Merge pull request #3559 from sergevanginderachter/flat_list
Introduce flat_list lookup plugin
2013-07-20 07:59:44 -07:00
Michael Vogt
9caef884e1 fail early on the wrong sudo password instead of waiting until the timeout happens 2013-07-19 10:23:00 -04:00
Michael DeHaan
c98b20b2cf Slight style preferences. 2013-07-19 09:22:17 -04:00
Sharif Olorin
5fcbfa984d More informative error message on failure to resolve tmpdir 2013-07-19 09:19:40 -04:00
Sharif Olorin
1a7a779e88 Handle SSH failures when creating remote tmpdir
Bail out if the SSH command fails rather than continuing with an
empty tmp variable.
2013-07-19 09:19:26 -04:00
Michael DeHaan
8a3ea0774a Update error message since user may have specified connection type via non command line or by default. 2013-07-19 09:09:04 -04:00
Serge van Ginderachter
730b368259 Introduce flat_list lookup plugin
- hosts: localhost
    gather_facts: False
    tasks:
    - debug: msg="{{item}}"
      with_flat_list:
      - a
      - - b
        - c
        - d
        - - e
        - f
        - - g
          - h
      - i
      - j
      - - k
        - l

  # note: main list or list (sub)items can also be set as a variable

  TASK: [debug msg="{{item}}"] **************************************************
  ok: [localhost] => (item=a) => {"item": "a", "msg": "a"}
  ok: [localhost] => (item=b) => {"item": "b", "msg": "b"}
  ok: [localhost] => (item=c) => {"item": "c", "msg": "c"}
  ok: [localhost] => (item=d) => {"item": "d", "msg": "d"}
  ok: [localhost] => (item=e) => {"item": "e", "msg": "e"}
  ok: [localhost] => (item=f) => {"item": "f", "msg": "f"}
  ok: [localhost] => (item=g) => {"item": "g", "msg": "g"}
  ok: [localhost] => (item=h) => {"item": "h", "msg": "h"}
  ok: [localhost] => (item=i) => {"item": "i", "msg": "i"}
  ok: [localhost] => (item=j) => {"item": "j", "msg": "j"}
  ok: [localhost] => (item=k) => {"item": "k", "msg": "k"}
  ok: [localhost] => (item=l) => {"item": "l", "msg": "l"}
2013-07-17 13:59:41 +02:00
Brian Coca
18cb155bd5 now ANSIBLE_KEEP_REMOTE_FILE acts as boolean
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-07-14 22:08:36 -04:00
Bradley Young
23557b6e5a change the name from transpose to "together". Change to use itertools.izip_longest() rather than method cribbed from nested.py 2013-07-14 16:31:37 -07:00
Stoned Elipot
eb45f07ae3 Introduce 'changed_when' keyword to override a task's changed status with the evaluation of a Jinja2 expression 2013-07-14 21:07:45 +02:00
Bradley Young
ea93a36b10 Adding transpose lookup method. This will matrix transpose arrays that are passed in, and then work like items over the resulting list of lists. e.g.:
Transpose a list of arrays:
    [1, 2, 3], [4, 5, 6] -> [1, 4], [2, 5], [3, 6]
    Replace any empty spots in 2nd array with "":
    [1, 2], [3] -> [1, 3], [2, ""]
2013-07-11 23:45:03 -07:00
Michael DeHaan
afcd869487 Merge pull request #3451 from sergevanginderachter/template_ansible_ssh_host
allow ansible_ssh_host to be templated
2013-07-11 06:04:13 -07:00
Michael DeHaan
90dfc115d6 Merge pull request #3463 from stoned/filterskipped
Add Jinja2 filter 'skipped' to test for a registered variable from a ski...
2013-07-11 05:26:25 -07:00
Michael DeHaan
279247dfac Merge pull request #3464 from stoned/filterquote
Add Jinja2 filter 'quote' to quote string for shell usage
2013-07-11 05:25:43 -07:00
Lasse Borchard
8c8b4d56fc Fixed indention of vv() output 2013-07-08 11:18:33 +02:00
Stoned Elipot
247322bb16 Add Jinja2 filter 'quote' to quote string for shell usage 2013-07-08 00:37:23 +02:00
Stoned Elipot
906746b1f0 Add Jinja2 filter 'skipped' to test for a registered variable from a skipped task 2013-07-07 22:13:14 +02:00
Stoned Elipot
2d88c70cd5 Introduce exception AnsibleFilterError and use it in Jinja filters. Ignore this exception when trying to find the name of a task for display (callback) purpose. 2013-07-07 19:18:32 +02:00
Michael DeHaan
cf6e1f8db9 Make it possible to tell paramiko to not record new host keys, which can be slow with a large number of hosts.
-c ssh is preferred in most cases if you have ControlPersist available, otherwise if you are comfortable you
can turn off recording while leaving host key checking on, etc.
2013-07-05 22:06:54 -04:00
Michael DeHaan
aa9385411d Merge pull request #3443 from ajsalminen/arg_unicode_fix
Use .encode() instead of str() to support unicode arguments.
2013-07-05 15:26:29 -07:00
Serge van Ginderachter
129c7522d9 allow ansible_ssh_host to be templated
Use case: e.g. dual homed hosts on production en management network

The inventory_hostname is the regular host name and matches the
dns name on the production network; ansible connects to the host
through a management network; the dns name on the management network
is standardized and equals ${inventory_hostname}-mgt.mynetwork.com

Now this can be configured as the default in group_vars/all:

   ansible_ssh_host: {{ inventory_hostname + '-mgt.mynetwork.com' }}
2013-07-05 18:05:26 +02:00
Michael DeHaan
2cb7c30834 Improve interlaced output prevention when asking for host key approval. 2013-07-04 18:17:45 -04:00
Michael DeHaan
c55adc9ac9 Default to 'smart' transport, which will use OpenSSH if it can support ControlPersist. 2013-07-04 16:47:17 -04:00
Antti Salminen
d7c6cf10c2 Use .encode() instead of str() to support unicode arguments.
str() throws an UnicodeEncodeError for code points that cannot be
represented in 7-bit ASCII. This makes it impossible to use any
non-ASCII characters in module arguments. Using encode('utf-8')
gives the desired result.
2013-07-04 23:16:38 +03:00
Michael DeHaan
1683d44d2e Lock around SSH connectivity to new hosts in host checking mode such that prompts for host approval
messages do not get interlaced.
2013-07-04 16:04:31 -04:00
Michael DeHaan
cb26945d54 Close the named temporary file. 2013-07-05 01:24:08 -04:00
Michael DeHaan
3b1aa092f8 Closing stdin too early. 2013-07-05 01:20:08 -04:00
Michael DeHaan
ffadbc520a Enable paramiko to ask whether to add keys to known hosts. 2013-07-04 14:05:41 -04:00
Michael DeHaan
9db4f7a9a6 Makes host key checking the default behavior but can be disabled in ansible.cfg or by environment variable. 2013-07-03 16:47:20 -04:00
Stoned Elipot
0b3483cf03 Add Jinja2 filter |bool : return boolean interpretation of the value
'yes', 'on', '1', 'true', insensitively, and 1 are true,
 everything else is false
2013-07-03 02:13:19 +02:00
Michael DeHaan
f2fc185651 Styling: indentation 2013-06-30 18:49:49 -04:00
Michael DeHaan
c265c761d0 Slight message tweak. 2013-06-30 18:27:15 -04:00
Michael DeHaan
e6adc2f066 Merge branch 'devel' of git://github.com/arturaz/ansible into devel 2013-06-30 18:25:33 -04:00
Jeroen Hoekx
a37f55d32e Add a mandatory jinja2 filter for use in templates. 2013-06-29 16:01:34 +02:00
Jesse Keating
e1dd83f2b6 add_host should not be a changed action
The action doesn't actually change anything on a system, so setting
the status to changed is wrong. add_host is much like set_fact in that
regard.

Since changed is False by default, there is no need to explicity set
it, so just create an empty dict for result and add to it from there.
2013-06-25 10:58:55 -07:00
Arturas Slajus
9be93d6ac7 Better error for fireball + sudo mode. 2013-06-25 10:45:01 +03:00
Michael DeHaan
fc45470162 Merge branch 'with_inventory_hostnames' of git://github.com/sdossett/ansible into inv_hostnames 2013-06-19 22:01:57 -04:00
Michael DeHaan
0ce7996bb6 Merge pull request #3266 from trbs/20130619_first_found
enable use of multiple terms in first_found
2013-06-19 18:39:29 -07:00
Michael DeHaan
d2721526de Small tweak, don't merge conditionals, just evaluate each in turn. 2013-06-19 21:18:05 -04:00
Michael DeHaan
d9c0a5c37d Revert "now modules can implement with_items list globbing w/o updating"
This reverts commit 4942a06bc2.

Conflicts:

	lib/ansible/runner/__init__.py
2013-06-19 19:00:18 -04:00
trbs
87c7fa9138 enable use of multiple terms in first_found 2013-06-19 16:37:29 +02:00
Jesse Keating
1074896105 make name the parameter, with hostname as alias
name is used throughout Ansible, it's the "standard". This change
applies that standard to the add_host routine and updates the docs to
reflect that. Related to https://github.com/ansible/ansible/pull/3254
2013-06-18 21:11:52 -07:00
Michael DeHaan
fc2d25eb82 Merge pull request #3127 from bennojoy/devel
bug fix for #3077, environment settings for script
2013-06-18 17:57:10 -07:00
Michael DeHaan
7193ff5fbf Merge pull request #3250 from gildegoma/more_magical_ansible_ssh_user
Make 'ansible_ssh_user' available in templates
2013-06-18 17:08:29 -07:00
Michael DeHaan
92754065bf Remove debug statement. 2013-06-18 14:41:52 -04:00
Michael DeHaan
5a504e3a3b Tweak error messages for undefined variables feature. 2013-06-18 13:30:02 -04:00
Michael DeHaan
637983cf31 cleanup example config file + Squashed commit of the following:
commit c36b66dc952dfff91043ecbca56cf3f1f8f00703
Merge: 240d7bf f4cf934
Author: Michael DeHaan <michael@ansibleworks.com>
Date:   Tue Jun 18 13:04:51 2013 -0400

    Merge branch 'unevaluated-vars' of git://github.com/lorin/ansible into lorin_undefined

    Conflicts:
    	lib/ansible/runner/__init__.py

commit f4cf93436767f73b62a16067ab5e628830045896
Merge: 2531440 07a1365
Author: Lorin Hochstein <lorin@nimbisservices.com>
Date:   Thu Jun 6 11:07:41 2013 -0400

    Merge branch 'devel' into unevaluated-vars

commit 253144045cbafd7d72836f1017c62ac4ba623186
Author: Lorin Hochstein <lorin@nimbisservices.com>
Date:   Thu Jun 6 11:06:37 2013 -0400

    Fail template from file on undefined vars

    If config option is set, raise an exception if templating from a
    file and a variable is undefined.

commit aecb71d8b75257f0f3e11a9b176fc3737aecef8d
Author: Lorin Hochstein <lorin@nimbisservices.com>
Date:   Wed Jun 5 17:12:12 2013 -0400

    Add fail_on_undefined flag

    Add a fail_on_undefined flag to the template and template_from_string methods.

    If this flag is true, then re-raise the ninja2.excpetions.UndefinedError instead of
    swallowing it.

commit cbb1808f0585f01536240aee05a1bfd06c4b4647
Merge: d4bbf49 41425fb
Author: Lorin Hochstein <lorin@nimbisservices.com>
Date:   Wed Jun 5 16:14:12 2013 -0400

    Merge branch 'devel' into unevaluated-vars

commit d4bbf492b0b63c789d66ab60d0ec634d100fca82
Author: Lorin Hochstein <lorin@nimbisservices.com>
Date:   Mon Jun 3 19:46:13 2013 -0400

    template: Raise UndefinedError exception

    In template_from_string, raise an undefined error if it occurs.

    Have the caller catch it and throw an AnsibleUndefinedVariable

commit c94780280515f1f3756fdc429b2b1e87b365e9b7
Merge: 8d919d6 be33bcf
Author: Lorin Hochstein <lorin@nimbisservices.com>
Date:   Mon Jun 3 10:09:43 2013 -0400

    Merge branch 'devel' into unevaluated-vars

commit 8d919d6c97b28a42f47ca7248c542695baf6175f
Merge: 0f68ad8 b8630d2
Author: Lorin Hochstein <lorin@nimbisservices.com>
Date:   Thu May 30 16:27:48 2013 -0400

    Merge branch 'devel' into unevaluated-vars

commit 0f68ad8193ac17488e339a258f8c63fdae399c26
Author: Lorin Hochstein <lorin@nimbisservices.com>
Date:   Thu May 30 14:32:03 2013 -0400

    Optionally fail task on undefined variables

    This patch introduces a new configuration option called
    error_on_undefined_vars, which defaults to false.

    If this option is set to true, then a task which has unevaluated
    variables in its arguments will fail instead of running. Output looks
    like this:

        TASK: [set rabbitmq password] *************************************************
        fatal: [10.20.0.7] => Undefined variables: rabbitmq_user, rabbitmq_password
2013-06-18 13:24:30 -04:00
Gilles Cornu
48fe7ac19d Enlarge scope of 'ansible_ssh_user' magic variable
Allow to use ansible_ssh_user variable in `sudo_user` or `when` clauses
2013-06-18 17:53:52 +02:00
Michael DeHaan
70a9be27f6 Merge pull request #3217 from dagolden/topic/late-sudo_user
Expand sudo_user after variable merging
2013-06-16 19:56:01 -07:00
Brian Coca
4942a06bc2 now modules can implement with_items list globbing w/o updating
hardcoded lists in ansible code, just add WITH_ITEMS_USES_LIST in a
comment anywhere, and of course, support recieving params as list.

Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-06-15 16:28:43 -04:00
David Golden
d65f45f0b2 Expand sudo_user after variable merging
Previous commit c3659741 expanded sudo_user during task construction,
but this is too early as it does not pick up variables set during
the play.

This commit moves sudo_user expansion to the runner after variables
have been merged.
2013-06-14 09:59:31 -04:00
bennojoy
017e7f24ed bug fix for #3077, environment settings for script 2013-06-05 19:59:39 +05:30
Peter Hudec
e8ff3c43ad fixed first_available_file and roles support
for copy and template action
2013-06-03 22:47:50 +02:00
Steven Dossett
e0a15d0c50 Updated to support inventory options from command line 2013-06-03 12:42:52 -04:00
Michael DeHaan
3b77d17a26 Spelling fix. 2013-06-02 16:03:41 -04:00
Michael DeHaan
4a93c247bd Another lookup plugin relative path tweak. 2013-06-01 18:22:56 -04:00
Michael DeHaan
b8a66ce5bb Lookup plugins in included files now look in paths relative to their files, allowing role usage. 2013-06-01 18:15:38 -04:00
Michael DeHaan
c4a125e6d9 Add ability to use |success and |failed as Jinja2 filters.
Example:

when: registered_variable|failed
2013-06-01 17:38:12 -04:00
Steven Dossett
1ff93e6b08 Plugin with_inventory_hostnames - loops generated from groups or
hosts in inventory
2013-06-01 11:42:44 -04:00
node
a58baae2c4 Make the actual user used for executing play available as 'ansible_ssh_user' variable 2013-05-31 16:03:56 -04:00
Michael DeHaan
fd77804bff Merge pull request #3017 from sergevanginderachter/roles-script
Add roles support for the script module
2013-05-29 15:54:18 -07:00
Michael DeHaan
a9fcea5893 Merge branch 'escape' of git://github.com/ngrilly/ansible into repr 2013-05-29 18:29:16 -04:00
Jeremiah Heller
7de718cd51 Fix copy when force=no and update _remote_md5 docs.
Previously setting force=no caused copy to subversively
fail when target did not exist on remote host.

Caused by Runner._remote_md5 returning 1
when files don't exist, rather than 0.
2013-05-29 10:14:47 -04:00
Serge van Ginderachter
5859af7285 script support for roles: use the files/ directory
instead of an additional scripts/ directory
2013-05-25 16:51:59 +02:00
Michael DeHaan
3a635d2d26 Lots of formatting fixes 2013-05-24 23:46:23 -04:00
Michael DeHaan
84623441e1 Merge pull request #2945 from jsmartin/new_fetch
Fetch destination path can now be overriden.
2013-05-24 19:57:19 -07:00
Michael DeHaan
4fc6be8579 Merge pull request #2993 from SirScott/pkgng
Make pkgng and with_items result in a single module call.
2013-05-24 19:55:56 -07:00
Michael DeHaan
4b988dbd43 Merge pull request #2978 from bryanlarsen/basename
add basename and dirname to the core jinja2 filters
2013-05-24 19:54:36 -07:00
Michael DeHaan
27236cf598 Merge pull request #2998 from SirScott/runner-permissions
Ensure the tmp_path is sufficiently open.
2013-05-24 19:52:23 -07:00
Serge van Ginderachter
94028852d9 Make debug module always verbose in playbooks
Created a new flag 'verbose_always' handled by
on_ok callback, similar to the 'verbose_override'
flag used by the setup module.
2013-05-25 00:27:23 +02:00
Serge van Ginderachter
4c9ebe8522 Add roles support for the script module
allows to put scripts directly in a dir within the
role:

 roles/<role>/scripts/..

Same as the copy and template module.

As requested in and closes #2969
2013-05-24 22:10:46 +02:00
Nicolas Grilly
75ceb80572 Escape args injected in new style modules 2013-05-24 01:01:07 +02:00
Scott Sturdivant
5516ece859 Ensure the tmp_path is sufficiently open. 2013-05-23 12:13:09 -06:00
James Martin
3c131dbd2b Initial Commit. 2013-05-23 13:33:36 -04:00
Scott Sturdivant
d91bc1692e Make pkgng and with_items result in a single module call. 2013-05-23 09:43:38 -06:00
Bryan Larsen
f629baef11 add basename and dirname to the core jinja2 filters 2013-05-22 14:06:18 -04:00
Michael DeHaan
16709ecd76 Replace tab with spaces. 2013-05-19 19:26:30 -04:00
Dimos Alevizos
e96bc981ce Set paramiko's logging level
Excplicity set paramiko's logging level to WARNING.
By default it inherits ansible's DEBUG logging level (set in
callbacks.py) and fills the log file with useless debug messages.
Obviously it only applies if log_path is set in ansible.cfg
2013-05-19 19:26:30 -04:00
Maykel Moya
60f24bb077 Remove unused modules 2013-05-18 23:11:47 +02:00
Maykel Moya
f52e3dee70 Don't hardcode chroot executable path 2013-05-18 23:09:38 +02:00
Ben Ritcey
0938d4d89a Allow the remote MD5 checks to be run via sudo 2013-05-18 16:20:54 -04:00
Michael DeHaan
8475a92dec Merge pull request #2939 from mmoya/lookup-crypted-passwds
Add support for crypted passwords to password lookup
2013-05-18 13:17:41 -07:00
Stoned Elipot
94ba0f740a Fix for issue #2916 : for each host promote the host variables as globally scoped variables for the sake of the groups determination 2013-05-16 18:57:05 +02:00
Maykel Moya
45f5447f9f Fix name in copyright 2013-05-16 18:49:35 +02:00
Maykel Moya
96afc3f462 Add support for crypted passwords to password lookup
Added new parameter 'encrypt' with same semantics from that of
vars_prompt. When encryption is requested a random salt will be
generated and stored along the password in the form:
'<password> salt=<salt>'.

Also store passwords with an ending '\n' for easier looking at files
with console tools. File content was being already rstripped so this
is harmless.
2013-05-16 13:24:54 +02:00
Serge van Ginderachter
7eeab168bc bug fix in first_found search path assembly 2013-05-13 13:48:56 +02:00
Michael DeHaan
a78edbb45c More pep8 2013-05-11 17:26:06 -04:00
Michael DeHaan
05a4513a03 Merge branch 'group-by-global' of git://github.com/stoned/ansible into devel
Conflicts:
	lib/ansible/runner/action_plugins/group_by.py
2013-05-11 14:28:04 -04:00
Michael DeHaan
ad777f6538 Fix contrib link. 2013-05-11 14:03:07 -04:00
Stoned Elipot
75100201a2 Allow globally scoped variables with group_by module's conditionals and key argument 2013-05-10 00:02:14 +02:00
Michael DeHaan
9ed177e25e Merge pull request #2840 from toshywoshy/devel
Patch so that delegate_to also uses ansible_ssh_private_key_file
2013-05-05 09:45:35 -07:00
Toshaan Bharvani
62b53f4d2c changed the delegate_to to also use ansible_ssh_private_key_file from the inventory file 2013-05-05 16:54:26 +02:00
Serge van Ginderachter
53a7ab74c8 use os.path.join instead of hardcoded unix separator in first_found lookup plugin 2013-05-02 13:58:23 +02:00
Michael DeHaan
a81089231e Register skipped tasks so we can at least check their changed/not-changed status. 2013-04-28 10:13:58 -04:00