Commit graph

466 commits

Author SHA1 Message Date
Sloane Hertel 982a36c915 Update contrib script documentation (#58883)
* Update contrib script documentation - new inventory solutions should be plugins, not scripts
2019-07-10 13:38:31 -05:00
Gonéri Le Bouder 2401154fc4 VMware: rename VMWare to VMware (#58535)
Follow the nomenclature convention decided in https://github.com/ansible/ansible/pull/56814
2019-06-30 19:30:42 +05:30
lju 60378e991b Fix ec2.py dynamic inventory script when pulling down RDS cluster information (#48075)
* Fixes #26481

* Pass lint tests
2019-06-25 20:48:26 +10:00
Rowin Andruscavage 896b84bfbe VMware: Python3 migrations for vmware_inventory.py (#47538)
* Sort and pretty print json output and cache file
* Enable Python3 test for vmware_inventory.py

Fixes: #46727

Signed-off-by: Rowin Andruscavage <8740187+MTN-RowinAndruscavage@users.noreply.github.com>
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-06-25 15:40:13 +05:30
Ryan Kraus 7d4e3af11e Add Python 3 support to ovirt4 inventory script. (#57824)
Python 3 only allows strings through the config parser. This is fine for 
the URL, Username, and Password since these values are required. The CA 
File is optional so an empty string is used in leiu of None in the 
config dictionary.
2019-06-21 12:05:45 -04:00
Arnaud 6b240433b6 Update vagrant.py (#56568)
`inventory_file` has been renamed to `inventory_path`.
2019-05-20 14:30:57 -05:00
junji hashimoto c3e50db1d5 Renamed SafeConfigParser to ConfigParser in gce inventory script (#54974) 2019-04-10 09:52:26 -04:00
Sam Doran 3cd98a9fcc Use ansible.module_utils.six in inventory scripts (#55000)
* Use six from ansible.module_utils for inventory scripts

Remove skips from sanity test

* Change all imports of ConfigParser to use module_utils.six.moves

* Remove commented out lines

* Fix six imports
2019-04-09 13:17:59 -04:00
Alan Rominger d930eaf7d8 Use six.moves to import configparser in cloudforms script (#54465) 2019-04-08 13:15:17 -04:00
mmartinv eebebb1a83 Fix ovirt4.py inventory file for oVirt 4.3 (#54338)
ovirt4.py inventory file fails with oVirt 4.3 with the following error:
Traceback (most recent call last):
  File "inventory/ovirt", line 259, in <module>
    main()
  File "inventory/ovirt", line 250, in main
    vm_name=args.host,
  File "inventory/ovirt", line 209, in get_data
    vms[name] = get_dict_of_struct(connection, vm)
  File "inventory/ovirt", line 178, in get_dict_of_struct
    (stat.name, stat.values[0].datum) for stat in stats
  File "inventory/ovirt", line 178, in <genexpr>
    (stat.name, stat.values[0].datum) for stat in stats
IndexError: list index out of range
2019-03-28 20:55:40 +00:00
Dag Wieers c2fb581414 Fix various sonarcloud issues
This fixes various reported bugs through sonarcloud at:
https://sonarcloud.io/project/issues?id=Rodney-Reis_ansible&resolved=false&types=BUG
2019-02-15 07:19:04 -08:00
Matt Clay 3e778d3f8f Fix pycodestyle E117 issues. 2019-02-13 23:35:39 -08:00
Abhijeet Kasurde 28284c23a9 VMware: debug property values (#45410)
This fix adds additional information about VM properties

Fixes: #43618

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-02-04 15:12:48 +00:00
Jonathan Hanson 468588d3f8 inventory: vagrant: rename deprectated ansible_ssh_* (#50694) 2019-01-09 10:44:15 +01:00
Dan Nicholson 3ada56e2b1 Skip non-management Packet IP addresses (#48168)
Non-management (elastic) IP addresses require manual configuration on
the host as described in https://help.packet.net/article/54-elastic-ips.
Skip those so that only the automatically configured management
addresses are used. Otherwise, a non-routable address may be returned in
the inventory.
2018-12-20 12:06:11 +00:00
Eric Miller 4d0f2e632c Docker inventory service/stack groups for docker swarm (#48021)
* Adding service and stack grouping to docker inventory

* Updating documentation

* Adding changelog fragment for docker.py inventory script
2018-12-17 11:58:26 +00:00
Toshio Kuratomi 175f3b51e5 Ensure that current uses of BaseException are required
* In some cases, it appears that Exception should have been used instead
  as there's no need to catch sys.exit KeyboardInterrupt and similar.
* In a few cases, it appears that BaseException is used because
  a library we depend on calls sys.exit() contrary to good coding
  design.  Comment those so that we know that those have been audited
  and found to be correct and change to use (Exception, SystemExit)
  instead.
2018-12-16 15:03:19 -08:00
Toshio Kuratomi 3fba006207 Update bare exceptions to specify Exception.
This will keep us from accidentally catching program-exiting exceptions
like KeyboardInterupt and SystemExit.
2018-12-16 15:03:19 -08:00
Stef Fen 9dc36fcaf0 Fix AWS STS session detection (#49536)
If CLI has already assumed a IAM Role, then the cli environment has an additional variable: AWS_SESSION_TOKEN
This needs to be forwarded to boto to successfully reuse the AWS session in boto.
2018-12-06 09:53:53 +10:00
Pierre-Yves Ritschard bd1050dfc7 cloudstack: inventory: consider more keys optional (#49364) 2018-12-01 02:00:41 +01:00
Filippo125 238786c0d3 zabbix inventory: options to read per each host and set ansible_ssh_host (#44107) 2018-12-01 01:49:57 +01:00
Keith Resar 43affc661b add want_ssh_ansible_host flag to foreman dynamic inventory (#34169) 2018-11-15 15:58:34 -05:00
Yunge Zhu 3793bcf481 update doc in contrib\inventory\azure_rm.py (#46939)
* add inventory note

* typo
2018-11-14 15:42:38 -08:00
Austin Hobbs 6c94c28a12 Ansible Vault and Azure Key Vault vault password script (#44544)
* added new vault password files that can be used with Azure Key Vault

* fixed pylint errors

* fixed pep 8 violations
2018-11-06 15:07:28 -05:00
milo-minderbinder 77d73808e6 fix setting config with DOCKER_CONFIG_FILE (#23096)
Fixes #23095

Fixed issue preventing a caller from setting a docker
configuration file (e.g. docker.yml) by specifing the
config file path in the `DOCKER_CONFIG_FILE` environment
variable. Previously, the cli argument parser set a default value for
the `--config-file` argument which would prevent ever checking the
environment variable, regardless of whether or not the `--config-file`
argument even specified a valid file.

This commit adds a global `DEFAULT_DOCKER_CONFIG_FILE` variable, which
points to the current default `docker.yml` config in the
contrib/inventory directory. Now, when this script is called from the
command line, the config file passed with the cli `--config-file` arg
will be given the highest precedence; if it is absent, this script will
then check if the `DOCKER_CONFIG_FILE` env var is set, and load the
config file specified if possible. If neither the environment variable
or cli argument are specified, then the script will attempt to parse the
config file `docker.yml` in this script's directory (if present).

If either the `DOCKER_CONFIG_FILE` environment variable or the
`--config-file` argument are given but point to a nonexistant file, then
the script will print an error message and exit with an error code.

It is *not* an error condition if the fallback `docker.yml` does not
exist.
2018-10-30 15:39:32 -04:00
jctanner 1ded3f9890
Handle non-ascii characters in foreman.py (#46779)
* Handle non-ascii characters in foreman.py

* Add test to validate non-ascii results
2018-10-15 21:40:51 -04:00
Matt Clay a11f631ee4 Python 3.8 collections compatibility fixes.
Includes a new pylint blacklist plugin to prevent regressions.
2018-10-08 11:26:37 -07:00
VitSkakun aaa3b2dc2d fix digitalocean inventory tags endpoint (#46192) 2018-10-06 22:20:11 -04:00
Abhijeet Kasurde 0ecbd50c3b Misc typo fixes (#45969)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-09-21 14:43:22 +01:00
Larry Singer 17ca0a9bd9 The keyword 'cloud' has been deprecated in favor of the 'profile' keyword by os-client-config. (#31389) 2018-09-20 11:31:19 -05:00
jamiesonio 6711c9524e Add environmental variables to allow for the script to be run without consul_io.ini. This allows it to run dynamically without any prerequisite config file (#30900) 2018-09-19 18:19:35 -04:00
Paul Czarkowski caf658b420 Fix bugs in softlayer dynamic inventory (#28178)
* --host hostname did not work due to calling wrong function

* softlayer api returns a bunch of extra stuff in the tagReference dict that
  makes --list output crazy long, like over a terminal buffer for just one server
  this culls out the extranneous information and only inserts the actual user
  provided tags to each server.
2018-09-19 18:10:15 -04:00
ABond 65c9090714 DigitalOcean inventory deprecation warning (#45054)
Handle DeprecationWarning for ConfigParser in python3

Fixes #45053
2018-09-05 07:16:03 +05:30
Simon Wydooghe 505ce6ccf6 ec2 inventory: python 3.7 compatibility (#43716)
ec2 inventory script was throwing errors when using Python 3.7:

TypeError: option values must be strings

This changes the None ConfigParser options to empty strings instead.
2018-09-05 09:27:35 +10:00
Max Cameron cf1006179d Fixes ec2.py assume_role. (#37357)
* Fixes ec2.py assume_role

Previously when connect_to_aws was called it updated the credentials in place.  "connect_to_aws" is called multiple times: on the second run it tries to assume the same role it is already using, and potentially failing depending on your iam policies.
2018-09-04 09:43:58 -04:00
Yves Martin 2f9a5a75a8 Update vault-keyring to ConfigManager internals (#41967)
Fix failure since ConfigManager changes
2018-08-22 13:09:22 -04:00
Miguel C fa8154db40 Fix #43917 (#43929)
Support upper/lower case resource groups
2018-08-13 12:24:13 +08:00
Matt Martz c1c229c6d4
Remove use of simplejson throughout code base (#43548)
* Remove use of simplejson throughout code base. Fixes #42761

* Address failing tests

* Remove simplejson from contrib and other outlying files

* Add changelog fragment for simplejson removal
2018-08-10 11:13:29 -05:00
Etienne Deneuve 379fb87b44 add group_by_os_family in azure dynamic inventory (#40702) 2018-08-09 17:00:17 +08:00
Abhijeet Kasurde e364d717cb
VMware: remove unused imports (#43804)
Idea taken from https://github.com/ansible/ansible/pull/43402

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-08-09 10:34:55 +05:30
Joren Vrancken b954917761 Surround top-level function and class definitions with two blank lines. 2018-07-31 12:06:56 -07:00
Alan Rominger fa45c44026 Update openstack inventory script to keep basic functionality (#43432)
re-applies commit 6667ec4474 which
fixed the plugin to the script so that it will work with current
ansible-inventory.

Also redirect stdout before dumping the ouptput, because not doing
so will cause JSON parse errors in some cases.
2018-07-30 16:38:05 -07:00
Theodotos Andreou bc9a40b32d scaleway: initialise auth_token to none (#43183)
Fixes: #43132
2018-07-24 12:40:17 +05:30
tod-uma 1a0330488f VMware: blacklist custom fields in vmware_inventory.py (#36877)
* Provide the ability to blacklist custom fields from having groups created for them.

* Updated configuration parameter name
2018-07-18 21:39:16 +05:30
Filippo125 5864871fc1 Zabbix inventory improvement (#42669)
* Add validate_certs option to zabbix inventory

* Add validation option

* Fix pep8

* Add changelog
2018-07-14 09:10:16 -04:00
Marcos Alano 82b050e6b8 Changed 'all' group to 'scaleway' group to avoid conflict with real 'all' group. Closes ##35092 (#42367) 2018-07-05 13:57:02 -04:00
smutel f7dbf581b1 Name of global custom attributes are not managed by the inventory (#41786) 2018-07-05 14:18:20 +05:30
Yuwei Zhou 60ea14fe1f Retrive subscription id from env (#42036) 2018-06-28 17:00:21 +08:00
Abhijeet Kasurde c68aa804c4 Remove redundant API method from foreman inventory (#41720)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-06-21 11:09:03 +10:00
Monty Taylor 16fb74ffb3
Fix openstack inventory script for multi-cloud case (#41664)
The shift to openstacksdk left us with a bug in that when running bare
with --list, the cloud argument to get_one is None. We just need _one_
of the clouds to pull the cache settings, since they are global (yet,
we'll go back and fix this in sdk)

If it's None, just use get_all and grab the first one.
2018-06-18 15:41:15 -05:00