Commit graph

281 commits

Author SHA1 Message Date
Toshio Kuratomi
6bad4e57bd Migrate most uses of if type() to if isinstance()
Also convert those checks to use abcs instead of dict and list.

Make a sentinel class for strategies to report when they've reache the end
2017-04-04 08:17:20 -07:00
Wayne Witzel III
1a1e12cf46 fetch spacewalk.ini from the environment if set 2017-04-03 21:22:29 -07:00
Tim Rupp
2d8c5e6b8f [openstack] Adds the non-deprecated ansible_host var (#23153)
OpenStack dynamic inventory is still using the deprecated
ansible_ssh_host. This patch adds ansible_host until such
time as ansible_ssh_host is removed
2017-04-03 16:02:54 -04:00
rafstef
25019fe70c Fix vmware property filter (#23228)
Fixes errors on properties that do not exist.
2017-04-03 15:22:58 -04:00
Matt Martz
495a1340a6 Address lxd inventory pep8 error (#23021) 2017-03-27 20:12:17 -05:00
Francisco Ros
0fa797030e Brook inventory (#16122)
* Do not ask for templates in Brook inventory if they do not exist

* Add availability zone variable to Brook inventory

* Add provider id variable to Brook inventory

* Error output sent to stderr in Brook inventory
2017-03-27 14:54:33 -04:00
Andrew Clarke
73438de862 A basic lxd dynamic inventory script (#15848)
* A basic start on an lxd dynamic inventory script

The script is a fairly basic start on an lxd dynamic inventory script. Only tested on ubuntu 16.04 and currently only reports ipv4 container addresses. Improvements to come.

* Updated formatting, indenting and python3 support

Updated to work on python3

* Additional options read from the ini file

Added options for connection and group to the ini file and modified to use these.

Host returned is now the name by default. For non-lxd connection, the ansible_host var is populated with the ip address.

* Additional options for group and connection

* Minor change to re-run tests
2017-03-27 14:52:23 -04:00
Toshio Kuratomi
2fff690caa Update module_utils.six to latest (#22855)
* Update module_utils.six to latest

We've been held back on the version of six we could use on the module
side to 1.4.x because of python-2.4 compatibility.  Now that our minimum
is Python-2.6, we can update to the latest version of six in
module_utils and get rid of the second copy in lib/ansible/compat.
2017-03-23 13:35:05 -07:00
Steve Kuznetsov
6318229bc4 Only read EC2 regions_exclude list if necessary (#18720)
When specifying a literal whitelist of AWS EC2 regions in the dynamic
inventory configuration file, it should not be necessary to also include
a literal blacklist, especially as the blacklist is not honored in this
case anyway. By reading the literal blacklist only when necessary, it is
possible for a user to provide a more minimal EC2 configuration file.

Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
2017-03-22 09:31:58 -04:00
Rune T. Sorensen
6804d69557 [cloud][contrib] IAM role support for EC2 dynamic inventory (#15196)
* EC2 inventory can now connect using an IAM role

* Fix comment indentation

* Make sure that Ec2Inventory.iam_role is always defined

* Add missing import
2017-03-20 17:19:40 -04:00
jctanner
447bb2b150 Add a custom regex_match filter to the vmware_inventory script (#21488) 2017-03-17 21:25:00 -04:00
Markus Liljedahl
67dc8c146e Added support for specifying zone for gce dynamic inventory (#20938) 2017-03-16 08:28:30 -04:00
William Holroyd
4ca7726e75 Fix Elasticcache issue where ec2 script would fail on finding lack of primary endpoint address on Redis cluster (#20190) 2017-03-10 13:08:54 -05:00
Ondra Machacek
0433be33bd ovirt: dyn_inventory fix Python2 and Python3 compat (#22453) 2017-03-10 08:48:29 -05:00
Matt Davis
cbedc4a12a azure_rm inventory version comparison fix (#22341) 2017-03-06 15:44:42 -08:00
Damien
2376d891c7 [inventory/aos] Few fixes and small tweaks (#22259)
* Add ads server itself as an host in the inventory

* Comment all value in example

* Add Id in variable list per device

* Centralize code to add device status to variables

* Fix device variable name for blueprint
2017-03-03 19:38:46 +00:00
Damien
8032c9a715 Clean up group name before creation to remove spaces etc .. (#22020) 2017-03-01 11:20:28 +00:00
René Moser
87119479d8 cloudstack: fix pep8 cloudstack inventory (#22092) 2017-02-28 19:14:03 +01:00
Matt Clay
dd9a39b27b Make sure all inventory scripts are executable. 2017-02-22 20:31:28 -08:00
Damien
0141c0c336 inventory/Aos - Add session information to group all variables (#21719)
* Add aos.session information to group all variables

* Revert IP address change

* Remove space in empty line for PEP8
2017-02-22 16:45:49 -05:00
Brian Coca
5258e6d52a use safe load instead
fixes #21724
2017-02-21 17:45:46 -05:00
Daniel Lobato García
01436cf186 Add Foreman inventory (#19510)
This commit adds the foreman inventory based on
https://github.com/theforeman/foreman_ansible_inventory
and its configuration file.
2017-02-21 09:21:22 -08:00
Roman Belyakovsky
aa6585942e Fix for crash on missing privileges, closes #21051 (#21518) 2017-02-21 08:53:40 -05:00
Loïc Blot
d144cf9c27 vmware_inventory: permit to skip nopermission error on host subkeys (notify user in debug mode) (#21663)
example use case: you have rights on guest but you cannot see the VMWare host

Signed-off-by: nerzhul <loic.blot@unix-experience.fr>
2017-02-21 08:51:23 -05:00
Alex Trevino
0d060a185f Allow ec2.py to be imported (#21637) 2017-02-20 15:19:05 -05:00
Matt Clay
3f91e3531a Fix py3 issue in nagios_livestatus inv script. (#21687)
* Fix py3 issue in nagios_livestatus inv script.
* Fix PEP 8 issues.
2017-02-20 11:52:47 -08:00
Yannig
5d0805b25a Add Nagios livestatus inventory plugin. (#12342)
* Add Nagios livestatus inventory plugin.

* Add new capabilities for the nagios_livestatus inventory:
- host_field: set the name returned (default: 'name')
- group_field: set the field used for group (default: 'groups')
- host_filter: filter host using this filter (default: None)

To be more consistent, prefix was renamed into var_prefix.

* Fix py34 runtests errors against print call.
2017-02-20 13:44:07 -05:00
rafstef
8acb6417cb [cloud][inventory] Let ec2.py be renamed and search for a matching .ini file (#21567)
With this proposed PR, we want to make the use of many ec2 dynamic inventory files more flexible.
We are using multiple AWS accounts. We want to use different ini file (one for every account) and only one ec2.py.
2017-02-20 13:38:41 -05:00
Brian Coca
e4022906d3 manually integrated from PR #10350 2017-02-20 13:36:58 -05:00
Damien
4d4fdb3500 inventory/apstra_aos - Add a new output format when a blueprint name is provided (#21434)
* Add a new output format when a blueprint name is provided

* Add author name
2017-02-17 20:26:53 -05:00
Ryan S. Brown
3c25a39b3e [cloud][aws] Use binary read for inventory cache file 2017-02-16 09:42:46 -05:00
Alex Trevino
413dfa7273 [cloud][aws] Use with statement for file rw in EC2 dynamic inventory (#21390)
* Use with statement when doing rw on files

* Deserialize file-like object directly instead of a string

For python 2/3 compatibility reasons, per PR feedback.
2017-02-16 09:41:55 -05:00
Jonathan McCall
047ed2728c Pass boto_profile to get_route53_records (#14354)
* Pass boto_profile to get_route53_records

* Add conditional around r53_conn to check for boto_profile
2017-02-16 08:49:47 -05:00
Ian White
80bc7048bd Feature: adding route53_hostnames option to set the hostnames from route 53 (#20909)
* adding route53_hostnames option to set the hostnames from route 53

* checking whether the route53_hostnames option is present as suggested by @s-hertel

* setting route53_hostnames to None when config option not present

* skip the to_safe only when using route53_hostnames option, as suggested by @ryansb

* skipping the to_safe strip only for the hostnames that came from route53 as suggested by @ryansb
2017-02-14 10:50:41 -05:00
gregorydulin
cf424f0413 [cloud] Add group_by_instance_state to EC2 Dynamic Inventory (#20430) 2017-02-14 10:27:19 -05:00
Allan
e246bd10ac Update nsot.py (#19421)
To make this compatible with NSoT v1.x, removing ['data']['devices'].
2017-02-10 19:46:55 +00:00
Damien
a995fa43a6 New dynamic inventory for Apstra AOS (#21045)
* Initial release of dynamic inventory for AOS
2017-02-09 13:10:36 -05:00
Ryan S. Brown
9794bd8c35 [cloud][docs] Add more EC2 dynamic inventory stack_filter docs 2017-02-09 09:13:10 -05:00
Ilya Kalinin
259b05dd8e [cloud] Add stack_filters option to EC2 inventory script 2017-02-09 09:13:10 -05:00
Justin Mayer
fda131504b Support multiple vault passwords in keyring script
Allows users to specify a key name in a given project’s `ansible.cfg`
file and thus handle keyring integration with vaults with different
passwords. If no key name is specified, the original default `ansible`
key name will be used.

Other improvements:

* `username` is now optional; defaults to user that invokes the script
* change string interpolation to new `.format()` style
* clean up and expand upon documentation
* enforce PEP 8 compliance
2017-02-08 16:05:36 -05:00
Matt Martz
5942de603d Legacy pep8 clean fixes for contrib and hacking (#21081) 2017-02-07 09:49:55 -06:00
Matt Martz
39ea50b731 pep8 fixes for recent packet_net inventory (#21066) 2017-02-06 11:10:58 -05:00
Tomáš Karásek
db8fd95d68 Dynamic inventory for Packet host (https://packet.net) (#20635)
* Add dynamic inventory script and config for Packet.net

* The script and config have been shamelessly cargo
  culted from the `ec2.py` and `ec2.ini` dynamic inventory
  script.
* This is an initial version and could very well be
  enhanced and made better.

Examples:

`PACKET_NET_API_KEY=<MY_AUTH_TOKEN> --list` to get inventory for
all hosts in Packet.net in all projects (defaults to `--list`
if no argument provided).

`PACKET_NET_API_KEY=<MY_AUTH_TOKEN> --host HOST` to get variables
for a single host.

* improvements in Packet host dynamic inventory
2017-02-06 09:56:17 +00:00
Matt Clay
e401b4e424 PEP 8 fix. 2017-02-01 08:24:31 -08:00
Naoya Nakazawa
31db1bcd34 ec2.py support region auto (#15427) 2017-02-01 09:08:15 -05:00
Will Thames
d6ea400efb Improve boto profile handling for EC2 inventory (#20280)
Ensure command line profile argument and AWS_PROFILE environment variable
overrides config file
Remove unnecessary `lambda` function
Fix cache file path construction to be more pythonic (and windows-ready)
2017-01-31 09:35:45 -05:00
Matt Clay
f80224f828 PEP 8 E111 cleanup. 2017-01-30 20:18:50 -08:00
Matt Clay
cb76200c7d PEP 8 E111 & E114 cleanup. (#20838) 2017-01-30 15:01:47 -08:00
Matt Clay
10d9318de7 PEP 8 indent cleanup. (#20800)
* PEP 8 E121 cleanup.

* PEP 8 E126 cleanup.

* PEP 8 E122 cleanup.
2017-01-29 07:28:53 +00:00
Matt Clay
e2c0b375d3 PEP 8 cleanup. (#20790)
* PEP 8 E115 cleanup.
* PEP 8 E131 cleanup.
2017-01-28 01:39:40 -08:00