1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00
Commit graph

4366 commits

Author SHA1 Message Date
Stephen Fromm
887d293a3b Add git reset --hard support to git module
Resets working tree to what is in HEAD and discards any
uncommitted changes.
2012-05-02 09:50:36 -07:00
Stephen Fromm
40dbd9b3d7 Add exit_json and fail_json to git module
This adds exit_json() and fail_json() to git module.  It also sets
version to 'HEAD', if not provided.
2012-05-02 09:50:36 -07:00
Peter Sankauskas
f9a14cfec1 Adding a missing '~' to use the user's home directory instead of the root file system for the module arguments 2012-05-02 09:50:20 -07:00
Michael DeHaan
594084bc9f Merge pull request #287 from dne/user-group-add-system
Add 'system' option for user and group modules
2012-05-01 15:54:45 -07:00
Michael DeHaan
af74c741ef Merge pull request #285 from tbielawa/fixLicenseInDevel
Fix license in devel
2012-05-01 15:42:13 -07:00
Michael DeHaan
27582ad313 Merge pull request #281 from dne/file-link-relative
File module fix for symlink from relative source path
2012-05-01 15:41:46 -07:00
Michael DeHaan
dd380f67e6 Merge pull request #289 from skvidal/devel
service enable=on/off
2012-05-01 15:40:59 -07:00
Jeroen Hoekx
f14c1e3e91 Async: print one poll message per polling cycle.
Instead of one per host per polling cycle.
2012-05-01 18:38:26 -04:00
Jeroen Hoekx
029fe1273c Modify /usr/bin/ansible and playbooks to use the new async API. 2012-05-01 18:38:26 -04:00
Jeroen Hoekx
ce9a8c9ffc Introduce Async API in Runner. 2012-05-01 18:38:26 -04:00
Jeroen Hoekx
d96763346f Make async wrapper kill the process it supervises.
It wasn't killing the job at all before.
Indentation was 3 spaces.
2012-05-01 18:38:26 -04:00
Michael DeHaan
cc13d34f91 changelog update 2012-05-01 18:38:26 -04:00
Seth Vidal
dc30b01c87 new service module handles enable=on/off for chkconfigging it on 2012-05-01 17:46:45 -04:00
Daniel Néri
a837009c5d Add 'system' option for user and group modules
Creates system accounts/groups; corresponds to the '-r' option for {user,group}add.

The option is only honored when users/groups are added, not when modified.
2012-05-01 21:38:55 +02:00
Tim Bielawa
029d86be2f Include license file in MANIFEST.in. Fixes #284 2012-05-01 10:34:36 -04:00
Daniel Néri
82d3fcfd53 File module fix for symlink from relative source path 2012-05-01 03:12:13 +02:00
Jeroen Hoekx
b87710a1df Introduce group_names in template variables.
This is a list of all the groups a host is in.
2012-04-28 18:23:44 +02:00
Michael DeHaan
7d228c5198 Add github fork banner to docs project to correct for missing akamai resource. 2012-04-28 11:20:38 -04:00
Michael DeHaan
b388ac721e move stuff back into footer 2012-04-28 10:53:15 -04:00
Michael DeHaan
07d7b7c802 Remove double tweet links 2012-04-28 10:50:55 -04:00
Michael DeHaan
589ae67d95 work on footer 2012-04-28 10:50:20 -04:00
Michael DeHaan
ee20586d28 Attempt to cleanup rendering of social buttons 2012-04-28 10:46:09 -04:00
Michael DeHaan
57c4559a47 Attempt to add +1/like/etc buttons. 2012-04-28 10:42:32 -04:00
Michael DeHaan
d049d425e6 Clarify stderr behavior of modules 2012-04-27 01:39:15 -04:00
Michael DeHaan
6341361a5b Clarify that stderr WILL crash your module. Can't redirect because if we do we lose tracebacks
from modules remotely when they fail to parse, and this is VERY useful data.
2012-04-27 01:36:31 -04:00
Michael DeHaan
88a7f771cb update changelog 2012-04-27 01:27:47 -04:00
Michael DeHaan
36e454c52f Because paramiko using a pty can't distinguish stderr and stdout, remove handling that
treated -D as a way to show stderr, and make sure modules don't include things on stderr.
Update docs and test module script to come into line.
2012-04-27 01:25:38 -04:00
Michael DeHaan
076f1bc169 Revert "Revert "Unify normal and sudo remote command execution. Breaks stderr/stdout handling"
This reverts commit 40f603539c.
2012-04-27 00:46:26 -04:00
Michael DeHaan
0d5bee2dfa Revert "Revert "Actually wait for password prompt in remote sudo execution. Totally breaks stderr debugging"
This reverts commit e16114034c.

Conflicts:

	lib/ansible/connection.py
2012-04-27 00:46:17 -04:00
Michael DeHaan
40f603539c Revert "Unify normal and sudo remote command execution. Breaks stderr/stdout handling
This reverts commit 44486223ed.
2012-04-27 00:33:48 -04:00
Michael DeHaan
e16114034c Revert "Actually wait for password prompt in remote sudo execution. Totally breaks stderr debugging
and various modules.

This reverts commit 6341a9547f.
2012-04-27 00:31:18 -04:00
Michael DeHaan
f939f3fdaf Playbook can now take a 'name' which it will show when starting the play 2012-04-27 00:08:06 -04:00
Michael DeHaan
67d1169674 fix code handling if module_vars is None 2012-04-26 23:18:29 -04:00
Michael DeHaan
803672a769 Update development changelog 2012-04-26 23:12:09 -04:00
Michael DeHaan
aa8ae85070 Add playbook example for first_available_file 2012-04-26 23:03:14 -04:00
Michael DeHaan
3804910187 Some tweaks to first_available_file mostly in terms of error handling and not trying src= to be present
as it is not used here.
2012-04-26 23:00:33 -04:00
Michael DeHaan
b56efa7809 Fix handling of list=status such that it will actually work in absense of the state command, to
make it useful from /usr/bin/ansible and the API.  Also some minor style fixes.
2012-04-26 22:43:36 -04:00
Michael DeHaan
ea296e9edb Merge branch 'devel' of https://github.com/jkleint/ansible into jkleint-devel 2012-04-26 22:23:09 -04:00
Seth Vidal
a3ab793ba8 fixes for yum module for rhel5 and issue 269 2012-04-27 17:38:46 -04:00
Seth Vidal
c701e59592 very minor indentation issue in librar/copy 2012-04-27 16:45:28 -04:00
Seth Vidal
72fd971822 fall through file source list: first_available_file support
add first_available_file look up to _execute_template and _execute_copy
to runner.

add this data to playbook handler so it can be included into module_vars
2012-04-27 16:43:55 -04:00
John Kleint
c6db4e8fa3 Get service module working with sudo, add list=status, better error messages.
When running the service module via sudo, `$PATH` didn't contain `/sbin`,
so the service binary couldn't be found.  This just runs `/sbin/service`
directly.  Output is spewed to stderr on error.

Added `list=status` to include the output of `service <cmd> status`.
2012-04-27 13:35:24 -04:00
Michael DeHaan
40f5469869 minor personal style preference on 'not' 2012-04-26 20:42:20 -04:00
Reed Murphy
abf524405a shlex.split() tries to read from stdin if passed None 2012-04-27 11:25:43 +10:00
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
2012-04-26 19:57:07 -04:00
Michael DeHaan
a0ac936a55 Merge pull request #249 from jhoekx/octal-file-mode
Return the octal mode of a file instead of decimal.
2012-04-26 16:25:39 -07:00
Michael DeHaan
5aa5a48f7f Merge pull request #250 from jkleint/devel
Service module crashes if args has no "=".
2012-04-26 16:22:56 -07:00
Michael DeHaan
b6bdb22341 Merge pull request #251 from sfromm/selinux
Selinux -- more fun
2012-04-26 16:20:49 -07:00
Michael DeHaan
08b2f147e3 Merge pull request #252 from sfromm/facts
Use socket.getfqdn() to fix issue #243
2012-04-26 16:20:05 -07:00
Michael DeHaan
a4b3b7a2cf Local connection doesn't need a port. 2012-04-26 19:19:34 -04:00
jkleint
6341a9547f Actually wait for password prompt in remote sudo execution.
When running on lots of hosts with a large login banner on a slow network, it was still possible that the first recv() didn't to pull in the sudo password prompt, and sudo would fail intermittently.  This patch tells sudo to use a specific, randomly-generated prompt and then reads until it finds that prompt (or times out).  Only then is the password sent.  It also catches `socket.timeout` and thunks it to a more useful `AnsbileError` with the output of sudo so if something goes wrong you can see what's up.
2012-04-26 15:01:20 -03:00
Stephen Fromm
7b41e22e56 Change to socket.getfqdn() for fqdn fact 2012-04-26 08:39:47 -07:00
Stephen Fromm
5be20f8748 Update file module selinux-awareness
This adds selinux_mls_enabled() and selinux_enabled() to detect a)
whether selinux is MLS aware (ie supports selevel) and b) whether
selinux is enabled.  If selinux is not enabled, all selinux operations
are punted on -- same as if python's selinux module were not available.
In set_context_if_different(), I now iterate over the current context
instead of the context argument.  Even if the system supports MLS, it
may not return the selevel from selinux.lgetfilecon().  Lastly, this
drops selinux_has_selevel() in lieu of the current approach.
2012-04-26 07:31:25 -07:00
jkleint
30ce430363 Service module crashes if args has no "=". 2012-04-26 10:48:50 -03:00
Jeroen Hoekx
3594d1ce80 Return the octal mode of a file instead of decimal. 2012-04-26 14:55:31 +02:00
cocoy
1220a46e3a Bugfix for issue #245.
Do not override the value of user and hostname.
Get port and identityfile only.
2012-04-26 14:46:32 +08:00
Michael DeHaan
aed5414cb6 Add note about variable precedence 2012-04-25 22:48:04 -04:00
Michael DeHaan
d6368ab4fa Update facter/ohai parts to talk about ansible facts in most recent release 2012-04-25 22:46:00 -04:00
Michael DeHaan
eba1340542 Document ansible facts 2012-04-25 22:40:11 -04:00
Michael DeHaan
0165ceb3cc Document how to reference variables about another host from any host. 2012-04-25 22:32:24 -04:00
Michael DeHaan
81773f5635 rebuild 2012-04-25 22:28:38 -04:00
Michael DeHaan
c6a709a954 Add new apt options and replace 'ensure' with 'state' 2012-04-25 22:28:22 -04:00
Michael DeHaan
26fb8eeb99 Update docs to explain how to get Python 2.6 going on EPEL 2012-04-25 22:25:13 -04:00
Michael DeHaan
7773a62291 Development branch changelog update 2012-04-25 21:32:08 -04:00
Michael DeHaan
66869c39b0 changelog and readme 2012-04-25 21:32:08 -04:00
Michael DeHaan
acc6c9a9a5 Merge pull request #238 from sfromm/selinux
Fix issue #227
2012-04-25 10:33:04 -07:00
jkleint
44486223ed Unify normal and sudo remote command execution.
Commit SHA: 87b1cf45 that put temp files in `$HOME/.ansible` instead of `/home/<user>/.ansible` was producing a directory literally called `$HOME` (no expansion) with non-sudo remote execution.  I'll take the blame for this one, as `ParamikoConnection.exec_command()` was not using the shell for non-sudo commands.  This does sudo and non-sudo execution the same way, using the shell, so environment variables should get expanded.
2012-04-25 13:40:21 -03:00
Stephen Fromm
5c74a524b9 Fix for issue #227
Older versions of selinux, such as that deployed on rhel5, only return a
context of user:role:type instead of user:role:type:level.  This detects
whether the tuple has three elements (old-style) or four.  If the
old-style, it keeps the secontext list at three elements.
2012-04-25 09:39:11 -07:00
Seth Vidal
fa2aebc8a6 fix for issue #230 - handle template taking 3 args 2012-04-25 11:59:19 -04:00
cocoy
7a19a46e24 Bugfix for issue no. 229 2012-04-25 21:02:44 +08:00
Michael DeHaan
87b1cf45a4 Merge pull request #226 from cread/make-osx-tests-pass
Use the $HOME env var instead of hard coding /home/<username>
2012-04-24 15:22:43 -07:00
jkleint
4e1bc43645 Support YAML lists of hosts in playbooks.
Reading the docs, I was a bit confused as to how to specify multiple hosts/groups in a playbook.  Being YAML, I assumed a normal YAML list would work:

    ---
    - hosts: [host1, host2]

But this crashes when inventory._matches() assumes hosts is a string.  This patch just checks if hosts is a list, and turns it into a string joined by ';'.
2012-04-24 17:54:00 -03:00
Chris Read
dbb4afff50 Use the /Users/cread env var instead of hard coding /home/<username> 2012-04-24 21:45:54 +01:00
jkleint
b50c50748e _chain_file_module() calls .get() on error string
runner._return_from_module() normally returns a list (?) of `[str,bool,dict,str]`, but on error it returns `[str,bool,str,str]`.  runner._chain_file_module() then tries to call .get() on the third item (`data2`), which fails when it's a string.  This patch only accesses `data2` if the return value was `ok`.  It might be better to return consistent types in both cases, but I'm not sure where/how else the return value is used.
2012-04-24 17:21:01 -03:00
Seth Vidal
730cc89c5b Merge branch 'devel' of git://github.com/ansible/ansible into devel
* 'devel' of git://github.com/ansible/ansible: (2 commits)
  Fix tests for facter and the ansible_facts API.
  ...
2012-04-24 11:15:24 -04:00
Seth Vidal
41619278e5 handle issues when the hostlist is inadvertently set executable
and/or executing it fails. This produces a nicer error message than
a traceback
2012-04-24 11:03:14 -04:00
Jeroen Hoekx
cc579a8aa2 Fix tests for facter and the ansible_facts API. 2012-04-24 17:01:48 +02:00
Jeroen Hoekx
d3d26d0cd6 Ohai and facter modules should not use the ansible_facts API. 2012-04-24 16:57:04 +02:00
Michael DeHaan
02abb5a83b Merge pull request #217 from jhoekx/connection-fixes
Expand user in ssh identity file
2012-04-24 07:40:33 -07:00
Jeroen Hoekx
973b1fe02e Fix incorrect merge of custom-facts branch.
This fixes #216.
2012-04-24 16:11:56 +02:00
Jeroen Hoekx
c2f1aefaf1 Expand user in SSH identity file. 2012-04-24 15:56:46 +02:00
Jeroen Hoekx
1804df0bae Whitespace fixes in connection.py 2012-04-24 15:56:04 +02:00
Michael DeHaan
80e6d83660 Fix bug in library/file 2012-04-24 08:10:50 -04:00
Michael DeHaan
66ba31aeb0 Fix bug in library/file 2012-04-24 08:06:32 -04:00
Matt Coddington
d34160ed26 cast ssh port number as integer 2012-04-24 00:38:24 -04:00
Michael DeHaan
89c013035e Merge branch 'integration' of https://github.com/cocoy/ansible into cocoy-integration 2012-04-23 21:30:44 -04:00
Michael DeHaan
bced4c9db1 Merge branch 'jhoekx-custom-facts' into devel 2012-04-23 21:25:26 -04:00
Michael DeHaan
49cca98f1e Merge branch 'custom-facts' of https://github.com/jhoekx/ansible into jhoekx-custom-facts
Conflicts:
	lib/ansible/runner.py
2012-04-23 21:24:52 -04:00
Michael DeHaan
d60efc235d Merge branch 'jkleint-integration' into devel 2012-04-23 21:22:27 -04:00
Michael DeHaan
346df537b4 Merge branch 'integration' of https://github.com/jkleint/ansible into jkleint-integration 2012-04-23 21:21:43 -04:00
Michael DeHaan
d37a7115a8 Merge branch 'master' into devel 2012-04-23 21:19:10 -04:00
Michael DeHaan
6ba91a715e Update README to indicate new branch name 2012-04-23 21:18:57 -04:00
Michael DeHaan
7de90c4e64 Version bump for integration branch (soon to be renamed 'devel'), didn't update package
changelogs yet since this isn't released yet (but 0.3 is)
2012-04-23 21:14:48 -04:00
Michael DeHaan
4d62510997 Version bump for 0.3 release 2012-04-23 21:11:43 -04:00
Michael DeHaan
a8707e48e8 Fix merge issue 2012-04-23 21:06:47 -04:00
Michael DeHaan
c00699d0ef Merge branch 'integration'
Conflicts:
	lib/ansible/playbook.py
	lib/ansible/runner.py
	library/apt
