Michael DeHaan
1c632af2c9
Merge pull request #5468 from jeromew/ansible_ssh_alt
...
fix issue #5372 on ssh_alt: accept -K option for a user with NOPASSWD
2014-01-04 10:55:58 -08:00
Michael DeHaan
a3d90e8a87
Merge pull request #5498 from j2sol/exit_setup_early
...
Return early from setup step when possible
2014-01-04 10:47:35 -08:00
Michael DeHaan
227e8e31c9
Merge branch 'use_comps' of git://github.com/j2sol/ansible into devel
2014-01-04 13:36:40 -05:00
Michael DeHaan
10350d1639
Update various copyrights. Not complete, but sufficient.
2014-01-04 13:32:04 -05:00
Jesse Keating
23720ff19d
Use list comprehensions for efficiency
...
For loops can be inefficient, particularly when doing a dot command with
them. https://wiki.python.org/moin/PythonSpeed/PerformanceTips#Loops and
https://wiki.python.org/moin/PythonSpeed/PerformanceTips#Avoiding_dots ...
This patch makes use of list comprehensions to be as efficient as
possible while still retaining order. Efficiency was lost a bit when
switching away from sets() but this gains some of it back.
2014-01-03 18:07:00 -08:00
Jesse Keating
35328ed503
Return early from setup step when possible
...
The _list_available_hosts call can be lengthy, and in the case where
gather_facts is disabled the call is pointless. So re-arrange the logic
to return early from _do_setup_step when gather_facts is false.
2014-01-03 16:39:13 -08:00
Michael DeHaan
c41a23a35a
Complete removal/refactoring of conditional deprecations.
2014-01-03 19:23:19 -05:00
Michael DeHaan
8e5b7d3095
Remove code underlying when_* and only_if, which are deprecated features slated for removal in the 1.5 release.
2014-01-03 19:13:21 -05:00
Michael DeHaan
28b9fd4e30
We have had only_if, when_foo, etc, deprecated for a while and said they would be removed in 1.5. Now they are, with friendly error messages still.
...
Users of these features should use "when:" as documented at docs.ansible.com.
Similarly, include + with_items has been removed. The solution is to loop
inside the task files, see with_nested / with_together, etc.
2014-01-03 13:47:54 -05:00
James Tanner
21fdb2bbc7
Fixes #5200 Handle template contents with unicode strings better
2014-01-03 11:18:20 -05:00
James Tanner
fc473b3246
Fixes #5146 Handle missing stdin when running under celery with rabbitmq or redis
2014-01-03 09:46:16 -05:00
Michael DeHaan
de2ffc1276
Don't need to document these guys.
2014-01-02 17:55:59 -05:00
James Tanner
cb2214d6f8
Fixes #4935 Synchronize module: set destination to an fqdn if connection is not local, and abide by ansible_remote_user
2014-01-02 14:58:12 -05:00
jctanner
99560e3902
Merge pull request #5047 from sergevanginderachter/synch_template_ansiblesshhost
...
synchronize: allow ansible_ssh_host to be templated
2014-01-02 09:05:14 -08:00
jeromew
b2cd4a62de
fix issue #5372 on ssh_alt: accept -K option even for a user with NOPASSWD
2013-12-31 14:29:46 -05:00
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
Michael DeHaan
5b3c796641
Update constants.py
...
Lookup plugins for optional web services do not warrant advertising in ansible.cfg.
2013-12-21 08:46:11 -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
James Tanner
993e0f057e
Allow for no role dependencies in role metadata
2013-12-19 14:19:14 -05:00
James Tanner
1ef9930b80
Addresses #5341 Expand home directories when searching for roles in ansible-playbook
2013-12-18 23:31:03 -05:00
James Tanner
5d022182fe
Fixes #5341 Use constants.py to set the roles directory
2013-12-18 22:40:58 -05:00
John Barker
4bf9f714d0
Fix inventory parsing so that FQDN can be parsed without throwing ssh
...
port parsing errors
Fixes problesm introduced by 948d019fef
Adds testcases to defend
2013-12-18 21:33:05 +00:00
jctanner
ea8cd62b19
Merge pull request #5259 from mvo5/bugfix/improve-error-on-invalid-vars-file
...
improve error on invalid vars file (if its a list instead of a dict)
2013-12-17 11:12:53 -08:00
jeromew
e4a3f49fa2
ssh_alt - only trigger 'fatal' when returncode == 255 (interpreted as 'could no connect')
2013-12-17 11:42:00 -05:00
willthames
12005a1cd0
Move more responsibility to common EC2 module
...
Moved `AWS_REGIONS` into `ec2` module
Created `ec2_connect` method in `ec2` module
Updated modules able to use `ec2_connect` and `AWS_REGIONS`
2013-12-17 14:07:24 +10:00
jctanner
cd3144af5d
Merge pull request #5178 from cavassin/devel
...
Prevents UnicodeEncodeError
2013-12-16 13:23:16 -08:00
James Tanner
f3a4705a9c
Revert "Merge pull request #4874 from leth/editable_install"
...
This reverts commit 15b89b45e1
, reversing
changes made to 3d836a1ab7
.
2013-12-16 15:57:03 -05:00
jctanner
15b89b45e1
Merge pull request #4874 from leth/editable_install
...
Fix setup.py to work with 'pip install -e .'
2013-12-16 11:22:45 -08:00
Sébastien Bocahu
c8d5846ab9
Let merge hash_bahaviour work with dynamic inventory
2013-12-16 19:55:20 +01:00
jctanner
3d836a1ab7
Merge pull request #5247 from jeromew/ansible_ssh_alt
...
ssh_alt.py / decrease # of ssh roundtrips
2013-12-16 07:08:35 -08:00
jeromew
5c965a75f0
ssh_alt.py / decrease # of ssh roundtrips
2013-12-13 14:23:40 -05:00
jctanner
1679d83637
Merge pull request #5131 from janeznemanic/devel
...
Fix for issue #4730 - stacktrace when deferenencing a non-existent group
2013-12-13 11:00:41 -08:00
jctanner
301a1189dd
Merge pull request #5122 from willthames/openlog_str
...
Make first argument to syslog.openlog be a string
2013-12-13 08:51:48 -08:00
Ferenc Grecu
56642f9b04
Remove unused parameter from _get_config
2013-12-12 18:48:02 +02:00
Michael Vogt
bef5ee2c3b
improve error on invalid vars file (if its a list instead of a dict)
2013-12-12 09:56:30 +01: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
Wanderlei Antonio Cavassin
6ba93817a9
Avoid UnicodeDecodeError exception when passing module args
2013-12-06 12:59:43 -02:00
James Tanner
bf78d8cf73
Addresses #5090 setup module was using path.is_file instead of path.isfile
2013-12-05 11:36:54 -05:00
cavassin
10f5af82f9
Prevent UnicodeEncodeError
...
Prevents UnicodeEncodeError: 'ascii' codec can't encode character, while printing shell commands output
2013-12-05 13:17:57 -02: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
Michael DeHaan
801ca96a8b
Merge pull request #5152 from sivel/too-many-ps
...
The word skipped only has 2 p's not 3
2013-12-03 16:21:11 -08:00
Matt Martz
5f0f3566a6
Skipped only has 2 p's not 3
2013-12-03 15:42:34 -06:00
Matt Martz
8873c3675b
Ensure we are looking for the right import to determine if the module_style is new. Fixes #5148
2013-12-03 15:36:33 -06:00
jctanner
2670529671
Merge pull request #5090 from dragon3/hostname_support_amazon_linux
...
hostname module: add support for Amazon Linux
2013-12-03 12:34:55 -08: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
jctanner
93159cb9cd
Merge pull request #4996 from sivel/rax-module-utils
...
Implement ansible.module_utils.rax
2013-12-02 11:55:59 -08:00
Janez Nemanic
8752ae6909
Fix for issue #4730 - stacktrace when deferenencing a non-existent group
2013-12-02 18:25:43 +01:00
Will Thames
76aca4d547
Make first argument to syslog.openlog be a string
...
syslog.openlog expects its first argument to be a string.
Without this change running under ipython fails.
2013-12-02 19:11:27 +10:00
James Cammarata
9101c2af98
Fix traceback in template error detection code
...
Fixes #5081
2013-11-29 08:47:54 -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
dragon3
d39e6fda92
hostname module: add support for Amazon Linux
2013-11-28 09:31:25 +09: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
James Cammarata
1f80aa768a
Fix bug in error detection code, where a zero-length string was causing a traceback
...
Fixes #5064
2013-11-27 11:57:15 -06: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
Antonio Zanardo
8dbd91b5ad
fix typo in deprecation warning
2013-11-23 19:15:51 -02: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
Matt Martz
3f2cbb7583
Add ansible.module_utils.rax
2013-11-21 15:46:25 -06:00
James Tanner
9b991b9154
Version bump for 1.5
2013-11-21 16:33:23 -05: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
Michael DeHaan
fc909b453f
Make the legacy template detection system not hit a false positive when
...
replacing a \$ with $.
2013-11-18 17:51:57 -05:00
jctanner
93223510af
Merge pull request #4936 from stoned/group-get_hosts-perf2
...
Improve Group.get_hosts() performance.
2013-11-18 14:13:08 -08: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
Michael DeHaan
f18acee779
Merge pull request #4937 from skyl/synchronize-keyerror
...
KeyError: 'delegate_to' lookup in sync module needs to be checked to see if defined for ad hoc
2013-11-18 11:40:27 -08:00
James Tanner
e8b54dd073
Fixes #4852 properly evaluate log_path writability
2013-11-18 10:40:49 -05:00
Skylar Saveland
7bc64581d7
KeyError: 'delegate_to' no more
2013-11-17 21:26:17 -08:00
Stoned Elipot
b00bf02129
Improve Group.get_hosts() performance.
...
- reduce hosts group list to unique elements faster
- add a cache of already computed hosts group list
2013-11-18 03:48:55 +01:00
jctanner
009fdbf96a
Merge pull request #4896 from mjschultz/aws-access-keys
...
Check for AWS keys using boto names
2013-11-14 12:59:07 -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
0f0a89b34e
Merge pull request #4758 from alanfairless/group-host-var-dirs
...
Support organizing group and host variables across multiple files in a directory
2013-11-14 11:57:11 -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
jctanner
e4494be8c6
Merge pull request #4803 from dragon3/devel
...
Don't fail if ec2_access_key/ec2_secret_key not specified to use IAM rol...
2013-11-14 05:55:48 -08:00
Michael J. Schultz
5f9485499c
Check for AWS keys using boto names
...
- see https://github.com/boto/boto#getting-started-with-boto
2013-11-13 16:01:39 -06: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
9a7765daf7
Merge pull request #4351 from 2m/leading-range-fix
...
Allow leading ranges in the inventory host entries.
2013-11-13 10:48:57 -08: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
James Tanner
dc41bb8085
Merge pull request #4207 from ashorin/ansible
...
Fail playbook when serial is set and hadlers fail on set.
2013-11-12 14:37:07 -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
jctanner
0c29807ba3
Merge pull request #3993 from stoned/inventory-script-all-group-fix
...
Avoid duplicates of the 'all' group when using inventory script.
2013-11-11 10:42:00 -08:00
Marcus Cobden
8d98a55df1
Fix setup.py to work with 'pip install -e .'
2013-11-11 14:00:38 +00:00
Serge van Ginderachter
80fd22dce6
Check real user's known_hosts when sudo ansible...
...
closes #4834
2013-11-09 13:29:39 +01:00
James Tanner
74e7eba528
Fixes #4506 test length of context before checking invalid indexes
2013-11-08 13:17:02 -05: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
f51b8ffde9
Merge pull request #4836 from dekked/devel
...
Bug fix: support running handlers parametrized by name
2013-11-07 13:18:33 -08:00
James Tanner
898de833b0
Merge pull request #4413 from jerm/ansible
...
Add capability to pass in a PATH prefix to run_command and allow pip module
to utilize that to make virtualenv bin/ available in pip installs
2013-11-07 15:51:27 -05:00
Alan Descoins
bb6f02d0e8
Support running handler parametrized by name.
2013-11-07 16:54:06 -02: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
d93780bc8a
Addresses #4635 add list instead of join
2013-11-05 14:44:27 -05:00
James Tanner
2b5005687a
Fixes #4635 pass role conditionals to dependent roles
2013-11-05 14:38:21 -05:00
James Tanner
91aa7b51df
Remove invalid ipv6 parameter from setup execution
2013-11-04 17:23:32 -05: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
dragon3
ff5bd7fe06
Don't fail if ec2_access_key/ec2_secret_key not specified to use IAM role.
2013-11-04 23:41:44 +09:00
willthames
76c810afe3
AWS_ACCESS_KEY misspelt in shared EC2 connection library
2013-11-04 15:24:53 +10:00
Michael DeHaan
eab6737209
Clarify a warning message.
2013-11-03 12:47:07 -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
James Tanner
afa5988391
Fixes #4540 Use shared module snippet to evaluate ec2 credentials
2013-11-01 11:59:24 -04:00
Alan Fairless
0824f004d9
Revised patch for more password entropy
2013-11-01 09:51:35 -05:00
James Tanner
dc4d589ce0
Fixes #4767 detect hard links and set state in add_file_info
2013-11-01 09:41:22 -04:00
Michael DeHaan
b1b5280075
Reapply pep8 changes from previous revert.
2013-10-31 19:47:44 -04: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
465f3b1c91
This allows type=dict in a module to allow passing in a real dict or JSON.
2013-10-31 18:46:13 -04:00
Michael DeHaan
8b2cd6413b
When inside an apt or yum task account for multiple conditionals. Fixes 4745.
2013-10-31 17:19:58 -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
Alan Fairless
65e5331079
Allow organizing host/group vars in a directory
...
So instead of having:
group_vars/production.yml
A user could chose to reorganize to:
group_vars/production/staff.yml
group_vars/production/networks.yml
group_vars/production/dns.yml
(Backwards compatible.)
2013-10-31 12:22:46 -05:00
Alan Fairless
babde9a84c
refactor to catch edge cases, remove repeated code
...
- Move all the supported YAML file extensions into a constant
- Use helper functions to avoid duplicate code for group/host vars
- Catch and disallow some confusing situations, such as the presence of
multiple group/host vars files for the same group/host, but with
different extensions. For example having both group_vars/all.yml and
group_vars/all.yaml.
- Catch and report file system permission issues, symlink errors,
unexpected file system objects
- Trivial performance improvement from making fewer stat system calls
- Restructuring that makes it easy for a following patch to support
directory recursion
2013-10-31 12:18:17 -05: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
b5c9d5a59b
Inventory directory should always be absolute. Fixes #4535 .
2013-10-30 20:48:53 -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
Michael DeHaan
73dbab702f
Don't run lookup plugins while trying to simplify the input datastructure.
2013-10-28 09:08:53 -04:00
Michael DeHaan
6d0da41a55
No need to template modules with Jinja2 as this can confuse some docstring comments.
2013-10-28 08:18:24 -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
4587528b99
Fix typo in comment.
2013-10-26 19:32:07 -04:00
Michael DeHaan
d409352c85
Remove some interior imports in the code. Not really needed but nice to have them gone.
2013-10-26 19:26:43 -04:00
Michael DeHaan
e6c28658b4
Add in some code to pre-template datastructures prior to template usage. This prevents a certain class of error
...
where filter evaluations can happen too early due to the template engine recursion being a bit limited.
Addresses #4662
2013-10-26 19:11:13 -04:00
Michael DeHaan
f05a3a81f9
Add missing file.
2013-10-26 11:39:22 -04:00
Michael DeHaan
54c902f102
Identation + misc PEP8 fixes.
2013-10-26 11:18:11 -04:00
Michael DeHaan
bbb359870e
Add package file.
2013-10-26 11:10:54 -04: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
40886c42b5
Fixes #4561 Compare task name without role prefix for start-at-task
2013-10-25 16:09:43 -04: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
James Tanner
9b1fe455c6
Fixes #4549 Do not call lookup plugins when templating a task's name
2013-10-25 10:27:38 -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 Tanner
b803aac6ec
Fixes #4500 change ec2 module params to type=bool
...
Revert 4833c2fdf0
2013-10-24 09:19:25 -04:00
James Cammarata
b9dd514713
Minor fix for putting 0-length files over accelerated connections
...
Fixes #4652
2013-10-23 13:09:25 -07:00
James Tanner
4833c2fdf0
Fixes #4500 python bools return uppercase True and False, so allow those for BOOLEANS in module common
2013-10-23 15:54:36 -04:00
James Tanner
214b0b052c
Fixes #4608 add lookup to template globals to make plugins work again
2013-10-22 12:00:54 -04:00
Dylan Martin
2c28e1daea
unarchive module & action_plugin added
2013-10-21 15:22:42 -05:00
James Tanner
4f13967386
Fixes #4536 Get the remote_user from multiple sources in a preferred order
2013-10-21 12:07:51 -04:00
Timothy Appnel
cbae9c913e
synchronize module src and dest handles template markers.
2013-10-19 22:39:25 -04:00
Michael DeHaan
60944b81f0
Provide warning about "with_items: '{{ loop }}'" being redundant only when {{ starts the expression value. Fixes #4582 .
2013-10-19 14:24:12 -04:00
Michael DeHaan
2bd8cb5790
Make the deprecation detector in templates more accurate. Fixes #4514 .
2013-10-19 14:14:16 -04:00
Michael DeHaan
4125b05bf3
Allow a defaults file to solely define a role. Some typo fixes.
2013-10-19 14:01:20 -04:00
Michael DeHaan
64bbeb9d24
Suggest fixing unbalanced quotes in a bit less cases. Fixes #4501
2013-10-19 13:57:28 -04:00
Michael DeHaan
7f9504d14d
Fix a typo.
2013-10-19 13:52:48 -04:00
Michael DeHaan
8d3db80370
Some misc cleanup and removal of unused imports.
2013-10-19 13:50:14 -04:00
Michael DeHaan
21d4400c96
Misc pep8 fixes
2013-10-19 13:03:15 -04:00
Michael DeHaan
c933a4c59a
Fix indentation depth.
2013-10-19 13:03:14 -04:00
Michael DeHaan
5031104c3a
Finishing touches on template cleanup.
2013-10-19 11:40:48 -04:00
Michael DeHaan
1e85c7544b
Further WIP on template cleanup.
2013-10-19 11:39:52 -04:00
Michael DeHaan
35cb9dc22f
Work in progress about cleaning up template code.
2013-10-19 11:39:52 -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
James Tanner
8478e82647
Fixes #4583 enforce that vars_files is a list
2013-10-18 11:19:16 -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
Martynas Mickevicius
7ecb5fbc9c
Handle comment on inventory group line.
2013-10-17 13:16:35 +03:00
Martynas Mickevicius
44279ce34f
Allow leading ranges in the inventory host entries.
2013-10-17 13:16:35 +03:00
jctanner
6480945184
Merge pull request #4541 from Kami/improve_template_render_error_messages
...
Make errors which get thrown during template rendering more user-friendly
2013-10-16 17:52:07 -07:00
Stoned Elipot
4430d0f5a6
when searching for a plugin only look for a regular file
2013-10-16 21:23:37 +02:00
Tomaz Muraus
922f61899e
Throw a more user-friendly exception during template rendering process.
2013-10-16 16:48:17 +02: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
Brian Coca
bd9acedb57
fixed name colision between warnings dict and module
...
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
2013-10-15 14:58:15 -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
jctanner
69fa5954fd
Merge pull request #3932 from jocelynj/devel
...
Add option remote_user to task level, to specify the ssh login user
2013-10-15 06:34:57 -07: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
c90a82fd52
Handle possible scenario where conditional might be an integer (whoa!) down the error path. Super rare but fixes #4483 .
2013-10-13 09:19:41 -04:00
Michael DeHaan
9ea54fcaaf
Fixes a dev branch glitch where a conditional could be applied to multiple tasks. Also improves the errors on parsing bad conditionals to make them less confusing to users.
2013-10-12 17:39:28 -04:00
Thomas Omans
632232259a
Adding config flag role_path for common/global roles
...
Using ANSIBLE_ROLE_PATH environment variable or role_path in ansible.cfg
can configure paths where roles will be searched for
extra paths will only be used as a backup once regular locations are exhausted
2013-10-12 10:15:30 -04:00
Michael DeHaan
43df00550d
Merge pull request #3827 from mscherer/disable_callbacks
...
add a way for callback to disable itself
2013-10-12 07:03:06 -07:00
Michael DeHaan
1b2d4c328c
Cache patterns a bit higher up to make things a little more efficient. See #4469 .
2013-10-11 22:24:37 -04:00
Michael DeHaan
d168c709d5
Fix an issue where the ordering of an include statement is processed ahead of the conditional in the included statement,
...
which required a redundant check to see if a variable was defined rather than short circuiting.
Fixes #4469
2013-10-11 20:43:58 -04:00
Michael DeHaan
add45d2ca9
Fixup legacy var detector.
2013-10-11 19:16:36 -04:00
Michael DeHaan
709ffda3d1
Tweak only_if deprecation detector.
2013-10-11 19:12:25 -04:00
Michael DeHaan
a45494a896
Add warnings feature.
2013-10-11 19:04:26 -04:00
Michael DeHaan
9637f620d7
Deprecation warnings of several flavors, nice and purple and can be disabled
...
in ansible.cfg.
2013-10-11 18:37:39 -04:00
Michael DeHaan
a017a69bb3
Have the parser explain another type of YAML gotcha to reduce the need for users to ask how to resolve it.
2013-10-11 17:34:26 -04:00
Michael DeHaan
861f076df5
Tweak the syntax-detector-warning-suggester-message (SDWSM) a little.
2013-10-11 17:34:26 -04: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
James Cammarata
d73a5da9e5
Merge pull request #4453 from pschwartz/fix_cfg_load_order_to_match_docs
...
GH-4452 Corrected config load order to match docs
2013-10-11 07:25:05 -07:00
Philip Schwartz
65c8c691f7
GH-4452 Corrected config load order to match docs with
...
cwd > ~ > /etc
Signed-off-by: Philip Schwartz <philip.schwartz@rackspace.com>
2013-10-11 08:33:54 -05: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
Serge van Ginderachter
c2e5f783da
Add caching to pattern enumeration
...
Inventory._hosts_in_unenumerated_pattern()
Was TODO: cache this logic so if called a second time the result is not
recalculated
2013-10-10 15:41:48 +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
Jeremy Price
9da5043f18
Adding path_prefix to run_command so that one can pass in a path to the run environment if you nees something in a non-default path.
2013-10-09 12:50:29 -04:00
James Cammarata
948d019fef
Detect IPv6 addresses in INI inventory
...
Prevents parts of the IPv6 address from being interpreted as a port
(for example, :80).
Fixes #3888
2013-10-09 11:11:09 -05:00
Michael DeHaan
6febc97104
Add a warning about include + with_items so nobody uses it.
2013-10-08 18:12:18 -04:00
James Cammarata
98f6bc1f63
Apply tags to dependent roles correctly
...
Fixes #4339
2013-10-08 15:13:02 -05:00
Michael DeHaan
c69e19c6a6
Enhance references to logging functionality. Fixes #3431 .
2013-10-08 08:26:40 -04:00
Michael DeHaan
f081c68a65
Prevent duplicately loaded handlers from running more than once.
...
Fixes #3863
2013-10-07 17:15:19 -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
5e30cd999c
Make it possible to say:
...
tags: 42
And have the tag be a string, not an int, so --tags matches.
Fixes #4110
2013-10-07 15:19:30 -04:00
Michael DeHaan
8fc46a3a5a
Return inventory objects in the order they are presented. Additionally, fix host slicing such that it works on Python terms with
...
zero indexed lists and a non-inclusive final element.
2013-10-07 15:06:15 -04:00
Michael DeHaan
19386c43a7
Merge
2013-10-07 10:02:21 -04:00