Seth Vidal
95706af074
ans-command and scripts.py for the basic cli parser to be imported elsewhere
13 years ago
Michael DeHaan
1caafb7bd9
Stop evaluating a host in a playbook when it encounters the first failure.
13 years ago
Seth Vidal
85f751175d
- make tmp_path be a dir so we can put more than one command in there securely
13 years ago
Seth Vidal
bd7a71bb29
implement manual multiprocessing pools for the runner.
...
this fixes the ctrl-c not-working problem.
implemented this solution: http://www.bryceboe.com/2010/08/26/python-multiprocessing-and-keyboardinterrupt/#georges
also add hosts which do not get a chance to return results to the 'dark' results.
13 years ago
Seth Vidal
1a20b00d1f
If the error is an authentication exception - just report it that way don't dump out an unappetizing traceback which just says the same
13 years ago
Michael DeHaan
f7cff27f3d
Drastically simply playbook syntax
13 years ago
Michael DeHaan
fc4ba46d1a
Add a ton of comments so folks can understand what runner does. More refactoring is
...
certaintly possible too.
13 years ago
Michael DeHaan
c0ac0e9b62
Added comments to explain the playbook code.
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
deb71da91e
trim md5sum string so it does not contain the filename
...
also fix a bug/typo in the reporting from playbook
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
cb90df2377
Allow multiple patterns to specified, just like Func did.
13 years ago
Michael DeHaan
b44ae0af90
applying indentation patch from skvidal
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
de80166b6d
Misc refactoring, updated TODO to reflect new templating features being completed
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
b053df4182
Some refactoring of runner.py -- more to come to eliminate repeated code
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
440bac4a95
Added remote templating engine using jinja2, see examples/playbook.yml for usage.
...
Cleanup is due in runner.py
13 years ago
Michael DeHaan
5d6b0280d5
Added stub for template execution, WIP.
13 years ago
Seth Vidal
160470bc49
- add match_hosts() method to runner.Runner()
...
- add pattern parameter to self._matches() and match_hosts() so you can query
for matches against the host list
- these are useful when writing scripts and you want to tell the user
what hosts you will be running on before actually executing anything.
13 years ago
Seth Vidal
e7bb41ff89
simple logging setup using logger.
...
/usr/bin/logger should probably be a constant or defined in some sort of config as well as the log priority
13 years ago
Michael DeHaan
e25bb2f888
Upgrade output for playbook runs
13 years ago
Michael DeHaan
ee2fa721f1
Kinda have to pass the host list parameter
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
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
Michael DeHaan
b2e8084c50
Merge pull request #4 from skvidal/master
...
adds an option to ask for and store the ssh password from the cli
13 years ago
Seth Vidal
08b45d6da1
add support to prompt for ssh password on the cli
13 years ago
Jeremy Katz
25df80ff58
Use a mktemp'd path for uploading modules
13 years ago
Michael DeHaan
bd37864242
Comments and fixup on the dark/contacted code
13 years ago
Michael DeHaan
11f7930038
trim unused modules
13 years ago
Michael DeHaan
7be8d134c9
Rename 'successful' to 'contacted' ...
13 years ago
Michael DeHaan
530e54b3e4
Fix multiprocessing pool usage and remove stackoverflow hack
13 years ago
Michael DeHaan
7ce5db97ed
Add explicit calls to close connections
13 years ago
Michael DeHaan
e0e98d10ce
use readlines on stdout so we'll block on long running commands
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
Michael DeHaan
f31421576b
Genesis.
13 years ago