2012-04-23 21:05:06 -04:00
Michael DeHaan
321ed53e3a Fetch module doesn't set invocation parameter as it invokes nothing, so don't let that be an error. 2012-04-23 21:02:39 -04:00
Henry Graham
21269a845f debian packaging 2012-04-23 19:17:01 -04:00
jkleint
e69e078569 More robust remote sudo.
The basic idea is sudo /bin/sh -c 'quoted_command'.  We use Paramiko's low-level API to set a timeout, get a pseudo tty, execute sudo and the (shell quoted) command atomically, wait just until sudo is ready to accept the password before sending it down the pipe, and then return the command's stdout and stderr.

This should be faster, as there are no unneeded sleeps.  There are no permissions issues reading the output.  It will raise socket.timeout if the command takes too long.  However, this is a per-read timeout, not a total execution timeout, so as long as the command is writing output and you are reading it, it will not time out.

Local and non-sudo commands remain unchanged, but should probably adopt a similar approach.

Since this is a significant change, it needs a lot of testing.  Also, someone smarter than I should double-check the quoting and execution, since it is a security issue.
2012-04-23 17:32:08 -03:00
Jeroen Hoekx
2dc9a563ef Allow modules to return facts.
If the module result contains "ansible_facts", that will be added to the setup
cache.
2012-04-23 21:28:12 +02:00
cocoy
c844a2d072 Fix to skip /.ssh/config if don't exist rather than raise an error. 2012-04-23 14:32:57 +08:00
cocoy
645b7a2dff Add .ssh/config support 2012-04-23 09:48:42 +08:00
Michael DeHaan
9177b7f30f rebuild 2012-04-22 20:05:32 -04:00
Michael DeHaan
ab5ea63ae7 Add another item to testimonials section. 2012-04-22 20:05:11 -04:00
Michael DeHaan
e38ea3807c Merge pull request #66 from sfromm/selinux 2012-04-22 16:50:13 -07:00
Daniel Néri
d5f3760acc Add optional "default-release" argument for apt module
The value is passed to apt-get's "-t" option. Useful for installing backports, e.g.:

  ansible webservers -m apt -a "pkg=nginx state=latest default-release=squeeze-backports"
2012-04-23 00:17:07 +02:00
Michael DeHaan
ab75ff5b39 Add "What People Are Saying" section. Rebuild. 2012-04-22 11:43:03 -04:00
Stefane Fermigier
f7469f8704 Add requirements in setup.py. 2012-04-22 16:33:19 +02:00
Stephen Fromm
bcfa6a7865 Add another example to file_secontext.yml
Demonstrate what happens when there is no default context in the policy.
2012-04-22 00:14:40 -07:00
Stephen Fromm
439b218309 Add documentation for context option to file module 2012-04-21 23:51:03 -07:00
Stephen Fromm
0f044e64f8 Add example playbook of file module's selinux capabilities 2012-04-21 23:30:08 -07:00
Stephen Fromm
be58995278 Add context=default option to file module
This adjusts behavior of file module such that removal of se* option
does not revert the file's selinux context to the default.  In order to
go back to the default context according to the policy, you can use the
context=default option.
2012-04-21 23:27:34 -07:00
Michael DeHaan
e3967af656 Merge pull request #191 from dne/apt-install-version
Apt module support for installing/removing specific version of package
2012-04-21 18:38:11 -07:00
Daniel Néri
ec4d5fa287 Add apt module support for installing/removing specific version of package
This uses standard APT syntax, e.g.:

    ansible webservers -m apt -a "pkg=nginx=1.1.19-1 state=installed"
2012-04-22 02:48:58 +02:00
Michael DeHaan
533c2c6126 Make it possible to use facts from hosts in templates for other hosts.
It works like this:

{{ hostvars['127.0.0.1']['ansible_eth0']['ipv4']['address'] }}
2012-04-21 12:45:37 -04:00
Michael DeHaan
666afef0e5 Small edits to packaging section, docs rebuild 2012-04-21 12:12:46 -04:00
Michael DeHaan
7b7108928e Merge pull request #62 from tbielawa/fixYumExample
Fix yum example
2012-04-21 09:09:15 -07:00
Michael DeHaan
767282df2a Small style fixes for indentation and spacing. 2012-04-21 12:06:54 -04:00
Michael DeHaan
e36a52f06c Ignore pyflakes E261 style output (multiple spaces before inline comment) 2012-04-21 12:05:15 -04:00
Michael DeHaan
edb8988e8e Unused imports 2012-04-21 12:04:21 -04:00
Michael DeHaan
bed5da6086 Remove unused assignment 2012-04-21 12:03:29 -04:00
Michael DeHaan
ddc0342920 Unused import 2012-04-21 12:01:37 -04:00
Michael DeHaan
1e7b60b9a5 Unused import 2012-04-21 12:01:26 -04:00
Michael DeHaan
9d0f2a6e9b Unused import 2012-04-21 12:01:15 -04:00
Michael DeHaan
f72114c657 Move setup.py stuff back to top level as "make sdist" was not working, plus, it makes sources cleaner. 2012-04-21 11:56:06 -04:00
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.
2012-04-21 11:46:32 -04:00
Michael DeHaan
3081bb93f1 Use /var/tmp for root by default to avoid /tmp being mounted noexec, and segregate tmp files for other users
into their home directories.
2012-04-21 11:38:39 -04:00
Michael DeHaan
3d72260887 Make it such that modules with no arguments work fine in playbooks (like ping, which is
non-sensical, but also if the user wrote a module that took none)
2012-04-21 11:26:48 -04:00
Michel Blanc
4aac448b06 Adds AUR link for Arch build
Adds URL to AUR ansile page
Adds suggestion to symlink python to python2 since most Arch users have
python3 by default. This suggestion might not be wise, though it doesn't
seem to break anything.
It might be probably wiser to have a patch for the AUR build that takes
care of this.
2012-04-20 21:34:44 +02:00
Tim Bielawa
7b7428a31e Fix yum example 2012-04-20 14:26:45 -04:00
Michael DeHaan
c0c691089d Fix bug in src. Should not code this early :) 2012-04-20 08:09:43 -04:00
Michael DeHaan
7794493952 Don't try to expand path for None values 2012-04-20 08:02:12 -04:00
Michael DeHaan
445e48b991 Call os.path.expanduser in modules so things work as expected even when using ./hacking/test-module script 2012-04-20 07:57:39 -04:00
Michael DeHaan
c6b8e1621d A better fix for slurp, expand path in the module. 2012-04-20 07:54:38 -04:00
Michael DeHaan
13ba31231e Fixup slurp module usage when not running as root, fix error handling path in slurp module. 2012-04-19 11:38:44 -04:00
Michael DeHaan
bc0980496c Typo + fix header depth 2012-04-19 10:45:41 -04:00
Michael DeHaan
bbde1bdfa0 Rebuild 2012-04-19 10:15:38 -04:00
Michael DeHaan
6831fb796c Shorten things up. We probably need a better slogan :) 2012-04-19 10:15:20 -04:00
Michael DeHaan
f63d7bcacc Since the first h2 appears as the title (need to fix this) put something up there
that makes some sense.  Should put Ansible first in the html TITLE, need to investigate
Sphinx details
2012-04-19 10:13:45 -04:00
Michael DeHaan
02bd7b74e1 rebuild 2012-04-19 09:57:45 -04:00
Michael DeHaan
806fdf0fbe Clarify update-cache 2012-04-19 09:57:30 -04:00
Michael DeHaan
6c99039a9b Merge pull request #58 from leucos/master
Adds doc for apt modules
2012-04-19 16:38:42 -07:00
Michel Blanc
de25ec1f29 Fixes typo
Fixes typo in apt/update-cache blurb
2012-04-19 22:27:29 +02:00
Michel Blanc
25e86ddb7d Adds doc for apt operations
Documents update-cache and puge apt module options
2012-04-19 22:25:12 +02:00
Michael DeHaan
0b9610e845 reinstate 'fork me on github' ribbon 2012-04-19 09:39:50 -04:00
Michael DeHaan
2eba6d71e3 Logo should link to web page index 2012-04-19 09:24:45 -04:00
Michael DeHaan
70734f5968 Update bin/ansible to fix usage of inventory API + no more verbose option 2012-04-19 09:21:21 -04:00
Michael DeHaan
8a433ecb96 Merge branch 'align-vars-syntax' of https://github.com/jhoekx/ansible into jhoekx-align-vars-syntax 2012-04-19 09:15:48 -04:00
Michael DeHaan
d4a5c4aee1 Merge pull request #181 from leucos/integration
Adds PKGBUILD file for Arch linux
2012-04-19 15:57:22 -07:00
Michael DeHaan
4f0ed20295 Merge pull request #182 from tbielawa/moveManifest
Move manifest
2012-04-19 15:56:46 -07:00
Daniel Néri
626e8f3543 Fix two misspellings of the apt module's "fail_json" function 2012-04-19 23:40:44 +02:00
Tim Bielawa
516df5f64f Move packaging related things out of the root directory:
Distutils MANIFEST.in, setup.py -> packaging/distutils/ directory.
2012-04-19 13:50:09 -04:00
Michel Blanc
3fae2ea8a4 Fixes Arch PKGBUILD dependencies
Adds missing depends (python2-yaml helps...)
Adds missing build deps (fakeroot)
2012-04-19 19:26:41 +02:00
Michel Blanc
a672a5549a Adds ArchLinux build file
Adds PKGBUILD file required to build Arch Linux packages
2012-04-19 15:30:26 +02:00
Michael DeHaan
86878be288 Backport typo fix from integration branch for apt module error path. 2012-04-19 09:14:43 -04:00
Michael DeHaan
4578b17213 Add missing file (slurp) used by templates in non-playbook mode. 2012-04-19 09:03:40 -04:00
Jeroen Hoekx
cdb8213dcc Supported 'listed' vars in playbooks. 2012-04-19 09:40:17 +02:00
Jeroen Hoekx
903e4f6eae Support dicts in inventory vars. 2012-04-19 09:40:17 +02:00
Michael DeHaan
51dfb6f88c Add PyYAML requirement 2012-04-19 00:14:37 -04:00
Michael DeHaan
b70ed206c6 Add debian build notes... makefile target pending, some changes to instructions possibly
needed due to moving into packaging/debian?
2012-04-18 23:26:08 -04:00
Michael DeHaan
645e7afaa6 Make note that the integration branch is the development branch (will rename later) 2012-04-18 23:21:55 -04:00
Michael DeHaan
85647b252d Various doc updates 2012-04-18 23:02:28 -04:00
Michael DeHaan
5bf32f9c90 Add gentoo packaging pointer 2012-04-18 22:51:54 -04:00
Michael DeHaan
8539f4926a Move debian under packaging subdirectory 2012-04-18 22:50:09 -04:00
Michael DeHaan
9cd492befe make all templating happen locally, so no jinja2 deps are ever required 2012-04-18 22:43:17 -04:00
Michael DeHaan
30d06dbcea Don't force down ansible facts back to setup, the setup module won't like parsing them on input and that
data is already there.
2012-04-18 22:23:33 -04:00
Michael DeHaan
5fa3d9b148 Teach playbooks to template locally to eliminate the need for Jinja2 on remote nodes.
You still need jinja2 if using /usr/bin/ansible vs /usr/bin/ansible-playbook though
this could change later by fetching the ansible file with a 'slurp' module.
2012-04-18 22:19:25 -04:00
Henry Graham
9c64ceb0f8 manpages and control file packaging changes 2012-04-18 21:29:08 -04:00
Henry Graham
b501bbfb69 format change to control file 2012-04-18 21:29:08 -04:00
Henry Graham
49ca5ba9f2 modified debian files 2012-04-18 21:29:08 -04:00
Henry Graham
4f6be6e35b Initial debian packaging 2012-04-18 21:29:08 -04:00
Michael DeHaan
f4132a0162 Merge pull request #160 from sfromm/facts
Facts
2012-04-18 18:28:48 -07:00
Michael DeHaan
837061879f rebuild 2012-04-18 21:22:02 -04:00
Michael DeHaan
a510bdc469 Update fetch docs 2012-04-18 21:21:49 -04:00
Michael DeHaan
da0209dbc4 The fetch module really should preserve the whole directory structure being fetched to allow subsequent calls,
particularly in playbook, to recreate the host tree structure.  Making it thus.
2012-04-18 21:12:48 -04:00
Tim Bielawa
2beb6592c7 Update spec file location in MANIFEST.in 2012-04-18 16:41:11 -04:00
Michael DeHaan
d79e59787a Merge pull request #166 from tbielawa/integration
Integration
2012-04-18 08:17:23 -07:00
Tim Bielawa
66f294d5c1 Finish up moving spec file 2012-04-18 11:00:59 -04:00
Tim Bielawa
0a70106b0f Move ansible.spec into subdir. Closes #162 2012-04-18 10:48:37 -04:00
Jeroen Hoekx
22ff8282a8 Template template module source. 2012-04-18 14:26:33 +02:00
Jeroen Hoekx
b678cf783c Template the source file of the copy module. 2012-04-18 11:40:15 +02:00
Michael DeHaan
da97024419 Explain template dep further 2012-04-17 21:02:19 -04:00
Michael DeHaan
7c43ca4fb1 Make note about jinja2 dependency going away 2012-04-17 20:57:01 -04:00
Michael DeHaan
cd5fe8a467 update FAQ 2012-04-17 20:54:01 -04:00
Michael DeHaan
0ab8d9e193 Logo on every page. 2012-04-17 20:47:29 -04:00
Michael DeHaan
6c547e5f0f Logo update 2012-04-17 20:42:46 -04:00
Michael DeHaan
4c6c953992 Docs rebuild 2012-04-17 20:36:22 -04:00
Michael DeHaan
9d7668207e Merge pull request #53 from sfromm/selinux
Describe selinux functionality in file module
2012-04-17 17:34:44 -07:00
Michael DeHaan
8da67ea4f5 Merge pull request #161 from sfromm/selinux
Rename serange to selevel to be consistent with selinux docs
2012-04-17 17:27:13 -07:00
Stephen Fromm
28895f6615 Rename serange to selevel to be consistent with selinux docs 2012-04-17 17:12:09 -07:00
Stephen Fromm
b9b0cd775b Describe selinux functionality in file module 2012-04-17 17:08:17 -07:00
Michael DeHaan
4f95dacee1 Document with_items 2012-04-17 20:04:24 -04:00
Michael DeHaan
85f0ff2572 Remove legacy port usage, now belongs in inventory file 2012-04-17 20:00:41 -04:00
Michael DeHaan
b733b43e00 Rebuild 2012-04-17 19:59:53 -04:00
Michael DeHaan
1caca11647 Rebuild + port docs 2012-04-17 19:59:41 -04:00
Stephen Fromm
0c38bb2fd0 Add native facts to library/setup
This collects various facts from the host so that it isn't necessary to
have facter or ohai installed.  It gets various platform/distribution
facts, information about the type of hardware, whether a virtual
environment and what type, assorted interface facts, and ssh host public
keys.  Most facts are flat.  The two exceptions are 'processor' and all
interface facts.  Interface facts are presented as:
    ansible_lo : {
        "macaddress": "00:00:00:00:00:00",
        "ipv4": { "address": "127.0.0.1", "netmask": "255.0.0.0" },
        "ipv6": [
                    { "address": "::1", "prefix": "128", "scope": "host" }
                ]
    }
