Commit graph

6269 commits

Author SHA1 Message Date
Serge van Ginderachter
173586b871 Ensure plugin_loader.all() only loads one instance
by ensuring all basedirs, plugin paths and extra
paths are handled as absolute paths and are checked
to not add any doubles.

This fixes the corner case where e.g. the user has
an additional plugin path configured to a dir
relative to his playbooks or inventory location,
which also matches the  _plugin subdir relative to
one of the basedirs in the play.

For most plugins this doesn't show as an obvious issue
except for callback_plugins, which might fire more
than once. Other plugins (inventory and template
plugins) might unnecessarily be ran twice.

e.g. ansible.cfg has
callback_plugins   = ./plays/callback_plugins
and plays/ contains a playbook file:
.
├── ansible.cfg
├── inventory
└── plays
    ├── callback_plugins
    │   └── timestamp.py
    └── site.yml

modified:   lib/ansible/utils/plugins.py
2013-08-12 22:17:53 +02: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
Michael DeHaan
0905683c1f Merge pull request #3806 from neomantra/issue_3438_x
digital_ocean #3438: use get instead of [] to prevent KeyError
2013-08-10 14:40:18 -07:00
Michael DeHaan
4bdbe4dc4f Remove some test prints 2013-08-10 17:37:04 -04:00
Serge van Ginderachter
9991a530ab fix an encoding bug in copy content = lookup plugin
closes #3518
2013-08-10 17:37:04 -04:00
Michael DeHaan
220cc75cd9 Merge pull request #3805 from lwade/docs
Modified playbooks2.rst to include conditional boolean example.
2013-08-10 14:24:31 -07:00
Michael DeHaan
cd7971e0d4 Merge pull request #3809 from mscherer/fix_openstack_folsom
Fix traceback when openstack do not have OS-EXT-IPS:type attached to add...
2013-08-10 14:20:45 -07:00
Michael DeHaan
66b29b6813 Merge branch 'feature/gh-3789-inventory-file' of https://github.com/resmo/ansible into devel 2013-08-10 17:11:48 -04:00
Michael DeHaan
1d13ec2da3 Construct the multiprocessing manager only once. 2013-08-10 09:32:46 -04:00
René Moser
e8272e365d
implemented 'inventory_file' variable. Closes GH-3789. 2013-08-10 13:04:56 +02:00
Timothy Appnel
2288a11b6a Implemented setup method in rsync action module. 2013-08-09 21:24:50 -04:00
Timothy Appnel
4a9635e04e Straighten out local-remote-delegate logic in rsync action module. Force set delegate to local if one is not defined. 2013-08-09 21:24:49 -04:00
Timothy Appnel
adbca9d251 Fixed identity key logic. 2013-08-09 21:24:47 -04:00
Timothy Appnel
9f170f579a Introduced ansible-rsync to core. 2013-08-09 21:24:46 -04:00
Michael Scherer
6da44ef002 Fix traceback when openstack do not have OS-EXT-IPS:type attached to address
failed: [127.0.0.1] => {"failed": true, "parsed": false}
    invalid output was: Traceback (most recent call last):
      File "/tmp/ansible-1376083321.99-111209413777779/nova_compute", line 1176, in <module>
        main()
      File "/tmp/ansible-1376083321.99-111209413777779/nova_compute", line 239, in main
        _get_server_state(module, nova)
      File "/tmp/ansible-1376083321.99-111209413777779/nova_compute", line 198, in _get_server_state
        private = [ x['addr'] for x in getattr(server, 'addresses').itervalues().next() if x['OS-EXT-IPS:type'] == 'fixed']
    KeyError: 'OS-EXT-IPS:type'

This extension was added less than 6 month ago, and so cannot be used on a release
older than Grizzly ( like Folsom ).

Commit of the extension : https://review.openstack.org/#/c/21453/

See https://wiki.openstack.org/wiki/ReleaseNotes/Grizzly#Key_New_Features_2
2013-08-09 23:26:12 +02:00
Evan Wies
0c9c4ae401 digital_ocean #3438: use get instead of [] to prevent KeyError
The existing code was using:
  a[b][c[d]]
where a[b] would always exist and c[d] would always exist.
But the nested index would not alway exist, particularly when a DigitalOcean item disapeared.

This changes that nested index to a `get` and properly handles None results.

This bug was present in two spots in this file.
2013-08-09 11:57:37 -04:00
James Cammarata
ceff3b6ba3 Minor modification to set_fact with_items patch
Previous patch was reverted due to the fact that there was an issue
with the results not always being a dictionary (they're sometimes
a unicode string, ie. when the with_items is used with yum). This
minor change corrects that by checking for a dict object.
2013-08-09 07:52:14 -05:00