Commit Graph

524 Commits (498edda60390d546d59456d1e5fb2380eedbcd16)

Author SHA1 Message Date
Michael DeHaan 3052d85a6a use capital O. 13 years ago
Michael DeHaan 9df612f007 Add a "-o" override option so hosts not in a playbook can still be managed by a playbook. 13 years ago
Michael DeHaan 7ed734dfb2 move callbacks to seperate file, anticipating callbacks for Runner() as well 13 years ago
Michael DeHaan e89131a3a2 playbooks -- Ratchet up logging prior to gating things with verbosity controls and upgrading output format 13 years ago
Michael DeHaan a5f4ca50b8 Ratchet up logging a few notches prior to controlling w/ verbosity settings 13 years ago
Michael DeHaan b5c62ec068 Enhance logging, way to gate verbosity levels pending. 13 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!
13 years ago
Michael DeHaan 5371a9e497 Regression tests for playbooks, logging the events they call via callbacks. 13 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)
13 years ago
Michael DeHaan fde7de80df Remove "import *" from bin/ansible so we can use pyflakes, and remove unneeded imports in the process 13 years ago
Michael DeHaan a4b8cdf8b3 Remove "import *"'s from bin/ansible-playbook code so pyflakes will be usable. 13 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.
13 years ago
Michael DeHaan db61e8f346 Fix -t tree mode so it writes out the value for each host, not everything, once again 13 years ago
Michael DeHaan e6f175e929 Allow the SSH timeout to be passed to playbooks just like it already could with /usr/bin/ansible 13 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.
13 years ago
Michael DeHaan 4ae98ed92d Upgrades to error handling, now general try/catch available. 13 years ago
Michael DeHaan 09a7119e74 Annotate more files, fix missing imports messing with playbooks. Hey Tim, please test your stuff :) 13 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*.
13 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.
13 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.
13 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.
13 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.
13 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.
13 years ago
Michael DeHaan cbfabcd0fb Add -i, -k, and -M to ansible-playbook CLI to match options in /usr/bin/ansible 13 years ago
Michael DeHaan 6541f338df add pyflakes target & associated fixes. Also decided to save JSON to --tree file so it can
be better used programatically.  May have to come up with another system of tree logging for
playbook if playbook decides to have tree logging.  Presumably not the highest priority.
13 years ago
Michael DeHaan c57df6220b Add pydoc to playbook binary, fix default types for playbook '.get()' call 13 years ago
Michael DeHaan bf967adf83 Added pydoc for functions in Cli() 13 years ago
Michael DeHaan e9a24cdad4 Extensive refactoring of bin/ansible, moving most output functions into lib/ansible/utils to
encourage readability and make things more maintainable.
13 years ago
Michael DeHaan b33ef0de60 Add a newline in output here, possibly considering printing top level keys flat 13 years ago
Michael DeHaan e6a1acf756 Let "all" be an alias for "*" in patterns, fix output bug on non-command execution, make clean now removes the build dir 13 years ago
Michael DeHaan 847846af0e -p has been replaced by a required option. Various docs changes. 13 years ago
Michael DeHaan 4ce1f1dd5e README/doc/example updates to go with group support and CLI option changes.
Minimizing manpage until CLI options stabilize.
13 years ago
Christopher Johnston d15172abdc add a -T option for setting ssh timeout in seconds 13 years ago
Christopher Johnston 2773234c3f python 2.5 does not include json so lets try to use simplejson 13 years ago
Michael DeHaan a40ac93716 Plan to merge things back into ansible means we can simplify our code tree
by eliminating the lib/ansible/scripts file.  Ansible-playbook
doesn't have enough options to need it's own thing, and we're going to try
to work most things back into bin/ansible
13 years ago
Michael DeHaan 1427ade3af Have ansible yell if no module name is supplied 13 years ago
Michael DeHaan edf6da5c38 Rename opts so --help looks cleaner 13 years ago
Michael DeHaan 281f96b8dd merge Seth's ansible-command script with ansible proper, so we can do nice output, one line output,
and treeish saving everywhere.