2012-04-17 16:59:23 -07:00
Michael DeHaan
bdeff18675 Merge pull request #52 from dagwieers/master
Fix small typo
2012-04-17 16:56:59 -07:00
Michael DeHaan
48d3881d17 Document YAML inventory + eBuilds 2012-04-17 19:54:23 -04:00
Michael DeHaan
de70277173 No need to save setup files to disk, this is what SETUP_CACHE effectively does. 2012-04-17 19:39:11 -04:00
Michael DeHaan
d7ad85340b Merge pull request #157 from tbielawa/packaging
Packaging
2012-04-17 08:41:35 -07:00
Tim Bielawa
621dc83ac2 Fix man page option description indentation. 2012-04-17 11:39:51 -04:00
Michael DeHaan
401ce5eb0d Merge pull request #156 from tbielawa/packaging
Packaging fixes
2012-04-17 08:08:54 -07:00
Michael DeHaan
ff1b200644 Merge pull request #155 from jhoekx/inventory-error-fixes
Inventory: AnsibleError is not global...
2012-04-17 08:08:00 -07:00
Tim Bielawa
e9e8417735 Update hacking with MANPATH. Correct hacking README details. 2012-04-17 10:53:32 -04:00
Tim Bielawa
3f9a41b22d Docs build using version in the VERSION file.
Makefile upgraded with comments and some simplifications.

