Commit graph

472 commits

Author SHA1 Message Date
Mads Jensen
a0e6bf366e Use context manager for file handling in misc files. (#65372)
The file handles are left open in those files.
2019-12-21 13:01:38 +01:00
Samir Jha
db709488bd Update foreman inventory to use foreman's inventory report (#62438) 2019-12-03 15:11:40 -07:00
René Moser
712abfd1a1
cloudstack: exoscale: fix boilerplate (#63532) 2019-10-19 09:37:23 +02:00
Felix Fontein
3290b8343c
docker: fix sanity errors (#60047)
* Remove sanity check errors.

* More linting.

* Forgot to update places.

* Remove choices which aren't provided in argspec.
2019-08-09 23:50:11 +02:00
Gonéri Le Bouder
06c7b87613 vmware_inventory: do not ignore validate_certs
Python 2.7.9 < does not have the `ssl.SSLContext` attribute. If
`validate_certs` is `True`, we cannot validate the SSL connection,
and we need to raise an error.
2019-07-26 10:35:12 +02:00
Abhijeet Kasurde
4b152235ff
Typo fixes (#59227)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-07-19 18:18:14 +05:30
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