Commit Graph

501 Commits (97cc0cce7f53b704f8541530e42d5e515584cd95)

Author SHA1 Message Date
James Tanner c1f4142a29 Fixes #4109 Filter plays by tags when using --list-hosts 10 years ago
Serge van Ginderachter f8ea93c732 Move inventory.set_playbook_basedir from ansible-playbook to playbook constructor 10 years ago
Serge van Ginderachter f6a55a3552 Refactor vars_plugins (host/group_vars)
Split out parsing of vars files to per host and per group
parsing, instead of reparsing all groups for each host. This enhances
performance.

Extend vars_plugins' API with two new methods:
* get host variables: only parses host_vars
* get group variables: only parses group_vars for specific group
The initial run method is still used for backward compatibility.

Parse all vars_plugins at inventory initialisation, instead of
per host when touched first by runner. Here we can also loop through
all groups once easily, then parse them.
This also centralizes all parsing in the inventory constructor.

	modified:   bin/ansible
	modified:   bin/ansible-playbook
	modified:   lib/ansible/inventory/__init__.py
	modified:   lib/ansible/inventory/vars_plugins/group_vars.py
10 years ago
jctanner adbd6865da Merge pull request #6681 from zytek/devel
Properly revert changes introduced in #6579
10 years ago
Jakub Paweł Głazik 6b53ac8a9a strip() vault password file 10 years ago
Jakub Paweł Głazik 08ba18668b Strip() vault password file 10 years ago
James Tanner 9169a11088 Fixes #4777 add --force-handlers option to run handlers even if tasks fail 10 years ago
James Tanner 8c2e1e2baa Addresses #6579 Disallow vault passwords with newline characters by stripping them in utils 10 years ago
James Tanner 409044155d Fixes #6579 allow for vault passwords ending with newline chars
Also add a unit test for vaulteditor to verify 1.0 passwords with newline chars.
10 years ago
Thomas Omans 1727fddf50 Allow vault encrypted vars as extra_vars
Forward the vault_password to the yaml file utility.
10 years ago
Michael DeHaan 8eb547edaa Merge pull request #6531 from bob-smith/formatting
Add space after full stop in ansible-galaxy help
10 years ago
James Tanner c09e46517e Merge pull request #5864 from stevetjoa/ansible
adding -K flag for ask-sudo-pass to ansible-pull
10 years ago
James Tanner 70f4e0807c Fixes #6467 ansible command should not assume sudo if ask_sudo_pass or sudo_user 10 years ago
John Barker aa87afaa87 Add space after full stop in ansible-galaxy help 10 years ago
Michael DeHaan 71977bfe71 Merge pull request #5720 from mschurenko/devel
added random sleep option to ansible-pull
10 years ago
Michael DeHaan 0ab6586222 Merge pull request #5890 from ingmar/ansiblepull-extravars-5707
ansible-pull support for -e (--extra-vars) option (same as ansible-playbook) #5707
10 years ago
Michael DeHaan 887cb7652a Merge pull request #6004 from res0nat0r/fix_ansible-doc_snippets
Fix ansible-doc option output.
10 years ago
Michael DeHaan 0dde3b7080 Merge pull request #5895 from trbs/listtasks_honors_limit
make --list-tasks honor --limit
10 years ago
Cristian Ciupitu 0749112286 Micro-optimization: replace s.find(x)!=-1 with x in s
timeit shows a speedup of ~3x on Python 2.7.5 x86_64.
It also makes the code a bit shorter.
10 years ago
Toshio Kuratomi 0fefab6651 Require a recent enough version of pycrypto and see that playbook and vault ues it. 10 years ago
James Tanner 0d6f6ad282 Implement new default cipher class AES256 10 years ago
Francesc Esplugas 0fd5829f10 get rid of newline chars when reading password file 10 years ago
James Tanner e3672dded0 Remove breakpoint 10 years ago
James Tanner b74105c689 Add --vault-password-file to bin/ansible-pull 10 years ago
James Tanner 35def422a3 Addresses #6188 Add --vault-password-file to bin/ansible and bin/ansible-playbook 10 years ago
James Tanner 7acd2f3a2d Addresses #6188 Add --vault-password-file option to the ansible-vault command 10 years ago
James Tanner 52a8efefba Vault rewrite, pass 1 10 years ago
James Tanner 7fe3db408d Fixes #6082 Set vault password to None by default 10 years ago
James Tanner 9ba053c885 Fix ansible cli to use vault for group var files 10 years ago
James Tanner aa46ab1d86 Fix function name 10 years ago
James Tanner 427b8dc78d Ansible vault: a framework for encrypting any playbook or var file. 11 years ago
James Cammarata 52c9c1dc39 Fixing usage string in ansible-galaxy install for role files 11 years ago
Stefhen Hovland e1b7278265 Only display equals sign in summary for required options. 11 years ago
Stefhen Hovland 30cabddf76 Ensure option output is sorted. 11 years ago
trbs b7df767065 make --list-tasks honor --limit 11 years ago
Ingmar Hupp 1f0cdc5ec8 ansible-pull support for -e (--extra-vars) option (same as ansible-playbook) #5707 11 years ago
Steve Tjoa 335bc1ee5c adding -K flag for ask-sudo-pass to ansible-pull 11 years ago
Michael DeHaan 3b8fd62ff9 More site rename things. 11 years ago
Michael DeHaan d07a3b5e9b AnsibleWorks -> Ansible 11 years ago
James Cammarata fc30467593 Adding an "Example Playbook" section to the README template for ansible-galaxy
Fixes 5397
11 years ago
James Cammarata 593098108e Adding suggested licenses to the ansible-galaxy meta template 11 years ago
Matt 1ef8f279b9 added random sleep option to ansible-pull 11 years ago
Paul Durivage f72f5a20df Revert "Revert "Merge pull request #5325 from angstwad/add-su-support""
This reverts commit c17d0e0357.