Remove useless 'PHONEY' and 'VPATH' directives from Makefile
2012-04-17 10:45:17 -04:00
Tim Bielawa
d43cf592eb Renaming asciidoc sources to .in.
Change manpages to build from *.in and add comments about how the make
targets work.
2012-04-17 10:31:40 -04:00
Tim Bielawa
b4ca288a7b Set %config(noreplace) on /etc/ansible instead of /etc/ansible/* so
the directory is removed on uninstall and its contents are considered
config files.
2012-04-17 10:31:40 -04:00
Tim Bielawa
2d26d1fd71 Update %description and auto-add version to manpages
Conflicts:

	docs/man/man1/ansible-playbook.1
	docs/man/man1/ansible.1

Update %description
2012-04-17 10:31:34 -04:00
Tim Bielawa
9316a504c5 Fixup specfile 2012-04-17 10:30:44 -04:00
Tim Bielawa
c9ab5ebc6b Fix FSF address in virt header. 2012-04-17 10:30:44 -04:00
Tim Bielawa
38128c4720 Remove asciidoc builddep 2012-04-17 10:30:44 -04:00
Jeroen Hoekx
aa555b8b16 Inventory: AnsibleError is not global... 2012-04-17 15:29:59 +02:00
Dag Wieers
4dec1d172b Fix small typo 2012-04-17 15:06:12 +02:00
Jeroen Hoekx
6f09b41eb5 Don't test modules that aren't present.
Also account for path difference in sleep in different distributions.
2012-04-17 13:30:30 +02:00
Jeroen Hoekx
9e0b7ee629 template: expand path if metadata is in user home. 2012-04-17 11:16:53 +02:00
Michael DeHaan
da6cb1ca6e Less scrolling over constructor params now that documentation follows 2012-04-16 23:51:03 -04:00
Michael DeHaan
3f26a1c7f6 verbose option is not being used, so remove it. debug variable still exists. 2012-04-16 23:47:41 -04:00
Michael DeHaan
78b5cd64d0 Add pydoc for constructors. Some arguments can be trimmed as we plan to remove the need for them (like setup_cache and
maybe module_vars) with various pending refactoring.
2012-04-16 23:45:15 -04:00
Michael DeHaan
b30aadcf0b Undocument --extra-vars 2012-04-16 23:07:59 -04:00
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
2012-04-16 23:06:27 -04:00
Michael DeHaan
9ce27be878 Remove extra_vars tests 2012-04-16 23:03:04 -04:00
Michael DeHaan
3f82b9b889 Docs rebuild 2012-04-16 22:36:58 -04:00
Michael DeHaan
8c091b35c5 remove contrib repo 2012-04-16 22:36:41 -04:00
Michael DeHaan
b24ec71ca3 Update docs to reflect --port going away and --sudo and --remote-user being added to ansible-playbook 2012-04-16 22:22:37 -04:00
Michael DeHaan
a12ee6f30b Make note about pending port change 2012-04-16 22:18:08 -04:00
Michael DeHaan
35fdf6636b Allow --user for playbooks, no need for port setting as can specify in inventory file now. 2012-04-16 22:15:55 -04:00
Michael DeHaan
8a027415d0 Port shouldn't be in this example 2012-04-16 22:04:23 -04:00
Michael DeHaan
08468dcb0c Fixes to make ports DWIM. 2012-04-16 21:52:15 -04:00
Michael DeHaan
957867e088 Merge branch 'yaml-inventory' of https://github.com/jhoekx/ansible into jhoekx-yaml-inventory
Conflicts:
	lib/ansible/runner.py
2012-04-16 21:14:44 -04:00
Michael DeHaan
a5cb16c9d7 Use correct user to determine host files path, do not reuse .ansible
which is already taken for ansible management ops.
2012-04-16 21:12:54 -04:00
Michael DeHaan
6307267cf3 As part of the support for access to external nodes information, save fact data into /var/lib/ansible/setup_data
OR a per-user directory when running from playbooks.  Technically this info is also available via the SETUP_CACHE
but that is a bit more complex of a construct and it would be better to not cross the streams.
2012-04-16 21:12:54 -04:00
Jeroen Hoekx
8c3206c99f Return a copy of the host variables. 2012-04-16 10:59:34 +02:00
Jeroen Hoekx
961ccdb2f4 List hosts in no group in the ungrouped group. 2012-04-16 10:55:08 +02:00
Jeroen Hoekx
3a24aa9a70 Add YAML inventory format.
See test/yaml_hosts for an example.

Hosts can be part of multiple groups.

Groups can also have variables, inherited by the hosts.
There is no variable scope, last variable seen wins.
2012-04-16 10:38:35 +02:00
Jeroen Hoekx
54f4526160 Export SSH port number as host variable. 2012-04-16 09:16:29 +02:00
Jeroen Hoekx
f04041b37d Ignore port numbers in simple inventory format 2012-04-16 09:16:29 +02:00
Jeroen Hoekx
746f1b92ae Reimplement the class method on Runner. 2012-04-16 09:16:29 +02:00
Jeroen Hoekx
195e6d617b Add tests for Inventory class. 2012-04-16 09:16:29 +02:00
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.
2012-04-16 09:16:28 +02:00
Michael DeHaan
d8f9d7c6c9 Use correct user to determine host files path, do not reuse .ansible
which is already taken for ansible management ops.
2012-04-14 16:08:04 -04:00
Rafal Lewczuk
a87c77958c clean exec bits from lib/ansible/*.py, ignore Eclipse/PyDev files 2012-04-14 21:35:51 +02:00
Michael DeHaan
3454fa9950 As part of the support for access to external nodes information, save fact data into /var/lib/ansible/setup_data
OR a per-user directory when running from playbooks.  Technically this info is also available via the SETUP_CACHE
but that is a bit more complex of a construct and it would be better to not cross the streams.
2012-04-14 11:58:08 -04:00
Michael DeHaan
55f4824735 Fix inconsistent heading sizes 2012-04-14 11:09:26 -04:00
Michael DeHaan
31d4ee32d1 Looping! With items! See examples/playbook/loop_with_items.yml for details 2012-04-14 09:55:24 -04:00
Michael DeHaan
05b559805b update index 2012-04-14 09:00:16 -04:00
Michael DeHaan
e481c456e0 Fix spelling/text + docs rebuild 2012-04-14 08:56:17 -04:00
Michael DeHaan
adbf3590c5 Add info about sudo. 2012-04-14 08:45:27 -04:00
Michael DeHaan
2850b8d921 Add sudo password info. 2012-04-14 08:42:24 -04:00
Michael DeHaan
7c1b25e49b Add some security notes 2012-04-14 08:41:10 -04:00
Michael DeHaan
579bd1d417 manpage updates 2012-04-13 19:40:40 -04:00
Michael DeHaan
347637339c Merge remote branch 'public/integration' into integration 2012-04-13 19:33:57 -04:00
Michael DeHaan
c3cad50075 Update manpages, fix missing variable assignment 2012-04-13 19:33:19 -04:00
Michael DeHaan
f2465e0571 Add support for specifying sudo passwords to both ansible & playbook. Nopasswd sudo is no longer required. 2012-04-13 19:06:11 -04:00
Michael DeHaan
aaecf70586 Merge pull request #143 from jhoekx/fix-ansible-async
/bin/ansible async fixes
2012-04-13 07:18:23 -07:00
Jeroen Hoekx
d366885367 Stop async /bin/ansible if completed on all hosts. 2012-04-13 15:32:41 +02:00
Jeroen Hoekx
a975852f66 Module_arguments can be unicode. 2012-04-13 15:32:33 +02:00
Martijn Koster
f936616f91 comment typos 2012-04-13 11:19:36 +01:00
Michael DeHaan
e030d0854c Docs rebuild 2012-04-12 22:47:15 -04:00
Michael DeHaan
449725a214 Document local playbook usage. 2012-04-12 22:44:04 -04:00
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.
2012-04-12 22:38:19 -04:00
Michael DeHaan
ecfb22c8d8 Add info about contrib repo to docs 2012-04-12 22:33:21 -04:00
Michael DeHaan
39e052acbb update virt docs 2012-04-12 22:31:43 -04:00
Michael DeHaan
daed69a4b1 Stub reference to SELinux. 2012-04-12 22:30:43 -04:00
Michael DeHaan
da00799c56 Document the fetch module. 2012-04-12 22:29:49 -04:00
Michael DeHaan
ace0d5ade4 Merge pull request #46 from makuk66/master
some doc fixes
2012-04-12 19:24:33 -07:00
Michael DeHaan
06fce9a0b3 update requirements 2012-04-12 22:23:16 -04:00
Michael DeHaan
e5baf5a926 Docs rebuild 2012-04-12 21:38:47 -04:00
Michael DeHaan
2b1a7dacc9 Pulling manpage references out of index so we don't have to maintain them in two places -- docs are more explanatory anyway 2012-04-12 21:34:25 -04:00
Michael DeHaan
f05a84ad42 cat -> echo 2012-04-12 21:33:54 -04:00
Michael DeHaan
6b50078881 Add defaults to command help to avoid a certain class of user questions. 2012-04-12 21:30:49 -04:00
Michael DeHaan
6129574290 Include default value for connection in help. 2012-04-12 21:20:37 -04:00
Michael DeHaan
09a0b9bea8 If the module return is not parsed, always show stderr information even if -D (debug)
is not specified.  This will help for users that don't have prerequisites installed
(like python-simplejson on old RHEL) and do not know to run -D.
2012-04-12 21:18:09 -04:00
Michael DeHaan
a5df306aa3 Merge pull request #132 from sfromm/localconnection
Make use of LocalConnection explicit
2012-04-12 17:40:03 -07:00
Martijn Koster
6497570967 doc fixes 2012-04-12 23:20:52 +01:00
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
2012-04-12 11:18:35 -07:00
Stephen Fromm
1e5d34ba35 Add selinux support to file module
This adds the options: seuser, serole, setype, and serange to the file
module.  If the python selinux module doesn't exist, this will set
HAVE_SELINUX to False and punt in the related modules.

This takes the options the user provides and applies those to the
default selinux context as provided from matchpathcon().  If there is no
default context, this uses the value from the current context.  This
implies that if you set the setype and later remove it, the file module
will rever the setype to the default if available.
2012-04-12 10:45:31 -07:00
Michael DeHaan
08c593bee1 Warn if no hosts matched 2012-04-11 21:05:46 -04:00
Michael DeHaan
f3489a53cd English error messages if src and dest are left off the copy, template, or fetch modules 2012-04-11 20:57:41 -04:00
Michael DeHaan
ff5d329374 Yum package state defaults to installed 2012-04-11 20:47:38 -04:00
Michael DeHaan
8152e44efd Also allow the apt module to use package or name as an alias for 'pkg' 2012-04-11 20:45:14 -04:00
Michael DeHaan
b418632a8d Allow yum module to use package or name as an alias for 'pkg' 2012-04-11 20:44:15 -04:00
Michael DeHaan
529a194950 Upgrade apt message if no python-apt to intercept potential user questions. 2012-04-11 20:31:24 -04:00
Michael DeHaan
b9e3b053f9 Simplify playbook tests so things are not timing dependent in the poll section, which is leading to tests
not being consistent between runs, even though there wasn't an error.  Now we'll just check the final change
counts, which should be just as solid and lead to less churn in the events file.
2012-04-11 20:27:17 -04:00
Michael DeHaan
a0480a1bc5 Block some paramiko warnings that are not relevant. 2012-04-11 20:20:55 -04:00
Michael DeHaan
e103bdda93 Rename test class to match what it is testing 2012-04-11 20:16:28 -04:00
Michael DeHaan
95e045d153 Remove remote logging as we're going to move this logging to the modules for performance reasons. 2012-04-11 20:15:17 -04:00
Michael DeHaan
245aa9bf8e Some tweaks to the fetch module. 'err' return was for stderr, so that should be empty string.
Some minor code shortening.  Added a test to TestRunner.
2012-04-11 20:12:01 -04:00
Michael DeHaan
62224271e9 Merge pull request #131 from mgwilliams/feature-fetch-module
Fetch Module
2012-04-11 16:55:51 -07:00
Stephen Fromm
40fc9a3249 Update playbook to be transport aware
This adds transport variable to playbook.py.  It can be set with
'connection' in the playbook file.
2012-04-11 09:39:04 -07:00
Stephen Fromm
b506567c37 Update ansible.1 manpage for option -c, --connection 2012-04-11 09:32:29 -07:00
Matthew Williams
31d3f52b28 fetch to host specific directory 2012-04-11 09:14:36 -07:00
Matthew Williams
611e3fec4c fetch 'module' -- working with paramiko and local connections 2012-04-10 20:23:25 -07:00
Michael DeHaan
51e4faf7aa Update test file -- we probably should not include the poll as the number of polls is changing between test
runs (that's ok, it's not intended to be realtime accurate)
2012-04-10 21:17:02 -04:00
Michael DeHaan
4c75b7f3ad Merge commit '8ae71cc' into integration
Conflicts:
	bin/ansible
	bin/ansible-playbook
	lib/ansible/utils.py
2012-04-10 21:13:01 -04:00
Michael DeHaan
1d75a29ec9 Allow variables coming in from the playbook and the API to be expressed as dictionaries throughout their full life cycle
such that nested data can be made available in templates and playbooks.
2012-04-10 20:58:40 -04:00
Stephen Fromm
fdee1d3459 Add support to bin/ansible for --connection option 2012-04-10 16:28:43 -07:00
Stephen Fromm
b5061bb62e Verify that effective uid == remote_user when transport is local
Raise exception if effective uid of process is not the same as
remote_user.
2012-04-10 16:27:19 -07:00
Stephen Fromm
5d74fedeb9 Update Runner to default to C.DEFAULT_TRANSPORT
This also uses self.transport when instantiating Connection object.
2012-04-10 16:17:39 -07:00
Stephen Fromm
1391481523 Add support for -c, --connection argument to specify connection type
Adds support to specify connection type to use.  The option -c,
--connection is added when connect_opts is set to True.  connect_opts is
added to make_parser() and base_parser_options().
2012-04-10 16:13:18 -07:00
Stephen Fromm
896f8de446 Add DEFAULT_TRANSPORT and DEFAULT_TRANSPORT_OPTS constants
DEFAULT_TRANSPORT is set to paramiko.  DEFAULT_TRANSPORT_OPTS is a list
of possible transport options; it is set to local and paramiko.
2012-04-10 16:09:20 -07:00
Stephen Fromm
9213cf896e Change to transport is local *and* is localhost
Connection.connect() now requires that, in order to use LocalConnection,
you specify transport is local and that the hostname is localhost.
2012-04-10 13:20:03 -07:00
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
2012-04-10 13:51:58 -04:00
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? 2012-04-10 15:17:25 +00:00
Brad Olson
74b26da9ac began playbook tweak 2012-04-10 14:45:44 +00:00
Brad Olson
f840c0d167 Wired in Michael's usage string optparse style. 2012-04-09 23:12:05 +00:00
Michael DeHaan
6749903e57 Allow explicit request of the local connection. 2012-04-07 14:51:00 -04:00
Michael DeHaan
eed4a2b717 Update tests to use 127.0.0.2 to bypass the smart "use local connection" code, and also to reflect
that commands now trigger change events.
2012-04-06 12:11:25 -04:00
Michael DeHaan
da9d4eb29a Merge pull request #123 from sfromm/localconnection
Add LocalConnection class to connection.py
2012-04-07 11:41:13 -07:00
Stephen Fromm
70a3fab79f Add LocalConnection class to connection.py
This creates a LocalConnection class for the case when operating on the
localhost.  If the host, argument to Connection.connect(), matches
127.0.0.1, localhost, or the name of the host as returned by
os.uname()[1], Connection.connect() will opt to use LocalConnection
instead of ParamikoConnection.  LocalConnection implements connect(),
exec_command(), put_file(), and close().
2012-04-06 16:38:27 -07:00
Michael DeHaan
bef07194c0 Update docs 2012-04-06 11:41:18 -04:00
Michael DeHaan
38c7f1db4d Added 'creates=filename' to the shell/command module, which can skip command execution if a file
already exists
2012-04-06 11:16:53 -04:00
Michael DeHaan
7b9856bc0e Modification on top of skvidal's common options patch to keep options to command line tools sorted. 2012-04-06 10:59:15 -04:00
Michael DeHaan
8e1f24b822 Amend option descriptions. 2012-04-06 10:18:52 -04:00
Seth Vidal
7e50d170a8 move the bulk of the opt parsing out of ansible/ansible-playbook and into utils
for other scripts to use.
2012-04-05 17:06:23 -04:00
Seth Vidal
254f98bdf5 handle incorrect commands w/o '=' slightly better 2012-04-05 17:03:36 -04:00
Seth Vidal
2df6399176 make dist be ?dist so if it is not there you don't get any noise
as per fedora usage guidelines
https://fedoraproject.org/wiki/Packaging:DistTag
2012-04-05 13:28:56 -04:00
Michael DeHaan
1171da6fcd Update examples page to mention group capabilities aren't all that are listed on the examples page 2012-04-04 20:33:00 -04:00
Michael DeHaan
9a0e2e338c Docs build 2012-04-04 20:31:04 -04:00
Michael DeHaan
c7f799675d Fix example typo + misc text 2012-04-04 20:30:41 -04:00
Michael DeHaan
4d4b10309d Merge pull request #41 from mgwilliams/file-module-symlinks
docs for file module -- symbolic links
2012-04-04 17:27:27 -07:00
Michael DeHaan
594b16a78b Merge pull request #114 from jhoekx/module-vars
Introduce task local variables.
2012-04-04 17:21:46 -07:00
Michael DeHaan
c1461bc185 Merge pull request #120 from skvidal/master
virt module + idempotents (state=[shutdown|running])
2012-04-04 17:11:04 -07:00
Seth Vidal
66f9a697ed edit comment to reflect real args 2012-04-04 17:25:02 -04:00
Seth Vidal
8a61794234 add idempotent and ='s separated parameters to virt module to make people happy 2012-04-04 17:17:29 -04:00
Seth Vidal
415f4baa15 add virt module for libvirt interaction/support 2012-04-04 14:30:24 -04:00
John Eckersberg
4a2259bab1 Update spec to include %{dist} in Release 2012-04-04 10:38:03 -04:00
Jeroen Hoekx
ab86726a15 Introduce per task variables and push them to templates. 2012-04-04 13:39:03 +02:00
Jeroen Hoekx
edd5baad8b Refactor _transfer_argsfile to generic string transfer function. 2012-04-04 13:36:21 +02:00
Michael DeHaan
09e690fd7c Indentation error causing forks to not be parallel. Ahem :) 2012-04-03 20:20:55 -04:00
Michael DeHaan
32f574b24d Merge pull request #113 from mgwilliams/bugfixes-apt-module
apt module bugfix
2012-04-03 17:08:37 -07:00
Michael DeHaan
778fe8755f Merge pull request #110 from jhoekx/remote-vars
Always add vars to a play.
2012-04-03 17:07:00 -07:00
Michael DeHaan
eae1fdd734 Merge pull request #109 from jeckersb/version-0.0.2
Bump release to 0.0.2
2012-04-03 17:06:09 -07:00
Matthew Williams
c819f1715e apt module bugfix 2012-04-03 12:52:08 -07:00
Jeroen Hoekx
e38ae18627 Always add vars to a play.
A play without vars section would fail to use variables given in an include. They would be added to the dict returned by play.get, but the dict would not be added to the play.
2012-04-03 17:35:05 +02:00
John Eckersberg
82b781925c pep8 fix 2012-04-03 09:58:00 -04:00
John Eckersberg
5aad4bacc7 Bump release to 0.0.2 2012-04-03 09:51:05 -04:00
Michael DeHaan
6a1c0ca718 Document playbook command for --extra-vars 2012-04-02 21:07:33 -04:00
Michael DeHaan
fbc48a0d23 Document vars_prompt in playbooks 2012-04-02 21:03:46 -04:00
Michael DeHaan
02d5e831ce have apt module raise an error if apt cannot be imported 2012-04-02 20:54:31 -04:00
Michael DeHaan
2cb89c12e3 Add documentation for vars_prompt 2012-04-02 20:37:59 -04:00
Michael DeHaan
88dab0db2d Add prompts example 2012-04-02 20:35:51 -04:00
Michael DeHaan
f92760de6c If missing state or name or list parameter on yum module, raise error explaining what is up. 2012-04-02 20:12:35 -04:00
Michael DeHaan
2a2b5ed73c Polling timing change results in need to change events file for tests. 2012-04-02 20:10:06 -04:00
Michael DeHaan
4792021f47 Fix syntax error in user patch 2012-04-02 20:08:40 -04:00
Michael DeHaan
e5d5b072db Merge remote branch 'public/integration' 2012-04-02 20:02:46 -04:00
Michael DeHaan
105a43a316 Merge pull request #104 from mgwilliams/feature-apt
improvements to apt module
2012-04-02 16:59:28 -07:00
Michael DeHaan
17a3ce1278 Merge pull request #102 from mgwilliams/file-symlinks
support for 'link' state in file module
2012-04-02 16:58:58 -07:00
Michael DeHaan
59a1ff31db Merge pull request #103 from jeckersb/no-shebang-on-callbacks.py
Remove shebang from callbacks.py
2012-04-02 16:58:41 -07:00
Michael DeHaan
2f1f0d44b4 Merge pull request #106 from mgwilliams/honor-hostfile-returncode
raise error if executable host file execution fails
2012-04-02 16:58:20 -07:00
Matthew Williams
461a4e78c2 raise error if executable host file execution fails 2012-04-02 15:00:28 -07:00
Matthew Williams
c742b8eb0b bugfix for extra-vars 2012-04-02 14:57:37 -07:00
Seth Vidal
bcef25f7eb add vars_prompt to playbooks
- this allows some vars to be prompted for at the start of the playbook
  setup
- defaults to no output since this would mostly be used for passwords
2012-04-02 17:46:02 -04:00
Matthew Williams
9fdd7a837e improvements to apt module: state=latest, update-cache=yes|no, purge=yes|no 2012-04-02 14:42:54 -07:00
John Eckersberg
2dad8cc27c Remove shebang from callbacks.py
It is not +x, and has no __main__.  It draws ire of rpmlint.
2012-04-02 17:19:05 -04:00
Seth Vidal
04aecdcf34 before we run the actual module/command - emit what that would be to the logs 2012-04-02 13:29:12 -04:00
Matthew Williams
ae38ee0b3f protecting against replacing file or directory with link 2012-04-02 10:21:14 -07:00
Seth Vidal
08163c6251 catch all exceptions and emit sensible errors - if we have a config file error this lets us know about it 2012-04-02 12:33:46 -04:00
Matthew Williams
04196e20a8 docs for file module -- symbolic links 2012-04-01 17:03:13 -07:00
Matthew Williams
24f61f1583 "link" state in file module 2012-04-01 16:10:23 -07:00
Michael DeHaan
5764ccdb0e Eliminate possible race condition in async_wrapper where ansible deletes the argsfile while the module
is still kicking off.  Should not happen except in modules that are somewhat slow to load and probably
can be fixed better than the included sleep, i.e. some IPC communication that the process has
launched and is ok to exit.  This works pretty well for now though.
2012-04-01 02:35:19 -04:00
Michael DeHaan
59d2f57d64 Add favicon to pages 2012-03-31 22:44:02 -04:00
Michael DeHaan
402e3b8934 Add favicon 2012-03-31 22:32:31 -04:00
Michael DeHaan
94d8ea5ee9 Add speakerdeck link. 2012-03-31 22:31:42 -04:00
Michael DeHaan
a879278713 Update module docs to include new user/group control features, fix formatting on playbooks page. 2012-03-31 12:08:28 -04:00
Michael DeHaan
2511992659 Surface module debug (-D) to /usr/bin/ansible also 2012-03-31 11:45:29 -04:00
Michael DeHaan
d7e5b390d5 Patch process info. 2012-03-31 11:38:06 -04:00
Michael DeHaan
96a22b582b Disable ohai test as it's hanging for whatever reason, but doesn't do this in real life.
Run tests in verbose mode.
2012-03-31 11:18:26 -04:00
Michael DeHaan
4a8dc50249 Merge pull request #97 from jhoekx/stderr-logging
Stderr logging
2012-03-31 08:01:48 -07:00
Michael DeHaan
8d92efa9fc image tweaks 2012-03-31 10:48:37 -04:00
Michael DeHaan
f7a3b6a537 Update image width 2012-03-31 10:46:34 -04:00
Michael DeHaan
a7c532e3f9 update architecture diagram, minor format changes 2012-03-31 10:43:34 -04:00
Michael DeHaan
b4a07fea3b Merge pull request #98 from jhoekx/no-touch-file
Make copy module idempotent.
2012-03-31 05:21:20 -07:00
Jeroen Hoekx
38a33c54a6 Make copy module idempotent.
Check md5sum before overwriting a file. Unconditionally copying changes the timestamp.
2012-03-31 13:59:41 +02:00
Jeroen Hoekx
a6b8973938 Change debug flag to D instead of d.
d would be useful for --dry-run.
2012-03-31 12:48:19 +02:00
Jeroen Hoekx
d9a16a3d67 Add --debug option to ansible-playbook.
This prints remote module stderr on local stderr.
2012-03-31 09:32:13 +02:00
Jeroen Hoekx
74ae4b29ad Add a debug attribute to Runner/Playbook.
This prints the stderr of the executed modules on local stderr.
Most methods on Runner now return a fourth "err" parameter.
2012-03-31 09:32:13 +02:00
Jeroen Hoekx
fb1a313974 Correct default user and port in playbook.
They are set in the constructor.
2012-03-31 09:11:07 +02:00
Michael DeHaan
6275e57718 pyflakes: Unused import / unused var 2012-03-30 23:04:02 -04:00
Michael DeHaan
d86dad76ba Be more flexible about where the service binary lives for better cross platform support. 2012-03-30 22:57:26 -04:00
Michael DeHaan
9569be8bdb Need for quoting/unquoting problems go away once module_args are all treated as strings throughout. 2012-03-30 22:52:38 -04:00
Michael DeHaan
3ded27fe35 Treat module args as strings everywhere to avoid unneccessary shlex and requoting 2012-03-30 22:47:58 -04:00
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).
2012-03-30 22:29:06 -04:00
Michael DeHaan
337de79cf4 Add sudo/port info to examples, and sudo info to playbooks. 2012-03-30 22:10:32 -04:00
Michael DeHaan
f316c1b131 Docs build. 2012-03-30 22:05:45 -04:00
Michael DeHaan
d17cb6a910 only_if actually works in playbooks for handler tasks, remove the note that says otherwise 2012-03-30 22:05:15 -04:00
Michael DeHaan
6db87a5018 Minor style fix, update test to match quote fix patch 2012-03-30 21:57:34 -04:00
Matthew Williams
ec6f488d1f shell quoting fixes
(edited author's original commit comment -- MPD)
2012-03-30 21:57:33 -04:00
Matthew Williams
99d5796605 support for quotes strings in command module (via posix=False), related fixes to keep other things from breaking 2012-03-30 21:57:33 -04:00
Jeroen Hoekx
12d01a3444 Fix except statement in template module.
Python 2.4 (RHEL 5) does not know 'as'.
2012-03-30 11:46:30 +02:00
Michael DeHaan
2372a3b734 Sudo support operational in both playbooks and main program. Implementation could use some cleanup. 2012-03-29 22:59:29 -04:00
Michael DeHaan
81e3496037 Added preliminary support for --sudo to ansible, playbook support and further testing pending. 2012-03-29 01:37:06 -04:00
Tim Bielawa
5261d14aef Fix exception catching for py2.4 2012-03-29 14:19:09 -04:00
Michael DeHaan
72cc99722d sudo tweaks 2012-03-28 23:30:31 -04:00
Michael DeHaan
7ae75eb14b Default sudo is false 2012-03-28 22:55:59 -04:00
Michael DeHaan
c2a6e2f97b Work in progress on sudo, hitting some issues with paramiko saying the connection is closed. 2012-03-28 22:51:16 -04:00
Michael DeHaan
7133734d87 Remove debug statements (WIP on sudo) 2012-03-28 20:58:34 -04:00
Michael DeHaan
4971101f27 Handler doesn't take this param. 2012-03-28 20:33:44 -04:00
Michael DeHaan
706ba9fd9a Add paramiko/pycrypto atfork workaround (can back out later if not useful), tweak error
message text per skvidal's suggestion
2012-03-28 20:32:04 -04:00
Michael DeHaan
b30ddc4520 Expose remote_port option in playbook 2012-03-28 19:31:17 -04:00
Michael DeHaan
a05b75dbbb Merge pull request #101 from sfromm/user-module
Supplementary group membership now in users module
2012-03-28 16:24:26 -07:00
Michael DeHaan
13df76d3d5 Merge pull request #100 from sfromm/group-module
Remove support for membership from group module
2012-03-28 16:24:15 -07:00
Christopher Johnston
509c330f53 add support for running and started - both will do the same thing 2012-03-28 16:06:26 -07:00
Christopher Johnston
68818ad1fe add support for remote ports in playbooks 2012-03-28 15:02:50 -07:00
Stephen Fromm
c1e223c424 Remove errant option on password modification action 2012-03-28 14:50:26 -07:00
Stephen Fromm
e851f7542f Update group_commands playbook example
Remove the group membership example.  There's not much to twiddle with
the group module.  Give examples for what is possible.
2012-03-28 14:32:56 -07:00
Stephen Fromm
a379d58cdb Drop support of group membership in group module
Use the user module to define group membership.
2012-03-28 14:29:23 -07:00
Stephen Fromm
4ed971574f Update user_commands playbook with supplementary group examples 2012-03-28 14:24:13 -07:00
Christopher Johnston
9041ad4d83 just some minor clean up single vs double in getopt parsing 2012-03-28 14:17:20 -07:00
Stephen Fromm
416eb36b9a Update user module to support supplementary group membership
This adds two options to the user module: groups and append.  groups is
a comma-delimited list of supplementary groups a user should belong to.
If a user is currently a member of a group not listed in groups, the
user will be removed from it.  To change this behavior, use append=yes.
This will append the user to the list of supplementary groups and *not*
remove the user from unlisted groups.
2012-03-28 14:12:35 -07:00
Christopher Johnston
15e781eb51 add exception check for paramiko if older then 1.7 2012-03-28 14:09:11 -07:00
Christopher Johnston
f06ec76fdb add support for using an alternate remote port 2012-03-28 14:05:31 -07:00
Michael DeHaan
1a5aa89be8 Attempt to explain reason for project more on the home page. 2012-03-26 23:38:52 -04:00
Michael DeHaan
ace55c6160 Update user module docs 2012-03-26 23:06:14 -04:00
Stephen Fromm
b373c6c223 Add playbook to demonstrate use of group module 2012-03-26 23:04:30 -04:00
Stephen Fromm
db677954ac Add group module to manage groups and group membership
This relies on groupadd, groupmod, groupdel, and gpasswd utilities on
the system.  You can optionally modify the gid for the group.  You can
also add/remove a user to/from a group with the option member.  Member
state is defined with the option memberstate.
2012-03-26 23:04:19 -04:00
Stephen Fromm
8592b3b40d Update user module to support group name
This changes the gid option to group.  One may provide a primary group
as either a gid or a name.  The module will then check to verify that
the group already exists.  If the group does not already exist, the
module will fail.
2012-03-26 23:03:09 -04:00
Seth Vidal
37f599efc3 make sure latest outputs an error if the thing you've listed as 'latest'
is not there at all or even updateable
2012-03-26 23:02:09 -04:00
Seth Vidal
1d04ec89b7 fix up latest so it behaves like latest should
if installed and updated available: apply update
if not installed and available: install
2012-03-26 23:02:09 -04:00
Seth Vidal
a27be2651c make yum module work with older yum for rhel5 :( 2012-03-26 23:02:09 -04:00
Michael DeHaan
85a0709d8f Merge pull request #78 from mgwilliams/master
Catch jinja errors in template module
2012-03-27 17:00:49 -07:00
Matthew Williams
3046f743d9 removed hack 2012-03-27 11:12:33 -07:00
Matthew Williams
bf0f3eac1f catch jinja template errors in template module 2012-03-27 11:06:31 -07:00
Matthew Williams
9d9e3d8c56 resetting template.. previous commit not needed 2012-03-27 09:10:51 -07:00
Matthew Williams
d9a464ee9d added format_advanced jinja filter to template module 2012-03-27 08:51:37 -07:00
Michael DeHaan
3f9f8de031 Update packaging WRT AUTHORS.md 2012-03-26 22:30:48 -04:00
Michael DeHaan
61446fd6c8 Github maintains a nice contributors list, so remove this here as it's out of date. 2012-03-26 22:29:35 -04:00
Michael DeHaan
01e51b120a Recieved quite a few requests to run python via /usr/bin/env, so doing that. 2012-03-26 22:07:04 -04:00
Michael DeHaan
b1471bf857 Add more comments to the callbacks file 2012-03-26 22:05:11 -04:00
Michael DeHaan
95670ce6b5 remove unused function 2012-03-26 21:58:28 -04:00
Michael DeHaan
f9da7cb180 remove functions that are no longer used 2012-03-26 21:56:18 -04:00
Michael DeHaan
d7b11e4a10 Allude to apt on the examples page. 2012-03-26 21:41:50 -04:00
Michael DeHaan
35d77d0433 Make it an error to try to hit a change handler that doesn't exist 2012-03-26 21:31:48 -04:00
Michael DeHaan
f693759252 Style fixes from pep8 makefile target 2012-03-26 21:25:43 -04:00
Michael DeHaan
f074f1c4c4 Fixes from pyflakes 2012-03-26 21:23:28 -04:00
Michael DeHaan
fc3b1cf973 Merge remote branch 'public/master' 2012-03-26 21:19:17 -04:00
Michael DeHaan
35c8750bbb Fix tree view to work with callbacks 2012-03-26 21:18:48 -04:00
Michael DeHaan
45a455a805 Make /usr/bin/ansible output realtime and also delete some code! 2012-03-26 21:17:11 -04:00
Michael DeHaan
1f565c3d76 add documentation stub for apt, and fix agreement issues caused by Tim's doc ref link fixup. 2012-03-26 19:48:32 -04:00
Michael DeHaan
eb67a91c57 Merge remote branch 'public/master' 2012-03-26 19:36:03 -04:00
Michael DeHaan
aaafd12b59 rm FIXMEs 2012-03-26 19:35:53 -04:00
Matthew Williams
e2deb94e73 trimmed superfluous code from apt module 2012-03-26 13:53:22 -07:00
Matthew Williams
e85355f054 cleaned up apt module style 2012-03-26 13:48:02 -07:00
Matthew Williams
90ba14d60e preliminary apt module 2012-03-26 12:49:13 -07:00
Jeroen Hoekx
a370261dce Playbook: create one task per include instead of per argument. 2012-03-26 10:30:48 +02:00
Michael DeHaan
77a6315939 Merge remote branch 'public/master' 2012-03-25 19:06:41 -04:00
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)
2012-03-25 19:05:27 -04:00
Michael DeHaan
50ce7e0ee1 Merge pull request #70 from tbielawa/manupdate
Show when options require arguments in the man pages.
2012-03-24 13:41:29 -07:00
Michael DeHaan
3052d85a6a use capital O. 2012-03-24 16:32:16 -04:00
Michael DeHaan
ab55fa4266 Revert "Only override the pattern if it is ommitted"
This reverts commit bb0bf9eef4.
2012-03-24 16:21:44 -04:00
Michael DeHaan
bb0bf9eef4 Only override the pattern if it is ommitted 2012-03-24 16:20:47 -04:00
Michael DeHaan
9df612f007 Add a "-o" override option so hosts not in a playbook can still be managed by a playbook. 2012-03-24 16:19:38 -04:00
Tim Bielawa
ef632db9f3 Fix cross-document references to 'playbooks' in the modules source.
Update manpages from ansible repo to show when options require args.

Update clean target Makefile so 'rm' doesn't print a useless error
when files aren't found while cleaning.
2012-03-23 22:38:29 -04:00
Tim Bielawa
446ba1795a Show when options require arguments in the man pages. 2012-03-23 22:29:51 -04:00
Michael DeHaan
b213437bfa Added 'shell' to modules with a note that it doesn't really exist :) 2012-03-23 21:39:39 -04:00
Michael DeHaan
5a9fe3ac62 Update shell terminal example to reflect need to single quote shell variables. 2012-03-23 21:13:51 -04:00
Michael DeHaan
292ac4aad2 Make it such that the 'name' element of each playbook line is optional. 2012-03-23 21:06:54 -04:00
Michael DeHaan
44d4dede92 Split conditional imports in playbook into subfunction, fix small bug in event reporting on playbook
actions.
2012-03-23 21:03:25 -04:00
Michael DeHaan
b43019f3a1 In playbooks, a return code (rc) of non-zero should fail the playbook. 2012-03-23 20:53:57 -04:00
Michael DeHaan
6ab615c724 Code cleanup for playbooks, also added 'on_skipped' callback 2012-03-23 20:51:26 -04:00
Seth Vidal
53446d6d45 make sure the setup step in a playbook has the sshpass included 2012-03-23 16:41:44 -04:00
Seth Vidal
89d4bc542c fix up minor type - AnsibleException should be AnsibleError 2012-03-23 11:59:08 -04:00
Michael DeHaan
5327f52c3c Remove some note callouts on the example page and inline the commentary so it's easier to read. 2012-03-22 01:14:26 -04:00
Michael DeHaan
87ab7d76af Document the user module 2012-03-22 01:01:02 -04:00
Michael DeHaan
1ea1994eca update authors file 2012-03-22 00:34:21 -04:00
Michael DeHaan
3814a46bbf Move playbook for user commands into examples dir 2012-03-22 00:33:10 -04:00
Michael DeHaan
6aa10691c1 Merge pull request #93 from sfromm/user-module
User module
2012-03-22 19:24:53 -07:00
Stephen Fromm
999bead9ed Add playbook to test user module 2012-03-22 11:36:11 -07:00
Stephen Fromm
f4835477b0 Add user module to create, modify, and delete user accounts
This relies on useradd, usermod, and userdel utilities on the system.
The argument name is required; if state is not provided, present is
assumed.  Other options supported for creating or modifying an existing
account:  uid, gid, comment, home, shell, and password.  If managing the
password, it must already be encrypted.  When creating an account, you
can also provide the argument createhome to control whether the home
directory is created.  Arguments supported for deleting an account are:
force (remove account even if user is logged in) and remove (remove home
directory).
2012-03-22 11:21:41 -07:00
Michael DeHaan
a8c921cbcc Allow groups to be passed to runner API to make parse_hosts optional, misc fixes as a result of refactoring in Runner.
Cleanup in Playbooks module is next.
2012-03-22 00:30:05 -04:00
Michael DeHaan
94605b811b Fixes from refactoring 2012-03-21 23:47:58 -04:00
Michael DeHaan
6a7aac38c5 misc cleanup in the runner module, splitting some things out into utils, breaking up functions into smaller functions. 2012-03-21 23:39:09 -04:00
Michael DeHaan
fef73393f0 rename example files 2012-03-21 22:21:42 -04:00
Michael DeHaan
7ed734dfb2 move callbacks to seperate file, anticipating callbacks for Runner() as well 2012-03-21 22:18:57 -04:00
Michael DeHaan
7883f414ce unused module 2012-03-21 21:03:32 -04:00
Michael DeHaan
315a6358b4 Mention variable for context 2012-03-21 21:02:17 -04:00
Michael DeHaan
9951888af3 Docs build 2012-03-21 20:43:51 -04:00
Michael DeHaan
96357407e0 Make chat a web link. 2012-03-21 20:42:31 -04:00
Michael DeHaan
ee2622ee7c Show how to save conditional predicates in vars sections, which makes only_if cleaner. 2012-03-21 20:35:06 -04:00
Michael DeHaan
d75e69853a No need to comment this part of the example out. 2012-03-21 20:22:44 -04:00
Michael DeHaan
e6406fa5a7 Allow variable expressions to be stored as variables themselves, do some things to allow setup strings
to more easily contain spaces without being mangled, which is neccessary because of the above.
2012-03-21 20:00:48 -04:00
Michael DeHaan
e89131a3a2 playbooks -- Ratchet up logging prior to gating things with verbosity controls and upgrading output format 2012-03-20 22:37:51 -04:00
Michael DeHaan
a5f4ca50b8 Ratchet up logging a few notches prior to controlling w/ verbosity settings 2012-03-20 22:29:21 -04:00
Michael DeHaan
b5c62ec068 Enhance logging, way to gate verbosity levels pending. 2012-03-20 21:44:01 -04:00
Michael DeHaan
7136ef756d Fix formatting error 2012-03-20 21:12:35 -04:00
Michael DeHaan
05e27a419c HTML doesn't work like that on that page :) 2012-03-20 21:07:33 -04:00
Michael DeHaan
d2141feada Add subscribe link to markdown index 2012-03-20 21:06:49 -04:00
Michael DeHaan
0a20e65f92 Add subscribe link to main page 2012-03-20 21:04:47 -04:00
Michael DeHaan
a045630c02 Add docs on only_if 2012-03-20 20:15:53 -04:00
Michael DeHaan
54b98effdf Add demonstration of only_if capability 2012-03-20 19:55:24 -04:00
Michael DeHaan
dfbe591cc0 Add "only_if" capability, which allows task steps to be skipped if they do not match a conditional. 2012-03-20 19:55:04 -04:00
Michael DeHaan
a98e0a8cc4 quoting 2012-03-19 23:56:35 -04:00
Michael DeHaan
149cc57b0f remove unneeded code 2012-03-19 23:54:47 -04:00
Michael DeHaan
6b8f5224b8 Added docs on conditional import usage 2012-03-19 23:43:03 -04:00
Michael DeHaan
c05e7fd83e Fix typing issue 2012-03-19 22:46:54 -04:00
Michael DeHaan
64471db94a Remove test from bottom of example that doesn't really make sense in the context of the example's use case. 2012-03-19 22:44:11 -04:00
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!
2012-03-19 22:42:31 -04:00
Michael DeHaan
5ed2b894d9 Add an additional way to dereference a variable in a playbook, $foo
(Using varReplace function originally from yum, thanks Seth)
2012-03-19 19:32:38 -04:00
Michael DeHaan
af9596307d Move templating into a utils function. Reuse is our friend. 2012-03-19 19:23:14 -04:00
Michael DeHaan
860fe50048 Fix grammatical error. 2012-03-18 20:41:38 -04:00
Michael DeHaan
c1fe0dd719 Quote long variables in playbooks when feeding them to the setup command 2012-03-18 19:50:22 -04:00
Michael DeHaan
5371a9e497 Regression tests for playbooks, logging the events they call via callbacks. 2012-03-18 19:25:56 -04:00
Michael DeHaan
b15c8e9cb1 Playbook test upgrades, made some notes about callbacks we need to add. Still need to compare events
recieved vs expected so we can be notified if this test breaks, and also to add some more detailed
playbooks that use includes & async, etc.
2012-03-18 18:50:25 -04:00
Michael DeHaan
45abe3c16b Add unit tests for playbooks, and fix an error caught by one 2012-03-18 18:29:11 -04:00
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)
2012-03-18 17:53:58 -04:00
Michael DeHaan
fde7de80df Remove "import *" from bin/ansible so we can use pyflakes, and remove unneeded imports in the process 2012-03-18 17:41:44 -04:00
Michael DeHaan
faa59e5ef1 Add the failtest module, primarily for easy development testing purposes. RPMs/etc need not ship this. 2012-03-18 17:35:49 -04:00
Michael DeHaan
a4b8cdf8b3 Remove "import *"'s from bin/ansible-playbook code so pyflakes will be usable. 2012-03-18 17:32:36 -04:00
Michael DeHaan
9e07b24239 Fix indentation 2012-03-18 17:25:22 -04:00
Michael DeHaan
6777268f4c Fixup the code that allows facter/ohai/other data to bubble up and be used in future action lines. It's a niche
case compared to usage in templates but it should work and will be wanted later for conditional support.
2012-03-18 17:24:09 -04:00
Michael DeHaan
c861e0de55 Fix "import *" and resultant new things detectable from "make pyflakes" 2012-03-18 17:16:12 -04:00
Michael DeHaan
33aa50eae7 Inside of runner, do not 'import *' from utils, so we can more easily tell where functions come from 2012-03-18 17:04:07 -04:00
Michael DeHaan
9837a616eb Preserve changed data on file and template ops when the mode operations don't result in a change but the files
were still replaced.
2012-03-18 16:58:00 -04:00
Michael DeHaan
57dec507f0 List less alternative apps 2012-03-18 13:17:25 -04:00
Michael DeHaan
29293ba51d Rename 'design goals' to 'features' 2012-03-18 13:08:45 -04:00
Michael DeHaan
cd06703fa2 Clarify some things on index page 2012-03-18 13:03:45 -04:00
Michael DeHaan
00bf6f1ebf Mention other distributions. 2012-03-18 12:55:18 -04:00
Michael DeHaan
f29db92052 more complete from checkout docs 2012-03-18 12:45:23 -04:00
Michael DeHaan
3f75fd575c Show how easy it is to run from checkout. 2012-03-18 12:41:00 -04:00
Michael DeHaan
82bd75c1e0 Update env-setup script to make it work better 2012-03-18 12:28:22 -04:00
Michael DeHaan
f1c8fc63cb host file must be marked config(noreplace), update rpm build to use checked in manpage src 2012-03-31 11:08:42 -04:00
Michael DeHaan
5905974737 Fix variable referenced before assignment when not using external variables script 2012-03-31 11:03:29 -04:00
Michael DeHaan
3495d402c7 Default for class variable 2012-03-31 11:02:10 -04:00
Michael DeHaan
b8eeb0f906 Add note about localhost/auth 2012-03-30 19:58:28 -04:00
Michael DeHaan
3d2a7ebd68 Added cobbler external inventory script, which is a demo of how external inventory
works in Ansible in general.
2012-03-30 19:56:22 -04:00
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.
2012-03-30 19:06:14 -04:00
Michael DeHaan
c81aed412a Fix rst syntax errors 2012-03-17 17:16:31 -04:00
Michael DeHaan
bedde394fc Tell folks about packaged releases, but encourage usage of git. 2012-03-17 17:00:41 -04:00
Michael DeHaan
e12e724a42 Fix error on examples page 2012-03-31 11:19:35 -04:00
Michael DeHaan
12c3e04023 Fix reference 2012-03-31 10:51:48 -04:00
Michael DeHaan
f535335fe0 Add shell module to examples page. 2012-03-31 10:50:47 -04:00
Michael DeHaan
15acaec687 Crossref playbooks from async poll section 2012-03-31 10:41:29 -04:00
Michael DeHaan
f708b75d41 Fix formatting 2012-03-31 10:40:01 -04:00
Michael DeHaan
1a926c69a1 Added some foreshadowing of CLI syntax to the patterns page. 2012-03-31 10:38:24 -04:00
Michael DeHaan
7a8397d60f link module dev guide from modules page 2012-03-31 10:21:28 -04:00
Michael DeHaan
bbc2aca10f Make additional reference to playbooks examples dir 2012-03-31 10:17:35 -04:00
Michael DeHaan
a4c23463fb Add IRC and google groups links to each page 2012-03-31 09:55:37 -04:00
Michael DeHaan
31c353543c Reinstate page nav, various TOC structure cleanup 2012-03-31 09:36:37 -04:00
Michael DeHaan
3a1bbac3a7 Move see also blocks to bottom of each page to include reading docs, remove 'fork me' to avoid text overlap,
simply menu nav so folks find the chapter link.
2012-03-31 09:29:31 -04:00
Michael DeHaan
39d02eeff4 Add external inventory script info (and Cobbler example) to API page. 2012-03-30 22:28:30 -04:00
Michael DeHaan
f200a467e7 Update example to use correct state name 2012-03-15 23:11:09 -04:00
Michael DeHaan
f39944b89b Update example to use correct service state; minor pep8 indent/spacing fixes 2012-03-15 23:10:03 -04:00
Michael DeHaan
24923c2e17 Purge unused imports per pyflakes 2012-03-15 23:06:59 -04:00
Michael DeHaan
60bf82d266 Remove comment about FIXME that is already resolved 2012-03-15 23:05:34 -04:00
Michael DeHaan
d78817c426 Add file features to examples. 2012-03-15 22:57:10 -04:00
Michael DeHaan
0674c31dbc Added documentation on the 'file' module and how 'copy' and 'template' can also use the options that 'file'
provides.
2012-03-15 22:47:21 -04:00
Michael DeHaan
311b93995c Add some comments 2012-03-15 22:37:37 -04:00
Michael DeHaan
6874d853c9 Fix changed=True/False detection when specifying mode= 2012-03-15 22:35:59 -04:00
Michael DeHaan
63818000b4 auto call the file module after copy/template module usage in runner
note some changed=True/False detection bits in file module still need tweaking
2012-03-15 22:32:14 -04:00
Michael DeHaan
4ad885111b Disable debug 2012-03-15 22:04:32 -04:00
Michael DeHaan
5004d21f10 Return file info about the file regardless of changes made 2012-03-15 22:04:04 -04:00
Michael DeHaan
be55145a1e Initial crack at the file module 2012-03-15 21:53:14 -04:00
Michael DeHaan
8914a1a0d7 license file should be in source tree 2012-03-15 20:24:22 -04:00
Michael DeHaan
9049b0e7ca Because folks on RHEL 6 (not CentOS 6) have some issues with asciidoc, do not build the asciidoc from
the rpm or make install targets.  Also modify the make install (only) to copy over files into the library
directory since the setup.py does not do this (due to a distutils bug, more or less).
2012-03-15 20:21:10 -04:00
Michael DeHaan
e0bc949219 Fix doc indent level 2012-03-14 23:45:02 -04:00
Michael DeHaan
ea8770ad54 Fix pathing in example 2012-03-14 13:13:32 -04:00
Michael DeHaan
0427ec8ad6 Add missing file 2012-03-14 12:53:17 -04:00
Michael DeHaan
1a0672fd1e Fix exception type 2012-03-14 12:51:26 -04:00
Michael DeHaan
c909b66864 use iteritems vs items(), probably doesn't matter that much 2012-03-14 21:56:49 -04:00
Michael DeHaan
a735dd2b17 Added the 'test-module' script, useful for testing modules without running them in Ansible. 2012-03-14 21:49:27 -04:00
Michael DeHaan
4bde4926c3 Modules don't have to return JSON, key=value pairs is ok. 2012-03-14 21:16:15 -04:00
Michael DeHaan
40fd778e2c 'shell' is a magic module that executes the command module with shell=True 2012-03-14 20:40:06 -04:00
Michael DeHaan
73d20b81c6 Add basic test of yum module (VERY basic) just to make sure syntax remains ok. Need to do something
trivial for service and git module also.
2012-03-14 20:02:29 -04:00
Michael DeHaan
e8751baaf3 Remove remote log function as it's only used in one place now 2012-03-14 20:00:09 -04:00
Michael DeHaan
696b67f935 Fix async to use the new argfiles method (wrapping brain around rock, really must write module development guide) 2012-03-14 19:57:56 -04:00
Michael DeHaan
aeea46678d Fix the copy module to use the argsfile method 2012-03-14 19:09:44 -04:00
Michael DeHaan
917f929e86 Fix template module 2012-03-14 19:08:10 -04:00
Michael DeHaan
6b152c94b9 Correct the setup module 2012-03-14 19:06:35 -04:00
Michael DeHaan
3ea9174ed7 Split argsfile handling into subfunction, attempt to apply argsfile logic to setup 2012-03-14 19:05:19 -04:00
Seth Vidal
1f53c89b14 convert so they handle argsfiles rather than arguments 2012-03-14 18:47:13 -04:00
Seth Vidal
a9a9e3af65 modify yum to be used with argsfile and fix a number of items with
how it handles "advanced" pkgspecs for the state= cases
2012-03-14 18:46:53 -04:00
Seth Vidal
a9948f97c6 convert runner to use an args file rather than just arguments passed
on the command line
2012-03-14 18:46:33 -04:00
Michael DeHaan
d9c626e686 Added start of a module development guide, prob needs some editing and maybe some simpler examples 2012-03-14 12:50:40 -04:00
Michael DeHaan
505d3942b0 Added documentation on the 'shell' module, which is a virtual module and isn't really in the library folder.
Docs build.
2012-03-14 20:57:35 -04:00
Michael DeHaan
f681425453 Rename hosts file back since included by MANIFEST.in 2012-03-13 22:00:03 -04:00
Michael DeHaan
38e8771785 update docs, fix playbook page formatting 2012-03-13 21:55:55 -04:00
Michael DeHaan
ee69bd18cc Add -T to playbook manpage 2012-03-13 21:54:42 -04:00
Michael DeHaan
db61e8f346 Fix -t tree mode so it writes out the value for each host, not everything, once again 2012-03-13 21:38:06 -04:00
Michael DeHaan
e6f175e929 Allow the SSH timeout to be passed to playbooks just like it already could with /usr/bin/ansible 2012-03-13 21:35:34 -04:00
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.
2012-03-13 21:30:34 -04:00
Michael DeHaan
4ae98ed92d Upgrades to error handling, now general try/catch available. 2012-03-13 20:59:05 -04:00
Michael DeHaan
496686629a Slight tweaks to playbook docs + docs rebuild 2012-03-13 20:32:55 -04:00
Michael DeHaan
2e1b59a9d2 restructure the examples directory 2012-03-13 19:27:13 -04:00
Michael DeHaan
09a7119e74 Annotate more files, fix missing imports messing with playbooks. Hey Tim, please test your stuff :) 2012-03-13 19:19:54 -04:00
Michael DeHaan
238fffd6ef Annotated playbook example 2012-03-13 18:55:04 -04:00
Michael DeHaan
84c60c2750 Merge pull request #91 from skvidal/feature
modify build/spec file to work on el6 with quasi-broken setup process
2012-03-13 15:37:11 -07:00
Seth Vidal
3567237dbc modify build/spec file to work on el6 with quasi-broken setup process
remove data_files section from setup.py for some reason or another
2012-03-13 11:08:10 -04:00
Michael DeHaan
8484fe3147 Clarify YAML doesn't always use a list as external variables files are hashes. 2012-03-12 23:18:54 -04:00
Michael DeHaan
0b94d3d3f8 replace 'foo' with a more meaningful example + 1 other typo 2012-03-12 23:17:59 -04:00
Michael DeHaan
37adadcc50 Updating docs, added extensive info on playbook async + external vars_files for keeping variables outside of
the playbook file.
2012-03-12 23:12:21 -04:00
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*.
2012-03-12 23:11:54 -04:00
Michael DeHaan
ce85222fa6 What we are running is actually a "play" (multiple plays per playbook) so rename the function to make it more clear 2012-03-12 22:05:51 -04:00
Michael DeHaan
adf1492da2 Add external vars example 2012-03-12 22:03:20 -04:00
Michael DeHaan
e582bd5ec5 Add fire and forget example 2012-03-12 21:02:38 -04:00
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.
2012-03-12 20:53:10 -04:00
Michael DeHaan
cf4ac3b6b2 Add yum latest to docs and examples 2012-03-12 19:23:58 -04:00
Michael DeHaan
3f834cfe3e Docs rebuild, removing submodule because it was causing build problems and I don't quite grok them :) 2012-03-12 19:13:19 -04:00
Seth Vidal
0b94c78042 yum module
add state=latest and clean up the output cases
added some fixmes on verification
2012-03-12 16:31:13 -04:00
Michael DeHaan
884d8af759 Attempt to force docs rebuild? Please? 2012-03-11 23:28:04 -04:00
Michael DeHaan
4a184b57c8 Docs build 2012-03-11 23:20:55 -04:00
Michael DeHaan
6660a5efbd add polling info to manpage 2012-03-11 21:09:44 -04:00
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.
2012-03-11 20:54:54 -04:00
Michael DeHaan
49a636d8a0 Fixed up async and polling logic. 2012-03-11 19:27:43 -04:00
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.
2012-03-11 18:40:35 -04:00
Michael DeHaan
d5c239404b Update .gitignore 2012-03-11 04:23:00 -04:00
Michael DeHaan
e5386b82c6 Put index.html back in git, problem with staleness was related to .buildinfo, not git. 2012-03-11 04:21:53 -04:00
Michael DeHaan
e3adca1431 Makefile needs to clean things up 2012-03-11 04:21:19 -04:00
Michael DeHaan
f7ff5d1055 Doc build 2012-03-11 21:53:13 -04:00
Michael DeHaan
4cc8fe7561 Split paragraph 2012-03-11 21:53:00 -04:00
Michael DeHaan
91d8d0e502 update faq 2012-03-11 21:47:57 -04:00
Michael DeHaan
e726b9796d Fix some example command line options, add some more links to home page. 2012-03-11 21:46:05 -04:00
Michael DeHaan
817cac7954 Add missing "-a" to examples page 2012-03-11 21:20:30 -04:00
Michael DeHaan
0bccec9fb5 Add polling info to docs 2012-03-11 21:09:21 -04:00
Michael DeHaan
d3fe5f617a Rename 'yamlscripts' to 'yamlsyntax', add some extra crosslinking to make sure folks find the
interesting docs pages, some misc editing here and there.
2012-03-11 15:34:21 -04:00
Michael DeHaan
02549869b1 Attempt to force update 2012-03-11 15:04:08 -04:00
Michael DeHaan
0404acfcc2 Move all html content on the website to build top level such that we do not need the redirect. 2012-03-10 22:34:53 -05:00
Michael DeHaan
60a13cf540 Ignore commented out lines in the ansible setup files. 2012-03-10 21:19:41 -05:00
Michael DeHaan
0035181c59 Remove URL target for clicking on arch diagram, add width/height so it loads
nicer.
2012-03-10 19:57:24 -05:00
Michael DeHaan
e284c8cedc Merge pull request #16 from tbielawa/master
Updates for better RPM packaging (plus tasks)
2012-03-10 16:51:34 -08:00
Michael DeHaan
667aa81bee Add arch diagram to website + docs build 2012-03-10 19:48:53 -05:00
Tim Bielawa
82befee081 Change Source0 in spec file to point at github downloads 2012-03-10 16:25:46 -05:00
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
2012-03-10 16:19:33 -05:00
Tim Bielawa
3f245498c4 Fixup RPM building: Makefile, Spec File, .gitignore
Fixup distutils: setup.py

Clean old cruft: section 5 man pages
2012-03-10 14:22:11 -05:00
Michael DeHaan
4c9dd972b4 Fixes for output formatting 2012-03-10 13:40:08 -05:00
Michael DeHaan
bb5e4fad48 Abstracted out transport from implementation so it can be pluggable. Also fixes for output format. 2012-03-10 13:35:46 -05:00
Michael DeHaan
a13def0fbe Add yum module to examples + playbook examples 2012-03-10 11:40:49 -05:00
Michael DeHaan
8bf7e79ee3 Add yum to examples 2012-03-10 11:35:36 -05:00
Michael DeHaan
d397c13d9c Added "Fork Me On Github" 2012-03-10 10:39:34 -05:00
Seth Vidal
a99b491b32 touch up to yum module.
fix a couple of bugs
comment about state='latest'
2012-03-10 02:19:57 -05:00
Michael DeHaan
557f4d382b add links 2012-03-09 22:58:17 -05:00
Michael DeHaan
ff64996542 doc build 2012-03-09 22:49:40 -05:00
Michael DeHaan
88140938cb Fix heading 2012-03-09 22:49:30 -05:00
Michael DeHaan
4ecad80725 Add google stats 2012-03-09 22:31:54 -05:00
Michael DeHaan
10d197d77f Add missing files 2012-03-09 22:14:31 -05:00
Michael DeHaan
a631c21e5a Add ansible-playbook(1) manpage. 2012-03-09 22:11:41 -05:00
Michael DeHaan
209760f8f6 Add manpage for ansible-playbook, since it is a command. More detailed docs will remain on the web site. 2012-03-09 22:06:44 -05:00
Michael DeHaan
8e7ae6cf69 Minor reordering and linking some things up. 2012-03-09 21:50:00 -05:00
Michael DeHaan
37864337eb Added FAQ page (limited space in menu, so trimmed some topics on lesser used bits) + docs build 2012-03-09 21:41:18 -05:00
Michael DeHaan
e575c0639f Added one last image to header + docs rebuild 2012-03-09 19:13:34 -05:00
Michael DeHaan
1346fd02c9 Added stub yum docs + docs rebuild 2012-03-09 19:04:40 -05:00
Michael DeHaan
ef5e326215 Docs build 2012-03-09 18:51:06 -05:00
Michael DeHaan
1699013fbd Rename 'ensure' to 'state' so it lines up with the service module 2012-03-09 18:50:34 -05:00
Seth Vidal
b576e389b1 runner buglet and yum module
runner: fix buglet causing logger output to include a u for the command
yum: add yum module:
   ensure=installed pkg=name/name.arch/name-ver-rel.arch
   ensure=removed pkg=name/name.arch/name-ver-rel.arch
   list=installed
   list=updates
   list=available
   list=pkgspec
   list=repos
2012-03-09 18:33:58 -05:00
Michael DeHaan
fae963a6d2 Docs build + attempt to add image to website 2012-03-09 18:29:01 -05:00
Tim Bielawa
a1010e5405 Spellcheck. Formatting. References. 2012-03-09 14:39:29 -05:00
Tim Bielawa
8bd523fe36 More bootstrap tweaks 2012-03-09 11:50:07 -05:00
Tim Bielawa
f25b39b7ce Switch to the 'Sphinx Bootstrap' Theme:
https://github.com/ryan-roemer/sphinx-bootstrap-theme

Fix some rst related formatting.
2012-03-09 11:44:14 -05:00
Michael DeHaan
f3a0eb4b23 Docs build 2012-03-09 07:43:06 -05:00
Michael DeHaan
e8eb7ab5ed Update docs 2012-03-09 07:42:53 -05:00
Michael DeHaan
c89a0f96bd Merge pull request #87 from skvidal/feature
if we've failed a connection to a host - we cannot set items to the
2012-03-09 04:19:03 -08:00
Seth Vidal
19b784e480 if we've failed a connection to a host - we cannot set items to the
'conn' object since it is not an object on failure - it's a string.
2012-03-09 00:19:55 -05:00
Michael DeHaan
fe2d1c7cc9 Docs rebuild 2012-03-08 23:06:07 -05:00
Michael DeHaan
7a4df9e2fc RST reformatting a few things 2012-03-08 23:05:52 -05:00
Michael DeHaan
358859d2f3 Docs rebuild 2012-03-08 22:52:16 -05:00
Michael DeHaan
bc62feb583 Don't say script 2012-03-08 22:52:02 -05:00
Michael DeHaan
2c6dd03229 docs rebuild 2012-03-08 22:50:12 -05:00
Michael DeHaan
1952bd0aa3 add some docs 2012-03-08 22:50:00 -05:00
Michael DeHaan
d89ee675fc Oh I have to commit these too 2012-03-08 14:07:13 -05:00
Michael DeHaan
56de2e112a Update README.md 2012-03-08 13:59:12 -05:00
Michael DeHaan
742258a078 Drop other man(5) pages so we can have only one source of docs -- ansible.github.com for those operations.
Easier to maintain and much more verbose.
2012-03-08 13:56:27 -05:00
Michael DeHaan
2cafb8d221 Minor docs restructuring 2012-03-08 13:53:48 -05:00
Michael DeHaan
12fd193450 Docs updates 2012-03-08 13:36:47 -05:00
Tim Bielawa
6fe8e4d348 Unjekyllify these pages. 2012-03-07 13:48:56 -05:00
Tim Bielawa
5738f8724a Polish up more. Refactor build-site.py and Makefile. 2012-03-07 13:08:31 -05:00
Tim Bielawa
baf2a05708 Polish the docs up some more. Also make 'index.html' forward to the actual html output 2012-03-07 12:41:53 -05:00
Tim Bielawa
95502c3089 Adding version and author to ansible init. 2012-03-07 12:02:05 -05:00
Tim Bielawa
5e453555e3 Let me upgrade your docs 2012-03-07 11:35:18 -05:00
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) 2012-03-06 21:13:50 -05:00
Michael DeHaan
7eedc3fb1a Breakout includes into seperate functions, allow vars to apply to handlers but handlers
still may not be parameterized because it does not make sense to import them more than
once since they are keyed by name.
2012-03-06 21:01:05 -05:00
Michael DeHaan
3ee22ad351 Merge branch 'master' of github.com:mpdehaan/ansible 2012-03-06 19:25:28 -05:00
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.
2012-03-06 19:24:36 -05:00
Michael DeHaan
7e0ff815b9 Do I have to change something here to trigger a rebuild? 2012-03-06 19:00:52 -05:00
Michael DeHaan
eadd5644b0 Fix project name from where I copied it from :) 2012-03-06 18:59:33 -05:00
Michael DeHaan
bd4bda95d0 Check in files. 2012-03-06 18:58:23 -05:00
Michael DeHaan
2e75c21e4b first commit 2012-03-06 18:55:16 -05:00
Michael DeHaan
498a4c8056 Update README.md 2012-03-06 08:56:51 -05:00
Michael DeHaan
7cb6ce6613 Update README.md 2012-03-06 08:54:06 -05:00
Michael DeHaan
de3cff8cef Removing vim swap files and MANIFEST from rpmbuild on 'make clean' 2012-03-05 22:47:30 -05:00
Michael DeHaan
e835cd6f92 Have 'make clean' clean up test output directory 2012-03-05 22:44:39 -05:00
Michael DeHaan
001937976f Add RPM target. Not quite operational. 2012-03-05 22:35:59 -05:00
Michael DeHaan
0935506d6f Templating as non-root should not require passing in the metadata= parameter. 2012-03-05 22:23:56 -05:00
Michael DeHaan
4ee4ddcd7c Parameterized include statements can see top level variables and also be passed specific variables!
Code needs cleanup, but works
2012-03-05 22:00:22 -05:00
Michael DeHaan
fb3bfa1c51 Tweak the matrix 2012-03-05 21:38:12 -05:00
Michael DeHaan
9c5341116b Update to comparison matrix 2012-03-05 21:35:00 -05:00
Michael DeHaan
ee6db0531b Attempt at adding more comparison info 2012-03-05 21:16:55 -05:00
Michael DeHaan
937de08794 HTML test 2012-03-05 21:09:13 -05:00
Michael DeHaan
06d3cc930d This was supposed to be markdown with embedded HTML 2012-03-05 21:08:25 -05:00
Michael DeHaan
077e4f2381 Added start of comparison table so it's easy to explain at a glance what this project is. 2012-03-05 21:07:36 -05:00
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.
2012-03-05 20:09:03 -05:00
Michael DeHaan
e0b1ad790c Merge pull request #80 from tbielawa/ReallyClean
Fix the py[co] part of the clean target in the make file
2012-03-05 13:24:58 -08:00
Tim Bielawa
2b22f546a2 Fix the py[co] part of the clean target in the make file 2012-03-05 16:21:39 -05:00
Tim Bielawa
c5f8bc9d79 Don't set ANSIBLE_HOSTS inside the env-setup script 2012-03-05 16:12:05 -05:00
Tim Bielawa
f2c2786a14 Update constants.py to pull module path and the hosts file from the
environment (ANSIBLE_{LIBRARY,HOSTS}) if defined.

Update manpages to represent this.

Also update the env-setup script to set ANSIBLE_{LIBRARY,HOSTS}.
2012-03-05 16:08:36 -05:00
Michael DeHaan
3c20f4000f Merge pull request #74 from tbielawa/ungrouped
Fix parse_hosts to not blow up on ungrouped hosts.
2012-03-05 11:16:55 -08:00
Michael DeHaan
95555ecc14 Merge pull request #76 from tbielawa/hacking
Add environment updating script 'env-setup' to facilitate running ansibl...
2012-03-05 11:15:27 -08:00
Tim Bielawa
2d052fcefb Freshen up Makefile clean target 2012-03-05 14:12:11 -05:00
Tim Bielawa
b190ea4b62 Fix parse_hosts to not blow up on ungrouped hosts. 2012-03-05 14:09:01 -05:00
Tim Bielawa
6343aa6214 Add environment updating script 'env-setup' to facilitate running ansible from a git checkout. 2012-03-05 13:47:01 -05:00
Seth Vidal
78566946c0 correct license 2012-03-05 12:24:01 -05:00
Seth Vidal
11bf2a5e03 add python-paramiko dependency 2012-03-05 12:16:08 -05:00
Seth Vidal
47aa018a84 add MANIFEST.in, ansible.spec, modify setup.py for rpm pkg creation 2012-03-05 12:15:24 -05:00
Tim Bielawa
e9ae5eb9d5 Correct see-also in playbook manpage 2012-03-04 23:08:29 -05:00
Michael DeHaan
cb5929dad7 Setup module tests 2012-04-04 11:55:24 -04:00
Michael DeHaan
c71afe35d6 Async tests complete. Fixed bug in async_wrapper 2012-04-04 11:30:14 -04:00
Michael DeHaan
fae3a71899 WIP on async tests 2012-04-04 11:24:22 -04:00
Michael DeHaan
f8eab8ed7e Here are those tests I talked about previously :) 2012-04-04 11:11:31 -04:00
Michael DeHaan
369b9cde1c Add test for template module and make 'dark' errors clearer if we get output back and the JSON
is not parseable
2012-04-04 10:57:54 -04:00
Michael DeHaan
c86b388812 Strip trailing newlines from command module, which happens in some shell commands 2012-04-04 10:30:22 -04:00
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)
2012-04-04 10:27:24 -04:00
Michael DeHaan
05c5c85276 Added tests for the guts of the program (Runner()) and modules. Idea is to run
everything as the logged in user using local checkout and write to a tempdir.
To run tests, be sure user is in SSH authorized_keys for themselves, this DOES
run through paramiko because mocking it out would defeat the point of having tests.
2012-04-04 09:16:11 -04:00
Michael DeHaan
db57933614 Allow ":" to be used to split patterns as well as ";" so if you are just using group names or fully explicit names you do not need to use shell quoting at all. Obviously if you use wildcards like "*" you wouldstill. 2012-03-03 14:26:59 -05:00
Michael DeHaan
c839229f54 Fix code formatting in README.md 2012-03-03 14:20:58 -05:00
Michael DeHaan
269a6d46d6 attempt to explain import syntax in ansible-playbook manpage. Can't include
examples inline because github won't display them well, want to move this
file to markdown soon.
2012-03-03 14:13:31 -05:00
Michael DeHaan
defb91ae4d README updates 2012-03-03 14:06:15 -05:00
Michael DeHaan
6a0b793578 Remove debug comments 2012-03-03 13:42:37 -05:00
Michael DeHaan
8e07d83ad1 Async module, mostly operational, daemonizing/watch code may have bugs 2012-03-03 13:19:33 -05:00
Michael DeHaan
718e2930b2 async module now forks 2012-03-03 13:06:43 -05:00
Michael DeHaan
45c40524ef Time limit needs to be passed to async_wrapper. 2012-03-03 12:47:31 -05:00
Michael DeHaan
a06d8859fa Added start of async_status script.
Parameters:
  jid=X
  mode=status|cleanup (default status)

status = returns results from the job
cleanup = deletes the job file, should also kill the job if still running (TODO)
2012-03-03 12:41:22 -05:00
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.
2012-03-03 12:25:56 -05:00
Michael DeHaan
1ed212513c Add user to playbook example so it's clear that this is available 2012-03-03 11:02:14 -05:00
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.
2012-03-03 10:53:15 -05:00
Michael DeHaan
32c32abb4a Update AUTHORS 2012-03-02 23:12:43 -05:00
Michael DeHaan
1c2d31ef85 add info about the 'all' group to README.md 2012-03-02 23:02:17 -05:00
Michael DeHaan
cbfabcd0fb Add -i, -k, and -M to ansible-playbook CLI to match options in /usr/bin/ansible 2012-03-02 22:54:25 -05:00
Michael DeHaan
e4304a0ac5 Make sure tempdirs are cleaned up after execution steps, fix notifiers, make sure
service module is installed by setup.py
2012-03-02 22:38:55 -05:00
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.
2012-03-02 22:10:51 -05:00
Michael DeHaan
3ad9db4966 Some minor from 'pep8', and silencing the PEP8 messages I don't care about.
Also make pep8 show all messages rather than just 1 per code.
2012-03-02 22:03:03 -05:00
Michael DeHaan
0d7a84d591 Some minor refactoring of playbook code, more to go. 2012-03-02 21:43:46 -05:00
Michael DeHaan
c57df6220b Add pydoc to playbook binary, fix default types for playbook '.get()' call 2012-03-02 21:20:37 -05:00
Michael DeHaan
34cbbfbfe1 Added pydoc for utils.py 2012-03-02 21:16:29 -05:00
Michael DeHaan
bf967adf83 Added pydoc for functions in Cli() 2012-03-02 21:11:43 -05:00
Michael DeHaan
e9a24cdad4 Extensive refactoring of bin/ansible, moving most output functions into lib/ansible/utils to
encourage readability and make things more maintainable.
2012-03-02 21:08:48 -05:00
Michael DeHaan
b33ef0de60 Add a newline in output here, possibly considering printing top level keys flat 2012-03-02 19:52:43 -05:00
Michael DeHaan
1420c49277 Still seeing some weirdness from ohai but we can probably simplify
this until we figure out what that is.
2012-03-02 19:48:37 -05:00
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 2012-03-02 19:44:50 -05:00
Michael DeHaan
c8b1bbc7ea make command module error when no -a more obvious as command is the default module and someone
may forget about -a.  The CLI already warns about no host pattern by pulling up usage.
2012-03-01 22:25:01 -05:00
Michael DeHaan
146cb3ff7e update README.md on playbook field names 2012-03-01 22:24:12 -05:00
Michael DeHaan
5040c01640 rename 'pattern' to 'hosts' in playbook format. 2012-03-01 22:20:45 -05:00
Michael DeHaan
687a315a80 Increasing default --forks to 5 2012-03-01 22:19:41 -05:00
Michael DeHaan
847846af0e -p has been replaced by a required option. Various docs changes. 2012-03-01 22:10:47 -05:00
Michael DeHaan
4ce1f1dd5e README/doc/example updates to go with group support and CLI option changes.
Minimizing manpage until CLI options stabilize.
2012-03-01 21:18:32 -05:00
Michael DeHaan
bed29b7e11 Allow the /etc/ansible/hosts file to contain groups and those group names to be used in place
of pattern names.
2012-03-01 20:41:17 -05:00
Michael DeHaan
24d854e0bc Merge pull request #63 from chjohnst/master
add -T option for ssh timeout
2012-03-01 17:06:40 -08:00
Christopher Johnston
d15172abdc add a -T option for setting ssh timeout in seconds 2012-03-01 16:54:17 -08:00
Michael DeHaan
a191af6af4 Update README.md 2012-02-29 13:58:46 -05:00
Christopher Johnston
2773234c3f python 2.5 does not include json so lets try to use simplejson 2012-02-29 09:30:02 -08:00
Michael DeHaan
ab266472be Trim errors on connection refused messages 2012-02-28 04:23:34 -05:00
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
2012-02-28 04:20:25 -05:00
Michael DeHaan
55d256d82a Added solution to avoid checking in manpages. Just run "make" and we'll build
docs before python setup.py.   Seems reasonable to let Makefile drive
2012-02-28 04:15:52 -05:00
Michael DeHaan
19fdb7305d have command module raise an error if no arguments are supplied 2012-02-28 04:02:29 -05:00
Michael DeHaan
1427ade3af Have ansible yell if no module name is supplied 2012-02-28 04:00:31 -05:00
Michael DeHaan
edf6da5c38 Rename opts so --help looks cleaner 2012-02-28 03:57:43 -05:00
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".
2012-02-28 03:54:41 -05:00
Michael DeHaan
d8b5e667d8 Doc rebuild 2012-02-28 03:05:29 -05:00
Michael DeHaan
442c2488ba Minor playbook doc updates 2012-02-28 22:10:58 -05:00
Michael DeHaan
0356925639 Rename ans-command to ansible-command and ans-playbook to ansible-playbook so my brain
can tab complete better
2012-02-28 22:08:31 -05:00
Michael DeHaan
d0906e187f Correct file location error in example 2012-02-28 02:52:14 -05:00
Michael DeHaan
058fa5bd15 Manpage and doc updates 2012-02-28 02:51:19 -05:00
Michael DeHaan
430f38d54c minor option consistency 2012-02-28 02:41:32 -05:00
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
2012-02-28 02:38:36 -05:00
Michael DeHaan
de1d0011bc Take darkened hosts out of the playbook rotation, fix error handling in template
module so that if a directory path is specified we get valid output
2012-02-28 02:32:14 -05:00
Michael DeHaan
79d91e024b Updates to ansible-playbook helper program 2012-02-28 02:25:34 -05:00
Michael DeHaan
42767b30fe Fix output on failed hosts 2012-02-28 02:11:51 -05:00
Michael DeHaan
b9b0240543 Continued ans-command output upgrades, fixed output_dest back again 2012-02-28 02:03:07 -05:00
Michael DeHaan
d6dcaefa9f Some code refactoring + output upgrades 2012-02-28 01:59:21 -05:00
Michael DeHaan
859c572de8 always show return codes (seems like a reasonable thing to do), make one line output slightly more
obvious
2012-02-28 01:46:02 -05:00
Michael DeHaan
cc2d3e0f1a Fix my error from not removing this parameter 2012-02-28 01:40:56 -05:00
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 2012-02-28 01:39:47 -05:00
Michael DeHaan
f72bded2e5 Merge branch 'master' of github.com:mpdehaan/ansible 2012-02-28 20:44:24 -05:00
Michael DeHaan
34b72d02ea remove unused option 2012-02-28 20:44:12 -05:00
Michael DeHaan
4ba366c2d1 Require that ansible managed hosts be in the list of hosts to manage to avoid
option overload.
2012-02-28 01:34:28 -05:00
Michael DeHaan
01e5da6d0b Make /bin/ansible use the common options from lib/ansible/scripts
DRY!
2012-02-28 01:33:22 -05:00
Michael DeHaan
6fcce9a97e rebuild manpage due to license change 2012-02-28 01:25:00 -05:00
Michael DeHaan
fb531a8dfa Minor option string relabelling, move one option from common into helper script 2012-02-28 01:01:44 -05:00
Michael DeHaan
c6eb3f1006 remove debug statement 2012-02-28 00:49:49 -05:00
Michael DeHaan
7de661dd2c Add ansible command, fix import error in runner 2012-02-28 00:45:37 -05:00
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)
2012-02-28 00:28:43 -05:00
Michael DeHaan
a3a426b4c5 Add GPLv3 license headers to new files. Approved by all contributors on mailing list. 2012-02-28 19:09:30 -05:00
Michael DeHaan
5eea593af5 Merge branch 'master' of github.com:mpdehaan/ansible 2012-02-28 19:08:37 -05:00
Michael DeHaan
be4cb64c92 Relicensing to GPLv3, all previous committers ok'd on mailing list. 2012-02-28 19:08:09 -05:00
Michael DeHaan
0ed3e87792 Merge pull request #40 from skvidal/master
ans-command
2012-02-28 04:14:15 -08:00
Seth Vidal
95706af074 ans-command and scripts.py for the basic cli parser to be imported elsewhere 2012-02-28 01:12:04 -05:00
Michael DeHaan
f4ffddef15 Merge branch 'master' of github.com:mpdehaan/ansible 2012-02-28 00:11:27 -05:00
Michael DeHaan
ca49676ef7 Somehow lost the API docs. Put them back! 2012-02-28 00:10:49 -05:00
Michael DeHaan
928095c623 README.md revisions. 2012-02-27 23:54:56 -05:00
Michael DeHaan
c0b4c80ba1 Docs rebuild 2012-02-27 23:54:32 -05:00
Michael DeHaan
783d3642a8 ok, giving up, github does not render asciidoc well at all.
Is there something we can use to generate manpages from markdown?
2012-02-27 23:48:40 -05:00
Michael DeHaan
28afd7208e Try once more. 2012-02-27 23:47:10 -05:00
Michael DeHaan
03bf465c3a attempt to fix asciidoc so it shows up on github 2012-02-27 23:42:15 -05:00
Michael DeHaan
f3246fb72e Remove 'pending' comment. 2012-02-27 23:39:47 -05:00
Michael DeHaan
c8005e6c60 fix markdown links 2012-02-27 23:38:21 -05:00
Michael DeHaan
d8c0be9ae6 Add links to manpage into README.md 2012-02-27 23:36:22 -05:00
Michael DeHaan
4201865bba Add note about facter/ohai integration into module docs. 2012-02-27 23:18:53 -05:00
Michael DeHaan
b622429738 Add note about facter/ohai integration in the template engine 2012-02-27 23:16:46 -05:00
Michael DeHaan
320ce8f5f1 If ohai is present, do the same with facter and make it available for the templating engine 2012-02-27 23:15:11 -05:00
Michael DeHaan
186dab4dff Include facter variables for free in setup JSON (prefix with 'facter'.
Also sort keys in JSON file and pretty print
2012-02-27 23:06:32 -05:00
Michael DeHaan
e766bb6a6c update manpage output 2012-02-27 22:49:14 -05:00
Michael DeHaan
155c3ca89e update playbook docs with updated syntax / minor edits 2012-02-27 22:48:45 -05:00
Michael DeHaan
302cc37c79 Merge branch 'master' of github.com:mpdehaan/ansible 2012-02-27 22:43:21 -05:00
Michael DeHaan
2860c14bc2 module doc updates 2012-02-27 22:43:08 -05:00
Michael DeHaan
4a3a5fb685 Merge branch 'master' of github.com:mpdehaan/ansible 2012-02-27 22:28:30 -05:00
Michael DeHaan
1caafb7bd9 Stop evaluating a host in a playbook when it encounters the first failure. 2012-02-27 22:28:01 -05:00
Michael DeHaan
74cf509ea4 More markdown. Might be done for now. Maybe. Grr, hate you markdown. 2012-02-27 21:31:18 -05:00
Michael DeHaan
1ef19af4eb More markdown formatting 2012-02-27 21:27:18 -05:00
Michael DeHaan
f32f5d5ac5 Fix markdown bullets 2012-02-27 21:26:23 -05:00
Michael DeHaan
757574ee03 Make templating example make more sense 2012-02-27 21:13:44 -05:00
Michael DeHaan
ada866be46 Further README tweaks 2012-02-26 23:03:06 -05:00
Michael DeHaan
ff53237893 Some readme cleanup 2012-02-26 22:51:23 -05:00
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.
2012-02-26 22:31:42 -05:00
Michael DeHaan
228d1a0834 A really basic git module. Improvements welcome. 2012-02-26 22:17:31 -05:00
Seth Vidal
39f42cfd75 when it is an IOError or an OSError - return a normal error message instead of a traceback barf 2012-02-27 17:53:02 -05:00
Seth Vidal
85f751175d - make tmp_path be a dir so we can put more than one command in there securely 2012-02-27 17:52:37 -05:00
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.
2012-02-27 00:43:02 -05:00
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 2012-02-26 22:59:45 -05:00
Michael DeHaan
5781e6e02f Merge pull request #32 from tbielawa/DocsFixin
Docs fixin
2012-02-26 18:44:14 -08:00
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 2012-02-26 21:09:56 -05:00
Tim Bielawa
6027c16ddd Update distutils setup script to install the new manual page 2012-02-26 21:04:38 -05:00
Tim Bielawa
afc7f4d246 This is configuration, not command. Rename to section 5 2012-02-26 21:03:55 -05:00
Tim Bielawa
9680de37c9 Manpages formatting 2012-02-26 21:03:18 -05:00
Tim Bielawa
cdbc2168c1 Fix makefile manpage targets 2012-02-26 21:01:29 -05:00
Tim Bielawa
d44e0bbb61 Update the python setup script to install the ansible modules man page. 2012-02-26 21:01:04 -05:00
Tim Bielawa
b4fd0042f6 Fix up some wording/formatting in ansible-modyles.5. Also: Section 5 is for configuration, update the see-also to reflect this with respect to ansible-playbook. 2012-02-26 21:01:04 -05:00
Tim Bielawa
86bf871e07 Fixup the naming of the docs. 2012-02-26 21:01:04 -05:00
Michael DeHaan
f7cff27f3d Drastically simply playbook syntax 2012-02-26 20:54:51 -05:00
Michael DeHaan
136d8fa33a add manpage crossreferences 2012-02-26 20:48:10 -05:00
Michael DeHaan
2262705ea3 Added stub for ansible-playbook (format) docs. Docs on ansible-playbook script TBD once
written.
2012-02-26 20:47:22 -05:00
Michael DeHaan
fc4ba46d1a Add a ton of comments so folks can understand what runner does. More refactoring is
certaintly possible too.
2012-02-26 20:29:27 -05:00
Michael DeHaan
c0ac0e9b62 Added comments to explain the playbook code. 2012-02-26 20:18:42 -05:00
Michael DeHaan
17a6ddb7ee Lining up with the reversion of 70ec508ee0, also
check the ansible-module file back in.  This is basically to make things easier
to build from setup.py.
2012-02-26 20:01:31 -05:00
Michael DeHaan
4e5da11217 Revert "don't check in manpage output file"
This reverts commit 70ec508ee0.
2012-02-26 20:00:46 -05:00
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.
2012-02-26 19:58:56 -05:00
Michael DeHaan
61d064d011 Fixed up KV munging in runner, misc fixes to copy, setup, and template modules 2012-02-26 19:55:26 -05:00
Michael DeHaan
226da501d3 Take notes about other modules that are in plan. 2012-02-26 19:29:56 -05:00
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
2012-02-26 19:21:44 -05:00
Michael DeHaan
77a7ddeebc Add start of documentation for modules 2012-02-26 18:52:42 -05:00
Michael DeHaan
deb71da91e trim md5sum string so it does not contain the filename
also fix a bug/typo in the reporting from playbook
2012-02-26 12:10:57 -05:00
Michael DeHaan
bfd93081ae Have to return the return code on failure, it's a rule! 2012-02-25 21:00:51 -05:00
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.
2012-02-25 20:27:11 -05:00
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.
2012-02-25 19:56:06 -05:00
Michael DeHaan
cb90df2377 Allow multiple patterns to specified, just like Func did. 2012-02-25 17:22:48 -05:00
Michael DeHaan
70ec508ee0 don't check in manpage output file 2012-02-25 17:19:12 -05:00
Michael DeHaan
af74f53230 Merge branch 'master' of github.com:mpdehaan/ansible 2012-02-25 17:16:47 -05:00
Michael DeHaan
6b433239e6 Update README.md 2012-02-25 17:31:23 -05:00
Michael DeHaan
b44ae0af90 applying indentation patch from skvidal 2012-02-25 17:16:23 -05:00
Michael DeHaan
a5039eec62 Update reporting on playbook runs. 2012-02-25 15:21:11 -05:00
Michael DeHaan
79fdc1b6f4 Notifable handlers only run when something is changed. Awesome. 2012-02-25 14:42:41 -05:00
Michael DeHaan
de80166b6d Misc refactoring, updated TODO to reflect new templating features being completed 2012-02-05 13:25:10 -05:00
Michael DeHaan
ba9468266f Can it get an easier? Yes it can! Further simply playbook format. 2012-02-05 13:05:09 -05:00
Michael DeHaan
6d0fd2bfde Compress the playbook format for readability 2012-02-05 12:52:07 -05:00
Michael DeHaan
b053df4182 Some refactoring of runner.py -- more to come to eliminate repeated code 2012-02-05 12:48:52 -05:00
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.
2012-02-24 05:15:28 -05:00
Michael DeHaan
440bac4a95 Added remote templating engine using jinja2, see examples/playbook.yml for usage.
Cleanup is due in runner.py
2012-02-24 04:35:51 -05:00
Michael DeHaan
5d6b0280d5 Added stub for template execution, WIP. 2012-02-24 03:45:36 -05:00
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.
2012-02-24 03:25:09 -05:00
Michael DeHaan
2c5d5a328b Merge pull request #9 from skvidal/master
use logger to track all events run via ansible on the remote host.
2012-02-25 06:58:32 -08:00
Michael DeHaan
e61d64307c Grr, markdown. 2012-02-25 09:41:30 -05:00
Michael DeHaan
635cd6f01e Nope, can't use a form in the README file. 2012-02-25 09:40:42 -05:00
Michael DeHaan
9b3d2b97a7 Merge branch 'master' of github.com:mpdehaan/ansible 2012-02-25 09:39:18 -05:00
Michael DeHaan
fe02b21a95 Attempt adding google groups signup form to README 2012-02-25 09:39:03 -05:00
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.
2012-02-25 01:06:18 -05:00
Seth Vidal
edb9683050 touch up the example API code 2012-02-25 01:00:37 -05:00
Seth Vidal
ee95a5b0a4 use shlex.split() instead of split() to keep quoting sane for commands 2012-02-24 23:35:09 -05:00
Seth Vidal
8d555ff51c Merge remote-tracking branch 'upstream/master'
* upstream/master: (2 commits)
  Added idea about how to do async + timeout in modules
  ...
2012-02-24 23:28:58 -05:00
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
2012-02-24 23:25:30 -05:00
Michael DeHaan
0de9f0b28e Added idea about how to do async + timeout in modules 2012-02-24 03:04:46 -05:00
Michael DeHaan
6bfc275204 update TODO with ideas for playbook and latest plans 2012-02-24 02:49:05 -05:00
Michael DeHaan
e25bb2f888 Upgrade output for playbook runs 2012-02-24 02:36:38 -05:00
Michael DeHaan
ee2fa721f1 Kinda have to pass the host list parameter 2012-02-24 02:14:22 -05:00
Michael DeHaan
9e931f323c Update ohai module to run on older python clients. 2012-02-24 02:05:49 -05:00
Michael DeHaan
f17c4ca4b2 Added an 'ohai' module. Some weird JSON hackage to get it to work. 2012-02-24 02:04:50 -05:00
Michael DeHaan
c8fe53c4b9 Update README.md to reflect that this is a tool, not just an API. Though
the API is important.
2012-02-24 01:13:21 -05:00
Michael DeHaan
b0d2739baa Merge pull request #6 from tbielawa/manpage
Because everything should have a man page
2012-02-24 17:30:11 -08:00
Tim Bielawa
f0b0211772 Because everything should have a man page 2012-02-24 20:07:49 -05:00
Tim Bielawa
4caf9d274b Fix tbielawa email in AUTHORS file 2012-02-24 20:07:49 -05:00
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.
2012-02-24 01:02:24 -05:00
Michael DeHaan
2fc109b47a Credit Tim for last patch. 2012-02-23 23:58:40 -05:00
Michael DeHaan
767517ac65 Force forks to be an integer when read by command line 2012-02-23 23:57:26 -05:00
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 :)
2012-02-23 23:54:16 -05:00
Michael DeHaan
0095336a4e Update API docs for runner 2012-02-23 23:29:34 -05:00
Michael DeHaan
d079c8e5f3 Move runner out of __init__.py so it's clear what classes live where. 2012-02-23 23:28:58 -05:00
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.
2012-02-23 23:26:16 -05:00
Michael DeHaan
be9fdc8ef1 Add Seth to authors file. 2012-02-23 23:03:57 -05:00
Michael DeHaan
b2e8084c50 Merge pull request #4 from skvidal/master
adds an option to ask for and store the ssh password from the cli
2012-02-24 15:27:19 -08:00
Michael DeHaan
a021020967 Merge pull request #3 from katzj/no-shell
Don't use a shell and thus avoid a whole class of problems
2012-02-24 15:26:33 -08:00
Seth Vidal
08b45d6da1 add support to prompt for ssh password on the cli 2012-02-24 18:13:11 -05:00
Jeremy Katz
24e10dc2e8 Don't use a shell and thus avoid a whole class of problems 2012-02-24 16:10:53 -05:00
Jeremy Katz
25df80ff58 Use a mktemp'd path for uploading modules 2012-02-24 15:51:16 -05:00
Michael DeHaan
bd37864242 Comments and fixup on the dark/contacted code 2012-02-23 23:00:37 -05:00
Michael DeHaan
11f7930038 trim unused modules 2012-02-23 22:54:01 -05:00
Michael DeHaan
4a891b4108 Merge branch 'master' of github.com:mpdehaan/ansible 2012-02-23 22:50:45 -05:00
Michael DeHaan
659c0efd72 Add authors file to list contributors 2012-02-23 22:50:25 -05:00
Michael DeHaan
6bebedd7eb Merge pull request #1 from katzj/centos5-simplejson
Fall back to standalone simplejson module
2012-02-23 19:47:51 -08:00
Michael DeHaan
7be8d134c9 Rename 'successful' to 'contacted' ... 2012-02-23 22:47:03 -05:00
Michael DeHaan
530e54b3e4 Fix multiprocessing pool usage and remove stackoverflow hack 2012-02-23 22:38:51 -05:00
Michael DeHaan
4608a93de5 Added docs on split success/failure structures 2012-02-23 22:24:56 -05:00
Michael DeHaan
7ce5db97ed Add explicit calls to close connections 2012-02-23 22:10:34 -05:00
Michael DeHaan
e0e98d10ce use readlines on stdout so we'll block on long running commands 2012-02-23 22:09:23 -05:00
Michael DeHaan
7eb2dd2dee Add remote setting to file, update TODO 2012-02-23 22:04:09 -05:00
Michael DeHaan
03647d64e9 Update docs, added TODO.md 2012-02-23 21:47:31 -05:00
Michael DeHaan
3da6370a65 use defaults better, improve/fix setup.py 2012-02-23 21:37:39 -05:00
Michael DeHaan
2c873a4467 Adding setup.py 2012-02-23 21:07:03 -05:00
Jeremy Katz
ef8ea13495 Fall back to standalone simplejson module
CentOS5 has python 2.4 which doesn't have a built-in json
module
2012-02-23 20:52:53 -05:00
Michael DeHaan
9681e1fa04 Add MIT license headers 2012-02-23 19:42:05 -05:00
Michael DeHaan
cb7fb52736 Added copy to list of modules, though it's not really a true module. Added more idea notes. 2012-02-23 17:38:49 -05:00
Michael DeHaan
a2a8deaeaa Added command module 2012-02-23 17:19:06 -05:00
Michael DeHaan
f4fca1069a doc updates 2012-02-23 16:32:58 -05:00
Michael DeHaan
3807824c6d Added file copy support w/ readme updates 2012-02-23 16:07:10 -05:00
Michael DeHaan
83d15afc6f readme updates 2012-02-23 15:31:35 -05:00
Michael DeHaan
631ac37843 Example facter module. Look how quick that was. 2012-02-23 15:24:24 -05:00
Michael DeHaan
145a024d7b Split CLI into binscript 2012-02-23 14:56:14 -05:00
Michael DeHaan
288ce6b32e Further readme tweaks 2012-02-23 14:40:17 -05:00
Michael DeHaan
5170a9fe2c Readme edits 2012-02-23 14:28:39 -05:00
Michael DeHaan
381b3c971a Example for list of hosts syntax
TODO: add a command to auto-add a host, list hosts, etc
2012-02-23 14:20:28 -05:00
Michael DeHaan
b9426ef99a Add SSH-agent usage instructions 2012-02-23 14:19:28 -05:00
Michael DeHaan
c4f6d493b3 Initial library directory 2012-02-23 14:18:51 -05:00
Michael DeHaan
f31421576b Genesis. 2012-02-23 14:17:24 -05:00