Commit Graph

865 Commits (20a7227056314cab608922d686a2710d872d57be)

Author SHA1 Message Date
Daniel Hokka Zakrisson e655e2f051 Raise AnsibleError if $FILE() or $PIPE() fail 12 years ago
Lorin Hochstein aa5ef9561d ANSIBLE_CONFIG take precedence over ./ansible.cfg 12 years ago
Michael DeHaan 9377c3f525 Merge pull request #1130 from commandtab/templates-trim-blocks
Setting trim_blocks to True
12 years ago
Michael DeHaan 08a77135f3 Merge pull request #1126 from dagwieers/choices-fix
Fix to make sure only strings are being joined
12 years ago
Collin Allen 7c600ae0d3 Setting trim_blocks to True 12 years ago
Dag Wieers 27b2ae8ddc Fix to make sure only strings are being joined
Since BOOLEANS also contains integers, joining the list returns an error. Easy to test by giving a wrong value to a boolean argument:

    service name=httpd enabled=True

Since True is not in the allowed BOOLEANS, it will cause the error, which in its turn bails out because it joins strings and integers.
We may want to remove the integers from the choices since '0' and '1' are already in the list as strings. Personally I would expect only strings as arguments, not sure where these could be integers ??
12 years ago
Dag Wieers c84e76e31d Make sure we retain facts between playbooks
This is mandatory if we want to make facts-modules (like network_facts, ilo_facts and esx_facts) work.
12 years ago
Ralph Bean d25ee940c4 Close zeromq context and socket. 12 years ago
Daniel Hokka Zakrisson 4b29c2cf74 Revert pull request #1091
Automatic quoting of variables in only_if breaks existing playbooks
where entire statements are put in a variable, and other cases. See
issue #1120 for details.
12 years ago
Michael DeHaan 618a519ee3 Merge branch 'varreplace-lessre' of git://github.com/dhozac/ansible into devel 12 years ago
Dag Wieers e7af005408 Revert only_if for variables and templating prompt
Since the condition was not templated, it wasn't working.
Only variables in local scope were used, which made this not very practical
12 years ago
Daniel Hokka Zakrisson 9e4fac5ebd Create a string parser for varReplace instead of using re
This fixes a few issues,
- ${foo}${bar} would be parsed as a variable named foo}${bar,
  which wouldn't be easily fixed without breaking ${foo.${bar}}
- allows escaping . in variable parts so e.g.
  ${hostvars.{test.example.com}.foo} works

This is slower than using re. 3 million templating calls take about
about twice as long to complete with this compared to the regexp,
from ~65 seconds to ~115 seconds on my laptop.
12 years ago
Michael DeHaan 6506e17eff Merge pull request #1109 from dhozac/fix-varReplace-repr
Fix only_if statements referencing non-string types
12 years ago
Michael DeHaan 6c6f2b46b4 Merge pull request #1110 from dhozac/rm-assemble-ap
Remove assemble action plugin, fix daisychaining
12 years ago
Michael DeHaan ee5246fc36 Merge pull request #1113 from jpmens/file_pipe
Strip trailing white space from $FILE()/$PIPE()
12 years ago
Jan-Piet Mens 42620d2f19 Strip trailing white space from $FILE()/$PIPE() 12 years ago
Daniel Hokka Zakrisson b55ef665ba Fix only_if statements referencing non-string types
This fixes e.g. only_if: ${task.changed} which would always
evaluate to true due to it having been replaced by a string for its
boolean value. Also adds a test case to ensure it doesn't get
missed again.
12 years ago
Daniel Hokka Zakrisson 66d0acfde3 Remove assemble action plugin, fix daisychaining 12 years ago
Aleksej Romanov 0db5ccfecb Don't use ssh-agent if password is specified. 12 years ago
Michael DeHaan 69612ba16d The very first start of 'fireball mode', which uses ansible in SSH mode to deploy a ephemeral zeromq daemon (entirely optional) that is will die after
it is no longer used.  No key signing will be required.  At this point, development use only -- NOT complete.
12 years ago
Michael DeHaan c63189f650 Make output be cleaner on multi-line failed commands and parse errors. 12 years ago
Michael DeHaan 07101085ca Merge pull request #1093 from brainpage/make_local_action_consistant
2 improvements to delegate_to
12 years ago
Daniel Hokka Zakrisson 84f98534ae Make varReplace recursive instead of iterative 12 years ago
Daniel Hokka Zakrisson d181a64315 Use repr on replacements for only_if 12 years ago
Michael DeHaan 489844f960 Merge pull request #1095 from pas256/devel
Getting negative host pattern matching to work with external inventory
12 years ago
Michael DeHaan df147ab921 Merge pull request #1089 from tbielawa/runner_pause
Add 'pause' action plugin and support plugins skipping the host loop.
12 years ago
Peter Sankauskas 8a4e969b93 Getting negative host pattern matching to work with external inventory
(same as commit 4caf85e37b, but for
excluded hosts as well as subsets)
12 years ago
Jonathan Palley faed650bb1 allow vars in delegate_to 12 years ago
Jonathan Palley 620accf117 make delegate_to localhost act like local_action 12 years ago
Michael DeHaan f8a9541405 add __init__ to action plugins 12 years ago
Michael DeHaan 730b617186 Add init, though it's not really used. 12 years ago
Michael DeHaan 8e71b26264 Fix up 'changed' playbook output patch 12 years ago
Dag Wieers 6b6e3c64c8 Fix a typo in the prompt code
This is unfortunately related to not being able to reuse the same code that was tested.
12 years ago
Tim Bielawa 58a4d2f7b4 Add 'pause' action plugin and support plugins skipping the host loop. 12 years ago
Michael Lambert 5dab2efcdf Fixed obvious bug with missing self parameter to is_executable method 12 years ago
Michael Lambert 29ac1a8efc Replace os.access with stat calls for determining the executability of a given path. 12 years ago
Michael DeHaan 734db4ffe9 Merge pull request #1080 from dagwieers/prompt-only_if
Add an only_if option to vars_prompt to make prompts conditional
12 years ago
Michael DeHaan 9778eaf4f9 Merge branch 'module_args-argument' of git://github.com/dhozac/ansible into devel 12 years ago
Dag Wieers 4e9a970616 Add an only_if option to vars_prompt to make prompts conditional
Sometimes you may want to allow variables through host_vars or inventory, but prompt for a value if it is not set or if the value does not conform to something specific. This option allows you to specify when you want to offer a prompt.

This patch also moves check_conditional to utils, and adds an is_unset() function which is nicer to read:

    only_if: "not is_set('${var}')"

vs

    only_if: "is_unset('${var}')"
12 years ago
Michael DeHaan b355dca7dd Merge pull request #1081 from dsummersl/changelabel
Modified 'ok' to 'changed' when a change has occured
12 years ago
Dag Wieers 069feb5d9c Template the variable prompt to customize the message
We have a password-prompt for a configurable login name. Since we require to ask the password for this specific login, it is important to indicate what password needs to be prov ided on the prompt. So the prompt needs to be templated. That's what this patch does.
12 years ago
Dane Summers 04c535b1e9 Modified 'ok' to 'changed' when a change has occured 12 years ago
Daniel Hokka Zakrisson 34f7e6ffa0 Pass module arguments as argument instead of keeping it in runner 12 years ago
Michael DeHaan 3939f7a812 Merge pull request #1076 from SleeplessAnnoyedNerd/Issue-1075
[Issue #1075] Fixing setup module fails if PATH is not set on target hos...
12 years ago
Michael DeHaan f5f17e98ff Merge pull request #1065 from dhozac/varreplace-include
Allow including files through variables
12 years ago
Dietmar Schinnerl 78b7a3a115 [Issue #1075] Fixing setup module fails if PATH is not set on target host 12 years ago
Daniel Hokka Zakrisson 8d97bb4f8e Add an ansible_ssh_host inventory variable 12 years ago
Michael DeHaan 4ded8cb3b3 Change $FILE{} and $PIPE{} to $FILE() and $PIPE() 12 years ago
Daniel Hokka Zakrisson cc948f339c Allow including files through variables
$FILE{file} will be replaced with the contents of "file"
$PIPE{cat file} will be replaced with the output of "cat file"
12 years ago
Michael DeHaan b8c4bb9e6e Revert "Allow including files through variables"
This reverts commit bf47bb4753.

Conflicts:

	lib/ansible/utils.py
	test/TestUtils.py
12 years ago
Michael DeHaan b2af95e4a6 Change $FILE{} and $PIPE{} to $FILE() and $PIPE() 12 years ago
Michael DeHaan b25b9fd840 Merge pull request #1058 from jkleint/devel
Support iteration over command output in with_items.
12 years ago
Michael DeHaan 544a8e44d7 Merge pull request #1053 from dhozac/varreplace-include
Allow including files through variables
12 years ago
John Kleint 2a002f5c0b Support iteration over command output in with_items.
When the output of a command is stored in a register, this will create a
stdout_lines field in the result object that contains stdout split into a list
of lines.  This list can then be iterated over using with_items.
12 years ago
Daniel Hokka Zakrisson dd11b01350 Keep delegate_to so all auxiliary logic based on that works 12 years ago
Daniel Hokka Zakrisson 5bb0f6908b Allow transport on tasks, and use it for local_action 12 years ago
Daniel Hokka Zakrisson bf47bb4753 Allow including files through variables
$FILE{file} will be replaced with the contents of "file"
$PIPE{cat file} will be replaced with the output of "cat file"
12 years ago
Michael DeHaan 58ad934283 Merge pull request #1024 from tima/groups-pb
Made $groups and $group_names variables accessible in with_items
12 years ago
Michael DeHaan 1829d519b5 Merge pull request #1030 from lorin/import-playbook-pathfix
Support import of playbooks in other directories
12 years ago
Michael DeHaan d7f83471ae Merge pull request #1032 from mavimo/patch-2
Add support for ./ansible.cfg file
12 years ago
John Kleint 1f8696f5c1 Fix inventory.get_hosts when hosts is a list. 12 years ago
Marco Vito Moscaritolo 0cdd081b53 Add support for ./ansible.cfg file
Ansible support configuration in:
```
~/.ansible.cfg
/etc/ansible/ansible.cfg
```

this patch add current user (usefull where user have some different projects) with the oreder:
```
./ansible.cfg
~/.ansible.cfg
/etc/ansible/ansible.cfg
```
12 years ago
Timothy Appnel 9d5a79f586 Made groups.groupname and group_names variables accessible in playbooks.
Also modified code that feeds the groups data structure to templates so
that it resolves groups inside of groups to hostnames.
12 years ago
Lorin Hochstein b9e100a506 Support import of playbooks in other directories
Previously, importing a playbook in a different directory didn't
work because all of the relative paths were resolved relative to
the top-level playbook.

This patch resolves relative paths on a per-play level instead of
relative to the directory of the top-level playbook.

Also removes the dirname argument from the Play._get_vars method
since this argument wasn't used in the metho dbody.
12 years ago
Michael DeHaan e795fa1ec2 Merge pull request #1014 from marktheunissen/journald
Fix regex that allows passwords to get into syslog, use journal if available.
12 years ago
Timothy Appnel 20fc6a29d3 Made groups.groupname and group_names variables accessible in playbooks. 12 years ago
Lorin Hochstein eabbaaec46 Have ansible respect private_key_file option
The ansible command-line tool was ignoring the private_key_file option.
12 years ago
willthames f456d999a9 Fix templates for non root sudo_user
When using template module, if a restrictive umask is set, the
sudo_user won't be able to read the /tmp/ansible-dir/source file
after it is copied across following _transfer_str

I wonder if this behaviour shouldn't be abstracted somehow (as
this correction also happens after put_file in the copy module too)
12 years ago
Mark Theunissen c25ead382c Adapt module common code to use the systemd journal if it's available 12 years ago
Michael DeHaan dc14681530 rename isset to is_set 12 years ago
Michael DeHaan 8621539341 Merge branch 'only_if-isset' of https://github.com/dhozac/ansible into devel 12 years ago
Michael DeHaan ba97ad13e3 Merge pull request #1010 from tima/yaml-jinja
Added to_yaml and from_yaml filters to Jinja environment.
12 years ago
Michael DeHaan 8a09e1281b Fixup modularized template module 12 years ago
Michael DeHaan 633e513a65 Modular server-side actions (squash merge) 12 years ago
Michael DeHaan 975c323e39 Release version bump 12 years ago
Michael DeHaan 2bf9a92bb6 Don't load plugins starting with "_". 12 years ago
Michael DeHaan 6fb1884a03 Add __init__'s to git 12 years ago
Timothy Appnel 23cd7ad08a Added to_yaml and from_yaml filters to Jinja environment. 12 years ago
Anastasis Andronidis 02510ec2ff --version is now taking the correct head 12 years ago
Daniel Hokka Zakrisson 14db2fa376 Add an isset("$var") function to only_if 12 years ago
Michael DeHaan f41d3b9bd2 Fix skipped callback 12 years ago
Michael DeHaan 96f257cea1 Fix invocation-output-supression code to still provide invocation data to the callbacks. 12 years ago
Michael DeHaan 2843e31e09 Don't add 'n/a' because if running from source there will be no git 12 years ago
Michael DeHaan 0c386b0514 Merge pull request #993 from andronat/repo-as-submodule
Fixed a parsing HEAD problem, when ansible is checked out as a submodule
12 years ago
Anastasis Andronidis ba707f56c1 except now returns a 'n/a' version. Some changes in comments 12 years ago
Michael DeHaan aa704a6111 backuplocal => backup_local for API standardization reasons 12 years ago
Michael DeHaan b97e2a6f5a Merge branch 'backup-common' of https://github.com/dhozac/ansible into devel 12 years ago
Daniel Hokka Zakrisson 7a201dbb2e Keep result pristine for ignore_errors 12 years ago
Anastasis Andronidis 63b4f8dd80 small typo 12 years ago
Anastasis Andronidis 44a28838db Fault handling for YAML file and gitdir value. 12 years ago
Daniel Hokka Zakrisson dfcb9d3c2d Move backup to module_common 12 years ago
Anastasis Andronidis 6c8171f6f9 Appended repo_path 12 years ago
Anastasis Andronidis 4e94db3d78 Fixed a parsing HEAD problem, when ansible is checked out as a submodule
Fixed a parsing HEAD problem, when ansible is checked out as a
submodule in git
12 years ago
Michael DeHaan c04f00e3a6 Fix async callback 12 years ago
Jan-Piet Mens a37c6ea936 Jinja2 filter from_json added, to_json renamed 12 years ago
Michael DeHaan f140332ff6 Make it possible in the inventory file to have spaces in host variables 12 years ago
Stephen Fromm 6742e9c3f4 Add option required=(True|False) to get_bin_path and update modules
Added required as optional argument to get_bin_path(). It defaults to
false.  Updated following modules to use required=True when calling
get_bin_path():  apt_repository, easy_install, group, pip,
supervisorctl, and user.
Also removed _find_supervisorctl() from supervisorctl module and updated
_is_running() to not need it.
12 years ago
Stephen Fromm 4e7b67a45a Add option to pass list of dirs to get_bin_path in module_common.py
The optional list is prepended to PATH.
Fix get_bin_path() to use os.path.join().
12 years ago
Stephen Fromm 4c62e495eb Add method get_bin_path to module_common.py
This is meant to assist all the modules that look for the full path of
an executable.  If it is found and is X_OK, returns the full path.
Otherwise, it returns None.
12 years ago
Daniel Hokka Zakrisson 2d448f2a34 Invoke cowsay without going through the shell 12 years ago