Conflicts:
	lib/ansible/runner/connection_plugins/paramiko_ssh.py
11 years ago
James Tanner c17d0e0357 Revert "Merge pull request #5325 from angstwad/add-su-support"
This reverts commit 6f4bfa2cff, reversing
changes made to c91ba3a7c7.
11 years ago
Paul Durivage c95be4ceaa Make sudo and su command line arguments mutually exclusive 11 years ago
Paul Durivage 4088243deb Proposing fix for Issue #4324; adding support for su in connection plugins ssh, ssh_alt
Fixes for ssh_alt support, adding in references to in_data where appropriate
11 years ago
jctanner 1d9e78f2ab Merge pull request #5376 from bob-smith/galaxyhelp
Display context appropriate help and inform the user they can do '--help <command>'
11 years ago
James Tanner 78ec7c736f Fixes #3973 Second Revision of live ansible-pull output 11 years ago
James Cammarata ccbc99fe4f Fixed splitting of role/user name when username has a '.' in it
This may still be an issue if users create roles with a '.' in the name though.
We will probably have to disallow that in the role naming convention.
11 years ago
Michael DeHaan 81bc44ccc2 Don't show tracebacks on Control-C. 11 years ago
Joshua Lund ed39bebaa8 Fixing a small typo in the Galaxy README template 11 years ago
John Barker d607f2ccf5 Add some blank lines in help to add readability 11 years ago
John Barker ed858f9f72 Display context appropriate help and inform the user they can do '--help
<command>
11 years ago
James Tanner 43a1e503c3 Set default role license to BSD 11 years ago
James Tanner c37fa5ddce Use os.pathsep to split roles_path instead of a colon 11 years ago
James Tanner 82d145534c Split roles_path on colon separators and use the first path for the installation path 11 years ago
James Tanner 904ba869cc Create a default README.md with ansible-galaxy init 11 years ago
James Cammarata 0d4294da42 Don't create main.yml in files/templates directories on galaxy init 11 years ago
James Tanner a14d1ca485 Addresses #5364 urllib quote role names 11 years ago
kiri a97e60c63f add var for format. 11 years ago
James Cammarata afa8f36f6b Default deps list in ansible-galaxy template to an empty list 11 years ago
Matt Martz 301ebf8d04 Don't place (or higher) in the min_ansible_version 11 years ago
James Tanner c0aa02144f Addresses #5341 expand home directories for role_path in ansible.cfg 11 years ago
James Tanner 5d022182fe Fixes #5341 Use constants.py to set the roles directory 11 years ago
James Tanner 4a20055a59 Add the ansible-galaxy command 11 years ago
jctanner 6d80c50faf Merge pull request #4817 from j2sol/zero-exit
Exit 0 with no matched hosts
11 years ago
jctanner 189ec15bd5 Merge pull request #4706 from mvo5/bugfix/more-syntax-check
load tasks/vars includes in syntax-check mode as well
11 years ago
jctanner 2d9087b806 Merge pull request #4484 from mscherer/add_short_hostname
ansible-pull by default will look for local.yml and $fqdn.yml.
11 years ago
James Tanner 91e5569324 Merge pull request #4466 from sfromm/ansible
Add pager support to ansible-doc
11 years ago
jctanner e08f685507 Merge pull request #3937 from masahide/devel
Supports to the playbook of Process Substitution
11 years ago
Jesse Keating 46554bbc30 Exit 0 with no matched hosts
And also print to stdout not err

