Commit Graph

1473 Commits (35cc228b3b4f8526c71a72589c26d4a357cae402)

Author SHA1 Message Date
Gonéri Le Bouder 3ea8e0a144 VMware: not ssl.SSLContext if validate_certs false (#57185)
Python < 2.7.9 does not have the ssl.SSLContext attribute.
ssl.SSLContext is only required when we want to validate the SSL
connection. If `validate_certs` is false, we don't initialize the
`ssl_context` variable.

Add unit-test coverage and a little refactoring:

- avoid the use of `mocker`, when we can push `monkeypatch` which is
  `pytest`'s default.
- use `mock.Mocker()` when possible

closes: #57072
5 years ago
Mark Chappell 1f38a12057 Fix behaviour of module_utils/ec2 compare_policies when dealing with bare bools and ints. (#61115)
* module_utils/ec2: (unit tests) Move unit tests for module_utils/ec2.py into test/units/module_utils

- compare_policies was refactored from s3_bucket
- "ec2_utils" doesn't seem to have ever existed

* module_utils/ec2: (unit tests) Add unit test for comparing quoted and unquoted bools and numbers within policies

As per https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html

"Values are enclosed in quotation marks. Quotation marks are optional for numeric
and Boolean values."

* module_utils/ec2: Explicitly convert bools and ints to strings when comparing policies

See also: https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_grammar.html
5 years ago
Abhijeet Kasurde 3703c3bb1a
atomic_image: Fix absent state (#61827)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
5 years ago
Simon Dodsley df49a9e58c purefa_info: Fix failure due to API version check (#61925) 5 years ago
Felix Fontein d40ba28fb4
docker_container: improve port range parsing error behavior (#61740)
* Improve port range parsing.

* Add changelog.
5 years ago
Chris Trufan 943888b955 Fixes to ecs_certificate cert chain for #61738 (#61858)
* Fixes to ecs_certificate cert chain for #61738

* Added changelog fragment

* Fixes to ecs_certificate for cleaner join, and better integration test

* Fix integration test formatting

* End cert chain with a \n

* Update changelogs/fragments/61738-ecs-certificate-invalid-chain.yaml

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Update main.yml
5 years ago
Andreas Calminder cac93cbd1f os_port allowed_address_pairs and extra_dhcp_opts list of dicts comparison fix (#56577)
* compare list of dicts

* update example for dhcp_server_opts to include ip_version which is automatically added by openstack

* add note about dhcp_server_opts

* add changelog fragment

* fix forgotten exception+pass

* no need to excplicitly check for None

* fix oops

* fix import error

* missed missing_required_lib

* changelog fragment formatting and grammar fixes

* update requirements in documentation and fix spelling
5 years ago
Mark Chappell b8650c0a50 aws_asg: Fix idempotency when using tags and metrics (#61284)
* Update AWS hacking policy to enable ASG Tagging management

* aws_asg: Add tests for ASG Tagging (including idempotency)

* aws_asg: ignore sort order when comparing tags on the ASG (fix idempotency)

* ec2_asg: (integration tests) test for idempotency when managing metrics collection

* ec2_asg: sort list of enabled metrics to ensure clean comparisons.
5 years ago
Matt Martz 8331c8fdc3
Properly hide limit and list-hosts args from ansible-inventory (#61618)
* Properly hide limit and list-hosts args from ansible-inventory. Fixes #61604

* Add changelog fragment

* Consolidate limit

* Fix positional argument with --graph

* Properly error for hidden arguments

* linting issue

* host pattern changelog
5 years ago
Sam Doran 61efffcbe1
User - correct group removal description in docs (#61936) 5 years ago
Ganesh Nalawade 4f29b5a76b
Fix ansible-connection persist after playbook run complete issue (#61591)
* Fix ansible-connection persist after playbook run issue

*  PR https://github.com/ansible/ansible/pull/59153 to add support
   for delaying the ansible-connection added an old issue of
   ansible-connection persisting even after playbook run is finished
   till either command timeout or connect timeout is triggered.
   ansible-connection persist after playbook execution is done
   and also delays the connection initilization untill a method
   in invoked from module side on the connection object.

* Add chanegelog
5 years ago
Matt Davis 7f4328ad12
allow external collections under the ansible NS (#61908)
* fixes #59988
5 years ago
Felix Fontein e06dbe6e4f
Azure _info modules: fix returned ansible_facts when called as _info (#61805)
* Fix Azure _info modules which still returned ansible_facts.

* Adjust PR #.

* Fix wrong assignment.

* Reorganize code for clarity.
5 years ago
Bill Dodd 2a932ad7cf Fix power command ResetType mapping logic (#59927)
* fix power command ResetType mapping logic

* add changelog fragment
5 years ago
Jordan Borean 3a7b77a94c
ansible-galaxy fix --server option for roles (#61820) 5 years ago
Matt Martz 8214d188cf Don't truncate the last character from galaxy urls. Fixes #61624 (#61775) 5 years ago
Scott Luther 0c73e47a42 fix erroneous failures in docker_compose due to deprecation warnings … (#61650)
* fix erroneous failures in docker_compose due to deprecation warnings from docker (#60961)

* Update error handling to work with new method of capturing output

Co-Authored-By: Felix Fontein <felix@fontein.de>

* update error handling

* fix syntax error

* fix indentation

* fix indentation (again)

* remove erroneous line
5 years ago
kucharskim 1dea661ce8 Allow 13 asterisk characters in password field without warning (#54893)
On OpenBSD, 13 asterisk characters as a password hash, marks the
account as disabled. Otherwise daily(8) script which executes
security(8) will email operator about not properly locked accounts.

Before the diff, we see following warning:

> [WARNING]: The input password appears not to have been hashed. The 'password' argument must be encrypted for this module to work properly.

After the diff, warning is gone.
5 years ago
Sloane Hertel 91ccb03552 aws_s3 - wait for the bucket before setting ACLs (#61735)
* Wait for the bucket to become available if possible before setting ACLs
5 years ago
Mark Chesney 01f4081b66 Fix creation of DigitalOcean droplets using digital_ocean_droplet module (#61655)
* Omit disallowed 'id' attribute in request body to create a droplet

* Add changelog fragment for PR #61655
5 years ago
Bill Dodd 088d821f75 Fix KeyError exceptions in GetLogs command (#59877)
* fix KeyError exceptions in GetLogs command

* add changelog fragment

* refine the list of LogEntry properties to collect
5 years ago
Alexandre Mulatinho e4d72dd981 luks_device.py: Allow manipulate LUKS containers with label or UUID (#61603)
* luks_device.py: Allow manipulate LUKS containers with label or UUID

- Allow create a LUKS2 container format with label support
- Allow manipulate (open, close, modify) an LUKS container based on
  both label (LUKS2 format) or UUID instead of using devices only.

Fixes: #58973
Signed-off-by: Alexandre Mulatinho <alex@mulatinho.net>

* test_luks_device.py: organizing tests to support labels

- Add label on some tests and fix errors reported by Shippable

Signed-off-by: Alexandre Mulatinho <alex@mulatinho.net>

* luks_device.py: adjusting versions and messages

- Modifying version_added from 2.9 to 2.10
- Fixing some messages
- Created a changelog fragment
- Moving blkid from scope

Fixes #58973
Signed-off-by: Alexandre Mulatinho <alex@mulatinho.net>
5 years ago
Maxim Babushkin f1a1b72f07 os_server - add "tag" to instance nics (#61119)
A custom "tag" could be passed to the instance metadata with the nics.
Add support for the "tag" to the module.
5 years ago
Guillaume Leroy 21b101f8e1 add option to define keysize at luks partition creation (#61522)
* add option to define keysize at luks partition creation

* Bump version_added.

* Extend tests.
5 years ago
René Moser 1ff20e9804 apt_repository: implement update cache retrying (#57266)
* use exponential backoff
* make cache update retries and max delay in between configurable
5 years ago
René Moser fd4ff54580 apt: honor cache_update=false on auto-install deps (#56549)
* apt: honor cache_update=false on auto-install deps
* add porting guide
5 years ago
René Moser 01ae6991bd apt: use exponential backoff for apt update cache retries (#60527)
* make retries and max delay configurable
5 years ago
Mark Chappell 35359959de aws_codecommit: Fix integration tests and Add support for updating the description (#61263)
* Update DevOps AWS policy
- Fix typos in permission names
- While AWS claims you can use 'arn:aws:codecommit:*' it errors unless you use '*'

* aws_codecommit: (integration tests) Migrate to module_defaults

* aws_codecommit: (integration tests) Fix integration tests

* aws_codecommit: (integration tests) Add tests for updating the description

* aws_codecommit: Add support for updating the description and rename "comment" option to "description"
5 years ago
Toshio Kuratomi 8f6dbb732a
[WIP] Cleanups and version bumping for 2.10 (#61572)
* Cleanups and version bumping for 2.10

* Fix changelog url now that stable has been branched

* Fix the lenth of the porting guide title now that the version is two digits
5 years ago
Jordan Borean 951dac7691
Azure fix _info/_facts return values for some modules (#61584)
* Azure fix _info/_facts return values for some modules

* Further test fixes

* securitygroup fixes after the move to _info module
5 years ago
Simon Dodsley cd24d57636 Add IOPs bandwidth support to volumes (#61577) 5 years ago
Matt Clay 4063d58339 Use relative submodule status in ansible-test.
The `git submodule status` command is relative to the current git repository by default.
When running from a repository subdirectory paths can be returned above the current directory.
Specifying the current directory with `git submodule status` avoids listing submodules above that directory.

This will fix issues when testing a collection that is rooted below the repository root when that repository uses submodules.
5 years ago
Felix Fontein 0c592c8225
CloudStack modules: rename _facts -> _info (#61090)
* Rename cloudstack _facts -> _info

* Add changelog.

* Fix errors due to overloaded get_result having different parameter names.

* Fix examples.

* Change debug tasks.

* Remove unneeded code.

* Change from rename -> deprecate+new module.

* Make cs_zone_info return a list.

* Make cs_instance_info return a list.

* Fix return value docs.

* Fix typo.

* Improve tests.

* Fix cs_zone_info.

* Linting.

* Fix alias/option switch.

* Fix version numbers.

* Extend docs.
5 years ago
René Moser 3bfeae9040 vultr: add changelog and update porting guide (#61520) 5 years ago
Matt Davis d81ae27a4a
Collection role relative deps (#61517)
* default collection support

* playbooks run from inside a registered collection will set that collection as the first item in the search order (as will all non-collection roles)
* this allows easy migration of runme.sh style playbook/role integration tests to collections without the playbooks/roles needing to know the name of their enclosing collection

* disable default collection test under Windows

* enable collection search for role dependencies

* unqualified role deps in collection-hosted roles will first search the containing collection
* if the calling role has specified a collections search list in metadata, it will be appended to the search order for unqualified role deps

* disable cycle detection unit test

* failing on 3.7+, needs proper cycle detection
* see #61527
5 years ago
James Cammarata 51b33b79c0
T woerner max concurrent (#60702)
* play, block, task: New attribute forks

With this it is possible to limit the number of concurrent task runs.
forks can now be used in play, block and task. If forks is set in different
levels in the chain, then the smallest value will be used for the task.

The attribute has been added to the Base class as a list to easily provide
all the values that have been set in the different levels of the chain.

A warning has been added because of the conflict with run_once. forks will
be ignored in this case.

The forks limitation in StrategyBase._queue_task is not used for the free
strategy.

Signed-off-by: Thomas Woerner <twoerner@redhat.com>

* Handle forks in free strategy

The forks attribute for the free strategy is handled in run in the free
StrategyModule. This is dony by counting the amount of tasks where the uuid
is the same as the current task, that should be queued next. If this amount
is bigger or equal to the forks attribute from the chain (task, block,
play), then it will be skipped to the next host. Like it is also done with
blocked_hosts.

Signed-off-by: Thomas Woerner <twoerner@redhat.com>

* Test cases for forks with linear and free strategy

With ansible_python_interpreter defined in inventory file using
ansible_playbook_python.

Signed-off-by: Thomas Woerner <twoerner@redhat.com>

* Changing forks keyword to throttle and adding some more docs
5 years ago
Matt Davis 7d1a981b61
default collection support (#61415)
* default collection support

* playbooks run from inside a registered collection will set that collection as the first item in the search order (as will all non-collection roles)
* this allows easy migration of runme.sh style playbook/role integration tests to collections without the playbooks/roles needing to know the name of their enclosing collection

* ignore bogus sanity error

* filed #61460

* fixed task unit test failure

* don't append an empty collections list to the ds

* ignore leftover local_action in mod_args ds action parsing

* fix async_extra_data test to not require ssh and bogus locale

* disable default collection test under Windows

* ensure collection location FS code is always bytes

* add changelog
5 years ago
robertchung caa5abdfc9 Fix TypeError in ec2_group.py for Python3 when sorting dictionary list (#59844)
* Fix TypeError in ec2_group.py for Python3 when sorting dictionary list

* Using json.loads() and dumps() to replace sorting

* Bug fixes for ec2_group.py

* Dictionaries cannot be compared/sorted in Python3

* Diff will occur when the IpPermissions have the same IpRanges but have different ordering

* 'before' will be sorted by 'Type' with high priority than 'IP', but 'boto3.describe_security_groups()' function cannot get 'Type' from Amazon

* Add some basic diff mode testing to exercise the rule-sorting code
5 years ago
Sam Doran 73248bf27d validate-modules - Use error codes instead of numbers (#60711) 5 years ago
Felix Fontein 59ab4d9307
oVirt: rename _facts -> _info (#61299)
* Rename oVirt _facts -> _info

* Adjust PR #.

* Forgot update BOTMETA / ignore.txt for doc fragment.

* Compatibility for 3rd-party modules using module_utils or info doc fragment.

* Update note.

* Fix/improve docs.

* Update lib/ansible/modules/cloud/ovirt/ovirt_event_info.py

Co-Authored-By: Sloane Hertel <shertel@redhat.com>

* Fix variable.

* Fix return value documentation for ovirt_external_provider_info.
5 years ago
smile37773 161c1ce17e Rename Azure modules: "facts"->"info" (#61417)
* rename

* add symlink

* add the log

* fix the ignore file

* fix

* fix
5 years ago
Matt Clay f510d59943
Support relative imports in AnsiballZ. (#61196) 5 years ago
Jordan Borean 66f52b74b1 Change collection PS util import pattern (#61307)
* Change collection PS util import pattern

* Add changes for py2 compat

* fix up regex and doc errors

* fix up import analysis

* Sanity fix for 2.6 CI workers

* Get collection util path for coverage collection
5 years ago
Simon Dodsley 21f0c0f42f Change references to ansible_facts (#61353) 5 years ago
Simon Dodsley 948023176e Changes references to ansible_facts (FA_RA) (#61355) 5 years ago
Simon Dodsley 05afc28d08 Changes references to ansible_facts (FB_S3USER) (#61356) 5 years ago
Felix Fontein c9a9bd9d64
OneView: rename _facts -> _info (#61208)
* Rename OneView _facts modules -> _info

* Adjust PR #.

* Forgot to update test names.

* Remove superfluous blank line.

* Some more things from review.
5 years ago
smile37773 5438013191 Rename Azure modules: facts -> info (#60987) 5 years ago
Felix Fontein 2db4e044ab smartos_image_facts: rename to smartos_image_info (#60915)
* Rename smartos_image_facts -> smartos_image_info

* Add changelog.
5 years ago
Felix Fontein e176023c6b Scaleway: rename _facts -> _info (#61095)
* Rename scaleway _facts -> _info

* Add changelog.

* Improve docs.
5 years ago
Felix Fontein 185a1fcb07 Online: rename _facts -> _info (#61091)
* Rename online _facts -> _info

* Add changelog.
5 years ago
Kevin Breit 489156378c Meraki - Enable API call rate limiting for requests (#54827)
* Initial commit for rate limiting
- Detects if error code is 429
- Pauses for random time between .5 and 5 seconds before retrying
- If it fails 10 times, give up and tell user

* Redo structure of request() to support rate limiting

* Hold down timer is now a sliding scale
- 3 * number of retries
- Fails after the 30 second wait

* Whitespace fixes

* Redo implementation using decorators
- Errors aren't tested but code works for regular calls

* Unit tests work for error handling

* Add integration tests for successful retries

* Add condition for 502 errors and retry

* Move _error_report out of the class

* PEP8 fixes

* Add changelog entry
5 years ago
Felix Fontein 1906c05348
vertica_facts: rename to vertica_info (#60916)
* Rename vertica_facts -> vertica_info

* Add changelog.

* Fix porting guide.
5 years ago
Jack Parsons 80b73712a9 Template value of debugger and then check for validity (#53587)
* Template value of debugger and then check for validity

* Removed if/else and forcing failure on undefined as per comments

* Added changelog

* changed colon to brackets so it appears as a string
5 years ago
ygelfand 36b7baca4d getent - add service support(#60295) 5 years ago
Felix Fontein c91929b2b3 OpenStack: rename _facts -> _info (#61197)
* Rename openstack _facts -> _info

* Add new module names to module_defaults.yml.
5 years ago
Jordan Webb 27cac742ca Fix pipelining in buildah connection plugin (#59745)
* Fix pipelining in buildah plugin

* Add changelog fragment
5 years ago
claudioiuliano ab559c4629 Remove 'network-interface' for tag_specifications (#53398)
* Remove 'network-interface' for tag_specifications

https://github.com/aws/aws-cli/issues/2865

* changelog
5 years ago
pratikgadiya12 8ee7d9f598 VMWare - Rename _facts to _info (#57474)
Deprecate vmware's _facts modules and add new modules.

Fixes: #57278
5 years ago
Felix Fontein 47c2ff4c26
Redfish modules: rename _facts -> _info (#60992)
* Rename redfish_facts -> redfish_info, idrac_redfish_facts -> idrac_redfish_info

* Update porting guide.

* Add changelog.

* Fix metadata.

* Remove copy artefacts.

* Change from deprecate/new module to rename.
5 years ago
Felix Fontein e536d0e128
openssl_*: deprecate PyOpenSSL backends (#59907)
* Deprecate PyOpenSSL backends.

* Add changelog.

* Add porting guide entry.

* Improve tests to ignore deprecations when comparing results.

* Deprecating pyopenssl backend for get_certificate and openssl_publickey.

* Fix typo.
5 years ago
Felix Fontein 7f4f2506a0
acme_certificate: make compatible to Buypass' ACME v2 testing endpoint (#60727)
* Don't unnecessarily use location from header.

* Add changelog.
5 years ago
Felix Fontein 14974f5fc2
openssl_certificate_info: add ocsp_uri return value (#60393)
* Add ocsp_uri return value.

* Add changelog.

* Add integration test.

* Fix rebase error.
5 years ago
Nathaniel Case f3f30c146b
Deprecate net_* modules (#60818)
* Deprecate net_ modules

* Move modules to finish deprecation

* Add missing `why`, move net_static_route

* Add changelogs and porting guide
5 years ago
Michał Szczepańczyk 8ed3a0b360 fix bug - k8s was crashing when yaml ended with 3 dashes (#61182)
* fix bug - k8s was crashing when yaml ended with 3 dashes

* #61182 - add changelog
5 years ago
Felix Fontein c3b1a0a7e8 Vultr: rename _facts -> _info (#61239) 5 years ago
Mark Chappell 5434bf74c6 Fix issues with aws_kms when working cross-account and with IDs (#60805)
* aws_kms: (integration tests) Test updating a key by ID rather than just my alias

* aws_kms: (integration tests) Test deletion of non-existent and keys that are already marked for deletion

* aws_kms: Ensure we can perform actions on a specific key_id rather than just aliases

In the process switch over to using get_key_details rather than listing all keys.

* aws_kms: When updating keys use the ARN rather than just the ID.

This is important when working with cross-account trusts.
5 years ago
Søren Kröger 1cf43e5017 Handle multiple Content-Type headers correctly (#31238)
* Handle multiple Content-Type headers correctly

Avoids situations where mulitple Content-Type headers including charset information can result in errors like 
```
LookupError: unknown encoding: UTF-8, text/html
```

* Account for multiple conflicting values for content-type and charset

* Add changelog fragment
5 years ago
Ryan Conway e4c1c05363 Renaming `onepassword_facts` to `onepassword_info`. (#61237)
* Renaming `onepassword_facts` to `onepassword_info`.

* Update module examples.

* Add changelog fragment.

* Add module rename to the 2.9 porting guide.

* Document the parameter types in the module docs.

* Fix incorrect parameter name.

* Update docs/docsite/rst/porting_guides/porting_guide_2.9.rst

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Remove `onepassword_facts` as it has been renamed to `onepassword_info` including fixes for the sanity tests.
5 years ago
Felix Fontein fa70690e5c
openssl_certificate/csr(_info): add support for SubjectKeyIdentifier and AuthorityKeyIdentifier (#60741)
* Add support for SubjectKeyIdentifier and AuthorityKeyIdentifier to _info modules.

* Adding SubjectKeyIdentifier and AuthorityKeyIdentifier support to openssl_certificate and openssl_csr.

* Fix type of authority_cert_issuer.

* Add basic tests.

* Add changelog.

* Added proper tests for _info modules.

* Fix docs bug.

* Make sure new features are only used when cryptography backend for openssl_csr is available.

* Work around jinja2 being too old on some CI hosts.

* Add tests for openssl_csr.

* Add openssl_certificate tests.

* Fix idempotence test.

* Move one level up.

* Add ownca_create_authority_key_identifier option.

* Add ownca_create_authority_key_identifier option.

* Add idempotency check.

* Apparently the function call expected different args for cryptography < 2.7.

* Fix copy'n'paste errors and typos.

* string -> general name.

* Add disclaimer.

* Implement always_create / create_if_not_provided / never_create for openssl_certificate.

* Update changelog and porting guide.

* Add comments for defaults.
5 years ago
Mark Chappell 77e4371460 aws_kms: Update policy on existing keys (when passed) (#60059)
* aws_kms: (integration tests) Use module_defaults to reduce the copy and paste

* aws_kms: (integration tests) make sure policy option functions.

* aws_kms: (integration tests) Move iam_role creation to start of playbook.

iam_roles aren't fully created when iam_role completes, there's a delay on the Amazon side before they're fully recognised.

* aws_kms: Update policy on existing keys (when passed)
5 years ago
Andrey Klychkov e3cf76533c postgresql_user: add groups parameter (#60638)
* postgresql_user: add groups parameter

* postgresql_user: add groups parameter, fail_on_role default True

* postgresql_user: add groups parameter, add changelog fragment
5 years ago
Felix Fontein 72365b01e0 acme_certificate: only return challenges that need to be satisfied (#61191)
* Only return challenges that need to be satisfied.

* Adjust PR #.
5 years ago
Felix Fontein 18f7c3b850
Netapp: rename _facts -> _info (#60980)
* Rename na_ontap_gather_facts -> na_ontap_info
Rename netapp_e_facts -> netapp_e_info

* Add changelog.

* Fix sanity.

* Forgot test.

* Forgot to remove 'gather'.

* Fix sanity ignore.

* Remove netapp_e_facts from PR.

* Remove superfluous version_added.
5 years ago
Matt Martz 0ff9978bc5
Ensure has_dead_workers functions (#60653)
* Ensure has_dead_workers functions

* Fix up tests

* Add changelog. Fixes #29124
5 years ago
Mark Chappell 70777020c4 Fix iam_password_policy integration tests (#60930)
* iam_password_policy: (integration tests) Use module defaults for AWS connection details

* iam_password_policy: (integration tests) Ensure the policy is removed when tests fail

* iam_password_policy: (integration tests) Add regression test for #59102

* iam_password_policy: Only return changed when the policy changes.

* iam_password_policy: PasswordReusePrevention must be omitted to remove/set to 0

* #60930 add changelog

* Update hacking AWS security policy to allow testing of Password Policy Management
5 years ago
Andrey Klychkov 191068a286 Issue 59955: add array handling to postgresql_query module (#60559)
* Issue 59955: add array handling to postgresql_query module

* Issue 59955: add array handling to postgresql_query module, improvements

* Issue 59955: add array handling to postgresql_query module, fix example comment
5 years ago
Lukas Kämmerling 96199be96b Rename hcloud_*_facts to hcloud_*_info (#60926)
* Rename hcloud_datacenter_facts to hcloud_datacenter_info

* Rename hcloud_location_facts to hcloud_location_info

* Rename hcloud_image_facts to hcloud_image_info

* Rename hcloud_floating_ip_facts to hcloud_floating_ip_info

* Rename hcloud_server_type_facts to hcloud_server_type_info

* Rename hcloud_server_facts to hcloud_server_info

* Rename hcloud_ssh_key_facts to hcloud_ssh_key_info

* Rename hcloud_volume_facts to hcloud_volume_info

* Fix typo in hcloud_image_info

* Add to porting guide and add changelog fragment

* Reword porting guide
5 years ago
Matt Davis bfa004930a
add subdir support to collection loading (#60682)
* add subdir support to collection loading

* collections may now load plugins from subdirs under a plugin type or roles dir, eg `ns.coll.subdir1.subdir2.myrole`->ns.coll's roles/subdir1/subdir2/myrole, `ns.coll.subdir1.mymodule`->ns.coll's plugins/modules/subdir1/mymodule.py
* centralize parsing/validation in AnsibleCollectionRef class
* fix issues loading Jinja2 plugins from multiple sources 
* resolves #59462, #59890,

* sanity test fixes

* string fixes

* add changelog entry
5 years ago
Felix Fontein c1b2aa1d11
nginx_status_facts: deprecate/rename to nginx_status_info (#60979)
* Rename nginx_status_facts -> nginx_status_info

* Add changelog.

* Remove warnings.

* Re-add ignore.txt entries.

* ...

* Raw strings for docs.

* Use U(...) for link.
5 years ago
Bojan Vitnik 04e0f9d4ea XenServer: When VM is in powered on state, plug newly added disks
Fixes: #60693
5 years ago
Sloane Hertel 3247626ac7 Warn when transforming constructed groups (#60912)
* Warn when transforming constructed groups

The `keyed_groups` field has used sanitization since 2.6, but `groups` only started doing so in 2.8.
This adds a warning for the change in behavior.

* changelog
5 years ago
Matt Martz ba25522db4
Remove ddeprecated redis_kv lookup. Fixes #59984 (#60826) 5 years ago
Felix Fontein e58919bccd
gluster_heal_facts: rename to gluster_heal_info (#60919)
* Rename gluster_heal_facts -> gluster_heal_info

* Add changelog.
5 years ago
Felix Fontein c66163b118
hpilo_facts: rename to hpilo_info (#60917)
* Rename hpilo_facts -> hpilo_info

* Fix porting guide.

* Add changelog.
5 years ago
Will Thames 362c45517d aws_kms: fix failing tests (#60206)
Preserve tag key case by only calling camel_dict_to_snake_dict once,
before the tags are added.

Don't call assert_policy_shape as it seems to fail

Use aws_caller_info in the test suite now that it exists rather
than running `aws sts get_caller_identity`

Ensure that calls using `grant_types` can also use key aliases
5 years ago
Dusan Matejka 31bfcd4745 Reworked zabbix_template to support XML import/export + updated documentation (#59040) 5 years ago
René Moser 4b743a2721
vultr: use exponential backoff for api query retries (#60529) 5 years ago
Mark Chappell 8e99f0ecc6 aws_kms: Rename various policy manipulation options to reduce confusion (#60561)
* aws_kms: Rename various policy manipulation options to reduce confusion

AWS KMS now has the concept of issuing a 'grant', which is independent
of the policy attached to a key.  Rename the following options to make
it clearer that the operate on the CMK Policy *not* on CMK Grants

* aws_kms: don't just rename grant_types/mode, deprecate them too.
5 years ago
Klaus Frank fb2c1d4577 Make win_domain_user idempotent for password changes (#58383)
* Make win_domain_user idempotent for passwordchanges

* Add changelog fragment

* Use test-credentials function from win_user.

* Split domain from username

* Update win_domain_user.ps1

* Fix ci

* Update win_domain_user.ps1

Fix ci

* Implement review

* Logic cleanup and remove securestring

* Fix typo

* fix syntax

fix syntax

* Use AD object instead of user input as requested by review

* migrate to Ansible.AccessToken
5 years ago
Klaus Frank 811153afb1 Add exception handling to win_domain_controller (#58234)
* Add exception handling to win_domain_controller

* Add changelog

* Fix PSUseDeclaredVarsMoreThanAssignments

* Remove dns domain cannot be resolved error message

As requested by PR review in https://github.com/ansible/ansible/pull/58234#discussion_r300509880
5 years ago
Felix Fontein 0d88ec241f
openssl_certificate: fix idempotency (#60745)
* Fix openssl_certificate idempotency.

* Add changelog.

* Add integration test.
5 years ago
Felix Fontein 16056f4978
openssl_certificate: check for existence before loading CSR / private keys / ... (#60740)
* Check file existence before loading files.

* Remove superfluous import.

* Add changelog.
5 years ago
Hannes Ljungberg 13364fc530 docker_swarm_service: Allow passing dicts in networks (#58961)
* Add support for passing networks as dicts

* Add function to compare a list of different objects

* Handle comparing falsy values to missing values

* Pass docker versions to Service

* Move can_update_networks to Service class

* Pass Networks in TaskTemplate when supported

* Remove weird __str__

* Add networks integration tests

* Add unit tests

* Add example

* Add changelog fragment

* Make sure that network options are clean

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Set networks elements as raw in arg spec

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Fix wrong variable naming

* Check for network options that are not valid

* Only check for None options

* Validate that aliases is a list
5 years ago
Felix Fontein ceff0029cb
openssl_certificate: deprecate assertonly provider (#60623)
* Add deprecation marks.

* Add conversion example.

* Split long line.

* Add changelog and porting guide entry.

* Fix unrelated porting guide entry.

* Fix format.

* Fix doc mistakes found in review.

* Fix filter name.

* Compare CSR and cert subject via subject_ordered.
5 years ago
Chris Trufan 86366530e8 Entrust Datacard - Support for "entrust" provider in openssl_certificate module (#59272)
* Addition of entrust provider to openssl_certificate module

* Fix native return values of error messages and JSON response.

* Documentation and syntax fixes per ansibot.

* Refactored structure of for loop due to ansible test failures in python 2.6

* Remove OCSP functionality for inclusion in possible seperate future pull request.

* Remove reissue support.

* Indicate the entrust parameters are specific to entrust.

* Comment fixes to make it clear module_utils request is used.

* Fixes to not_after documentation

* Response to pull request comments and cleanup of error handling for bad connections to properly use the 'six' HttpError for compatibility with both Python 2/3 underlying url libraries.

* pep8/pycodestyle fixes.

* Added code fragment and response to comments.

* Update license to simplified BSD

* Fixed botmeta typo

* Include license text in api.yml

* Remove unsupported certificate types, and always submit an explicit organization to match organization in CSR

* Fix documentation misquote, add expired to a comment, and fix path check timing.

* Update changelogs/fragments/59272-support-for-entrust-provider-in-openssl_certificate_module.yaml

Co-Authored-By: Felix Fontein <felix@fontein.de>
5 years ago
Felix Fontein 6a786d0d93
openssl_publickey: add cryptography backend (#60387)
* Add cryptography backend.

* Add changelog.

* Make sure requirements are satisfied.

* Use more compatible elliptic curve.

* Decrease required version numbers.

* PyOpenSSL >= 16.0.0 is really needed.

* Update lib/ansible/modules/crypto/openssl_publickey.py

Co-Authored-By: MarkusTeufelberger <mteufelberger@mgit.at>
5 years ago
Felix Fontein 601a4b8f47
get_certificate: add cryptography backend (#60599)
* Add cryptography backend for get_certificate.

* Add changelog.

* Use short names (if possible).

* Adjust version (to behave as pyOpenSSL).

* Work around bugs (needed for cryptography 1.2.3).

* Don't run cryptography backend tests for CentOS 6.

* Bump cryptography requirement to 1.6 or newer.

Otherwise, signature_algorithm_oid isn't there, either.

* Simplify requirement text.

* CentOS 6 has cryptography 1.9, so we still need to block.

* Add auto-detect test.

* Improve YAML.
5 years ago
Felix Fontein 38435e1bd0
openssl_certificate: various assertonly bugfixes (#60658)
* Fix get_relative_time_option for byte string input. Also fix it for None input.

* Using correct property for invalid_at check.

* Fix invalid_at comparison.

* Converting relative timestamps before comparison for valid_at and invalid_at.

* Fixing key usage display for cryptography backend.

* Fix key usage comparison. OBJ_txt2nid always returns 0 for key usage identifiers.

* Add changelog.

* Fix pyOpenSSL key usage comparison.
5 years ago
Felix Fontein cf69b73c04
openssl_certificate/csr_info: add ordered issuer/subject return value (#60708)
* Add ordered issuer/subject return value.

* Add changelog.
5 years ago
Lukas Kämmerling 100b56439e hcloud_server: Allow users to enable/disable the rescue mode (#60070) 5 years ago
Mitsuru Nakakawaji 064cd63f3d fix: docker_swarm_service does not publish both tcp and udp ports (#60616)
* fix: docker_swarm_service does not publish both tcp and udp ports for same published port

* fix the linting problems and add the changelog fragment.

* add test

* modify test to ensure result rather than return value
5 years ago
Felix Fontein 48541910bf
docker_container: add mount endpoint collision detection (#60384)
* Add mount endpoint collision detection.

* Add changelog.

* Fix error.
5 years ago
Gonéri Le Bouder c60676a118 VMware: add a changelog entry for PR #60476 (#60490)
Add a changelog entry for https://github.com/ansible/ansible/pull/60476.
5 years ago
Patrick Marques 39d249155a Deprecates Digital Ocean sshkey_facts in favor of new module sshkey_info (#60546)
* Renames Digital Ocean sshkey_facts modules to sshkey_info

* Change digital_ocean_sshkey_facts status to deprected

* Update digital_ocean_sshkey _facts _info doc

* Allow digital_ocean_sshkey_info in Check Mode

* Update lib/ansible/modules/cloud/digital_ocean/_digital_ocean_sshkey_facts.py

Co-Authored-By: Felix Fontein <felix@fontein.de>

* Fix _info added version
5 years ago
Simon Dodsley 491a47c7c5 Pure modules: rename _facts with ansible_facts result to _info (#60641) 5 years ago
Matt Clay 25b20adb94 Fix git module when using absolute repo path.
This prevents a traceback when `repo` is set to an absolute path.
5 years ago
Felix Fontein 99fb0fcb2f docker_logout: report change on successful logout (#60381)
* Mark logout as changed when docker logout does not return 'Not logged in to '.

* Add changelog.

* Improve logout detection.

* Also return output of 'docker logout'.
5 years ago
Sam Doran 0f35e4b7b9 apt_facts - Fix cache related performance regression (#60511)
* apt_facts - Fix cache related performance regression

* Another minor performance improvement
5 years ago
Jordan Borean 14a7722e39
ansible-galaxy tidy up arg parse with better validation (#59957)
* ansible-galaxy tidy up arg parse with better validation

* Add support back in for -v before sub aprser

* Added deprecation warning for manually parsed verbosity
5 years ago
pguermo 8923d13537 proxmox_kvm: While a VM is beeing created, vm has no name item (#58196)
* While a VM is beeing created, vm as no name attribute

* Add changelogs fragment
5 years ago
Matt Martz ba81084a49
Provide nice error when the shell plugin is incompatible with the con figured become plugin (#60441)
* Provide nice error when the shell plugin is incompatible with the configured become plugin. Fixes #57770

* Add todo

* Add missing import
5 years ago
Shaun M fa783c027b Adding waiter to cluster remove process (#57324)
* Adding waiter to cluster remove process

* blank line contains whitespace

* update aws_eks integration test

* Refactor aws_eks test suite to use pip

* update version testing

* missing parens...

* add changelog fragment

* Add waiter to module_utils, fix exception handling.

* Correct EKS waiter checks
5 years ago
Felix Fontein 2d98734ad5 Amazon modules: rename _facts with ansible_facts result to _info (#60178)
* aws_s3_bucket_facts -> aws_s3_bucket_info

* cloudformation_facts -> cloudformation_info

* cloudfront_facts -> cloudfront_info

* ecs_service_facts -> ecs_service_info

* efs_facts -> efs_info

* Add changelog and porting guide entry.

* lambda_facts -> lambda_info

* Improve examples.

* Add subsection on renamed modules.

* Add sentence on registering variables.

* Fix ReST.

* Instead of renaming lambda_facts, deprecate it and replace with new module.

* Rename internal variable.

* Re-add sanity ignores for lambda_facts.
5 years ago
Matt Davis a40baf22fa
various mod_args fixes (#60290)
* various mod_args fixes

* filter task keywords when parsing actions from task_ds- prevents repeatedly banging on the pluginloader for things we know aren't modules/actions
* clean up module/action error messaging. Death to `no action in task!`- actually list the candidate modules/actions from the task if present.

* remove shadowed_module test

* previous discussion was that this behavior isn't worth the complexity or performance costs in mod_args

* fix/add test, remove module shadow logic

* address review feedback
5 years ago
sky-joker c27b5ae1a3 add option proxy to get_certificate module (#60076)
* add option proxy to get_certificate module

* Add python 2.7 or higher to requirements

* Modify requirements and add create_default_context module import check processing

* add changelog file for get_certificate

* Modify changelog file
5 years ago
James Cassell 8bca160363 add vfat to selinux special_context_filesystems (#59823)
vfat is the format of the /boot/efi partition on UEFI hosts and does
not support SELinux labels

add an environment variable for this config option
5 years ago
Pavan Bidkar 0a90ec90c0 VMware: handle KeyError in get_vm API (#60204)
Fixed if conditions for all VM params
5 years ago
Maxim Babushkin dda80c46e9 openssh_keypair - Add key ``comment`` to return output (#59268)
If the comment will be provided during the key creation, it will be
diplayed in the return values.
Same will be on the comment change.
5 years ago
Maxim Babushkin 27e414200f openssh_keypair - Add public key and key comment validation (#57993)
- Split the key validation to separate private and public.
- In case public key does not exist, recreate it.
- Validate comment of the key.
- In case comment changed, update the private and public keys.
5 years ago
Felix Fontein 8b68feb67e
acme_certificate: allow to download alternate certificate chains (#56334)
* Improve link handling.

* Also fetch alternate certificate chains.

* Add retrieve_all_alternates option.

* Simplify code.

* Forgot when condition.

* Add tests for retrieve_all_alternates.

* Fixes.

* Moved utility function for link parsing to module_utils.

* Fix grammar.
5 years ago
Alex Stephen 2e90efd4a7 Changing GCP Facts modules to Info Modules (#60172)
* file changes, porting guide, changelog fragment, renaming autoscaler, removing rst links
* Apply suggestions from code review

Co-Authored-By: Alicia Cozine <879121+acozine@users.noreply.github.com>
Co-Authored-By: Felix Fontein <felix@fontein.de>
5 years ago
Toshio Kuratomi 84e3c0ef1d Fix changelog entry for playbook_dir fix
The final version of the fix makes the addition in two places instead of
moving the single addition from one place to another
5 years ago
Jordan Borean dbd082efe4
Ansible.AccessToken - Added shared util for managing a Windows access token (#60302)
* Ansible.AccessToken - Added shared util for managing a Windows access token

* Fix tests when running in CI

* More fixes for older servers

* More fixes for Server 2008
5 years ago
Andrew Gaffney b38cb37728
Transform octal escape sequences in mtab fields (#60122) 5 years ago
Matt Martz 707e33793d
Undeprecated the skip argument for first_found. Fixes #58942. Fixes #59949. (#60161) 5 years ago
James Cassell c954c07271 TRANSFORM_INVALID_GROUP_CHARS: document "ignore" option (#57318)
Co-Authored-By: Alicia Cozine <879121+acozine@users.noreply.github.com>
5 years ago
Strahinja Kustudic 54d9d7805d systemd module will now wait on deactivating state (#59471)
If a service is in the 'deactivating' state running systemctl stop foo,
would wait for the foo service to actually stop before it exits. The
module didn't behave like that and it considered the deactivating state
as if the service wasn't running. This change will align the module with
the systemctl behaviour.
5 years ago
Jiri Hnidek 577bb88ad8 Added support for syspurpose to redhat_subscribtion module (#59850)
* Added several unit tests
* Added documentation for new syspurpose option and suboptions
* Simplified specification of module arguments
* Added new changelog file with fragments
5 years ago
Drew 6932a5b357 add npipe support to docker_swarm_service (#60073)
* add npipe support to docker_swarm_service

* add changelog fragment

* tweak changelog fragment formatting

* Update lib/ansible/modules/cloud/docker/docker_swarm_service.py

Co-Authored-By: Felix Fontein <felix@fontein.de>
5 years ago
Manu Lange 6a5cd9a820 prevent recursive logging csharp stackoverflow. (#59503)
* prevent recursive logging situation.

* Add changelog
5 years ago
silverwizard 5d8302120b Removed breaking type check from nagios module (#49568)
* Removed extraneous type check from nagios module, in order to allow python 3.x

* Removed now useless import types

* Added changelog fragment

* Update changelog.

* Rebased and removed check due to module adding earlier guardrails

* Updated changelog to mention earlier fix adding now completely removed guardrails

* Remove superfluous type checks. Fix docs type.

* Update ignore.txt.
5 years ago
Jill R 4308b87d72 Don't truncate cidr_ipv6 addresses in ec2_group.py (#59106)
* Better cidr_ipv6 validation in ec2_group.py

* Improve warning/error handling, add changelog

* Update unit test for ipv6 validation

* Fix logic that was causing non /128 cidrs with host bits to not be handled
5 years ago
Marat Sharafutdinov 8751319820 Add wait_sleep parameter for the k8s module (#59714) (#59854) 5 years ago
Jordan Borean 45d0e5994a
win_user - use proper error code when failing to validate creds (#60181) 5 years ago
Matt Martz 923e21836b
Move plugin loader playbook dir additions back to Playbook instead of PlaybookCLI (#59557)
* Move plugin loader playbook dir additions back to Playbook instead of PlaybookCLI. Fixes #59548

* Restore cli additions
5 years ago
Alex Stephen 61d60d07d1 no logging for service account contents (#60149)
* no logging for service account contents

* changelog

* fixes
5 years ago
Abhijeet Kasurde 2a1393e0e1
VMware: Check dvswitch presence before accessing it (#60052)
Check if dvswitch object is not None before accessing it's
properties such as UUID. This can be due to two reason

1. Permission issues
2. There is no association between given distributed virtual portgroup
distributed virtual switch

Fixes: #59952

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
5 years ago
Felix Fontein aecdfd397e ecs_taskdefinition_facts: rename to ecs_taskdefinition_info (#60023)
* Rename ecs_taskdefinition_facts to ecs_taskdefinition_info.
5 years ago
Matt Martz df6b8d2a4a
Fix async output with adhoc callbacks. Fixes #15988 (#59935) 5 years ago
Sam Doran 6e8798fa88 Correct module name in changelog fragment (#60029) 5 years ago
Sam Doran a9fe21bc62
docker_compose - use valid variable in exception message (#60020) 5 years ago
Matt Martz 38eee51057
Fix issue with empty cow_whitelist (#59946)
* Fix issue with empty cow_whitelist. Fixes #45631

* Account for None
5 years ago
Felix Fontein f3e20346cb
Google: gcpubsub_facts -> gcpubsub_info (#57668)
* Rename gcpubsub_facts -> gcpubsub_info.

* Update porting guide and add changelog fragment.
5 years ago
Dave Bendit fc558fb85f [docker_container] Adding support for `mounts` option (#49808)
* [WIP][docker_container] Adding support for `mounts` option

Fixes #42054

* Adjusting to current standards.

* Add changelog.

* Adjust types.

* Cleanup.

* Add idempotency checks for mounts.

* Improve diff for mounts.

* Linting.

* Python 2.6 compatibility.

* Fix error message formatting.

* Move mounts and volumes tests into own file.

* Add set of mount tests.

* Golang's omitempty for bool omits false values.

* Simplify sanity checks. Correct order of volume_options sanitization and usage.

* Fix key.

* Fix check.

* Add tests where both volumes and mounts show up.

* Add collision test.
5 years ago
Felix Fontein a7573102bc
docker_container: fix port bindings with IPv6 addresses (#59715)
* Pass IPv6 addresses for port bindings without square brackets.

* Add changelog.

* Add test.
5 years ago
Ruediger Pluem f94772f807 Only error out if the gid exists with a different group name (#59769)
Only error out if the gid exists with a different group name as
otherwise it will error out if the group with this gid already
exists, like on a rerun of the playbook. This fixes a regression
introduced by 4898b0a4a2.
5 years ago
Sam Doran 372f21e3b5 Handle new output for podman image build (#59807) 5 years ago
James Cassell 17f2b5f73e os_subnet: allow using non-default subnet pool (#52608) 5 years ago
Abhijeet Kasurde 025e30ea0c VMware: add support for http_proxy in connection API
This commit allows users to access a vCenter or a ESXi through a
HTTP CONNECT based proxy.

To do so, the users have to set the `proxy_host` and `proxy_port`
variables.

The can also use the `VMWARE_PROXY_HOST` and `VMWARE_PROXY_PORT`
environment variables.

This feature depends on pyvmomi > v6.7.1.2018.12.

Fixes: #42221

Co-Author: Abhijeet Kasurde <akasurde@redhat.com>
Co-Author: Gonéri Le Bouder <goneri@redhat.com>
5 years ago