Commit graph

6284 commits

Author SHA1 Message Date
James Cammarata
d8a7a2d1b2 Adding evaluation of role vars as the dep tree is built
This allows variables to be inserted into the role scope specifically
while also being inserted into the global scope.
2013-08-15 20:53:23 -05:00
James Cammarata
e12b99dba6 Small cleanup, no need to call _get_role_path a second time 2013-08-15 09:29:51 -05:00
James Cammarata
9a401e73a6 Adding support for role dependencies.
Fixes #3686

Dependencies are enabled by adding a new directory/file named
meta/main.yml to the role. The format of the dependencies are:

dependencies:
- { role: foo, x: 1, y: 2 }
- { role: bar, x: 3, y: 4 }
...

Dependencies inherit variables as they are seen at the time of the
dependency inclusion. For example, if foo(x=1, y=2) has a dependency
on bar(x=3,z=4), then bar will have variables (x=3,y=2,z=4).

Different roles can have dependencies on the same role, and this
variable inheritence allows for the reuse of generic roles quite easily.
For example:

Role 'car' has the following dependencies:
dependencies:
  - { role: wheel, n: 1 }
  - { role: wheel, n: 2 }
  - { role: wheel, n: 3 }
  - { role: wheel, n: 4 }

Role 'wheel' has the following dependencies:
dependencies:
- { role: tire }
- { role: brake }

The role 'car' is then used as follows:
- { role: car, type: honda }

And tasks/main.yml in each role simply contains the following:
- name: {{ type }} whatever {{ n }}
  command: echo ''

