Commit Graph

232 Commits (162530dd74bff13ee40cbc56c85b794364229993)

Author SHA1 Message Date
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
Tim Bielawa dce6074a81 Fixes for better RPM packaging
Spec file installs default example hosts files
Spec file marks the contents of /etc/ansible as %config(noreplace)

Example hosts file now with instructional comments
13 years ago
Michael DeHaan 8e20ed3714 src= parameters for template and copy operations can be relative to the playbook (for /usr/bin/ansible-playbook) or current directory (for /usr/bin/ansible) 13 years ago
Michael DeHaan 4ee4ddcd7c Parameterized include statements can see top level variables and also be passed specific variables!
Code needs cleanup, but works
13 years ago
Michael DeHaan 8d57ceecf1 Factoids and push variables via setup are now available to be templated in command args
as well as template files.  PLUS, variables are now expressed in playbooks without having
to know about the setup task, which means playbooks are simpler to read now.
13 years ago
Michael DeHaan 8d06c074b1 * Added uptime.py as an example of somewhat minimal API usage & reporting
* Pattern in API now has a default
* Fixed bug in template module operation detected from running playbook (tests for that pending)
* Workaround for multiprocessing lib being harmlessly squeaky (feeder thread got sentinel)
13 years ago
Michael DeHaan 1ed212513c Add user to playbook example so it's clear that this is available 13 years ago
Michael DeHaan ab408b0000 Ability to import task lists and handler lists from a top level playbook file. It is possible
to use multiple import statements to implement 'class' like behavior, and also to share
a common list of handlers between multiple patterns.
13 years ago
Michael DeHaan e4304a0ac5 Make sure tempdirs are cleaned up after execution steps, fix notifiers, make sure
service module is installed by setup.py
13 years ago
Michael DeHaan 5040c01640 rename 'pattern' to 'hosts' in playbook format. 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
Michael DeHaan 155c3ca89e update playbook docs with updated syntax / minor edits 13 years ago
Michael DeHaan 1caafb7bd9 Stop evaluating a host in a playbook when it encounters the first failure. 13 years ago
Michael DeHaan ba4e36a9a9 Rename 'ensure' to 'state' because I think it's a bit cleaner and doesn't imply
all modules take a common parameter name.  But more or less we still work idempotently
in modules.
13 years ago
Michael DeHaan 5781e6e02f Merge pull request #32 from tbielawa/DocsFixin
Docs fixin
13 years ago
Tim Bielawa 6612772711 Update man pages. Fix formatting in playbook example. Also, YAML documents by definition start with '---', so I have added this to the example and the manpage 13 years ago
Michael DeHaan f7cff27f3d Drastically simply playbook syntax 13 years ago
Michael DeHaan 78a254fc52 In playbooks, each pattern stanza can reference it's own user to run as, so you can
run things as multiple sets of users (if you want) in the same playbook.
13 years ago
Michael DeHaan 61d064d011 Fixed up KV munging in runner, misc fixes to copy, setup, and template modules 13 years ago
Michael DeHaan e5f62f20b1 make copy & template module take key/value parameters so we're consistent. Only the command
module works differently now

starter manpage for modules

allow template file location to be passed into template & setup modules
13 years ago
Michael DeHaan d308254eae A basic service module with 'ensure' idempotence semantics. Playbook updated to use service
module vs command module for restarting.  May be some bugs and requires the service to implement 'status' -- and probably some better error handling (i.e. return JSON with "failed" element if failed).

Improvements welcome.
13 years ago
Michael DeHaan 3c3111c1f3 Add optional hosts parameter to examples to show how we can
override the host file in a playbook to load different groups
of hosts.
13 years ago
Michael DeHaan a5039eec62 Update reporting on playbook runs. 13 years ago
Michael DeHaan 79fdc1b6f4 Notifable handlers only run when something is changed. Awesome. 13 years ago
Michael DeHaan ba9468266f Can it get an easier? Yes it can! Further simply playbook format. 13 years ago
Michael DeHaan 6d0fd2bfde Compress the playbook format for readability 13 years ago
Michael DeHaan 6cceaa5f6a Implment copy with an actual minion-side module such that we can get md5sum's and
onchange events like Puppet's file providers do.
13 years ago
Michael DeHaan 5d6b0280d5 Added stub for template execution, WIP. 13 years ago
Michael DeHaan 102385e4ad Added a setup module which can be used to place key-value JSON data
on the system for use in a later template module.   These values
could also be used for module-specific config.
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 7730341d24 We don't have modules that list when things change just yet. I plan to handle
this by having a changed=True/False in the JSON for these modules.  Added a note
so folks won't think we can only execute shell :)
13 years ago
Michael DeHaan 381b3c971a Example for list of hosts syntax
TODO: add a command to auto-add a host, list hosts, etc
13 years ago