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
Kahlil (Kal) Hodgson
9f90f0e856
fix arguments to isinstance() in env lookup
2013-04-28 14:58:26 +10:00
Matt Coddington
c164609dd6
typo fix
2013-04-25 23:04:17 -04:00
Michael DeHaan
224e20ca60
complex_arg templating should be smarter. Make it so!
2013-04-25 21:11:17 -04:00
Michael DeHaan
af2fb56a10
Changes to allow WANT_JSON to allow JSON to non-Python modules
2013-04-24 22:00:40 -04:00
Michael DeHaan
bd0c22868e
With fileglob should return full paths as in 1.1
2013-04-23 00:54:39 -04:00
Michael DeHaan
35e61d8f16
Merge pull request #2688 from dagwieers/module-global
...
New module 'set_fact' to define host facts
2013-04-22 21:16:46 -07:00
Michael DeHaan
9871707998
If sudoing and the sudo user is not root, the original file is saved as you, therefore delete that file as you.
2013-04-22 23:43:13 -04:00
Michael DeHaan
e12f91799c
Allow args: var to be used to pass a variable in bare, and also templated versions should also DWIM.
2013-04-22 22:17:55 -04:00
Michael DeHaan
5cced79cf3
Allow variables to be used raw in with_nested
2013-04-22 21:35:09 -04:00
Michael DeHaan
fbea88b9d9
Allow the environment string to be referenced by a bare variable name like:
...
environment: foo
2013-04-22 21:29:15 -04:00
Stephen Fromm
ab3cb4912e
Fix test so that it is /bin/sh compliant (issue #2742 )
...
The old test used syntax that appeared to be bash-specific and did not
work on platforms where /bin/sh did not point to bash. See issue #2742
where copy to solaris hosts failed with the error:
output: {'stdout': '', 'stderr': '/bin/sh: test: argument expected\n',
'rc': 1}
2013-04-22 16:14:27 -07:00
Michael DeHaan
8e7dc3c79c
Remove an extra space in the module execution line if no environment was set.
2013-04-19 08:11:56 -04:00
Dag Wieers
b13beb3689
New module 'set_fact' to define host facts
...
This module allows you to set host facts (or export play variables to the playbook scope if you fancy that).
The module also accepts complex arguments.
```yaml
- action: set_fact fact="something" global_fact="${local_var}"'
- action: set_fact
args:
fact: something
global_fact: ${local_var}
```
2013-04-18 23:06:58 +02:00
Seth Vidal
7b8cec3f59
clean up first_found to fix a few issues:
...
- add a skip option so it won't raise an exception if you don't match anything
- make it work as a drop-in replacement for first_available_file
- document in the module comments all of the above cases
2013-04-18 16:47:10 -04:00
C. Morgan Hamill
88eb5516eb
Fix 'sequence' plugin error.
...
If 'terms' is a string, replace it with a single item list.
2013-04-17 11:45:28 -04:00
C. Morgan Hamill
663d37b537
Fix errors in lookup plugins.
...
Lookup plugins 'sequence' and 'template' now import 'ansible.utils'
appropriately in order to use the 'listify_lookup_plugin_terms'
function.
Also, 'dnstxt' and 'env' now check to see if 'terms' is a string;
without this calls like '{{ lookup('env', 'HOME') }}' fail.
2013-04-17 11:31:38 -04:00
Dale Sedivec
515fd9e915
copy action plug-in check mode respects force=no
...
The copy action accepts force=no, which tells it not to replace an
existing file even if it differs from the source. The copy action
plug-in wasn't respecting this option when operated in check mode, so it
would report that changes are necessary in check mode even though copy
would make no changes when run normally.
Runner._remote_md5 was changed to make the logic for setting rc perhaps
a little more clear, and to make sure that rc=0 when the file does not
exist.
2013-04-16 20:22:51 -04:00
Michael DeHaan
7c6341718e
Merge branch 'combine_vars' of git://github.com/laggyluke/ansible into exp
...
Conflicts:
lib/ansible/inventory/vars_plugins/group_vars.py
lib/ansible/runner/__init__.py
lib/ansible/utils/__init__.py
test/TestPlayBook.py
2013-04-16 20:06:06 -04:00
Michael DeHaan
86d47bce5f
Make more lookup plugins tolerant of new variable system, with a little better 'do what I mean' logic to resolving
...
what happens if you get a string back as a template result.
2013-04-16 19:07:19 -04:00
Michael DeHaan
c0f8af5202
Make more lookup plugins happy with newstyle variables. Not quite done, but this fixes up with_items/with_nested/file/fileglob.
2013-04-16 18:50:30 -04:00
Michael DeHaan
7037023aa8
Make debug print things nicer if {{ foo }} didn't interpolate
2013-04-12 15:02:54 -04:00
Michael DeHaan
85099be48f
Merge pull request #2656 from dstoflet/first_available_file_fix
...
Quick fix for first_available_file and role support
2013-04-12 08:56:26 -07:00
Michael DeHaan
251f19263c
Remove unneeded import.
2013-04-12 10:23:53 -04:00
Michael DeHaan
8457cf433d
Update pause module to not use utils.template
2013-04-12 10:00:20 -04:00
Darryl Stoflet
c63207bf75
Quick fix for first_available_file and roles
2013-04-11 20:40:23 -07:00
Michael DeHaan
a05361f515
This is a fix on top of the 'airplane variable upgrade' commits that fixes legacy when_string so it evaluates correctly in the new eval construct.
2013-04-11 17:20:40 -04:00
Michael DeHaan
11a819cc4b
Merge pull request #2631 from stoned/templates-filters-base64
...
Add base64 encode and decode filters to templates
2013-04-11 09:49:27 -07:00
Michael DeHaan
a6777f7e7c
Fix template call in group_by module.
2013-04-11 12:43:02 -04:00
Michael DeHaan
81a926547c
Some continued work on new-style templates and associated test code changes. Legacy template functions
...
are marked with "legacy_" for possible future removal.
2013-04-10 19:09:57 -04:00
Michael DeHaan
f0b21dcc0f
allow references to names of variables in with_items without needing to surround them with Jinja2 '{{' delimeters
2013-04-10 18:42:54 -04:00
Michael DeHaan
b09ef21ec9
Add code to flag legacy templating like $foo.{bar} as deprecated in favor of Jinja2 {{ foo.bar }} so we
...
can remove the legacy system at a later date.
2013-04-10 17:52:35 -04:00
Michael DeHaan
0113951580
Enable usage of when_set within new eval system.
2013-04-10 16:26:59 -04:00
Michael DeHaan
a83e10d77d
Use safe_eval vs eval.
2013-04-10 16:17:24 -04:00
Michael DeHaan
fecfbf9226
Allow jinja2 evals that produce lists to be used in with_items. Ideally want something a bit less heavy
...
than the eval here.
2013-04-10 15:22:08 -04:00
Stoned Elipot
0893562605
Add base64 encode and decode filters to templates
2013-04-10 02:30:31 +02:00
Sébastien Bocahu
b94bf051d5
Makes $PIPE and $FILE macros accept utf-8 input
2013-04-06 23:28:15 +02:00
Michael DeHaan
892484812e
Much requested feature -- allows relative imports of content within roles or relative to any task or handler include (../templates for template ../files for copy)
2013-04-06 12:13:04 -04:00
Michael DeHaan
95f30f0def
Complete streamlining of vars handling in playbooks and how those are templated to avoid
...
repeat template calls at playbook intialization time.
2013-04-06 10:45:09 -04:00
George Miroshnykov
6826aa7360
Tweaked merge_hash to also affect Runner behavior
2013-04-06 13:06:38 +03:00
Michael DeHaan
f585c4cde7
Upgraded variable support met with upgraded conditional support, see examples/playbooks/upgraded_vars.yml
...
for details!
2013-04-05 19:10:32 -04:00
Michael DeHaan
9073aa17ab
Chroot also needs args/kwargs.
2013-04-05 14:50:15 -04:00
Michael DeHaan
3d25b4a7c0
Standardize args/kwargs on connection plugins.
2013-04-05 14:50:15 -04:00
Dag Wieers
d5d26bab9b
Make private key customizable per host using ansible_ssh_private_key_file configurable as variable
...
This fixes issue #1026 for @toshywoshy together with ansible_ssh_user and ansible_ssh_port.
2013-04-05 14:50:15 -04:00
Michael DeHaan
550bf47636
Merge pull request #2565 from willthames/default_exec
...
Added DEFAULT_EXECUTABLE as a constant
2013-04-05 10:56:56 -07:00
Michael DeHaan
f37da4fdd7
Merge branch 'ssh_config_user_overrides' of git://github.com/bcoca/ansible into devel
2013-04-05 13:09:38 -04:00
willthames
e55e123c01
Added DEFAULT_EXECUTABLE as a constant
...
Use DEFAULT_EXECUTABLE when no executable is passed to
_low_level_command_exec
Works as a standard constant - can be overridden in all the normal ways
and defaults to /bin/sh
Motiviation is for a user that only has /bin/bash in /etc/sudoers
2013-04-04 13:32:23 +10:00
Michael DeHaan
cdaa2085ee
Preliminary ability to use Jinja2 {{ }} to replace ${foo.bar} in playbooks. Can't use both at the same time per line.
2013-04-03 01:04:16 -04:00
Brian Coca
82c3b4e685
now ssh connection plugin will only pass user as an option to ssh if it is
...
differnt from the current user. This should enable overrides for user in
.ssh/config w/o breaking any current functionality.
Signed-off-by: Brian Coca <briancoca+dev@gmail.com>
2013-03-27 16:41:54 -04:00
Michael DeHaan
0d11f53eff
Let the callbacks see the playbook and (current) runner objects.
2013-03-25 22:47:06 -04:00
Michael DeHaan
783a12cc0e
Resolve merge commit.
2013-03-25 22:32:01 -04:00
Michael DeHaan
3c5890f42b
Ensure that when transferring a file to a directory the name of the file is the correct basename and not 'source'.
2013-03-25 22:19:35 -04:00
Michael DeHaan
7044e53e07
Allow conditionals on BYPASS_HOST_LOOP plugins like add_host
2013-03-25 21:16:18 -04:00
Rob Parrott
81e2d871aa
inject a dictionary of avaiable variables and the environment into the executor, so that templates can be used to debug playbooks by dumping more of the available context.
2013-03-19 13:04:57 -04:00
Michael DeHaan
a22009806e
Nested iteration would make more sense in this order.
2013-03-11 17:58:27 -04:00
Michael DeHaan
edc04d61f3
Added 'with_nested' lookup plugin that can easily do nested loops.
2013-03-11 17:47:57 -04:00
Michael DeHaan
298d64aa1d
Quote remote md5 operations. Fixes #2368
2013-03-11 17:19:43 -04:00
Michael DeHaan
e304cc3d8e
Simple fix for spaces in filenames with the template module.
2013-03-11 17:13:59 -04:00
Michael DeHaan
6e2ea327d1
A very simple fix to enable spaces in the files sent via the copy module.
2013-03-11 17:11:53 -04:00
Michael DeHaan
2962073bcf
Merge branch 'fix-module-encoding' of git://github.com/andreparames/ansible into devel
2013-03-18 00:17:07 -04:00
Michael DeHaan
f2c8df2a93
Clarify an error message
2013-03-17 23:33:13 -04:00
Patrick Pelletier
c7c7a63ee5
Add support to directly set content in copy module
2013-03-17 23:33:13 -04:00
Michael DeHaan
c53653dc0d
Merge pull request #2348 from candeira/password-plugin
...
password lookup plugin, with working tests and documentation
2013-03-10 16:31:17 -07:00
Michael DeHaan
b2c8ed9cc2
Merge pull request #2279 from dorfsmay/fetch-fail_on_missing
...
Added a fail_on_missing option to fetch.
2013-03-10 16:18:28 -07:00
Michael DeHaan
aae88baf4a
Merge pull request #2260 from skvidal/path_lookup
...
first_found lookup_plugin - replaces first_available_file
2013-03-10 16:09:49 -07:00
Javier Candeira
ca6c36e1ac
password lookup plugin, with working tests and documentation
2013-03-10 13:36:53 +11:00
André Paramés
9bb8435ec9
Fixes #2346
2013-03-09 03:27:45 +00:00
Daniel Hokka Zakrisson
76f3351b02
Move complex_args templating to be with module_args
...
Keeps every action plugin from having to do the same thing.
2013-03-07 11:09:29 +01:00
Michael DeHaan
ffbd4b5a2c
Template options sooner on complex args copy
2013-03-07 00:35:40 -05:00
Michael DeHaan
2bb305f6d5
Fix args templating for complex args with the copy module.
2013-03-07 00:28:06 -05:00
Michael DeHaan
969edabdbb
Merge pull request #2322 from bcoca/remote_tmp_override
...
added check for starting $HOME for remote_tmp so as to non root sudo override
2013-03-06 21:07:49 -08:00
Michael DeHaan
44e44cf295
Merge pull request #2320 from jkleckner/minor-spelling-fixes
...
Minor spelling fixes
2013-03-06 21:06:33 -08:00
Michael DeHaan
fe8547cac0
Ensure template arguments if complex are still properly templated
2013-03-07 00:04:48 -05:00
Brian Coca
76f709286e
added check for starting $HOME for remote_tmp so as to non root sudo override
...
Signed-off-by: Brian Coca <bcoca@tablethotels.com>
2013-03-06 17:32:12 -05:00
Jim Kleckner
92844d3dcd
Minor spelling fixes
2013-03-06 10:41:19 -08:00
Maykel Moya
e898f30f78
Fix copyright
2013-03-06 02:40:34 +01:00
Yves Dorfsman
e45a0fd61d
Added a fail_on_missing option to fetch.
2013-03-02 11:04:48 -07:00
Michael DeHaan
6ad390a92b
Revert "Revert "for #2196 now gruopby module invalidates host cached variables so they can be reevaluated with new groups""
...
This reverts commit dc0515a88a
.
We didn't need to revert this :)
2013-03-02 10:38:51 -05:00
Daniel Hokka Zakrisson
5d82b4b1b7
group_by needs the untemplated module_args
2013-03-02 16:30:30 +01:00
Michael DeHaan
dc0515a88a
Revert "for #2196 now gruopby module invalidates host cached variables so they can be reevaluated with new groups"
...
This reverts commit 2d86671aa5
.
2013-03-02 10:21:36 -05:00
Daniel Hokka Zakrisson
43ce2caa4f
Fix parse_kv invocation in group_by to use imported name
...
Fixes #2277 .
2013-03-02 15:18:16 +01:00
Michael DeHaan
0b4ad2749a
Increase error handling in the unlikely case of failing to establish a connection.
2013-03-01 21:39:50 -05:00
Michael DeHaan
7ac5e462ef
Fixed a small buglet, if using with_items with yum and so on, only optimize the package list if the package list is all strings
2013-03-01 18:32:32 -05:00
Seth Vidal
804b130288
check if the term is a dict so we can take a simple list of files (like first_available_file) takes
2013-03-01 18:18:56 -05:00
Michael DeHaan
b6f7a22de5
Merge pull request #2261 from bcoca/groupby_2186
...
now group by module invalidates host cached variables
2013-03-01 15:16:47 -08:00
Brian Coca
2d86671aa5
for #2196 now gruopby module invalidates host cached variables so they can be reevaluated with new groups
...
Signed-off-by: Brian Coca <bcoca@tablethotels.com>
2013-03-01 18:00:34 -05:00
Seth Vidal
dfad94078b
first_found lookup_plugin - replaces first_available_file
...
- useful in tasks/playbook inclusion
- task-specific inclusion
allows searching paths and files
2013-03-01 17:25:25 -05:00
Michael DeHaan
fb26f059c5
Merge pull request #2232 from dhozac/module-args-dict
...
Allow specifying args directly to actions using module: syntax
2013-03-01 14:03:23 -08:00
Devin Bayer
fca1167a0e
add to_nice_yaml|json filters
2013-02-28 17:07:02 +01:00
Daniel Hokka Zakrisson
ae8d6ac303
Ensure complex_args is considered in all action_plugins
2013-02-28 14:27:42 +01:00
Daniel Hokka Zakrisson
e4b72c0fd5
Revert to just escaping \ for JSON-args
2013-02-27 19:43:27 +01:00
Daniel Hokka Zakrisson
1601f0b4d7
Use repr to transfer JSON-arguments, so Python doesn't eat things
...
Fixes transferring newlines in args:, as well as """.
2013-02-27 17:16:23 +01:00
Michael DeHaan
1366c663eb
Merge branch 'copy-diff-take2' of git://github.com/stoned/ansible into better_diff
...
Conflicts:
library/file
2013-02-26 20:51:32 -05:00
Stoned Elipot
8816dc7ca7
Make diff header lines more explicit about what the diff is about
...
This gives a more readable output when producing diff for a task
with multiple items (with_items).
2013-02-26 16:53:59 +01:00
Stoned Elipot
1b8c9bab35
Fix diff when template destination is absent
2013-02-26 16:45:56 +01:00
Stoned Elipot
10e9f1fc1e
Implement --diff for the copy module.
2013-02-25 23:32:52 +01:00
Daniel Hokka Zakrisson
e32fbd312f
Shell-quote environment contents
2013-02-25 22:31:49 +01:00
Daniel Hokka Zakrisson
27f3ba53f9
Remove debug print for environment
2013-02-25 22:29:32 +01:00
Shaun Zinck
e7719e4e46
pass in int() args to get_pty
...
If LINES or COLUMNS was set, get_pty was failing because it was
expecting an int value to be passed in.
2013-02-24 13:39:03 -06:00
Michael DeHaan
294e43ba2f
Removing pipe once since it has some issues about evaluating more than once :)
2013-02-23 13:47:11 -05:00
Michael DeHaan
b75b9681a8
more places to use yaml.safe_load
2013-02-23 13:34:14 -05:00
Michael DeHaan
5b31feb73b
Merge pull request #2179 from skinp/host_connection
...
Add support for connection type in ansible_hosts file
2013-02-23 09:58:17 -08:00
Patrick Pelletier
2b4ddfb0a2
Handle delegate_to case for local connections in hosts file
2013-02-23 12:28:42 -05:00
Michael DeHaan
f7fb681bb2
Fix comment in chroot connection type
2013-02-23 11:56:24 -05:00
Michael DeHaan
5a1aef5372
Merge branch 'local-chroot-support-v2' of git://github.com/mmoya/ansible into testing
2013-02-23 11:51:11 -05:00
Michael DeHaan
93f73739d3
Merge branch 'paramiko-termcap' of git://github.com/madduck/ansible into testing
2013-02-23 11:38:52 -05:00
Patrick Pelletier
4c0e6722c4
Add support for connection type in ansible_hosts file
2013-02-22 11:11:08 -05:00
Maykel Moya
9a493ef388
Add support for running modules chrooted in a local dir
...
Adds 'chroot' connection for executing modules chrooted to
a local dir. Requires running ansible as root.
chroot dirs should be specified in the inventory like any
other host.
You can do things like:
$ sudo -E ansible -vvv -f 1 "./chroot1,./chroot2" -c chroot \
all -m setup
$ sudo -E ansible-playbook -vvv -f 1 -i "./chroot1,./chroot2" \
-c chroot some-playbook.yml
some-playbook.yml:
---
- hosts: all
tasks:
- name: echo something
shell: echo "Yaaay!" >/tmp/foobar.txt
- name: install less
apt: pkg=less state=latest
2013-02-21 00:51:02 +01:00
Michael DeHaan
6d604469d8
Always adjust file attributes with the template module.
2013-02-20 08:05:59 -05:00
Michael DeHaan
ab389d8908
For consistency, add host should take a key named 'name' in addition to 'hostname'.
2013-02-17 20:45:37 -05:00
Michael DeHaan
9cf66f4376
Fixes from 'make pep8'. Partial, more to come.
2013-02-17 19:40:38 -05:00
Kavin Kankeshwar
359ac9a495
Fixing syntax error
...
running install_lib
byte-compiling /usr/lib/python2.6/site-packages/ansible/runner/action_plugins/add_host.py to add_host.pyc
SyntaxError: ('invalid syntax', ('/usr/lib/python2.6/site-packages/ansible/runner/action_plugins/add_host.py', 37, 92, ' def run(self, conn, tmp, module_name, module_args, inject, complex_args=None, **kwargs)\n'))
2013-02-17 15:35:58 -08:00
Daniel Hokka Zakrisson
43d22b0c42
Flatten argument to with_items
...
Fixes #1711 .
2013-02-17 22:08:23 +01:00
Michael DeHaan
1ecf4a6943
Working on complex argument support.
2013-02-17 15:01:49 -05:00
Michael DeHaan
fa21b41357
Fixup the pipe_once plugin
2013-02-17 11:42:45 -05:00
Michael DeHaan
0af83317a1
Added a $PIPE_ONCE lookup plugin, that caches the result so it is only evaluated one time.
2013-02-17 11:37:41 -05:00
Michael DeHaan
b365e04616
Allow add_host to add hosts to multiple groups, groups is now an alias for groupname.
2013-02-17 11:22:50 -05:00
Rob Parrott
ef17fc9f20
add the ability to take variables in the add_host module, and be willing to parse a host:port hostname handed to add_host
2013-02-16 20:27:38 -05:00