Commit Graph

2471 Commits (616d7e53b1c02c767e62b594d473218471e0d4f1)

Author SHA1 Message Date
James Cammarata 233aae5861 Reverting paramiko_ssh/alt changes from yesterday 2014-01-16 09:45:28 -06:00
Matt Martz d46037d64c Do not log the rax api_key argument in module invocation 2014-01-15 16:38:03 -06:00
James Cammarata 36e6709771 Don't use pipelining when ANSIBLE_KEEP_REMOTE_FILES is enabled 2014-01-15 16:03:18 -06:00
James Cammarata df13b19fe1 Moving {ssh,paramiko}_alt connection types to be the defaults
The previous implementations will be kept for now as _old
2014-01-15 16:03:18 -06:00
James Cammarata c27db84e41 Adding paramiko_alt - pipelining support for paramiko connections 2014-01-15 16:03:17 -06:00
jctanner 91c5c9da08 Merge pull request #5465 from deonbredenhann/false_mandatory_variable
Treat a False mandatory variable as defined.
2014-01-14 14:15:52 -08:00
jctanner 59d99c17b3 Merge pull request #5337 from bob-smith/bugfixFQDNParsing
Fix inventory parsing so that FQDN can be parsed without throwing ssh port error
2014-01-14 08:28:38 -08:00
jctanner a6bc63512e Merge pull request #5308 from zecrazytux/fix/hash_merge_dynamic_inventory
Let merge hash_bahaviour work with dynamic inventory
2014-01-14 07:58:25 -08:00
jctanner 671b0454c6 Merge pull request #4987 from jpmens/lookup-csvfile
New lookup plugin csvreader
2014-01-14 07:17:52 -08:00
willthames 31f5ecea60 Allow float as an argument type in AnsibleModule 2014-01-13 14:15:23 +10:00
Rob Smith c15cffabdd This fixes bugs added as a part of 8665b0638a
1. if accept_hostkey is false, no matter if the host key is known or not, it will fail.

2. We don't check for the host key in /etc/ssh/ssh_known_hosts

This fixes both of those issues.
2014-01-12 02:12:44 -08:00
James Tanner 3719f3f496 Do not fetch or add keys for http based git urls 2014-01-11 15:15:23 -05:00
James Tanner eeee1e1c5a Set accept_hostkey to False by default in the git module and fail
early if the key is unknown
2014-01-11 11:02:01 -05:00
James Tanner 8665b0638a Add an "accept_hostkey" parameter to the git module to help automatically
accept hostkeys for git repos and prevent task hangs when the key is unknown
2014-01-11 10:36:45 -05:00
James Tanner 09e0d052ca Ensure sys.stdout has an istty method 2014-01-10 17:42:43 -05:00
James Tanner d7c8cf6ca7 Fixes #4958 Truncate printed stdout if it contains non-printable characters 2014-01-10 15:08:45 -05:00
jay e1f5b801cf fixed bug causing symlinks to fail in the host_vars, group_vars etc directories 2014-01-10 16:32:41 +00:00
James Tanner 78ec7c736f Fixes #3973 Second Revision of live ansible-pull output 2014-01-10 11:18:02 -05:00
Luca Berruti ae543eecab Simplified p.poll handling 2014-01-10 11:34:21 +01:00
James Tanner c408bcea31 Update sshpass hostkey error message 2014-01-08 17:25:50 -05:00
James Tanner 0b64408f5a Fixes #5531 Give the user a better error message when sshpass does not know the remote hostkey 2014-01-08 16:50:40 -05:00
jeromew 69febcefde remove useless create/delete remote tmp dir roundtrip in copy module 2014-01-08 15:22:12 +00:00
Serge van Ginderachter 836fb4143c path_dwim: fix when basedir not set 2014-01-08 02:21:10 +01:00
jeromew c9b01febb3 Make sure 'tmp' is in the remote tmp dirname to ensure correct cleanup 2014-01-07 20:56:12 +00:00
jctanner 21b4212ff5 Merge pull request #5517 from lichesser/fix_set_depreciation_warning
Fixes #5513. set is built-in since 2.4 and deprecated since 2.6
2014-01-07 15:48:27 -05:00
jctanner 83dec044ab Merge pull request #5504 from smoothify/synchronize-sudo
Synchronize Module: Improved sudo override behaviour.
2014-01-06 14:52:59 -08:00
jctanner 9a69b1b0ec Merge pull request #5311 from willthames/ec2_refactor
ec2 modules: Move more responsibility to common EC2 module
2014-01-06 14:09:38 -08:00
James Tanner d6b78e9dd6 Fixes #5238 Improve error messaging about unquoted variable references in playbooks 2014-01-06 16:47:19 -05:00
James Tanner ab51bd23a2 Fixes #5196 return a unique list of hostnames for a single host pattern 2014-01-06 14:19:20 -05:00
smoothify 93a55e8dff Don't override sudo if transport is set to local.
https://github.com/ansible/ansible/pull/5251
2014-01-04 23:32:25 +00:00
Michael DeHaan c039e276a2 Fact gathering on a second play against the same hosts should not be implicitly off since this is an undocumented beheavior and potentially
rather unwanted when a play could change a fact.

gather_facts: True/False can still be explicitly used per play.

Reverts 564a212b3c
2014-01-04 14:03:58 -05:00
Michael DeHaan 87258f6d42 Resolve merge commit 2014-01-04 14:03:42 -05:00
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