Commit graph

107 commits

Author SHA1 Message Date
Michael Scherer
12bf9a8b69 add a way for callback to disable itself
The idea is that some plugin would not be called in some
specific case, and the callback should decide by itself.

Having a way to globally disable it is much cleaner than
disabling every method one by one on the plugin side.

My use case is for fedora-infrastructure that cannot be run
from git checkout since it try to connect to the message bus,
but another case would be to bootstrap infrastructure, or to
run the code on a test servers without having all the callback
infrastructure setup.
2013-08-14 22:32:28 +02:00
Michael DeHaan
06cb24940d Merge pull request #3797 from mscherer/openshift_github
Add openshift inventory plugin
2013-08-11 13:25:07 -07: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
Michael Scherer
8026b091b1 Add openshift inventory plugin
This plugin will list all your git repositories from a openshift
provider, and allow you to manage them using ansible.

The inventory either use a environement variable or reuse the
existing rhc configuration file if it exist.
2013-08-08 23:37:14 +02:00
Dan Slimmon
09a2f23e8f Made Linode inventory module much faster.
Listing no longer makes an API request for every node.
2013-07-25 16:58:15 +00:00
Evan Wies
98bbf9708a digital_ocean: whitespace changes 2013-07-05 10:38:04 -04:00
Evan Wies
9b1a57f1f3 digital_ocean: make sure 'images' includes non-global images
The `dopy` library function all_images includes a 'global' filter
by default.  This was preventing private images from showing up
in --images.

The problem also made this script fail immediately for people
who had droplets previously created with private images.
2013-07-05 10:00:01 -04:00
Evan Wies
3f6bc3f664 digital_ocean.py enhancements
* Always refresh droplet information (versus getting it from cache) for
  --list, --host, --droplets, and --all.   All the DigitalOcean calls are
  pretty fast and without this change, inventory was often stale/incorrect.
  For example, previously if you destroyed a droplet, the inventory
  script would still find it and attempt to act on it.

* Added --force-cache option

* Added some option shortcuts -d, -r

* Added more value sanitization
2013-07-02 15:49:43 -04:00
Michael DeHaan
1d1d30f338 Merge pull request #3357 from neomantra/devel
Add DigitalOcean inventory plugin
2013-06-30 14:20:21 -07:00
Dan Slimmon
35d8d118a4 Added notes about hostname resolution. 2013-06-28 19:51:58 +00:00
Dan Slimmon
eb2653283c Added linode plugin 2013-06-28 19:11:32 +00:00
Evan Wies
01c9e7ea88 digital_ocean: add --env to inventory script 2013-06-27 14:52:32 -04:00
Evan Wies
807f3e76db Add DigitalOcean inventory plugin
Intended to complement the recently added digital_ocean module.
2013-06-26 23:01:30 -04:00
Tim Gerla
57b72d242a ec2 inventory plugin: fix whitespace around connection validity test 2013-06-26 09:22:16 -07:00
Michael DeHaan
200bd75426 Merge pull request #3149 from blandonnimrat/devel
added error checking on connect_to_region() in ec2.py
2013-06-19 19:26:17 -07:00
Chris Church
d1de7839d7 Renamed on_no_hosts_matched/on_no_hosts_remaining to correct names in noop callback, added methods to callback plugin examples. 2013-06-09 12:19:07 -04:00
jclaybaugh
f4db6d1a91 fixed whitespace and added a comment to explain if statement 2013-06-07 18:25:14 +00:00
jclaybaugh
4733dc6b5b added error checking around boto ec2 connection errors when using a bad region name 2013-06-07 18:13:22 +00:00
Mark Mandel
18f8fe1149 Update vagrant external inventory file to handle multiple boxes, and --list and --host params. 2013-05-30 14:16:58 +10:00
Michael DeHaan
2908687a7b This plugin is not quite ready as it needs to support --host <hostname> and --list, like the other inventory plugins, but we should get this tweaked and include it once it is standardized. Watch this space! 2013-05-29 09:58:29 -04:00
Michael DeHaan
bf309e1cd0 Merge pull request #2982 from markmandel/devel
Vagrant external inventory plugin
2013-05-29 06:56:44 -07:00
bennojoy
b16e2a1d48 OpenStack Modules 2013-05-23 07:55:05 +05:30
Mark Mandel
f2f3fb1a8e Vagrant external inventory file, to dynamically determine your vagrant vm ip. 2013-05-23 09:13:26 +10:00
Jon Miller
dc8feb799c Do not need to chmod cache file each time
This is particularly important if you've manually ensured you have write
access via group permissions and not by owner.
2013-05-21 14:44:00 -07:00
Jon Miller
5111e0c2f7 Inventory script for Spacewalk servers based on the spacewalk-reports package 2013-05-21 12:40:26 -07:00
Michael DeHaan
76723f6b37 Merge pull request #2610 from peterjanes/devel
Basic RDS support for EC2 inventory
2013-04-27 08:10:57 -07:00
Michael DeHaan
d1ac527fb1 Add note about new logging feature in example plugin. 2013-04-27 10:36:37 -04:00
Michael DeHaan
53ac0bbec2 Instantiate callback plugins only once so we can set play/task objects on them and they'll stick. 2013-04-20 09:09:35 -04:00
Jesse Keating
c47fd199bd Initial commit of rax inventory plugin
The rax inventory plugin provides a way to discovery inventory in the
Rackspace Public Cloud by way of pyrax, the official SDK. Grouping will
be done if a group:name is found in the instance metadata. When a single
host is queried all the instance details are returned with a rax_
prefix.