TASK: [honda tire 1]
TASK: [honda brake 1]
TASK: [honda wheel 1]
TASK: [honda tire 2]
TASK: [honda brake 2]
TASK: [honda wheel 2]
TASK: [honda tire 3]
TASK: [honda brake 3]
TASK: [honda wheel 3]
TASK: [honda tire 4]
TASK: [honda brake 4]
TASK: [honda wheel 4]
TASK: [I'm a honda]  <- (this is in roles/car/tasks/main.yml)
2013-08-15 09:29:51 -05:00
James Cammarata
ad595eadea Enable error_on_undefined_vars by default 2013-08-15 09:28:34 -05:00
James Cammarata
10a0f03cdc Cleaning up of apt_repository module and removing wget parts 2013-08-13 16:11:03 -05:00
Michael Vogt
de404eac06 use either pycurl or wget to download from launchpad, also improve error message if neither is installed 2013-08-13 14:39:47 -05:00
Michael Vogt
5e56d42ed1 use pycurl instead of urllib2 when talking to launchpad to actually get SSL cert verification, see https://bugs.launchpad.net/ubuntu/+source/software-properties/+bug/915210 or CVE-2011-4407 for a previous similar issue in software-properties 2013-08-13 14:39:47 -05:00
James Cammarata
c4852f6954 Cleaning up some pep8 whitespace issues in mongodb_user 2013-08-13 13:00:37 -05:00
lwade
eaac295fb2 Basic module to tag resources in EC2. 2013-08-13 12:55:06 -05:00
James Cammarata
0958673574 Reverting version_added field in the apt_repository module 2013-08-13 09:53:49 -05:00
Alexander Saltanov
ded947008a Replacement for apt_repository.
1. Debian Squeeze is supported out of box now.
2. Repository type "deb" or "deb-src" should be explicitly specified.
3. If a source had beed added it must be possible to remove it.
4. PPA can be only used against Ubuntu hosts.
2013-08-13 09:53:49 -05:00
asmajlovic
8f45b77d30 Comparison data type mismatch corrected 2013-08-13 09:28:53 -05:00
James Cammarata
0c98c764e3 Fixing up a small issue with the mongodb_user docs 2013-08-13 09:05:19 -05:00
Ben Podoll
94e60563b4 adding fixes to support older versions of mongo (and pymongo) as well as new versions 2013-08-13 00:23:58 -05:00
Ben Podoll
bcef62cd39 adding comment about required version of mongodb to use the roles param 2013-08-12 21:25:21 -05:00
Ben Podoll
d330228d11 adding the ability to specify roles when adding/modifying a mongo user 2013-08-12 15:03:31 -05:00
Ben Podoll
3e32654f9d fixing problem causing docs not to build 2013-08-12 12:17:34 -05:00
Ben Podoll
13bef3579f adding a little more info to the 'path' param so it's clear there are aliases (which are used in other examples) to avoid confusion 2013-08-12 11:45:32 -05:00
James Cammarata
6feb4e3837 Fail apt package install when nothing is matched by the fnmatch pattern
Related to PR #3823
2013-08-12 11:26:31 -05:00
Michael Vogt
5c39c659e5 add support for fnmatch() style apt filenames
You can write a apt action like "- apt: pkg=apt*" with this package.
2013-08-12 16:11:15 +02:00
Michael DeHaan
11fe4566f8 Document facts.d 2013-08-12 09:49:54 -04:00
Mark Mandel
6e3ec9ccc0 expand user home path in stat. 2013-08-12 17:34:54 +10:00
Michael DeHaan
9b09ff4a65 Merge pull request #3821 from danxshap/django_venv_expand_user
Use home path expansion for virtualenv param in django_manage module
2013-08-11 17:53:01 -07:00
danxshap
4db4607ee5 use home path expansion for virtualenv param in django_manage module 2013-08-11 14:02:13 -07:00
Michael DeHaan
4e5feb6322 Merge pull request #3763 from j2sol/rax-updates
Update rax to sync with rax_clb_nodes
2013-08-11 13:37:25 -07:00
Michael DeHaan
eb54c222de update changelog 2013-08-11 16:26:12 -04:00
Michael DeHaan
06cb24940d Merge pull request #3797 from mscherer/openshift_github
Add openshift inventory plugin
2013-08-11 13:25:07 -07:00
Michael DeHaan
bc02e20503 Merge branch 'rsynctake2' into devel
Conflicts:
	CHANGELOG.md
2013-08-11 16:22:36 -04:00
Michael DeHaan
cde87f2f55 Add missing version_added to docs. 2013-08-11 16:21:00 -04:00
Michael DeHaan
70c42eeb64 Merge pull request #3784 from drewblas/devel
Added git disclaimer about dealing with ssh host checking
2013-08-11 12:50:48 -07:00
Michael DeHaan
6af77226fa Merge pull request #3818 from resmo/feature/docsite-update
update docsite about new variable inventory_file
2013-08-11 12:50:20 -07:00
Michael DeHaan
17aa0d12de Merge pull request #3814 from ftao/inventory_dir_abs
fix inventory.basedir is not absolute path when hostfile is startswith "./"
2013-08-11 08:46:08 -07:00
Michael DeHaan
1336bbd2f2 Merge pull request #3815 from amenonsen/typos
Fix some typos discovered during casual reading
2013-08-11 08:45:00 -07:00
Michael DeHaan
5a063fd55a Merge pull request #3816 from DanLovesProofs/fix-docs
Brings postgresql_db examples in line with documentation.
2013-08-11 08:43:23 -07:00
Abhijit Menon-Sen
1a90d01ba9 Fix some typos discovered during casual reading 2013-08-11 18:41:23 +05:30
René Moser
28267de3fe update docsite about new variable inventory_file 2013-08-11 11:08:57 +02:00
Dan Robinson
bda2ce6ffd Brings postgresql_db examples in line with documentation.
As of now, the documentation lists a parameter as "name",
whereas the examples use a parameter called "db". This brings
them in line.
2013-08-11 00:41:23 -07:00
ftao
51a180b150 fix inventory.basedir is not absolute path when hostfile is startswith "./" 2013-08-11 10:50:47 +08:00
Michael DeHaan
db8d9a6ea7 Update changelog 2013-08-10 19:03:00 -04:00
Michael DeHaan
f8c97d6e79 Style/docs cleanup, and also improve an error message. 2013-08-10 18:58:45 -04:00
Michael DeHaan
aeb8649da5 Merge branch 'ansible-rsync-take2' of git://github.com/tima/ansible into rsynctake2 2013-08-10 18:31:45 -04:00
Michael DeHaan
4d1f447908 Merge pull request #3650 from bcoca/forking_optimizations
forking least possible
2013-08-10 15:29:19 -07:00
Michael DeHaan
baffa8df72 These fields are booleans. 2013-08-10 18:16:01 -04:00
Michael DeHaan
633abca916 Merge branch 'nocolor' of git://github.com/amenonsen/ansible into devel 2013-08-10 18:11:27 -04:00
Michael DeHaan
5e049a5df7 Merge branch 'fix_service_with_initscript' of git://github.com/psvo/ansible into devel 2013-08-10 18:05:35 -04:00
Michael DeHaan
ee11d69697 Merge branch 'better_ini_errors2' of git://github.com/bcoca/ansible into devel 2013-08-10 18:01:17 -04:00
Michael DeHaan
0988a86653 Misc style fixes. 2013-08-10 17:59:05 -04:00
Michael DeHaan
146bbfecc5 Smite tabs in whitespace. 2013-08-10 17:58:03 -04:00
Michael DeHaan
587ea03097 Merge branch 'devel' of git://github.com/hura/ansible into devel 2013-08-10 17:57:41 -04:00
Michael Vogt
89bc43cab0 support i18n on sudo failure 2013-08-10 17:56:39 -04:00