Commit Graph

433 Commits (708f0b07babcdea22a12e6a1b6132462b1003bc8)

Author SHA1 Message Date
Brian Coca 783dc2f0f6 errors now print to stderr 9 years ago
Francisco Ros 574163c949 Brook inventory (#15264)
* Initial work on Brook.io dynamic inventory

* Handle error cases in Brook.io dynamic inventory

* Remove defaults from brook.ini

* Update Brook.io dynamic inventory for libbrookv0.3

Use authentication api to obtain a valid JWT from an API Token.

* Remove defaults from brook.ini
9 years ago
Jorge Nerín 3a3e69f830 Fix substituting dots for underscores when using ips (#15578)
ec2.py was substituting the dots on ip addresses when not using hostnames like:
  "ec2": [
    "10_10_1_1", 

now it's:
  "ec2": [
    "10.10.1.1",
9 years ago
Matt Martz 5549292d69 Use exception as syntax in inventory, as it doesn't require py24 (#15554) 9 years ago
Brian Coca 6a983b0fc4 fixed misspelled var 9 years ago
Chris Houseknecht 221b1c9fd0 Refactored docker inventory. (#15485) 9 years ago
Chris Houseknecht 2b7f4395d6 Allow to work with latest Azure Python SDK (#15467)
* Allow to work with latest Azure Python SDK

* Fixed so that errors are sent to stderr
9 years ago
chouseknecht af5e4abf66
Rename azure inventory script. Fix bug preventing AD user login via environment vars. 9 years ago
Jerry Zhao 9278591758 add cobbler api authentication options
add cobbler api authentication options: username and password, which
can be provided if authentication is enabled or cobbler api is behind
a proxy that needs authentication.
9 years ago
chouseknecht a5bed1570e Adding new Azure inventory script. 9 years ago
David Shrewsbury 22467a0de8 Merge pull request #15232 from donovan/fix-openstack-config-file-name
add openstack.yml to CONFIG_FILES to be consistent with documentation
9 years ago
Joshua Hesketh c3ffe0a838 Allow fail_on_errors in openstack inventory
Add support for a new option to the openstack inventory. This is so
should one cloud be unavailable you can still list hosts from any
other openstack clouds you have configured.

This is exposed as an option under the extra config part of ansible
in the openstack clouds.yaml.
9 years ago
David Chan 5b81853c04 Fix CACHE_DIR mode in contrib/inventory/spacewalk.py 9 years ago
Donovan Jones 2268ea9a7f add openstack.yml to CONFIG_FILES to be consistent with documentation 9 years ago
Abhijit Menon-Sen 4db7e12898 Merge pull request #12113 from msabramo/contrib_inventory_consul_io_add_logging
Add optional logging to consul_io inventory script
9 years ago
Matt Martz bb6e05a176 Fix indentation in ovirt.py inventory 9 years ago
Abhijit Menon-Sen 9005f91bb0 Merge pull request #15068 from OwenTuz/issue-15067
Name the AWS inventory cache based on the profile in use
9 years ago
Brian Coca 6bf92e7398 Merge pull request #15037 from vladpanainte/gce_fix
remove logging warning from GCE inventory
9 years ago
Owen Tuz 3b8d753121 Avoid cache conflicts when using multiple AWS accounts 9 years ago
Brian Coca d026bc5e17 Merge pull request #14471 from willdurand/contrib-do-inventory
[contrib] Add option to define group vars in DigitalOcean dynamic inventory script
9 years ago
James Cammarata c9da48d5ba Merge branch 'destination_format' of https://github.com/a13m/ansible into a13m-destination_format 9 years ago
Brian Coca e1ee2ed5a5 Merge pull request #13550 from KrzysiekJ/connect_to_region-wrap
Use wrapped connect_to_region everywhere in ec2.py
9 years ago
Brian Coca 8838ed055c Merge pull request #14872 from bcoca/ec2_inv_page_rds
page rds instances
9 years ago
James Cammarata 93542b3666 Merge pull request #14964 from keedya/devel
Fixing bug in the output format when displaying 2 or more hosts
9 years ago
Brian Coca eceabec71f page rds instances
fix #14861
9 years ago
Toshio Kuratomi 959711b56e Merge pull request #14993 from karmab/ovirt_connection_fix
Fixes ovirt inventory to only override credentials when keys exist
9 years ago
karimb 421fb6df8b Fixes ovirt inventory to only override credentials from environment when keys exist 9 years ago
Vlad Panainte 8259c091d6 fix logging 9 years ago
Abhijit Menon-Sen ad0e707f97 Merge pull request #7395 from hkariti/ec2_hostname_variable
Add hostname_variable to ec2 inventory script
9 years ago
James Cammarata 6265d6fd2a Merge pull request #14870 from zyegfryed/patch-1
Fix filtering by project in Cloudstask inventory
9 years ago
Hagai Kariti 8a17da299f Clean up lines with only whitespaces in ec2.py 9 years ago
Hagai Kariti 53756af546 Added hostname_variable to ec2 inventory 9 years ago
Abhijit Menon-Sen f0af07a5f4 Merge pull request #14761 from enbritely/fix-ec2-inventory
Fix AWS EC2 inventory script instance_filters read
9 years ago
Clark Boylan 7d5650219d Fix openstack inventory for multiple servers
Fix openstack inventory for when we have multiple servers with the same
name but different IDs. Instead of giving every server with the same
name the details for the first server returned with that name add the
individual servers as they are returned.

This was a logic bug where in a loop over a list of servers we always
added the first server in that list despite having more than one server.
9 years ago
Andre Keedy d180e0e05f Bug Fix
-Corrected the format in case of  multiple hosts

Remove empty spaces
9 years ago
Monty Taylor 82c150b72f Detect empty cache files in openstack inventory
There are cases where it makes more sense to zero out a cache file as a
form of invalidation instead of removing it. Detect those approrpriately
9 years ago
Sébastien Fievet 83e748e315 Fix filtering by project in Cloudstask inventory 9 years ago
Brian Coca 061d35bbe3 Merge pull request #14297 from keedya/devel
Add rackHd inventory script
9 years ago
Joe 21ba6e9ce8 Do not use name `tag` for intance filter 9 years ago
Joe 5975296770 Fix AWS EC2 external inventory script config read
EC2 inventory scripts reads configuration from an INI file. The `instance_filters` option controls which EC2 instances are retrieved for inventory. Filling this option and running the inventory script with Python 3 crashes with the following error:

```python
Traceback (most recent call last):
  File "./contrib/inventory/ec2.py", line 1328, in <module>
    Ec2Inventory()
  File "./contrib/inventory/ec2.py", line 163, in __init__
    self.read_settings()
  File "./contrib/inventory/ec2.py", line 393, in read_settings
    for instance_filter in config.get('ec2', 'instance_filters', '').split(','):
TypeError: get() takes 3 positional arguments but 4 were given
```

The problem is the last parameter of config.get() call, because `fallback` keyword argument is not specified.

The fix handles epmpty `instance_filers` in case of Python 2&3
9 years ago
Monty Taylor c737bd48bc Deduplicate true duplicate entries in the openstack inventory
There are cases where the host list back from the cloud comes back
duplicated. This causes us to report those with UUIDs, which we do to
support truly different servers with the same name. However, in the case
where duplicate host entries have the same UUID, we can know it's a data
hiccup.
9 years ago
William Durand 369cb8fa9f
[contrib] Add option to define group vars in DigitalOcean dynamic inventory script 9 years ago
James Cammarata 1b3c669ebe Merge pull request #14428 from shawnsilva/linode-invscript-addips
Linode Dynamic Inventory: Add public IP's as hostvars
9 years ago
Brian Coca 3ddcabee0e Merge pull request #14093 from MatthaeusHarris/proxmox_4_inventory
Proxmox 4 inventory
9 years ago
Shawn Silva f450a4cb69 When the linode inventory is generated the linode label is used as the
inventory host. If the label isn't a FQDN ansible can't connect.
This will set the hostvars for the ansible_ssh_host to the linodes public IP.
9 years ago
Andre keedy e46074c791 Address comments 9 years ago
Andre keedy 083530d8fa Fix erros 9 years ago
Andre keedy 22382726fa Add rackHd inventory script
- Allow ansible to get hosts inventory from rackHD by node id
9 years ago
Anthony Robinson b73c7728f4 Update example vpc_desitnation_variable example with working settings 9 years ago
Brian Coca 37eac4592e added back --profile to keep backwards compat
this was broken by #12548
9 years ago
Matt Harris f8e73714f6 If the notes don't contain JSON, add the string to the notes key of _meta 9 years ago
Matt Harris e5493fa631 Added support for proxmox 4.x 9 years ago
Matthew Jones a1318e1664 Add rax cache age ini documentation 9 years ago
Matthew Jones a106382786 Add a config option for rackspace inventory cache
Adding a config and environment variable option for tuning the cache age
check in the rackspace inventory module
9 years ago
Krzysztof Jurewicz 73160e65e5 Use wrapped connect_to_region everywhere in ec2.py 9 years ago
Brian Coca 938c26d952 Merge pull request #13544 from emonty/inventory-config
Add OpenStack Inventory configuration
9 years ago
Monty Taylor 9f61144401 Optionally only use UUIDs for openstack hosts on duplicates
The OpenStack inventory lists hostnames as the UUIDs because hostsnames
are not guarnateed to be unique on OpenStack. However, for the common
case, this is just confusing.

The new behavior is a visible change, so make it an opt-in via config.

Only turn the hostnames to UUIDs if there are duplicate hostnames.
9 years ago
Monty Taylor 1f8e484b70 Fix the refresh flag in openstack inventory
Refresh will update the dogpile cache from shade, but doesn't cause
the ansible side json cache to be invalidated. It's a simple oversight.
9 years ago
Toshio Kuratomi 6472b3daee Merge pull request #13157 from fghaas/lxc
LXC inventory scripts: fix libvirt_lxc, add lxc
9 years ago
Brian Coca 2f139dad3f Merge pull request #12368 from coxley/nsot-inventory
Contrib Inventory: NSoT
9 years ago
Codey Oxley 9dcfbb1130 Removed version argument from argparse
This was breaking standalone execution and isn't needed
9 years ago
Florian Haas 0bc32cbaee Correct connection type returned by libvirt_lxc inventory script
The correct connection type for LXC containers managed via libvirt is
libvirt_lxc, not lxc.
9 years ago
Brian Coca 3952fc7f97 made python 3 compatible 9 years ago
Brian Coca 7ce4903a8b Merge pull request #12139 from amousset/rudder_inventory_plugin
Add Rudder inventory plugin
9 years ago
Abhijit Menon-Sen e6a9b2cae5 Add an expand_csv_tags setting to ec2.ini
If enabled, this will convert tags of the form "a,b,c" to a list and use
the results to create additional inventory groups.

This is based on PR #8676 by nickpeck (but not a straight rebase—both
the code and the nomenclature have been changed here).

Closes #8676
9 years ago
Brian Coca b2a9111b22 reversed the logic on new setting to control - replacment in groups as
it was wrong
fixes #13122
9 years ago
Matthew Jones faeccb4e61 Fix ec2 infinitely nested groups
The ec2 inventory module will incorrectly place parent groups as child
groups of themselves, this fixes that.
9 years ago
Jason O'Donnell 7b0e68917c Fixing typo 9 years ago
Brian Coca 2b8633cec0 Merge pull request #12855 from bcoca/ec2_inv_dash_group
make - replacement in group names optional
9 years ago
Brian Coca be82e4c614 Merge pull request #10362 from emonty/fix-kwarg
Clean up OpenStack inventory to use a cleaner interface
9 years ago
Brian Coca aac20aa076 removed unused exception vars 9 years ago
Brian Coca 07d584c0a7 make - replacement in group names optional 9 years ago
Monty Taylor cac00add8d Update to final shade inventory interface
shade has an inventory interface that is cleaner. We should use it.
9 years ago
Brian Coca 2c24fbbd6a Merge pull request #12618 from AdThrive/devel
Added an option to use the private network IP address for DigitalOcean dynamic inventory
9 years ago
Yuri Vysotskiy a2422bfb60 Added additional ini file search path into contrib/inventory/zabbix.py 9 years ago
jamarzka bdd3ae9d61 Set the default use_private_network setting to False 9 years ago
jamarzka eddfc649de Added an option to use the private network IP address
This option defaults to disabled and can be set from the digital_ocean.ini file.
9 years ago
Will Thames b0133d9c8f Move connection handling failure to connect_to_aws
Make use of better error handling mechanism
9 years ago
Jameel Al-Aziz 57754b5a71 Fix security_token typo in ec2 inventory 9 years ago
Jameel Al-Aziz e7890e66f3 Combine ansible/ansible#5987 and ansible/ansible#8582
Fixes merge conflicts and standardizes option naming
9 years ago
Jeff '2 bits' Bachtel 8c11ea5666 Add an ec2 inventory option "boto_profile" that allows
the use of boto profiles for separating credentials as
specified in

http://boto.readthedocs.org/en/latest/boto_config_tut.html
9 years ago
willthames 9c967dd054 Allow ec2 inventory to use a boto profile
This allows the EC2 inventory plugin to be used with
the same configuration against different EC2 accounts

Profile can be passed using --profile variable or using
EC2_PROFILE environment variable e.g.

```
EC2_PROFILE=prod ansible-playbook -i ec2.py playbook.yml
```

Added documentation on profiles to EC2 dynamic inventory doc

Only tries to use profiles if --profile argument is given
or EC2_PROFILE is set to maintain compatibility will boto < 2.24.

Works around a minor bug in boto where if you try and use
a security token with a profile it fails (boto/boto#2100)
9 years ago
Ferry Boender c6c3ce6616 Output proper JSON from vbox dynamic inventory contrib script 9 years ago
Toshio Kuratomi 3db8070aa3 Fix urlopen usage to use open_url instead
Add a travis test for urlopen usage
9 years ago
Codey Oxley 15915bb3ca NSoT Inventory: python2.7 -> python shebang 9 years ago
Codey Oxley c05970df2c Added NSoT Inventory script to pull from Device resources 9 years ago
Toshio Kuratomi c1039de70c Compatibility with six-1.3.0 9 years ago
Marius Gedminas 0eb0b56722 Replace type() checks with isinstance()
Fixes the bug I introduced in my previous commit (six.string_types is
(basestring,) on Python 2).  Thanks @abadger for noticing!
9 years ago
Marius Gedminas 37be9539ff Python 3: use six.text_type instead of unicode
Replace 'unicode' with six.text_type, everywhere but in module_utils.
9 years ago
Marius Gedminas 823677b490 Replace .iteritems() with six.iteritems()
Replace .iteritems() with six.iteritems() everywhere except in
module_utils (because there's no 'six' on the remote host).  And except
in lib/ansible/galaxy/data/metadata_template.j2, because I'm not sure
six is available there.
9 years ago
James Cammarata ae865b9480 Merge pull request #12150 from opoplawski/cobbler
Fix setting dns_name in cobbler inventory
9 years ago
Jonathan Lestrelin d56165b7f9 Add Nagios NDO inventory plugin 9 years ago
Orion Poplawski 3b17efe5bc Fix setting dns_name in cobbler inventory 9 years ago
Alexis Mousset cc95068dc9 Add Rudder inventory plugin 9 years ago
Marius Gedminas 3f9879aedb Use print() as function under contrib/
This fixes the remaining Python 3 syntax errors, so re-enable compileall
for contrib/ again.
9 years ago
Marius Gedminas 9ae66a7f5c Use 'except ... as' syntax in contrib/ and test/ too 9 years ago
Marius Gedminas df1b41d3d3 Avoid types.NoneType
types.NoneType was removed in Python 3.

None is a singleton in Python, so 'x is None' is equivalent to
'isinstance(x, NoneType)'.
9 years ago
Marc Abramowitz 7bdc3cdb15 Add optional logging to consul_io inventory script
Configured with environment variables -- e.g.:

    ANSIBLE_INVENTORY_CONSUL_IO_LOG_ENABLED=1 ANSIBLE_INVENTORY_CONSUL_IO_LOG_LEVEL=DEBUG /path/to/consul_io.py --list

This gives some verbose logging, including showing all HTTP requests being
made, which I am finding useful, as I am trying to improve the performance of
this script.
9 years ago
Brian Coca 86100da3a0 Merge pull request #11446 from cchurch/windows_azure_from_tower
Updates to Windows Azure inventory from Tower.
9 years ago
Brian Coca 1d402ae390 set script as executable 9 years ago
Tom Berger 8a61303c88 Move the cache file to ~/.ansible/tmp.
A future branch might make it configurable.
9 years ago
Tom Berger 07a4076d12 Name cache file by relevant regions - they might change between calls.
Also, use old school string interpolation so that the plugin is compatible with
Python < 2.7.
9 years ago
Tom Berger cd1125aac2 Save the cache in a file specific to the RackSpace account in use. 9 years ago
Tom Berger 804489f734 Cache the results for the RackSpace dynamic inventory. 9 years ago
Chris Church 4ccdb81bf5 Updates to Windows Azure inventory script from Tower. Includes changes from https://github.com/ansible/ansible/pull/8403. 9 years ago
Chris Church da56312322 Openstack inventory updates from Tower. Includes changes from https://github.com/ansible/ansible/pull/10491 and https://github.com/ansible/ansible/pull/10776. 9 years ago
James Cammarata e2a8a68c85 Cleaning up some debugging/commented code from #11709 9 years ago
dmccue 54bab2c47e fixed issues with output format and order key 9 years ago
dmccue ba6b89a5b1 adjusted output behavior 9 years ago
dmccue 0ab970da98 support for _meta retrieval 9 years ago
Brian Coca ebfd99e307 Merge pull request #8870 from photoninger/spacewalk_organizations
Add support for multiple organizations in spacewalk.
9 years ago
Marcos Garcia 7bd1749f48 Bug #11830, keep working even if we use private_networking 9 years ago
Bernhard Lichtinger aa1e00e8e7 Forgot to use commit -a to submit all changes... 9 years ago
Bernhard Lichtinger 38ff797d57 Added support for ini-file.
Added _meta dictionary with hostvars in --list json output.
9 years ago
Bernhard Lichtinger 13198c199e Add support for multiple organizations in spacewalk. 9 years ago
Tomas Karasek bb6a327c1b fix ssh_config inventory plugin to work with paramiko 1.7.2 till 1.15.2 9 years ago
Brian Coca b8336f222d Merge pull request #11560 from oscarhealth/devel
ability to specify any combination of EC2 instance states to return
9 years ago
Brian Coca d75b4cd190 Merge pull request #11006 from alexlo03/ec2_inventory_clear_errors
explain source of EC2 inventory error
9 years ago
Brian Coca d276b69b2a put proxmox inventory in correct dir and added to changelog 9 years ago
Andy Grimm 009d0a4bb4 Flexible tag-based naming for ec2 hosts
Introduces destination_format and destination_format_tags
to allow the construction of host names based on one or
more ec2 tags and a python format string.
9 years ago
Brian Coca 0c21196633 moved openvz inventory script to new home 9 years ago
Andrew Hamilton 7f45c9edf7 Have ec2.py expand tilde and vars when looking up the EC2_INI_PATH env variable 9 years ago
Igor Khomyakov 8113409d34 Refactored.
Paramiko module is used to parse ssh_config.
Added multi-vm support
Added "_meta" element https://docs.ansible.com/ansible/developing_inventory.html#tuning-the-external-inventory-script
9 years ago
Mathieu Lecarme 1873e8ed08 GCE tag prefix for creating ansible group. 9 years ago
Jens Carl db4f6b8878 Fix to handle user directory correctly (e.g. ~/.ansible/tmp). 9 years ago
Alex Lo 7092021d81 simplify variable names 9 years ago
Alex Lo 17b94cf139 generalize error context reporting, add elasticache explanations 9 years ago
Alex Lo 610223fbf4 explain source of EC2 inventory error
https://github.com/ansible/ansible/issues/10840
before
RDS: `ERROR: Inventory script (ec2.py) had an execution error: Forbidden`
EC2: `ERROR: Inventory script (ec2.py) had an execution error: Error connecting to AWS backend.
You are not authorized to perform this operation.`
after
RDS: `ERROR: Inventory script (ec2.py) had an execution error: ERROR: "Forbidden", while: getting RDS instances`
EC2: `ERROR: Inventory script (ec2.py) had an execution error: ERROR: "Error connecting to AWS backend.
You are not authorized to perform this operation.", while: getting EC2 instances`
9 years ago
Jason Young e0a5003b27 ability to specify any combination of EC2 instance states to return 9 years ago
Brian Coca 9c5a6d7b5a fixed all references to old plugins/inventory to point at contrib/inventory 9 years ago
Carlos E. Garcia 657495d13f minor spelling changes 9 years ago
Brian Coca 0bbf5927be added executabel bit to nova and rax inventory plugins 9 years ago
Brian Coca d0c6d2ff1c poreted log_plays, syslog_json and osx_say callbacks to v2
renamed plugins to contrib (they are not really plugins)
rewrote README.md to reflect new usage
added new dir to setup.py so it gets copied with installation, in views
of making using inventory scripts easier in teh future
9 years ago