there are probably some quirks here we'll want to refine further later, for instance, we should
be able to do nicer things with "can't contact host tracebacks".
13 years ago
Michael DeHaan 0356925639 Rename ans-command to ansible-command and ans-playbook to ansible-playbook so my brain
can tab complete better
13 years ago
Michael DeHaan 430f38d54c minor option consistency 13 years ago
Michael DeHaan ab17f6f44e Because I can't remember which options are supposed to be uppercase and which are not,
rename all of them so we can use non-conflicting lowercase.  Manpage updates pending
13 years ago
Michael DeHaan 79d91e024b Updates to ansible-playbook helper program 13 years ago
Michael DeHaan 42767b30fe Fix output on failed hosts 13 years ago
Michael DeHaan b9b0240543 Continued ans-command output upgrades, fixed output_dest back again 13 years ago
Michael DeHaan d6dcaefa9f Some code refactoring + output upgrades 13 years ago
Michael DeHaan 859c572de8 always show return codes (seems like a reasonable thing to do), make one line output slightly more
obvious
13 years ago
Michael DeHaan cc2d3e0f1a Fix my error from not removing this parameter 13 years ago
Michael DeHaan 7553981ca2 ok I see output_dest was actually used but IMHO this should be something we use the shell for, i.e. output to stdout and redirect, using tee if neccessary 13 years ago
Michael DeHaan f72bded2e5 Merge branch 'master' of github.com:mpdehaan/ansible 13 years ago
Michael DeHaan 34b72d02ea remove unused option 13 years ago
Michael DeHaan 4ba366c2d1 Require that ansible managed hosts be in the list of hosts to manage to avoid
option overload.
13 years ago
Michael DeHaan 01e5da6d0b Make /bin/ansible use the common options from lib/ansible/scripts
DRY!
13 years ago
Michael DeHaan fb531a8dfa Minor option string relabelling, move one option from common into helper script 13 years ago
Michael DeHaan c6eb3f1006 remove debug statement 13 years ago
Michael DeHaan 7de661dd2c Add ansible command, fix import error in runner 13 years ago
Michael DeHaan 0321afb1e3 Minor error handling tweaks (yell if no args) for ansible-command and some minor
style bits (underscores between compound words, use dest always in optparse)
13 years ago
Michael DeHaan a3a426b4c5 Add GPLv3 license headers to new files. Approved by all contributors on mailing list. 13 years ago
Michael DeHaan 5eea593af5 Merge branch 'master' of github.com:mpdehaan/ansible 13 years ago
Michael DeHaan be4cb64c92 Relicensing to GPLv3, all previous committers ok'd on mailing list. 13 years ago
Seth Vidal 95706af074 ans-command and scripts.py for the basic cli parser to be imported elsewhere 13 years ago
Michael DeHaan a5039eec62 Update reporting on playbook runs. 13 years ago
Seth Vidal ee95a5b0a4 use shlex.split() instead of split() to keep quoting sane for commands 13 years ago
Michael DeHaan 43f7dee247 Added rough sketch of what I want for playbook support. Debug heavy at the moment
as I figure out how logging/output might look.  A couple of major TODO features
also listed in the file.
13 years ago
Michael DeHaan 767517ac65 Force forks to be an integer when read by command line 13 years ago
Michael DeHaan d079c8e5f3 Move runner out of __init__.py so it's clear what classes live where. 13 years ago
Michael DeHaan 6eda2cf383 Added initial stub for where playbooks will go, moved to common
constants file so as to not repeat constants between CLI and lib.
13 years ago
Seth Vidal 08b45d6da1 add support to prompt for ssh password on the cli 13 years ago
Michael DeHaan 530e54b3e4 Fix multiprocessing pool usage and remove stackoverflow hack 13 years ago
Michael DeHaan 4608a93de5 Added docs on split success/failure structures 13 years ago
Michael DeHaan 7eb2dd2dee Add remote setting to file, update TODO 13 years ago
Michael DeHaan 3da6370a65 use defaults better, improve/fix setup.py 13 years ago
Michael DeHaan 9681e1fa04 Add MIT license headers 13 years ago
Michael DeHaan 3807824c6d Added file copy support w/ readme updates 13 years ago
Michael DeHaan 145a024d7b Split CLI into binscript 13 years ago