This lines up with how ansible-playbook will exit. 0 in the case of no
matched hosts. This makes it easier to script ansible commands w/
variable iventory input which may or may not have an entry for the
specific ansible task being scripted. No matched hosts is acceptable,
but matched hosts w/ failures is not.
11 years ago
Michael Vogt 0b82722484 load tasks/vars includes in syntax-check mode as well 11 years ago
Michael Scherer f8b23e5721 add a default value for the -d option of ansible-pull
Thi permit to simplify the command line to use by using
a sensible default, and so reduce the number of incorrect
possible choices and setup needed. Among potential
incorrect choices is using a fixed directory in /tmp, which
could be problematic with a setup whose access is not
properly restricted.
11 years ago
Stoned Elipot c7217a8f1b Fix 'ansible-doc -l' runtime error following commit 4430d0f
skip "module" not found as plugin, id est directory
11 years ago
Michael Scherer 92147aff0f also fix the doc, forgot in last commit 11 years ago
Michael Scherer 4b067fa47e ansible-pull by default will look for local.yml and $fqdn.yml.
For a small network ( home, small company ), having to put the FQDN
in each file is a bit tedious, so this patch also add the shorthostname
as a 3rd default if the fqdn is not found.
11 years ago
Stephen Fromm 79d6d344d8 Add pager support to ansible-doc
If PAGER is set, or the executable less is present, ansible-doc will use
it to pipe information into so that it can be scrolled through.
If the environment variable LESS is not set, this will set it to FRSX.
11 years ago
James Cammarata 51638df48f Minor format fix in ansible-pull related to the -f patch 11 years ago
James Cammarata 97e3e967a7 Merge branch 'devel' of https://github.com/jflorian/ansible into jflorian-devel 11 years ago
Alan Descoins ebd8e262d3 Fixed -e "" on ansible-playbook. 11 years ago
John Florian c8a5aabf39 Added -f/--force option to ansible-pull 11 years ago
YAMASAKI Masahide ac3f05c720 Take out the spaces inside the parenthesis. 11 years ago
YAMASAKI Masahide 7f9313b2b1 Supports to the playbook of Process Substitution 11 years ago
James Cammarata d9be910e6e Merge branch 'exit-3-on-dark' of https://github.com/j2sol/ansible into j2sol-exit-3-on-dark 11 years ago
Alek Storm 8c9f84f6f8 Parse --extra-vars as YAML (which includes JSON) 11 years ago
Alek Storm 21d2069a74 Support multiple --extra-vars flags 11 years ago
Stephen Fromm cc3651592b Extend ansible-pull to support other source repositories
This extends ansible-pull so that it can support using other
source_control modules for checking out a playbook repository
(issue #3372).  This will check to see if the module exists before
it attempts to do the checkout and will exit if the module is not found.
It requires that the module used to check out the repository support the
parameters 'name' and 'version'.  The option -C, --checkout is now
optional and defaults to the module's default behavior for selecting a
branch, tag, or commit value.  For git, this continues to be HEAD.

Other changes include:
* Remove git from help and use generic term(s) where needed.
* Use SortedOptParser from ansible.utils
* More abstraction of common options used between ansible and
  ansible-playbook.
11 years ago
Jesse Keating 2b96c347dc Exit with status 3 if no failures but unreachable.
Provide hints to playbook callers that a playbook execution had
unreachable vs failures. 2 == failures, 3 == no failures, but
unreachable hosts. 0 continues to be all good.
11 years ago
Michael DeHaan 0988a86653 Misc style fixes. 11 years ago
Andy R 5a47953e7d Never ask for SSH password when using local connection.
With the command line option "-c local", ansible and ansible-playbook
should never ask for a SSH password even if this is set in the config.

Fixes #3720
11 years ago
Alan Descoins c19c2c7295 ansible-playbook can load extra vars from a file, with "@" syntax 11 years ago
Michael DeHaan d8e5fc9d1b Remove task count information from task list. 11 years ago
Alan Descoins 04349ec362 Added --skip-tags option to ansible-playbook. 11 years ago
Matt Lesko b37ecb055c set checkout destination directory to be full path
we chdir into this path and read the playbook/inventory if a
non-absolute path is given on the command line, that will fail
11 years ago
Michael DeHaan 506178542d Merge pull request #3303 from markmandel/feature/sudo_pass
Don't turn on sudo for all tasks when setting the sudo_user or ask_sudo_pass
11 years ago
Michael DeHaan c2988dfdb0 Merge branch 'option-updates' of git://github.com/jlund/ansible into devel
Conflicts:
	bin/ansible-pull
11 years ago
Stavros Korokithakis 53207ddbdf Add --only-if-changed option. 11 years ago
Joshua Lund dc984d94ac Updates to Ansible command options
* Moved the --list-hosts option that is common to both `ansible` and
  `ansible-playbook` into utils/__init__.py (corrects a FIXME)
* Wrote new help text for the --list-hosts option that makes sense
  for both of the commands that it applies to
* Changed the usage argument in `ansible-playbook` so that it is
  setup in the base_parser method the same way that it is in
  the `ansible` executable
* Updated the help text for several options to correct typos,
  clarify meaning, improve readability, or fix grammatical errors.
  In the case of `ansible-pull`, I changed the help text so that
  it adheres to the same standards as the other executables.
11 years ago
Mark Mandel 73dda68e18 Don't turn on sudo for all tasks when setting the sudo_user or ask_sudo_pass, 11 years ago
Stephen Fromm 355ab6983c remove errant and unneeded import of ansible.constants 11 years ago
Stephen Fromm 291fb9e944 Help ansible-pull work better in bootstap environment
Add option to specify inventory.  No default is defined since
ansible-playbook already does this and it allows an ansible.cfg in the
git repository to take precedence.
Overall, this should help ansible-pull work with less setup in advance,
which should be helpful in kickstart scenarios.  Much of this was
discussed in issue #2464.
11 years ago
Michael DeHaan 6cd3ba5b06 Allow the group_vars and host_vars directories to be stored alongside the playbook as well as inventory. 11 years ago
Kent Frazier 3316b87059 Keep ansible-playbook from bombing without extra-vars
A recent change to ansible-playbook to support json extra-vars
also inadvertently broke the script when no extra-vars are
provided. Simply checking to make sure it is defined and truthy
should take care of the issue.
11 years ago
Fabio Bonelli 6bef150695 Support JSON in --extra-vars.
If --extra-vars starts with either a '{' or a '[', it will be assumed
we are dealing with JSON and parse the data as such.
11 years ago
Stoned Elipot d25888f410 Fix empty requirements specifications in modules documentation
And also be liberal in what ansible-doc accepts as an empty
requirements specification.

While here fix a typo in template module documentation
wrt jinja2 overrides example.
11 years ago
Jan-Piet Mens eeb80c695f Add Requirements to rst template, ansible-doc
tweak position & look of Requirements in rst
tweak APT's notes as per anhj's wish
11 years ago
Jan-Piet Mens 2f76bc9e47 ansible-doc: skip directories (new library/ format) 11 years ago
Michael DeHaan aa55268514 Adds a logfile for ansible playbooks that can be set by the environment or configuration file. 11 years ago
Michael DeHaan be947e5266 Resolve merge conflict 11 years ago
Michael DeHaan 89ab3a0b9f Make --list-tasks work nicer with --tags 11 years ago
Michael DeHaan e6bf01a6b0 Make plugin loader path operations more efficient. 11 years ago
Michael DeHaan 92ddab8a69 Merge pull request #2649 from sergevanginderachter/bin-ansible
make bin/ansible error output consistent for shell module as for the command module when no arguments are given
11 years ago
Michael DeHaan 3e736eaf00 Merge pull request #2622 from skvidal/playbook-start-at-task
implement --start-at-task option to hop to a specific task before starti...
11 years ago
Serge van Ginderachter 94243e983f make bin/ansible error output consistent for shell module as for the command module when no arguments 11 years ago
Michael DeHaan 0be04d2b57 Decided to not deprecate legacy template syntax for now. Backwards compat is important, though the docs will suggest the new way. 11 years ago
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.
11 years ago
Seth Vidal 690738ea32 implement --start-at-task option to hop to a specific task before starting running them 11 years ago
Michael DeHaan 0d530f3bf0 Change the retry logic to write a limit file, able to source limit from files by indicating with @filename 11 years ago
Michael DeHaan c695aa2d6a When playbooks fail, attempt to create an inventory file in the inventory directory that allows rerunning
of the playbook against only the hosts that failed.
11 years ago
Michael DeHaan bc0be456da Modify output banners to have constant length and use dashes instead
of "-" to be less visually heavy (unless cowsay is installed of course)
11 years ago
Seth Vidal 7687c2caf8 add --step option to ansible-playbooks to let people step through a playbook
one by one - asking for confirmation along the way.

also allows to 'continue' after a certain point
11 years ago
Jan-Piet Mens 396a07bcc7 Add support for additional EXAMPLES string in Ansible modules
return DOC and EXAMPLES as a list
add moduledev explanation
more
12 years ago
Michael DeHaan c4779d95b8 Removing unused import, 'make pyflakes' is now clean. 12 years ago
Michael DeHaan 5c38248788 Fix crontab doc formatting 12 years ago
Michael DeHaan e564de3983 Some formatting preferences for --list-hosts and --list-tasks 12 years ago
Michael DeHaan e231708260 Merge branch 'devel' of git://github.com/schmic/ansible into schmic-devel 12 years ago
Michael DeHaan a9162a86f2 Very basic --diff option for showing what happens when templates change.
Probably output is not useful if not used with --limit

Works well with --check mode
12 years ago
schmic 1205bbe195 Adds commandline parameter --list-tasks 12 years ago
schmic dd9e3430e4 No authentication with --syntax-check 12 years ago
Stoned Elipot 82011b043a For ansible --list-hosts benefit apply hosts selection limits early 12 years ago
Michael DeHaan fed82c2188 This implements a basic --check mode which for now is only implemented on template & copy operations. More detail will be shared with the list
shortly.
12 years ago
Daniel Hokka Zakrisson 9a34c20cc5 Create Play objects for --list-hosts to mimic actual behaviour
This makes --list-hosts work more like actually running the playbook,
and thus gets the correct hosts with regard to includes and similar.

Fixes #1959.
12 years ago
Michael DeHaan 25f52d79d1 Tweak sysctl docs so they'll web-render 12 years ago
Michael DeHaan 36066d8664 Fixup ec2_facts docs parsing 12 years ago
Daniel Hokka Zakrisson 5d067497e3 Enable --list-hosts with a list of hosts 12 years ago
Jan-Piet Mens 52a55a3575 cleanup Example output in ansible-doc 12 years ago
Michael DeHaan aff6ae47ed Merge pull request #1741 from christopher-snapp/list-hosts
add list-hosts support to bin/ansible
12 years ago
Michael DeHaan 42f769637e Merge pull request #1749 from jpmens/andoc3
ansible-doc: print Notes heading only if there are any
12 years ago
Seth Vidal 0f6669fafe make --list-hosts expand out extra vars in the hosts: field 12 years ago
Jan-Piet Mens e913fb8732 print Notes heading only if there are any 12 years ago
Christopher A. Snapp 8655f64e68 add --list-hosts support to bin/ansible
add error handling when no arg passed to command module
12 years ago
Jan-Piet Mens 77e060250c CLI: ansible-doc rebased 12 years ago
Jan-Piet Mens 17f31a2a79 CLI: ansible-doc shows lists of modules & module docs on command-line
check path is directory
added manpage & setup
small cleanup
shut up module_formatter in utils to avoid trace print on crud files in library
12 years ago
Daniel Hokka Zakrisson 900790af41 Reuse inventory object created by ansible-playbook in playbook
This reduces the amount of times an inventory script has to be invoked.
12 years ago
Michael DeHaan 20c65bf854 Merge pull request #1629 from dagwieers/list-hosts-plays
Make --list-hosts consider all plays (in multiple playbooks)
12 years ago
Dag Wieers 9ea26c75f9 Make --list-hosts consider all plays (in multiple playbooks)
Currently when more than one playbook is provided on the commandline, ansible-playbook --list-hosts will only consider the first playbook and stop. This change will make it work for the various different playbooks.
12 years ago
Dag Wieers a259b95556 Fail ansible-playbook when the hosts list (with applied subset) is empty
When the inventory is empty, or the provided --limit subset returns an empty intersection, we don't want to loop over all plays but bail out at the very start.
12 years ago
fdavis 7256c5af1a ansible-playbook verifies playbooks exist before running them
refers to #1345
12 years ago
Stephen Fromm 4ae3bee416 Add --limit to calls to ansible and ansible-playbook
--limit takes localhost, FQDN, and 127.0.0.1.
12 years ago
Michael DeHaan 6f938c9f4c Merge branch 'playbook_ssh_ask_pass' of git://github.com/clatour/ansible into devel
Conflicts:
	examples/ansible.cfg

+ doc tweak
12 years ago
Chandler Latour f436a8c88b Added config option for default ask for ssh_pass 12 years ago
Brian Coca 604bf9f58a Added config option to control default of asking or not for sudo password
Signed-off-by: Brian Coca <briancoca+ansible@gmail.com>
12 years ago
Michael DeHaan be300b562a pyflakes fixes (mostly unused imports, unused vars) 12 years ago
Seth Vidal 41195d0d49 trivial --syntax-check option to ansible to just do the yaml validation
check. Lots of room to make this more interesting - but not today
12 years ago
Stephen Fromm 60d3e9f3de Add --purge option to ansible-pull
Removes git checkout after playbook run.
12 years ago
Stephen Fromm 034e8f59ed Clean up auto-selection of playbook and miscellaneous changes
Direct any ansible-pull specific messages to stderr.
Introduce try_playbook() and select_playbook() to remove try/except-y.
12 years ago
Matthew Johnson 0841ed4796 change method of obtaining hostname to match ansible/library/setup 12 years ago
Matthew Johnson 2b24131baa fetch the git repo before trying to find a playbook 12 years ago
Stephen Fromm 788e11f1db Merge commits from copperlight's branch ansible-pull_playbook_parameter branch
Merged commits: 3cd25b5 and ed9fc76.  Some massaging of changes applied.
12 years ago
Aleksej Romanov 05464816c2 Different return codes for different errors. 12 years ago
Aleksej Romanov 01e922aa69 Indicate errors with exit code. 12 years ago
Michael DeHaan a2f76c1c69 If all hosts in a play fail, fail the whole playbook and don't bother printing out every remaining task. 12 years ago
Michael DeHaan 3017dc92d9 make callbacks modular 12 years ago
Seth Vidal 8e039a6389 add --list-hosts option to ansible-playbook to dump out the hosts
being run against for each playbook
12 years ago
Michael DeHaan 3587ffdef3 Allow /bin/ansible to use --limit 12 years ago
Michael DeHaan 1c81ddf8d4 add the limit option, which can be used to further confine the patterns selected by "hosts:" in ansible-playbooks
to an additional pattern (a subset) specified on the command line.  For instance, a playbook could be reusable
and target "webservers" and "dbservers", but you want to test only in the stage environment, or a few boxes at a time.
12 years ago
Michael DeHaan 846186e2fc Add -vvv support for debugging activity 12 years ago
Michael DeHaan faed4b5a33 whitespace + remove deprecated YAML parser (migration script lives in examples/scripts and warning was added
in 0.6 release)
12 years ago
Michael DeHaan e035ce97ce blue on black, tears on a river, push on a shove, it don't mean much
(make colorized playbook runs not suck on black terminals)
12 years ago
Michael DeHaan 12ff9b5b9a Move color coding bits to module, use over rest of playbook 12 years ago
Jan-Piet Mens bc17553d1c Support for colors in ansible-playbook 12 years ago
Michael DeHaan dc4ebab345 Merge pull request #576 from davehatton/adjust_playbook_output_formating
improve output formating for playbook
12 years ago
Michael DeHaan 83f23ef861 Basic support for tagging tasks and selecting a subset of tasks to run with --tags. 12 years ago
Dave Hatton 7ecdb83800 improve output formating for playbook 12 years ago
Michael DeHaan efac68b636 Remove the -D module debug flag, which no longer is functional due to sudo pty requirements, and replace with -v/--verbose.
This flag will show playbook output from non-failing commands.  -v is also added to /usr/bin/ansible, but not  yet used.

I also gutted some internals code dealing with 'invocations' which allowed the callback to know what module invoked
it.  This is not something 0.5 does or needed, so callbacks have been simplified.
12 years ago
Michael DeHaan 0972b761de Leverage cowsay if installed. 12 years ago
Michael DeHaan db1d5b154a Fix casing/underscore convention in method name, split polling logic away from runner. 12 years ago
Seth Vidal b42628d858 hook up --private-key to the runner 12 years ago
Michael DeHaan 07508ad535 Since host variables are becoming important, it did not make sense to sustain --override-hosts, with the ability
to create hosts that didn't have inventory information, but also existed, in various groups.
12 years ago
John Kleint 710d085def Fix non-sudo execution, add --sudo-user to ansible-playbook. 12 years ago
Michael DeHaan 05545e3735 Fixup the previous sudo_user support patch to work with playbooks. 12 years ago
Jim Richardson 93a20a33e9 first bit of getting sudo -u functionality 12 years ago
Michael DeHaan a33320d03d Add some comments to ansible-pull and the example playbook 12 years ago
Michael DeHaan e54eeb7629 Merge branch 'local' of https://github.com/sfromm/ansible into devel 12 years ago
Stephen Fromm 84c9caa805 Simplify ansible-pull to just invoke ansible and ansible-playbook
This eliminates the creation of runner and playbook instances and just
invokes the processes ansible and ansible-playbook.
12 years ago
Stephen Fromm 672794f586 Add ansible-pull
A first stab at a pull-based model for ansible.  This does two things:
    1. Invoke the git module via Runner to set up a git repository on the
       localhost.  It sets up Runner to use transport='local' and forces
       the inventory to just 'localhost'.
    2. Run any playbooks provided.  By default, this wants to run the
       playbook local.yml.  This also sets transport='local' and sets
       the host_list to a list: localhost, fqdn, and hostname.
The reason for setting the host_list and not using override_hosts is
because there may be plays in the playbook that are not meant for a
specific host.  That is, if the git repository is for the entire site
and not host-specific, you don't want to override hosts and apply all
plays to any given host.  This has the downside of potentially running a
play three times if the play is defined for 'hosts: all'.
12 years ago
Rafal Lewczuk 06e99ee75e Trivial fix: make PyDev happy (imports). 12 years ago
Jeroen Hoekx 029fe1273c Modify /usr/bin/ansible and playbooks to use the new async API. 12 years ago
Michael DeHaan b9982fc17b Reinstate --extra-vars, which can do things in playbooks like:
ansible-playbook release-my-app.yml --extra-vars="version=123"

And make $version available in the playbook without re-editing the file
12 years ago
Michael DeHaan edb8988e8e Unused imports 12 years ago
Michael DeHaan a8d748220b Don't prompt for password info if the pattern wouldn't have matched any hosts. Also convert
Runner() usage to the new inventory model.
12 years ago
Michael DeHaan 70734f5968 Update bin/ansible to fix usage of inventory API + no more verbose option 12 years ago
Michael DeHaan 3f26a1c7f6 verbose option is not being used, so remove it. debug variable still exists. 12 years ago
Michael DeHaan 377488aa2a remove --extra-vars since the new YAML inventory stuff wasn't quite using it as designed and it is getting hard to follow
with that and SETUP_CACHE etc
12 years ago
Michael DeHaan 35fdf6636b Allow --user for playbooks, no need for port setting as can specify in inventory file now. 12 years ago
Jeroen Hoekx c5cae87eca Refactor inventory code out of Runner.
This introduces the Inventory class.

Playbook uses the internals of Runner to limit the number of hosts to poll
asynchronously. To accomodate this, Inventory can be restricted to specific
hosts.
12 years ago
Michael DeHaan 347637339c Merge remote branch 'public/integration' into integration 12 years ago
Michael DeHaan c3cad50075 Update manpages, fix missing variable assignment 12 years ago
Michael DeHaan f2465e0571 Add support for specifying sudo passwords to both ansible & playbook. Nopasswd sudo is no longer required. 12 years ago
Jeroen Hoekx d366885367 Stop async /bin/ansible if completed on all hosts. 12 years ago
Michael DeHaan 788d2bf8d1 Allow playbook to take --connection=local for easier reuse of playbook in kickstart w/o specifying connection: in
the playbook itself.  Both work.
12 years ago
Michael DeHaan 6b50078881 Add defaults to command help to avoid a certain class of user questions. 12 years ago
Stephen Fromm 0675f2511b Merge branch 'master' into localconnection
Merge the SortedOptParser bits and debug attribute commits into
localconnection.

Conflicts:
	bin/ansible
	lib/ansible/playbook.py
	lib/ansible/runner.py
	lib/ansible/utils.py
12 years ago
Michael DeHaan 4c75b7f3ad Merge commit '8ae71cc' into integration
Conflicts:
	bin/ansible
	bin/ansible-playbook
	lib/ansible/utils.py
12 years ago
Stephen Fromm fdee1d3459 Add support to bin/ansible for --connection option 12 years ago
Seth Vidal 8ae71cc7b1 go back to using a normal optparser to add options instead of the dict
interface.

add very small subclass of OptionParser to sort the options so mdehaan is happy
12 years ago
Brad Olson 5a4d4bc051 Added usage info to bin/ansible-playbook, now shows options on bare command line. NOTE: bin/ansible outputs usage to stdout, bin/ansible-playbook to stderr. Should they be consistent? 12 years ago
Brad Olson 74b26da9ac began playbook tweak 12 years ago
Brad Olson f840c0d167 Wired in Michael's usage string optparse style. 12 years ago
Michael DeHaan 7b9856bc0e Modification on top of skvidal's common options patch to keep options to command line tools sorted. 12 years ago
Michael DeHaan 8e1f24b822 Amend option descriptions. 12 years ago
Seth Vidal 7e50d170a8 move the bulk of the opt parsing out of ansible/ansible-playbook and into utils
for other scripts to use.
12 years ago
Michael DeHaan 2511992659 Surface module debug (-D) to /usr/bin/ansible also 12 years ago
Jeroen Hoekx a6b8973938 Change debug flag to D instead of d.
d would be useful for --dry-run.
12 years ago
Jeroen Hoekx d9a16a3d67 Add --debug option to ansible-playbook.
This prints remote module stderr on local stderr.
12 years ago
Michael DeHaan 6275e57718 pyflakes: Unused import / unused var 12 years ago
Michael DeHaan 3ded27fe35 Treat module args as strings everywhere to avoid unneccessary shlex and requoting 12 years ago
Michael DeHaan f11de2f5c9 --extra-vars option for ansible-playbook
Conflicts:

	lib/ansible/playbook.py

Removed unneccessary shlex and replaced with basic split, some repurcussions in runner
that can be eliminated once we consistently pass args as a string (soon).
12 years ago
Michael DeHaan 81e3496037 Added preliminary support for --sudo to ansible, playbook support and further testing pending. 12 years ago
Tim Bielawa 5261d14aef Fix exception catching for py2.4 12 years ago
Michael DeHaan b30ddc4520 Expose remote_port option in playbook 12 years ago
Christopher Johnston 9041ad4d83 just some minor clean up single vs double in getopt parsing 12 years ago
Christopher Johnston f06ec76fdb add support for using an alternate remote port 12 years ago
Michael DeHaan 01e51b120a Recieved quite a few requests to run python via /usr/bin/env, so doing that. 12 years ago
Michael DeHaan f074f1c4c4 Fixes from pyflakes 12 years ago
Michael DeHaan 45a455a805 Make /usr/bin/ansible output realtime and also delete some code! 12 years ago
Michael DeHaan 6dda6f12dc Applying callback model to runner, and using that in playbooks, so output can be more immediate in playbooks.
(Runner still does not use callbacks for default output)
12 years ago
Michael DeHaan 3052d85a6a use capital O. 12 years ago
Michael DeHaan 9df612f007 Add a "-o" override option so hosts not in a playbook can still be managed by a playbook. 12 years ago
Michael DeHaan 7ed734dfb2 move callbacks to seperate file, anticipating callbacks for Runner() as well 12 years ago
Michael DeHaan e89131a3a2 playbooks -- Ratchet up logging prior to gating things with verbosity controls and upgrading output format 12 years ago
Michael DeHaan a5f4ca50b8 Ratchet up logging a few notches prior to controlling w/ verbosity settings 12 years ago
Michael DeHaan b5c62ec068 Enhance logging, way to gate verbosity levels pending. 12 years ago
Michael DeHaan 4de7bbb169 Allow conditional imports, see examples/playbook3.yml comments for a full explanation. Extensive
refactoring of playbooks now warranted, which we'll do before we move on.   This variable assignment
system makes nearly all possible magic possible, for we can use these variables however we like,
even as module names!
12 years ago
Michael DeHaan 5371a9e497 Regression tests for playbooks, logging the events they call via callbacks. 12 years ago
Michael DeHaan 9c5ec886a6 Import cleanup, plus have /bin/ansible remind you if no hosts were matched by a pattern (for instance, assume
there was a typo in the pattern)
12 years ago
Michael DeHaan fde7de80df Remove "import *" from bin/ansible so we can use pyflakes, and remove unneeded imports in the process 12 years ago
Michael DeHaan a4b8cdf8b3 Remove "import *"'s from bin/ansible-playbook code so pyflakes will be usable. 12 years ago
Michael DeHaan 9f6d98844e If the inventory file is EXECUTABLE, treat it as a file returning JSON, if called directly, return the host
and groups list.  If called with an argument of a host name, return the key=value data for that particular
host.
12 years ago
Michael DeHaan db61e8f346 Fix -t tree mode so it writes out the value for each host, not everything, once again 12 years ago
Michael DeHaan e6f175e929 Allow the SSH timeout to be passed to playbooks just like it already could with /usr/bin/ansible 12 years ago
Michael DeHaan e3b4981feb Various additions to make sure timed out and failed hosts are taken out of the playbook even if failed
during setup, async tasks, or poll operations.  This introduced some redundancy so I've made some
notes in the code where things need to be refactored to remove them.
12 years ago
Michael DeHaan 4ae98ed92d Upgrades to error handling, now general try/catch available. 12 years ago
Michael DeHaan 09a7119e74 Annotate more files, fix missing imports messing with playbooks. Hey Tim, please test your stuff :) 12 years ago
Tim Bielawa dfd2c6dce3 Implement friendlier error handling.
Generic AnsibleError exception + host inventory missing exception.
First shot at catching these in a generic way in bin/ansible*.
12 years ago
Michael DeHaan 86e19cd8c8 This adds async poll support to playbooks. See examples. Some more testing due + docs
but this is more or less a mirror of what /bin/ansible does.  It also has a 'fire and
forget' mode if the poll interval is left off or set to 0.
12 years ago
Michael DeHaan db7ba87111 Add polling logic in runner such that all actions get kicked off everywhere then polling
happens only on needed hosts, allowing some hosts to fail and drop out of the running.
12 years ago
Michael DeHaan 5be1a612d3 Add async polling logic to runner. Will add to playbook shortly, have to diagnose why paramiko
is not letting async_wrapper daemonize itself when it does work fine when directly executed.
12 years ago
Michael DeHaan 85e0de5bb2 Move print statements out of playbook.py and back into CLI so we can simplify playbook operations
independent of output, and can also see all the output nicely grouped together if we want
to reformat it or make summaries of statistics.
12 years ago
Michael DeHaan eaa7714ff8 Laying the groundwork for async mode, async status script still needs to be done, and async_wrapper
still needs to daemonize.  Then, once done, playbook can be taught how to poll async within the
timing window.
12 years ago