Commit graph

48591 commits

Author SHA1 Message Date
Gonéri Le Bouder
974e8cec3d
prepare_vmware_tests: run test w/ just 1 vcsa (#65433)
Add the ability to run test with just a VCSA instance. This allow us to
test a subset of tests that don't need any ESXi nodes.
2019-12-03 11:17:06 -05:00
Kiyo Nagamine
daecbb9bf0 Ensure allow_duplicates: true enables to run single role multiple times (#64902) (#65063)
* Ensure `allow_duplicates: true` enables to run single role multiple times(#64902)

* Changed return value in `_load_roles` . Fixes #64902

* Add changelog fragment

* Add an integration test for the issue

* Fix changelog generation error and integration test.

* Fix yaml syntax error in changelog fragment
2019-12-03 10:21:54 -05:00
Felix Fontein
4be8b2134f Sanity checks: make sure that required in argument spec coincides with documentation (#65437)
* Add sanity test for required parameters, update ignore.txt, and add changelog.
2019-12-03 09:15:07 -06:00
Yanis Guenane
c19949706f vyos: Make vyos related yaml file passing yamllint (#65449) 2019-12-03 09:34:35 -05:00
Felix Fontein
ae4363f6d1
openssl_csr: make sure privatekey_path is specified when state is present (#65435)
* Make sure privatekey_path is specified when state is present.

* Add changelog.
2019-12-03 14:08:26 +01:00
Nilashish Chakraborty
d82361a709
Fix exos_lldp_interfaces support status (#65428)
Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-12-03 13:47:32 +05:30
Fabrice
49b457016e k8s: persist refreshed tokens (#63219)
When the ansible k8s module is refreshing the tokens from the local kube
config, it should save those token to the kube config file.

If this is not done, this might break the next kube client call as the
token in the local kube config file is not valid anymore and refreshing
can fail.

This commit is adding an env var K8S_AUTH_PERSIST_CONFIG that can be
used to set this flag to true (default is false, same as current
behavior).
2019-12-03 12:22:26 +10:00
Jordan Borean
8648003c1f
ansible-galaxy - Add User-Agent to requests (#65438) 2019-12-03 10:04:41 +10:00
Bruno Meneguello
6075536907 route53_info: add pagination support to list (#60433) 2019-12-02 15:33:59 -07:00
Jordan Borean
6586b7132c
galaxy - print HTTP reason on unknown error (#65273) 2019-12-03 07:36:05 +10:00
Sam Doran
0e5a83a1cc
Add Fedora 31 to the test matrix (#64848)
* Add Fedora 31 to the test matrix

* Remove Fedora 29 from the test matrix
2019-12-02 15:54:32 -05:00
Prasad Katti
37ce55fd79 lightsail - Use AnsibleAWSModule (#65275)
* lightsail - Use AnsibleAWSModule

- Use AnsibleAWSModule
- Refactor the logic for wait into a separate function (Fixes #63869)
- Handle exceptions in find_instance_info and add a fail_if_not_found parameter
- Add a new state `rebooted` as an alias for `restarted`. AWS calls the action Reboot.
- Add required_if clause for when state is present

* lightsail - Use the default keypair if one is not provided

* lightsail - add a required_if for when state=present

* Update short description for lightsail module
2019-12-02 13:12:44 -07:00
Mario Lenz
02e7c5a19f vmware_datastore_cluster: Added SDRS configuration (#65193) 2019-12-02 15:02:50 -05:00
Jordan Borean
694ef5660d
Fix using a URL for galaxy collection install (#65272)
* Fix using a URL for galaxy collection install

* Update lib/ansible/galaxy/collection.py

Co-Authored-By: Sloane Hertel <shertel@redhat.com>
2019-12-03 04:55:31 +10:00
Sandra McCann
41472ee387 Describe different ways to set connection timeout options (#65126)
* add timeout option examples, link to new section, implement feedback
2019-12-02 10:42:45 -06:00
Jiri Tyr
a8ef5d5034 VMware: Autoselect datastore only from the given cluster/ESXi (#43435)
* Autoselect DS only from the given cluster/esxi
* Run tests only on real vCenter
2019-12-02 21:53:08 +05:30
Will Brock
5942e7f2a2 Fix type in svn documentation path (#65353) 2019-12-02 09:55:02 -06:00
Sam Doran
21bbf49396 Mention Python builtin methods in filter docs (#65425) 2019-12-02 09:44:59 -06:00
林博仁(Buo-ren Lin)
8ebc57c186 Mention that Python keywords are invalid Ansible variable names (#65094)
* Mention that Python keywords are invalid Ansible variable names
Using a Python keyword as a variable name triggers the error `Invalid variable name in 'register' specified: 'return'`.
2019-12-02 09:42:40 -06:00
Andrey Klychkov
0cadb952f9 postgresql_ext: use query_params (#64994)
* postgresql_ext: use query_params

* added changelog
2019-12-02 13:32:25 +00:00
Kaarle Ritvanen
c53b8030ab lbu module: Alpine Linux Local Backup Utility (#62584) 2019-12-02 19:00:09 +05:30
Pavan Bidkar
a8f1c85a20 VMware: Updated module compatibility with vsphere version. (#65419)
Update vmware_content_deploy_template module compatibility with vSphere version.
2019-12-02 18:57:56 +05:30
Felix Fontein
08b53b94a9 acme_certificate: Fix ACME v1 support when modify_account is set to false (#64648)
* Fix ACME v1 when modify_account is set to false.

* Add changelog.
2019-12-02 03:35:49 -05:00
Felix Fontein
5f6057598e Hetzner: dedicated server firewall module (#65399) 2019-12-02 09:19:49 +01:00
Maxim Babushkin
da73bbd73c openssh_keypair - Add logic to handle password protected or broken key (#64436)
* The ssh key may be created manually prior the task execution with a
  passphrase. And the task will be executed on the same key.
* The ssh key may be broken and not usable.

The module will check the private key and if the key is password
protected or broken, it will be overridden.
The check of the ssh key performed by retrieve the public key from the
private key.

Set the "self.force" check before the "isPrivateKeyValid" check.
In case of any issue with the "isPrivateKeyValid" function, the user
will be able to force the regeneration of the key with the "force: yes"
argument.
2019-12-02 08:12:38 +01:00
Hans Jerry Illikainen
a0b8b85fa5 ufw: add support for interface_in and interface_out (#65382)
* ufw: escalate privileges in integration tests

A few of the integration tests for the UFW module forgot to `become`.
This is problematic if the test suite is executed as a non-privileged
user.  This commit amends that by adding `become` when appropriate.

* ufw: add unit tests for direction and interface

Extend the unit tests for the UFW module to test the `direction` and
`interface` parameters.  This will help in the implementation of a fix
for issue #63903.

* ufw: add support for interface_in and interface_out

The UFW module has support for specifying `direction` and `interface`
for UFW rules.  Rules with these parameters are built such that
per-interface filtering only apply to a single direction based on the
value of `direction`.

Not being able to specify multiple interfaces complicates things for
`routed` rules where one might want to apply filtering only for a
specific combination of `in` and `out` interfaces.

This commit introduces two new parameters to the UFW module:
`interface_in` and `interface_out`.  These rules are mutually exclusive
with the old `direction` and `interface` parameter because of the
ambiguity of having e.g.:

    direction: XXX
    interface: foo
    interface_XXX: bar

Fixes #63903
2019-12-02 08:01:44 +01:00
Shachaf92
03dce68227 win_disk_facts - Set output array order to be by disk number property (#64997)
* win_disk_facts - Set output array order to be by disk number property - https://github.com/ansible/ansible/issues/63998

* Update win_disk_facts.ps1
2019-12-02 06:54:18 +10:00
Shachaf92
d8982b4992 win_nssm - Implement additional parameters (#65131)
* win_nssm - Implement additional parameters

* Update win_nssm.py

* Snake case change

* Update win_nssm.py

* Update win_nssm.ps1

* Remove duplicated executable option

* Added default values for new options
2019-12-02 06:49:07 +10:00
Hans Jerry Illikainen
2acfa0e08c Add passphrase support for luks_device (#65050)
* Elevate privileges for luks_device integration tests

Several tests in `key-management.yml` don't `become` before executing,
despite needing elevated privileges.  This commit fixes that.

* Add passphrase support for luks_device

Previously, the luks_device module only worked with keyfiles.  The
implication was that the key had to be written to disk before the module
could be used.

This commit implements support for opening, adding and removing
passphrases supplied as strings to the module.

Closes #52408
2019-11-30 20:50:30 +01:00
Abhijeet Kasurde
0d34a2ecee
syspatch: Check for apply=no condition (#65350)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-11-30 19:39:54 +05:30
mrdrogdrog
38193f6b60 proxmox: fix proxmox 6 version detection by using LooseVersion (#59165)
* proxmox: use 'release' key for version detection if possible

* proxmox: fix PEP issues

* add changelog fragment

* Uses LooseVersion for proxmox version detection

* move imports

* removes useless comment
2019-11-29 18:16:40 +01:00
Gonéri Le Bouder
0407af936a
vmware/test: switch the ro of the two datastore (#65356)
The `ro_datastore` was actually using the value of `rw_datastore`.
2019-11-29 10:23:57 -05:00
Mads Jensen
d335d7a62c Use context manager for mssql and postgresql modules. (#65224) 2019-11-29 00:37:23 -05:00
Mario Lenz
deb0cbbf73 VMware: Fix vmware_host_dns examples (#65355)
Added type in example sections
2019-11-29 06:50:33 +05:30
ngp-star
34ecd6cb25 VMware: Update hostname when VM is cloned (#65037)
Fixes: #57873
2019-11-28 16:43:46 +05:30
Andrey Klychkov
6ae01d4fbd postgresql_owner: use query_params with cursor (#65310)
* postgresql_owner: use query_params with cursor

* add changelog fragment
2019-11-27 10:42:26 +00:00
Netmonk
8d6192d61e adding encoding dump/import support for the mysql_db module, with upd… (#65228)
* adding encoding dump/import support for the mysql_db module, with updated documentation, and full test suite

* fixing lint issue test #3

* fixing lint issue test #1

* fixing lint issue test #1 second time

* Improving Test to be re-entrant

* improving test to not fail on centos/6

* Update test/integration/targets/mysql_db/tasks/encoding_dump_import.yml

Comminting suggestion

Co-Authored-By: Benjamin MALYNOVYTCH <bmalynovytch@users.noreply.github.com>

* Update test/integration/targets/mysql_db/tasks/encoding_dump_import.yml

comminting suggestion

Co-Authored-By: Benjamin MALYNOVYTCH <bmalynovytch@users.noreply.github.com>

* adding comment

Adding comment to explain test strategy

* Update test/integration/targets/mysql_db/tasks/encoding_dump_import.yml

Co-Authored-By: Benjamin MALYNOVYTCH <bmalynovytch@users.noreply.github.com>

* Update test/integration/targets/mysql_db/tasks/encoding_dump_import.yml

Co-Authored-By: Benjamin MALYNOVYTCH <bmalynovytch@users.noreply.github.com>

* Update test/integration/targets/mysql_db/tasks/encoding_dump_import.yml

accepted

Co-Authored-By: Andrey Klychkov <aaklychkov@mail.ru>

* Update test/integration/targets/mysql_db/tasks/encoding_dump_import.yml

Co-Authored-By: Andrey Klychkov <aaklychkov@mail.ru>

* Update encoding_dump_import.yml

* Fixing typoo
2019-11-27 10:41:55 +00:00
mmallet
8df03a6f6e azure_rm_virtualmachine: Fix VHD URI valid schemes in extract_names_from_blob_uri (#64507)
When a VM has been provisioned with unmanaged disks (VHD), the URI
schemes used for those disks are kept untouched. Unfortunately, the regexp that
parses the URI only accepts 'https' leading the module to fail if one
uses for instance 'http'.

Please note that the official Azure API documentation uses 'http' and
not 'https' as URI scheme.

Resolves #64506

Testing Done: Using an ARM template, provision a VM with one OS and one
data disk with 'http' as VHD URI scheme. Then use the
azure_rm_virtualmachine module to delete the VM. Finally check that the
module does not fail anymore and that the unmanaged disks are correctly
deleted from the storage account.
2019-11-27 15:55:06 +08:00
mmallet
7c65ad11e2 azure_rm_storageaccount_info: Fix list_all method (#64321)
The 'azure_rm_storageaccount_info' module was calling the storage client
'list_by_resource_group()' method rather than the 'list()' one, leading
to callers not being able to fetch all the storage accounts of their
subscription.

Issue: #64319

Testing Done: was successfully able to call the module and retrieve
all the storage accounts in the subscription without having to
specify a resource group.
2019-11-27 15:53:51 +08:00
mmallet
4b240a5d74 Azure RM: Fix missing ipConfiguration 'primary' attribute (#63722)
If a NIC has no primary ipConfiguration, the 'primary' field returned
by Azure is set to 'null' thus removed from the 'nic_model'
ipConfigurations properties. Unfortunately the code generating the
hostvars dict. assumes the 'primary' key always exists, leading the
entire host parsing to fail.

This patch changes the way the 'primary' field is accessed by using the
dict. 'get' method with a default value set to 'False'.

Resolves #63721

Testing Done: Run ansible-inventory with an azure_rm plugin that points
to a resource group that contain a two VMs, on with a primary
ipConfiguration and another one without. Check that without the patch
the inventory output does not contain the VMs (or just the one with the
primary ipConfiguration set, depending on the VM names). Finally check
that with the patched azure_rm.py file, both VMs show up.
2019-11-27 15:53:05 +08:00
JeferCatarina
4c589661c2 Fixed want_facts in the foreman inventory plugin - fixes #65111 (#65114)
* Replaced 'ansible_facts' by 'foreman_facts'

'foreman_facts' is the key that the foreman inventory script used
'ansible_facts' is a special key that is overwritten internally and has never worked in this inventory plugin

* Added changelog
2019-11-26 13:41:28 -05:00
Niklas Liechti
39ebd244e3 Update playbooks_filters.rst (#64769) 2019-11-26 13:39:12 -05:00
Andrew Schultz
756ac826fe Improve ignore_unreachable documentation (#64938) 2019-11-26 13:35:02 -05:00
majerus1223
2460470ae7 Add an example for mounting NFS. (#64974) 2019-11-26 13:30:37 -05:00
Andrew N Golovkov
12670f5a80 all modules documentation should be valid yaml data (#64838) 2019-11-26 13:18:16 -05:00
Abhijeet Kasurde
8d0c2cd4d5 include_vars: Check NoneType for raw_params (#64979)
Lookup 'first_found' returns empty list which results in
raw_params checking. Check NoneType for 'raw_params' before
proceeding.

Fixes: #64939

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-11-26 13:11:02 -05:00
Toshio Kuratomi
a15fb2637d Add or later to the license expressed in the README
This is a clarification, not a relicensing.

Our source code says "GPLv3+" or "version 3 of the License, or later".
Our documentation says GPLv3+:

https://github.com/ansible/ansible/blob/devel/docs/docsite/rst/dev_guide/developing_modules_checklist.rst#contributing-to-ansible-objective-requirements

We were just lazy when we wrote the README and left out the "or later".
this update to the README brings it in line with what everything else
says.
2019-11-26 08:33:41 -08:00
Jill R
ee413fe414 Allow updating of ec2_group rules with EC2 classic ELB targets (#62374)
* Allow updating of ec2_group rules with EC2 classic ELB targets

Fix regression introduced in #45296 with EC2 Classic SGs

Fixes: #57247

Also add (unsupported) ec2 classic test suite with test case for this scenario

* move ec2 classic tests to conditional within ec2_group target

* clean up ec2_classic tests

* ec2_classic account can't run most ec2_group tests
2019-11-26 11:29:03 -05:00
Ulf Tigerstedt
a67ff91032 Fixed some documentation for postgresql_slot (#65278) 2019-11-26 09:30:47 -05:00
Xu Yuandong
7f97f86303 add a new module to configure multicast igmp and enable it. (#63746)
* add a new.

* import-error

* update docs.

* add unittest.

* Update test_ce_multicast_igmp_enable.py

* add a ihtegration test.

* update for review.

* update for review.

* add notes.
2019-11-26 11:38:30 +00:00