Commit Graph

45 Commits (dfaa72297ccec757aed0c6eeaadaa0188e8ec34f)

Author SHA1 Message Date
Evert Mulder bd061fd632 BUGFIX updating existing managed filters fails (#56631) 2019-05-20 06:26:27 -04:00
Evert Mulder 39445786ff Bugfixes when removing a tenant- Module reported changed when tenant was not removed.- Script error when removing a non existing tenant without parent_id (#55110) 2019-04-12 13:25:33 -04:00
Evert Mulder daaea17801 Fixed incorrect response removing a group (#55116) 2019-04-12 13:25:18 -04:00
James Cassell bc4ef99533 standardize TLS connection properties (#54315)
* openstack: standardize tls params

* tower: tower_verify_ssl->validate_certs

* docker: use standard tls config params

- cacert_path -> ca_cert
- cert_path -> client_cert
- key_path -> client_key
- tls_verify -> validate_certs

* k8s: standardize tls connection params

- verify_ssl -> validate_certs
- ssl_ca_cert -> ca_cert
- cert_file -> client_cert
- key_file -> client_key

* ingate: verify_ssl -> validate_certs

* manageiq: standardize tls params

- verify_ssl -> validate_certs
- ca_bundle_path -> ca_cert

* mysql: standardize tls params

- ssl_ca -> ca_cert
- ssl_cert -> client_cert
- ssl_key -> client_key

* nios: ssl_verify -> validate_certs

* postgresql: ssl_rootcert -> ca_cert

* rabbitmq: standardize tls params

- cacert -> ca_cert
- cert -> client_cert
- key -> client_key

* rackspace: verify_ssl -> validate_certs

* vca: verify_certs -> validate_certs

* kubevirt_cdi_upload: upload_host_verify_ssl -> upload_host_validate_certs

* lxd: standardize tls params

- key_file -> client_key
- cert_file -> client_cert

* get_certificate: ca_certs -> ca_cert

* get_certificate.py: clarify one or more certs in a file

Co-Authored-By: jamescassell <code@james.cassell.me>

* zabbix: tls_issuer -> ca_cert

* bigip_device_auth_ldap: standardize tls params

- ssl_check_peer -> validate_certs
- ssl_client_cert -> client_cert
- ssl_client_key -> client_key
- ssl_ca_cert -> ca_cert

* vdirect: vdirect_validate_certs -> validate_certs

* mqtt: standardize tls params

- ca_certs -> ca_cert
- certfile -> client_cert
- keyfile -> client_key

* pulp_repo: standardize tls params

remove `importer_ssl` prefix

* rhn_register: sslcacert -> ca_cert

* yum_repository: standardize tls params

The fix for yum_repository is not straightforward since this module is
only a thin wrapper for the underlying commands and config.  In this
case, we add the new values as aliases, keeping the old as primary,
only due to the internal structure of the module.

Aliases added:
- sslcacert -> ca_cert
- sslclientcert -> client_cert
- sslclientkey -> client_key
- sslverify -> validate_certs

* gitlab_hook: enable_ssl_verification -> hook_validate_certs

* Adjust arguments for docker_swarm inventory plugin.

* foreman callback: standardize tls params

- ssl_cert -> client_cert
- ssl_key -> client_key

* grafana_annotations: validate_grafana_certs -> validate_certs

* nrdp callback: validate_nrdp_certs -> validate_certs

* kubectl connection: standardize tls params

- kubectl_cert_file -> client_cert
- kubectl_key_file -> client_key
- kubectl_ssl_ca_cert -> ca_cert
- kubectl_verify_ssl -> validate_certs

* oc connection: standardize tls params

- oc_cert_file -> client_cert
- oc_key_file -> client_key
- oc_ssl_ca_cert -> ca_cert
- oc_verify_ssl -> validate_certs

* psrp connection: cert_trust_path -> ca_cert

TODO: cert_validation -> validate_certs (multi-valued vs bool)

* k8s inventory: standardize tls params

- cert_file -> client_cert
- key_file -> client_key
- ca_cert -> ca_cert
- verify_ssl -> validate_certs

* openshift inventory: standardize tls params

- cert_file -> client_cert
- key_file -> client_key
- ca_cert -> ca_cert
- verify_ssl -> validate_certs

* tower inventory: verify_ssl -> validate_certs

* hashi_vault lookup: cacert -> ca_cert

* k8s lookup: standardize tls params

- cert_file -> client_cert
- key_file -> client_key
- ca_cert -> ca_cert
- verify_ssl -> validate_certs

* laps_passord lookup: cacert_file -> ca_cert

* changelog for TLS parameter standardization
2019-03-28 00:19:28 -05:00
Felix Fontein 41de2855ae Remove elements= from arg_spec when type is not 'list'. (#50484) 2019-01-09 19:40:17 +05:30
Dag Wieers 05c6ff79f9 Convert to reduced list of known types (#50010) 2018-12-19 07:25:30 +10:00
John R Barker 3fcc564bbb
Bulk fix DOCUMENTATION.author (Part 1) (#48934)
* Bulk fix DOCUMENTATION.author
2018-11-20 19:31:35 +00:00
Evert Mulder f179a4fcd2 Manageiq group module (#45867)
* ManageIQ module to manage groups

* Fixed typos, more examples on managed_filters.

* Simplified the input if managed_filters
Change return values role_name and tenant_name to role and tenant to macht input params

* Return managed_filters and belongsto_filters instead of filters to better mach the input params
2018-10-30 09:46:26 +00:00
Evert Mulder 146709fb21 Added module to manage manageiq tenants (#43988)
* Added module to manage manageiq tenants

* Fixed pep8 and module validation issues for manageiq_tenant

* Changes based on review
- Added parent attribute to specify the parent
- Cleanup return of tenant
- Update documentation on quotas

* Updated version added to 2.8
2018-10-07 05:13:01 -05:00
Matt Clay 8deced3e04
Fix shebangs and file modes and update tests. (#40563)
* Add execute bit sanity test and apply fixes.
* Add shebang test for `lib` dirs and apply fixes.
* Shebang and execute bit cleanup.
2018-05-22 14:25:36 -07:00
Matt Martz 1663b64e18
Allow subspec defaults to be processed when the parent argument is not supplied (#38967)
* Allow subspec defaults to be processed when the parent argument is not supplied

* Allow this to be configurable via apply_defaults on the parent

* Document attributes of arguments in argument_spec

* Switch manageiq_connection to use apply_defaults

* add choices to api_version in argument_spec
2018-05-07 11:23:13 -05:00
Beni Cherniavsky-Paskin 0c5f03d3f4 manageiq_provider: don't send top-level null fields on creation (#38448)
* manageiq_provider: method docstrings fixes

* manageiq_provider: refactoring step towards DRY

`resource` is now same in `edit_provider()` and `create_provider()`,
to be extracted to main later.

* manageiq_provider: Fix creation of openshift provider

Fixes #38331.
Sending `api_version` to openshift provider would cause error:
"OpenShift api_version cannot be modified"
due to https://github.com/ManageIQ/manageiq-providers-kubernetes/blob/gaprindashvili-2/app/models/manageiq/providers/kubernetes/container_manager.rb#L37

In `edit_provider` we `delete_nulls()` on the whole data being sent
so `api_version` was omitted if not specified.
In `create_provider()` we only did it on endpoints list so `api_version`
was always sent - now doing on whole data.
2018-04-08 12:36:51 -04:00
Alexander Braverman Masis 062a5551e0 ManageIQ module - provider refresh (#37573) 2018-03-21 05:34:24 -04:00
Dag Wieers cdd21e2170
Clean up module documentation (#36909)
* Clean up module documentation

This PR includes:
- Removal of `default: None` (and variations)
- Removal of `required: false`
- Fixing booleans and `type: bool` where required

* Fix remaining (new) validation issues
2018-03-15 22:15:24 +01:00
Christopher Brown acdb3657b7 Add GCE provider for ManageIQ (#35705)
This commit adds support for creating GCE providers on ManageIQ.
2018-02-05 04:43:19 -05:00
Christopher Brown d2d825ccd3 Add ManageIQ OpenStack provider (#34932)
Adds the capability to create OpenStack providers. Because one
of the parameters, keystone_v3_domain_id, is not currently
exposed, it is added as an alias of azure_tenant_id which currently
maps to uid_ems. Work is in progress to fix this.

ManageIQ/manageiq#16802
ManageIQ/manageiq-api#279
ManageIQ/manageiq-providers-openstack#196
2018-01-26 04:56:06 -05:00
Elad Alfassa 01ae1790d2 Add ManageIQ alerts module (#32136)
* Add ManageIQ alert policies module

* rename manageiq_alert_policies to manageiq_alerts

* manageiq_alerts: address review feedback
2018-01-24 07:35:39 -07:00
Christopher Brown b8e8fb48a8 Add OpenStack Director provider (#35043)
Adds the ability to create an OpenStack Director provider in
ManageIQ.
2018-01-24 03:15:40 -05:00
Christopher Brown 7644042d21 Update ManageIQ Azure Tenant ID parameter (#34806)
Currently the ManageIQ API does not support azure_tenant_id but
this is in the process of being fixed. This commit changes
the recently-committed parameter to allow for the upcoming change.
2018-01-14 06:53:28 -05:00
Christopher Brown cf86c6aaf6 Add ManageIQ Azure provider (#34708)
This commit adds support for creating Azure providers on ManageIQ.
2018-01-11 09:06:33 -05:00
Elad Alfassa 8c87c76d81 Add ManageIQ alert profiles module (#32354) 2018-01-10 17:04:05 +01:00
Christopher Brown d2ccc13857 Add VNC port range check (#34466)
This adds a check to ensure that both start and end of vnc range
is specified.
2018-01-07 04:27:42 -05:00
Christopher Brown 18e41ca4d9 add VMware provider to ManageIQ module (#34112)
Currently the manageiq remote management module only supports
OpenShift, AWS and oVirt. This adds the ability to create VMware
providers by adding two additional parameters for configuring a
host VNC range.
2018-01-03 07:14:02 -05:00
Christopher Brown ebd096a732 Add C and U metrics to oVirt provider (#34138)
Adds the path parameter to allow configuration of C&U metrics
on the oVirt provider. Expands example to match.
2017-12-21 08:57:22 -05:00
Christopher Brown 145c6f953d add oVirt provider to ManageIQ module (#33751)
This commit adds oVirt/RHEV capability to the ManageIQ remote
management module.
2017-12-11 04:52:33 -05:00
Yaacov Zamir f93b98661a Add new module manageiq_policies (#32892)
* Add new module manageiq_policies

* add return example
2017-11-15 19:33:00 +01:00
Yaacov Zamir 2765ee4b9a Enable use of empty manageiq arguments (#31774)
* anable use of empty manageiq arguments

* make default verify_ssl true
2017-10-23 13:33:57 +02:00
Yaacov Zamir 2fc1d6618f fix the handeling of empty auth_key (#31753) 2017-10-15 19:30:34 -04:00
yaacov 3ffc62b43b change be to exist in the docs 2017-09-29 12:54:48 +02:00
yaacov 19f4120c89 make the list of tags more meaningful 2017-09-29 12:54:48 +02:00
yaacov 4db133e725 add a state list option 2017-09-29 12:54:48 +02:00
yaacov 8b9c4de3b0 inline trivial calc url method 2017-09-29 12:54:48 +02:00
yaacov b70845bb40 use the is_changed? paradigm, following example from other modules 2017-09-29 12:54:48 +02:00
yaacov bf780c709d move manageiq_entities to module utils 2017-09-29 12:54:48 +02:00
yaacov 26a70f41ce Add new module manageiq_tags 2017-09-29 12:54:48 +02:00
Beni Cherniavsky-Paskin 60d32f26d7 Followup tweaks to module EXAMPLES, per comments in #29039 (#30248)
* Drop hosts: tasks: boilerplate from EXAMPLES string

Should be just individual tasks
https://docs.ansible.com/ansible/latest/dev_guide/developing_modules_documenting.html#examples-block

* Demonstrate url with port in one of the EXAMPLES
2017-09-24 04:55:19 -04:00
Joel Diaz 6c7d46a9e3 add default role of 'prometheus_alerts' for alerts (#29111)
Currently, MIQ only supports an alert type of 'prometheus', so rather than have the caller of manageiq_provider pass this info, just set it as the default.
2017-09-19 09:32:59 -04:00
Joel Diaz 79d034b088 update miq compare_user group comparison (#29063)
When calling manageiq_user to an already existing user (but leaving out the password so that it doesn't automatically 're-create' the user), the module fails with:

fatal: [127.0.0.1]: FAILED! => {"changed": false, "failed": true, "module_stderr": "Shared connection to 127.0.0.1 closed.\r\n", "module_stdout": "Traceback (most recent call last):\r\n  File \"/tmp/ansible_Fr7Nt3/ansible_module_manageiq_user.py\", line 324, in <module>\r\n    main()\r\n  File \"/tmp/ansible_Fr7Nt3/ansible_module_manageiq_user.py\", line 315, in main\r\n    res_args = manageiq_user.edit_user(user, name, group, password, email)\r\n  File \"/tmp/ansible_Fr7Nt3/ansible_module_manageiq_user.py\", line 229, in edit_user\r\n    if self.compare_user(user, name, group_id, password, email):\r\n  File \"/tmp/ansible_Fr7Nt3/ansible_module_manageiq_user.py\", line 189, in compare_user\r\n    (group_id and user['group']['id'] != group_id)\r\nKeyError: 'group'\r\n", "msg": "MODULE FAILURE", "rc": 0}

The 'group' field turns out to be 'current_group_id' (at least with ManageIQ 4.6). Update the comparison accordingly.
2017-09-19 09:10:21 -04:00
Joel Diaz 99f6f0ccc2 add 'update_password' param to manageiq_user (#29093)
* add 'update_password' param to manageiq_user

Currently with the manageiq_user module, if you call it repeatedly while passing the 'password' parameter, it will always run the task and mark it as 'changed'.

Following the pattern of the AWS IAM module, add an 'update_password' parameter that takes 'always' (default) or 'on_create'. This will let you set an initial password when creating a user, but allow the user to modify their password and not stomp over their password changes if you re-run the playbook/task that created the user.

* don't stomp password when other fields change

Handle case where user fields change, but we don't want to stomp on a potentially user-changed password. Previously, if a non-password field changed, and the password param was passed in, it would ignore the 'update_password': 'on_create' setting (ie it would update/modify the password even if the user already exists).

Add trailing ',' to list of params.
2017-09-19 09:10:12 -04:00
Pavel Zagalsky 779e365639 Modified yaml examples (#29039)
Additional fields

Another change

Lint fix

Removed "valid" option from documentation

Checking without cert example

Added fake cert
2017-09-12 18:48:00 -04:00
Yaacov Zamir 534c1b8342 Flatten manageiq provider UI (#28967)
* flatten the endpoints arguments into first level

* flatten the endpoints arguments into first level, update the docs
2017-09-05 10:11:29 -04:00
Yaacov Zamir a41da28f3f New model manageiq manageiq provider (#28273)
* New Model manageiq manageiq_provider

* update docs, port is not required, region is provider-region

* add example of using token

* loop on endpoints instead of creating them one by one

* add alerts endpoint

* Simplify boilerplate and reorganize docs

Tried to make it clearer how the suboptions are laid out.

* Flatten out suboptions in order to make tests pass

These will not render properly in the HTML docs. Simplifying how this module accepts options should be addressed in a future PR.
2017-08-29 22:54:35 -04:00
Drew Bomhof ea51567697 Allow a miq token as an argument passed into the ManageIQ Python API Client (#28088) 2017-08-18 16:25:09 -04:00
Toshio Kuratomi f203ca7907 Update metadata to 1.1 2017-08-15 23:12:08 -07:00
Yaacov Zamir 48922660fe New model manageiq manageiq user (#26641)
* ManageIQ: manageiq_user module, module utils and doc_fragment

ManageIQ is an open source management platform for Hybrid IT.

This change is adding:
- manageiq_user module, responsible for user management in ManageIQ
- manageiq utils
- manageiq doc_fragment

* Handle import error

* Use formatting options

* group parameter is required

* changed doesn't need to be an attribute

* resource dictionary should contain values which isn't None

* move from monitoring to remote-management

* Use ManageIQ nameing convention

* Do not set defauts in arguments

* Use idempotent state parameter instead of action

* Check import error in the manageiq util class

* Update the miq documentation

* rename the connection configuration from miq to manageiq_connection

* All messeges start with non cap, fix typos, add examples, rename vars

* more typos fixes

* Make sure we insert only strings to logs by using % formating

* use suboptions keyword for the manageiq connection

* do not log the managiq connection struct (it include sensitive information like username and password)

* add missing from __future__

* ahh, wrong no-log line

* Use sub options
2017-08-03 10:49:47 -04:00