Because inventory plugins cannot take extra arguments, ENV variables
must be set to point to the pyrax compatible credentials file and the
region to query against.
2013-03-30 23:04:07 -07:00
Michael DeHaan
921cdaec48 Merge pull request #2402 from dparalen/ec2_inventory_hostname_check
check hostname presence
2013-03-17 07:32:58 -07:00
Jeffrey Chu
fb39c89bd2 Use environment python in nova.py 2013-03-15 22:29:16 -07:00
milan
27b8d3567e check hostname presence 2013-03-15 10:15:41 +01:00
Peter Janes
bcc2e84a4b Fix reference to parameter group name 2013-03-13 16:51:43 -04:00
Peter Janes
dd2d0dd175 Add basic inventory support for RDS instances 2013-03-13 16:43:26 -04:00
Michael DeHaan
b75b9681a8 more places to use yaml.safe_load 2013-02-23 13:34:14 -05:00
Michael DeHaan
534f004078 Merge pull request #2101 from stoned/plugins-connections-doc
pasto and core connection plugins reference fix
2013-02-16 10:41:15 -08:00
Blair Zajac
fa8e653011 Simplify and correct comparisons with None. 2013-02-16 13:32:48 -05:00
Stoned Elipot
438c77f762 pasto and core connection plugins reference fix 2013-02-16 13:40:04 +01:00
Daniel Hokka Zakrisson
f12dbd431a Don't remove invocation from the result in the log callback
Fixes #2064.
2013-02-12 22:26:30 +01:00
Tim Gerla
168fcb0a4a Only inventory "running" EC2 instances. "stopped" is also a valid state and these should not be inventoried. 2013-01-30 11:01:25 -08:00
Rodney Quillo
395093e0bf Move default arguments to the end of the function call. 2013-01-19 08:34:47 +08:00
Rodney Quillo
7ae100611c Adding default on vars_prompt 2013-01-18 19:00:57 +08:00
Peter Sankauskas
39efcd0766 While I haven't done this, it is possible to bring up an instance
without a keypair, so this takes care of that scenario
2012-11-07 16:56:45 -08:00
Peter Sankauskas
aa0434535e Adding 2 more groups of instances - instance types and key pairs 2012-11-06 16:16:52 -08:00
Dag Wieers
8323a03fa1 Improve the mail callback to support differing failures
Since callbacks are called with different argument-types, we have to be careful. We support two different distinct cases:

 - The error information can be in one ore more of the following items (msg, stderr or stdout)
 - The res/msg value returned can be a string or a list
2012-11-06 14:28:38 +01:00
Peter Sankauskas
60c69e9845 Allowing the EC2 inventory script to gracefully handle AWS API issues 2012-10-22 14:08:30 -07:00
Michael DeHaan
47c4775e94 Merge pull request #1351 from cocoy/ec2-v2
Fix check boto version bug #1280. Using try/except for AttributeError.
2012-10-16 20:16:40 -07:00
Rodney Quillo
8344511e47 Fix check boto version bug #1280 2012-10-17 10:47:28 +08:00
Dag Wieers
de34c7c133 This should set the sender properly. 2012-10-12 20:40:06 +02:00
Dag Wieers
bb58d3f20c Example plugin to send out mails on error
This is useful mostly for playbooks that run unattended and for a limited set of systems. In case of provisioninging this plugin (together with a final mail action) helps to get notified when something went wrong, or when the installation finished successfully.

Unfortunately, there is no way to enable/disable a plugin from a playbook. So installing the plugin means all other use-cases (provisioning, troubleshooting, reporting or management) all send mails on failure. Something we may want to fix in the future...
2012-10-10 17:28:00 +02:00
Michael DeHaan
d855b4bcf6 Merge pull request #1270 from jhoekx/yaml-inventory-plugin
Add a yaml format inventory plugin.
2012-10-10 05:33:33 -07:00
Marco Vito Moscaritolo
cdb8343ec6 Added documentation for nova inventory system 2012-10-09 21:44:39 +02:00
Marco Vito Moscaritolo
7fed89b51d Improved RackSpace configuration support (needed by latest version of rackspace API) 2012-10-09 21:43:58 +02:00
Jeroen Hoekx
2290dfe1ef Add a yaml format inventory plugin.
This fixes #1265.
2012-10-09 19:56:52 +02:00
Michael DeHaan
56e8863683 Update README 2012-10-08 08:04:21 -04:00
Michael DeHaan
2319c4d74f Redundant CONTRIBUTING file 2012-10-08 08:03:59 -04:00
Michael DeHaan
41dd4a1f93 Merge plugins tree 2012-10-08 07:45:25 -04:00