Commit graph

6965 commits

Author SHA1 Message Date
Brian Coca
eca7c3c8c7 Prevent duplicate role insertion into roles: (#50552)
* Corner case in which import_role would add another instance of a role with the same signature into roles: when it already existed there.

  roles:
	- name: a
  tasks:
       - import_role: name=a

  would execute role 'a' 3 times instead of the intended 2 (x2 in roles: phase +1 in tasks:)

* added tests
2019-01-16 13:39:03 -05:00
Alex Stephen
5137bd5958 Bug fixes for GCP modules (as of 2019-01-09T15:35:45-08:00) (#50786) 2019-01-16 12:58:57 -05:00
Dag Wieers
a79441ca30
Rename MSC modules to MSO nomenclature (#50959)
* msc_tenant: improve docs

* Rename MSC modules to MSO

* Rename MSC-related objects to MSO nomenclature

* Add missing doc fragments
2019-01-16 14:53:38 +01:00
Ricardo Carrillo Cruz
ac61c99821
Add checkpoint_session module (#50930)
* Add checkpoint_session module

* Add unit test

* Fix pep8

* Rename Checkpoint for Check Point
2019-01-16 13:19:36 +01:00
Hannes Ljungberg
d264bf4f4e docker_swarm_service: Add option tests (#50699)
* Add option tests

* Check for api version on publish

* Enable configs tests

* Remove unsupported test

* Let main.yml hande creation/destruction of swarms

* Revert "Remove unsupported test"

This reverts commit 50f46bb04ef679f4235cda805188dca769ca2f72.

* Revert "Enable configs tests"

This reverts commit a94054b0bb5a3d77632bbe5aa352a8774cf93d96.

* Fix typo to properly clear secrets
2019-01-16 03:50:06 -05:00
Matt Clay
1d51c425ba Add missing file deps to vmware_inventory test. 2019-01-16 00:49:18 -08:00
Matt Clay
6842c0467f Fix ansible-test handling of empty test targets.
Previously empty test targets were ignored by ansible-test.
This would prevent them from participating in dependency analysis.
These targets are actually empty roles, and should be processed as such.
2019-01-16 00:03:43 -08:00
Matt Clay
eee3dc888b Pass ansible-test inventory path to test funcs.
This avoids declaring the inventory path/names in multiple places.
Also expose the inventory path using the INVENTORY_PATH env var.
2019-01-15 18:07:13 -08:00
Matt Clay
4d546398fd
Further cleanup of integration test inventory. (#50919)
* Further cleanup of integration test inventory.
* Preserve aci and msc inventory in template.
* Update ansible-test inventory template handling.
* Fix classification of inventory file.
2019-01-15 16:42:49 -08:00
Matt Clay
634533208e Fix integration test shebangs and update tests.
* Integration tests now have their own list of allowed shebangs.
* Use `#!/usr/bin/env bash` instead of `#!/bin/bash`
  since the location is different on various platforms.
2019-01-15 14:08:26 -08:00
John R Barker
721a28202e
Revert Debug: Size of coverage file #50380 (#50945) 2019-01-15 20:36:12 +00:00
Matt Clay
332dc6a93a Fix false positives in no-get-exception test. 2019-01-15 09:37:10 -08:00
Matt Clay
bca50b47ed Switch set_fact test to private inventory.
Fixes a test failure when there is no explicit localhost in inventory.
2019-01-15 00:32:27 -08:00
Matt Clay
6a0452559b Handle non-target file deps for integration tests.
Some integration test targets have dependencies on files outside
the `test/integration/targets/` directory tree. Changes to these
dependencies can result in unexpected test failures since they do
not trigger integration tests which depend on them.
2019-01-14 23:58:10 -08:00
Jordan Borean
3db6b9b416
ansible-test git: kill gpg-agent to remove locks (#50917)
* ansible-test git: kill gpg-agent to remove locks

* skip gpg-agent kill for OpenSUSE
2019-01-15 17:26:03 +10:00
Jordan Borean
03669cdcdd
ansible-test: fix cloud_init_data_facts for Ubuntu 18.04 (#50916) 2019-01-15 14:58:43 +10:00
Jordan Borean
a54eb58156
ansible-test: fix dpkg_selections on Ubuntu 18.04 (#50915) 2019-01-15 14:37:20 +10:00
Matt Clay
7b4bc572de
Fix ansible-test target dependency issues. (#50908)
* Log dependencies at verbosity level 4.

This makes it easier to debug target dependency issues.

* Scan symlinks for target dependencies.

Some test targets use symlinks to files in other test targets.
These dependencies were previously undetected. This could result in
changes made to dependencies without triggering the dependent tests.

* Track missing target deps with `needs/target/*`.

Some existing test targets have untracked dependencies on other
test targets. This can result in changes to those dependencies
not triggering their dependent tests, resulting in test failures
after a PR is merged.

This PR adds the appropriate `needs/target/*` aliases to track
those dependencies, along with appropriate processing in
ansible-test to handle the new aliases.

* Scan meta dependencies in script targets.

Script targets are often former role targets which were converted
to allow custom invocations of ansible-playbook. These targets still
have their meta dependencies, but they were not being detected.

This could result in changes to dependencies not triggering the
targets which depend on them.
2019-01-14 19:57:32 -08:00
Jordan Borean
8c5b2048de
ansible-test: add postgresql var file for Ubuntu 18.04 (#50914) 2019-01-15 13:39:42 +10:00
Matt Clay
dca4eb3dcd Delegate ansible-test with LC_ALL=en_US.UTF-8.
This fixes encoding issues in ansible-test when running tests in
delegated environments that do not have LC_ALL or LANG set by default.
2019-01-14 19:13:51 -08:00
Jordan Borean
518699988f
ansible-test: rename setup_mysql_db Ubuntu name to work with 18.04 (#50907) 2019-01-15 12:19:40 +10:00
Jordan Borean
bbad033a5e
ansible-test: apt cleanup and futher 18.04 fixes (#50906) 2019-01-15 11:16:15 +10:00
Matt Clay
35caebd036 Fix ansible-test dependency processing.
Previously, the following dependencies:

A used by B
B used by C

Would have been converted to:

A used by C
B used by C

Intead of being expanded to:

A used by B
A used by C
B used by C

This change preserves the existing dependency when expanding it.
2019-01-14 15:31:59 -08:00
Jordan Borean
2fcc3593cc
ansible-test setup_dep_repo trust package repo (#50795) 2019-01-15 09:02:32 +10:00
Bojan Vitnik
a69e9e3470 Updated test constraints for mock assert_called() and assert_called_once() 2019-01-14 14:17:01 -08:00
Matt Clay
465df0ef8d
Fix encoding issues with file paths. (#50830)
* Fix encoding issues with file paths.

Discovered while testing with ANSIBLE_CONFIG env var set to a path
that contained unicode characters while LC_ALL=C.

* Fix unit tests.

* Fix another path encoding issue.
2019-01-14 13:06:47 -08:00
Matt Clay
15b1a31aa8 Use different test package in pip test.
This avoids conflicts with other tests such as firewalld,
which use the decorator package installed using OS packages.
2019-01-14 13:02:51 -08:00
Strahinja Kustudic
eb8294e6d9 Fix create home dir fallback (#49262)
When a user home dir is not created with `useradd`, the home dir will now
be created with umask from /etc/login.defs. Also fixed a bug in which
after a local user is deleted, and the same user exists in the central
user management system, the module would create that user's home.
2019-01-14 16:01:26 -05:00
Jordan Borean
91522bd9c4
test subversion - support Ubuntu 18.04 (#50791) 2019-01-15 06:26:16 +10:00
Felix Fontein
bbd2e31e9f Revert "openssl_csr: Allow to use cryptography as backend (#50324)"
This reverts commit 409f8a15bd.
2019-01-14 09:10:38 -08:00
Karsten Jakobsen
53437e80d9 VMware: New module vmware_drs_group_facts (#50649)
* Added new vmware module for gathering facts for DRS groups
* Update lib/ansible/modules/cloud/vmware/vmware_drs_group_facts.py
* Updated doc
* Fixed integration test with mutual exclusive paramteres

Co-Authored-By: karstenjakobsen <karsten@karstenjakobsen.dk>
2019-01-14 21:56:12 +05:30
Karsten Jakobsen
8fa01a22a1 VMware: New module vmware_drs_group (#50650)
* Added new vmware module for creating DRS VM or Host groups in a given cluster
* Fixed typo in module name
* Added better docstrings. Fixed better messaging for existing groups. Added delete example.
* Update doc
* Update lib/ansible/modules/cloud/vmware/vmware_drs_group.py
* Updated logic, so result is populated with correct data even if no changes are made
* Update lib/ansible/modules/cloud/vmware/vmware_drs_group.py
* Improved performance by getting group_obj in init()
* Fixed syntax error and added group_name as required if state is
* Added state= to integration test

Co-Authored-By: karstenjakobsen <karsten@karstenjakobsen.dk>
2019-01-14 21:55:26 +05:30
Felix Fontein
409f8a15bd openssl_csr: Allow to use cryptography as backend (#50324)
* Allow to use cryptography as backend for openssl_csr.

* Use different curve.

* Adding changelog.

Includes changelog fragment for #49416, which didn't include one.
2019-01-14 13:33:51 +00:00
Ricardo Carrillo Cruz
18370419a3
Add forgotten checkpoint unit tests (#50858)
I forgot to do a git add on a couple unit tests it seems
2019-01-14 12:07:48 +01:00
Yuwei Zhou
eaf9da4dff Support curated return value for network interface and refine test (#50482) 2019-01-14 14:17:31 +08:00
Matt Clay
d59bc9ae48 Move unrelated connection test to separate target. 2019-01-11 15:27:06 -08:00
Felix Fontein
0e7a9a2771 docker_volume: revert #47390 (#50663)
* Revert "Fix option change detection / force support for docker_volume. (#47390)"

This reverts commit 8ef994fbc5.

* Update changelog.

* Adjusting tests.
2019-01-11 14:41:37 -06:00
Matt Clay
fd56788a14 Fix dpkg_selections integration test.
Download package from S3 since the previous location no longer exists.
2019-01-11 09:39:27 -08:00
hyperized
64bacb0e02 Setup TLS integration test for RabbitMQ (#50363)
* Make TLS available for RabbitMQ

* Use correct path

* Include cleanup

* Also remove unused package

* Don't generate a TLS cert every time if one already has been generated

* Add newlines, clean up repository and clarify block purpose

* One too many new lines :)

* Make TLS certs static
2019-01-11 17:25:04 +00:00
Roberto Polli
caa0c9d4cc Fixes #25725: strip quotes from lsb_release and distribution description. (#31143) 2019-01-11 12:07:26 -05:00
James E. King III
1ae365c112 azure_rm_managed_disk: properly handle os_type on creation and update (#49385) 2019-01-11 22:09:26 +08:00
Brian Coca
91d8383898 added missing docs for option in acl module (#50775)
* added missing docs for option in acl module
* remove acl from ignore
2019-01-11 09:49:43 +01:00
Yuwei Zhou
0f6252baf3 dns zone enhancement and return curated value (#50740) 2019-01-11 16:38:29 +08:00
Yuwei Zhou
9487815a26 azure virtualmachine scaleset supports loadbalancer update (#50132) 2019-01-11 16:33:13 +08:00
rajaspachipulusu17
ca74c443ba Pluribus Networks port config module (#50314)
* Pluribus Networks port config module

* Documentation fix for version added

* Doc fixes
2019-01-11 14:02:36 +05:30
rajaspachipulusu17
44febe4e56 Pluribus Networks port cos bw module (#50287)
* Pluribus Networks port cos bw module

* Indentation fix

* Documentation fix

* Corrected indetentation for required_one_of

* Added maintainer name in BOTMETA.yml

* Removed maintainer name in BOTMETA.yml as my team is already there
2019-01-11 14:00:10 +05:30
Yuwei Zhou
3e2e67c677 Add support for idle_timeout, version and ipTags, curated in facts module (#48923) 2019-01-11 13:36:50 +08:00
Matt Clay
6c7003127f Compare output as JSON to avoid sort issues. 2019-01-10 17:42:58 -08:00
Matt Clay
e5094e8071
Cleanup integration test inventory. (#50753)
* Move var_blending test inventory into test.
* Remove Amazon specific inventory entry for tests.
* Remove Azure specific inventory entry for tests.
* Move var_precedence test inventory into test.
* Move unicode test inventory into test.
* Remove unused inventory entry.
* Move gathering_facts test inventory into test.
* Move delegate_to test inventory into test.
* Clean up inventory for binary_modules test.
* Clean up integration test inventory.
2019-01-10 14:45:12 -08:00
Yuwei Zhou
07c6ce2dbf Curate the virtual network facts module (#50311) 2019-01-10 15:53:23 +08:00
rajaspachipulusu17
abdcf2a776 Pluribus Networks pn_dscp_map_pri_map module with Unit tests (#50142)
* Pluribus Networks pn_dscp_map_pri_map module with Unit tests
* Corrected method name in unit test script
2019-01-10 12:51:07 +05:30
Matt Clay
4915920d71 Use relative inventory paths instead of symlinks. 2019-01-09 19:10:34 -08:00
Matt Clay
c04b69208d Move any_errors_fatal test inventory into test. 2019-01-09 19:09:33 -08:00
Matt Clay
828e8d4957 Move include_import test inventory into test. 2019-01-09 19:09:33 -08:00
Matt Clay
dfc97dcefd Move meta_tasks test inventory into test. 2019-01-09 19:09:33 -08:00
Matt Clay
893548addb Move strategy_linear test inventory into test. 2019-01-09 19:09:33 -08:00
Yuwei Zhou
c405fe3098 azure_managed_disk enhancement (#50317) 2019-01-10 10:41:43 +08:00
Matt Clay
6179f2f51c
Merge pull request #50735 from mattclay/callback-inv
Move callback_default test inventory into test.
2019-01-09 18:00:17 -08:00
Matt Clay
39824f50b1 Disable retry files for integration tests. 2019-01-09 17:59:40 -08:00
Matt Clay
7995f69a44 Improve performance of no-tests-as-filters test. 2019-01-09 17:25:19 -08:00
Felix Fontein
c89d14da99 Add delay to fix spurious test breaks. 2019-01-09 14:04:40 -08:00
Matt Martz
6918b4e8f4
Add tests for WANT_JSON and old style modules (#50555)
* Add tests for WANT_JSON and old style modules

* quote source path

* Attempt to further appease tests

* Check for file and not just exists

* omg don't be dumb

* moar fixes

* shellcheck is the worst :)

* Test the custom modules for failure without arg files
2019-01-09 14:43:25 -06:00
Abhijeet Kasurde
17bb4f4932 default: callback plugin allow unreachable task to stderr (#50533)
Provide toggle flag to allow display of unreachable task to stderr
using default callback plugin.

Fixes: #48069

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-01-09 11:43:59 -05:00
Anil Kumar Muraleedharan
cb89b1758d Lenovo cnos l2interface (#50641)
* Adding cnos_l2 interface module and its associated Integration test as well as Unit test code
2019-01-09 10:46:56 -05:00
Anil Kumar Muraleedharan
f5ebd9736c Lenovo cnos banner new module (#50145)
* Adding cnos_banner module to the list.
2019-01-09 10:43:57 -05:00
Martin Krizek
4c72ef124b tqm._initialize_notified_handlers() is noop now (#50713) 2019-01-09 10:15:11 -05:00
jainnikhil30
cd27982959 Fixing exception import for tower modules (#50447)
* fixing the exception import from tower modules

* Adding tests for checking tower modules are failing with correct msg

* fixed failing tests

* fixed failing test in tower_team
2019-01-09 15:31:21 +01:00
Ricardo Carrillo Cruz
3e91ec28b8
Checkpoint access rule (#49937)
* WIP checkpoint_access_rule module

* Add fixes and docstrings

* Add dunder init

* Fix sanity tests issues

* Fix sanity test

* Add RETURN and EXAMPLES

* Fix example

* Fix pep8

* Add tests

* Fix pep8

* Fix pep8
2019-01-09 11:25:18 +01:00
Kairo Araujo
3ec469f904 Included support to AIX group of subsystems on service module (#33043)
* Included support to AIX group subsystems

AIX systems has subsystems as services but also uses group
subsystems.
For example, spooler is a group subsystem to services
qdaemon, writesrv, and lpd.
This change enables the possibility to use also the group
susbsystmes such as spooler, nfs, etc.

When the service name is informed, first the module will
check if the name is a subsystem, if not it will check if
the name is a group subsystem and also it subsystems states.

This change makes services more flexible with AIX systems.

* Included test/legacy/aix_services.yml for tests

As discussed on IRC ansible-devel channes, was include the
legacy tests for further manual tests.
2019-01-08 17:41:58 -05:00
Felix Fontein
b52d7d56d9 docker_network IPAM test / general docker test cleanup (#50499)
* Re-enable docker_network tests.

* Basic cleanup of docker daemon.

* Add docker CLI detection.

* YAML notation.
2019-01-09 08:18:51 +10:00
Matt Martz
9a520b26e3
Make sure to clean up even if an exception occurs (#50620) 2019-01-08 09:03:49 -06:00
rwinand
2dbade4adc Introduce 'insertbefore' and 'insertafter' to specify the position (#44811)
* Introduce 'insertbefore' and 'insertafter' to specify the position children have to be inserted.

* Added version_added to new options

* Xpath in example needs single quotes

* Added integration tests for insertafter and insertbefore

* Changed version_added to 2.8
2019-01-08 15:38:51 +01:00
Felix Fontein
fe4fa519d7 ufw: extend integration tests (#50400)
* Improve cleanup.

* Add check mode tests.

Failing tests commented out; will be fixed in #49948.

* Add reload and reset tests.

* Add tests for other global state.

* Work around ufw bugs.
2019-01-08 13:00:20 +00:00
Nilashish Chakraborty
7845373f96
New Module: vyos_ping (#50193)
* New module for vyos ping functionality

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Add some new parameters

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Need spaces

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix pylint errors

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix pylint errors

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix docs

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix docs

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix docs

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2019-01-08 10:42:24 +05:30
vpiserchia
774a667591 Add Devuan Support for ascii release - resolve 49615 (#49616)
* Add Devuan Support for ascii release - resolve 49615

* Devuan Ascii does not have the VERSION_ID in the /etc/os-release file, we need to set NA
2019-01-07 17:08:01 -05:00
Matt Clay
31c1bdd6a8 Fix run.py --branch argument.
The API docs state that both `branch` and `branchName` are valid,
but only `branchName` appears to work.
2019-01-07 13:56:35 -08:00
Gaudenz Steinlin
35f17bf4c2 Cloudscale volume (#49887)
* Cloudscale integration test setup

CloudProvider and CloudEnvironment classes for Cloudscale integration
tests. This also contains a cloudscale_common role with common
variables for all tests.

* cloudscale_volume module

New cloud module to manage volumes on the cloudscale.ch IaaS service.
2019-01-07 22:29:01 +01:00
René Moser
48ffe2f3b2
tests: vultr: convert legacy tests to targets (#50156) 2019-01-07 22:23:54 +01:00
Martin Krizek
6d604f9b01 Allow for vaulted templates in template lookup (#49819)
Fixes #34209
2019-01-07 10:06:01 -05:00
Ricardo Carrillo Cruz
f9079274e7
Checkpoint httpapi plugin (#49929)
* Add checkpoint httpapi plugin and access rule facts module

* WIP checkpoint_access_rule module

* Add publish and install policy, plus fix empty json object request for publish

* Refactor publish and install_policy onto module_utils

* Add update resource logic

* Add checkpoint_host_facts module

* Return code and response on get_acess_rule function

* Add checkpoint_host module

* Add checkpoint_run_script module

* Add checkpoint_task_facts module

* Show all tasks if no task id is passed

Note, this is only available on v1.3 of Checkpoint WS API

* Add update logic to checkpoint host

* Add full details on get task call

* Add checkpoint httpapi plugin

* Fix pep8

* Use auth instead of sid property and return False on handle_httperror method

* Fix version in docstring

* Remove constructor

* Remove Accept from base headers

* Do not override http error handler and assign Checkpoint sid to connection _auth

There is scaffolding in the base class to autoappend the token, given
it is assigned to connection _send

* Use new connection queue message method instead of display

* Remove unused display

* Catch ValueError, since it's a parent of JSONDecodeError

* Make static methods that are not used outside the class regular methods

* Add missing self to previously static methods

* Fix logout

Was carrying copy pasta from ftd plugin

* Remove send_auth_request

* Use BASE_HEADERS constant

* Simplify copyright header on httpapi plugin

* Remove access rule module

* Remove unused imports

* Add unit test

* Fix pep8

* Add test

* Add test

* Fix pep8
2019-01-07 14:02:29 +01:00
Zim Kalinowski
98b0ef370d
adding module azure_rm_virtualmachinescalesetinstance_facts (#50440) 2019-01-07 15:15:30 +08:00
rajaspachipulusu17
a1e1a42341 Pluribus Networks module for connection stat settings with UT's (#50186)
* Pluribus Networks module for connection stat settings
2019-01-07 10:40:39 +05:30
Kairo Araujo
fc6d85e4cf new module: Configure LVM and NFS file systems for AIX (#30810)
* new module: AIX LVM file system and NFS

This module creates, removes, mount and unmount LVM and NFS file system
for AIX using /etc/filesystems. For LVM file systems is also possible
to resize the file system.

* better parameters options structure

better parameters options structure

* Improved file system resize returns

Added better tratment for return codes for file system resize.
When a resize is not possible because no enough space on lv or
shrink is not allowed.

* improved doc and creation file system return code

- improved doc
- creation file system return code 10 was treated.

* Doc recomendations, dict result, line limit

- Added doc recomendations
- Changed return to dict results on main()
- Using 159 columns for code limit

* wrong changed return when file system is already

Fixed wrong changed return when file system is already mounted.
When the file system is already mounted the return for changed
is False.

* Fixed description and included playbook for tests

- Fixed description
- Included playbook for manual tests

* Various small bits to get this merged ASAP

* Rename test/legacy/aix_filesystem.yml to test/integration/targets/aix_filesystem/tasks/main.yml

Move integration test to its proper location

* Create aliases

* Fix CI issues
2019-01-05 02:18:12 +01:00
Wojciech Wypior
4648a441d2 adds bigip apm policy import (#50559) 2019-01-04 13:50:50 -06:00
Wojciech Wypior
8b1214596a adds apm policy fetch module (#50534) 2019-01-04 12:32:06 -06:00
Jordan Borean
b967f4dcc1 dnf/yum - added install_weak_deps option (#50525)
* dnf/yum - added install_weak_deps option

* skip creating weak dep packages if rpm doesn't support it

* fix rpm check for older hosts
2019-01-04 11:37:59 -05:00
Ganesh Nalawade
71113ee291
Fix backup issue in network config modules and network action plugins common code refactor (#50301)
* Fix backup issue in network config modules

*  Fix `get_working_path` not found issue introduced due to
   backup config code refactor (PR #50208)

*  Further refactor config related action plugins to minimize
   duplicate code

*  Remove unwated imports in config action plugins

* Add common network class for action plugin and related code refactor

* Fix review comment
2019-01-04 16:06:13 +05:30
Yunge Zhu
83da2de9a0
azure_rm_webapp: fix updating app settings (#49181) 2019-01-04 16:32:36 +08:00
Sumit Jaiswal
189fcb37f9
Added new module to support NIOS Fixedaddress DHCP property (#49119)
Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* nios fixedaddr new module

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* updating name

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* added unit tests

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2019-01-04 13:00:12 +05:30
Abhijeet Kasurde
bc6cd13874
Handle exception raised in recursive_finder API (#49590)
User module can contain Indentation errors or syntax errors.
Handle AST exceptions rather than showing traceback while importing such module.

Fixes: #21707

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2019-01-04 10:33:37 +05:30
Toshio Kuratomi
27c7d5bb01 Move the arguments module into cli/ and context_objects into utils
* Note: Python2 is not as intelligent at detecting false import loops as
  Python3.  context_objects.py cannot be added to cli/arguments because it
  would set up an import loop between cli/__init__.py,
  cli/arguments/context_objects.py, and context.py on Python2.

ci_complete
2019-01-03 18:12:23 -08:00
Toshio Kuratomi
7e92ff823e Split up the base_parser function
The goal of breaking apart the base_parser() function is to get rid of
a bunch of conditionals and parameters in the code and, instead, make
code look like simple composition.

When splitting, a choice had to be made as to whether this would operate
by side effect (modifying a passed in parser) or side effect-free
(returning a new parser everytime).

Making a version that's side-effect-free appears to be fighting with the
optparse API (it wants to work by creating a parser object, configuring
the object, and then parsing the arguments with it) so instead, make it
clear that our helper functions are modifying the passed in parser by
(1) not returning the parser and (2) changing the function names to be
more clear that it is operating by side-effect.

Also move all of the generic optparse code, along with the argument
context classes, into a new subdirectory.
2019-01-03 18:12:23 -08:00
Toshio Kuratomi
afdbb0d9d5 Save the command line arguments into a global context
* Once cli args are parsed, they're constant.  So, save the parsed args
  into the global context for everyone else to use them from now on.
* Port cli scripts to use the CLIARGS in the context
* Refactor call to parse cli args into the run() method
* Fix unittests for changes to the internals of CLI arg parsing
* Port callback plugins to use context.CLIARGS
  * Got rid of the private self._options attribute
  * Use context.CLIARGS in the individual callback plugins instead.
  * Also output positional arguments in default and unixy plugins
  * Code has been simplified since we're now dealing with a dict rather
    than Optparse.Value
2019-01-03 18:12:23 -08:00
Toshio Kuratomi
c18da65089 Add a CLIArgs Singleton class that will hold the parse cli arguments 2019-01-03 18:12:23 -08:00
Toshio Kuratomi
5844c8c7f0 Cleanups to the common.sys_info API
* Move get_all_subclasses out of sys_info as it is unrelated to system
  information.
* get_all_subclasses now returns a set() instead of a list.
* Don't port get_platform to sys_info as it is deprecated.  Code using
  the common API should just use platform.system() directly.
* Rename load_platform_subclass() to get_platform_subclass and do not
  instantiate the rturned class.
* Test the compat shims in module_utils/basic.py separately from the new
  API in module_utils/common/sys_info.py and module_utils/common/_utils.py
2019-01-03 16:21:09 -08:00
Jordan Borean
79dc9a75c3
ansible-test: docker_network set as untable (#50526)
* Revert "disable docker_network ipam tests (#50477)"

This reverts commit 4dd2b8e2d0.

* test - docker_network mark as unstable
2019-01-04 10:15:24 +10:00
Dag Wieers
f90ec17465
ACI: Implement encoded query_string (#50358)
This requires urldecode support in Ansible
2019-01-04 00:38:57 +01:00
Dag Wieers
f45c41ef3e urldecode filter for Jinja2 (#28503)
* urldecode filter for Jinja2

We needed this in order to deconstruct correct URLs using Jinja2.
And we might as well upstream this.

* Add integration tests

* Fixes for Python 3

* Add urlencode for older Jinja2
2019-01-03 18:06:13 -05:00
Matt Martz
3b49bbcfde Give IncludedFile more context via ansible_search_path (#50045)
* Give IncludedFile more context via ansible_search_path to template lookups. Fixes #49969

* Update units
2019-01-03 16:13:02 -05:00
Jordan Borean
6620facd19
ansible test: re-enable mysql tests with fix (#50430) 2019-01-04 07:12:30 +10:00
Jordan Borean
63e454a4b2 dnf - fix conf_file loading (#50515) 2019-01-03 15:25:58 -05:00
Sloane Hertel
d21ed42f4b
Add unstable alias to s3_bucket integration tests (#50508) 2019-01-03 14:15:45 -05:00
lolcube
e295315ef7 add openssh_cert module (#49605)
* add openssh_cert module

* fix some linter issues

* address review feedback

* add basis for integration tests

* change valid datetime formats

* handle principals as set not as list

* handle principals as set not as list

* handle principals as set not as list
2019-01-03 17:06:22 +05:30
Felix Fontein
a5bf71ac6a openssl_csr: idempotency doesn't work correctly for keyUsage (#50361)
* Fix key usage idempotency bug.

* Extend tests.

* Add changelog.
2019-01-03 17:04:24 +05:30
Stephan Müller
4dd2b8e2d0 disable docker_network ipam tests (#50477) 2019-01-03 17:03:44 +05:30
Joseph Benden
d810acf7a5 Add support for Kali Linux detection. (#50331)
Signed-off-by: Joseph Benden <joe@benden.us>
2019-01-03 09:43:24 +05:30
Adam Miller
ca084889c7 fix order of dnf api operations so transactions don't fail (#50038)
* fix order of dnf api operations so transactions don't fail

Previously dnf.base.fill_sack() was called before
dnf.base.update_cache() which apparently breaks dnf transaction
logic as per https://bugzilla.redhat.com/show_bug.cgi?id=1658694

Fixes #49060

Signed-off-by: Adam Miller <admiller@redhat.com>

* add changelog and test case

Signed-off-by: Adam Miller <admiller@redhat.com>
2019-01-02 17:50:06 -05:00
Wojciech Wypior
3ef71e529a added new module to manipulate signatre sets on ASM policy (#50209) 2019-01-02 13:12:08 -06:00
John R Barker
338dfaea34 Disable zabbix_host 50386 (#50427) 2019-01-01 14:12:34 -05:00
Felix Fontein
26e3240315 docker_secret, docker_config: allow to base64-decode data (#49688)
* Adjust docker_config and docker_secret to be more similar.

* Add data_is_b64 parameter to docker_secret and docker_config.

* Add changelog.
2019-01-01 16:06:45 +00:00
René Moser
e761ea3f9d
vultr_server: fix multiple ssh keys not handled (#50337)
* vultr_server: fix multiple ssh keys not handled

* add changelog fragment
2019-01-01 10:11:10 +01:00
Abhijeet Kasurde
eac35c68df
Temporarily disable mysql_variables (#50403)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-31 11:04:28 +05:30
Abhijeet Kasurde
cc001049a3
Temporarily disable mysql_user testcases (#50395)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-30 18:34:01 +05:30
John R Barker
ca1be227e9
Disable mysql_db (#50385) 2018-12-29 18:36:33 +00:00
Dag Wieers
eed330e8b5 Add missing aliases file (#50357) 2018-12-29 13:52:40 +00:00
Felix Fontein
a707f1a79c ufw: add integration tests (#50374)
* Add basic integration tests for ufw.

* Being more honest.
2018-12-29 13:50:04 +00:00
John R Barker
e6ced9c73f
Debug: Size of coverage file (#50380) 2018-12-29 13:01:35 +00:00
rajaspachipulusu17
3517373cfd Pluribus Networks igmp snooping module with Unit tests (#50146) 2018-12-24 13:40:02 +05:30
John R Barker
7ec82cdfc9
Revert TEMP HACK: Upload all to codecov (#50279)
Codecov.io have made some improvements to results processing.
Upload all the coverage data to see is codecov can process this.

Reverts https://github.com/ansible/ansible/pull/47515
2018-12-23 09:42:29 +00:00
Felix Fontein
e1218ca10f Elliptic curve tests for crypto modules (#50109)
* Add openssl_csr ECC test.

* Add openssl_publickey ECC test.

* Add openssl_certificate ECC test.
2018-12-23 10:23:31 +01:00
Nathaniel Case
0b3aa75b7f
Add backup parameter to cli_config (#50206)
* Add backup parameter to cli_config

* Add a unit test for cli_config backup
2018-12-21 09:55:14 -05:00
Diane Wang
ebaeb1d8b4 VMware: add VBS configuration support for Windows 10 (#48595)
* Fix space issue
* fix whitespaces issue
2018-12-21 14:47:35 +05:30
anasbadaha
d2446cbf0f Fix Issue #39598 (#49982)
* Fix Issue #39598

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix unit test for onyx_config

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Add comments for save running config

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Enhance onyx_config bug fix

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix result['changed'] = True comment

Signed-off-by: Anas Badaha <anasb@mellanox.com>
2018-12-21 11:54:10 +05:30
anasbadaha
6178a55afd Fix Issue #49612 (#50073)
* Fix Issue #49612

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix Pep8 failures

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Add validation for send empty group name

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix Error message

Signed-off-by: Anas Badaha <anasb@mellanox.com>
2018-12-21 11:53:36 +05:30
Matt Clay
01833b6fb1
Add env command to ansible-test and run in CI. (#50176)
* Add `env` command to ansible-test and run in CI.
* Avoid unnecessary docker pull.
2018-12-20 22:08:57 -08:00
Jordan Borean
7bce6818eb
Added supershipit to botmeta sanity test (#50219) 2018-12-21 10:36:43 +10:00
Dag Wieers
14b03ac15f
MSC: Various bugfixes and features enhancements (#50200)
* MSC: Various bugfixes and features enhancements

This PR includes:
- Lookups of roles, labels and domains
- Auto-create new labels
- Improvements to comparing complex datastructures
- Force removal of sites
- Support non top-level queries
- Document internal functions
- Add parameter types to modules
- Fix documentation examples
- Improvements to idempotency wrt. returning changed
- Support site locations
- Update permission list
- Various improvements to integration tests

* Fix Ci issues
2018-12-20 18:18:46 +01:00
Julien Girardin
3e303bea4c List correctly current PV in "lvg" module: fix lvg reduce (#49731)
* Refactor integration test for lvg module to introduce grow/reduce test

* List correctly current PV in lvg module: fix lvg reduce

Previous behaviour was to only take into account PV passed in 'pvs'
argument. This lead to reduce not working as expecting:

* with state=present and list of wanted pvs, lvg found only the pvs to
  add or already present and ignored the pv to remove (obviously absent
  from the list of given PV)

* with state=absent and a pv to remove, lvg found that the remaining pvs
  list is empty (ignoring possible other PV in the vg) and decides to
  remove the vg entirely (as supposely no PV are left anymore to store
  lvm metadata)

* Add changelog fragment
2018-12-20 15:43:18 +00:00
Chris Archibald
39b1f1c363 Rewrite (#49570) 2018-12-20 12:19:32 +00:00
Sumit Jaiswal
f76d7bdbef
New Module for creating, managing Infoblox NIOS nameserver groups (#49124)
* adding new nios_nsgroup module

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* adding new nios_nsgroup module

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* adding new nios_nsgroup module

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* fix shippable errors

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>

* added unit tests

Signed-off-by: Sumit Jaiswal <sjaiswal@redhat.com>
2018-12-20 14:36:41 +05:30
Christian Kotte
3f8d541326 VMware: Improve vmware_host_ntp module (#47273) 2018-12-20 10:37:23 +05:30
Zim Kalinowski
0127a75132
optimising vmss tests (#50175) 2018-12-20 10:48:21 +08:00
Sam Doran
8532dab3bf Fix ansible-runner test
Change test to support runner_on_start in Ansible 2.8 and ansible-runner 1.2.0
2018-12-19 15:08:36 -08:00
Matt Clay
4bd60c313b Add retries for Invoke-ScriptAnalyzer in pslint.
Hopefully this will work around the intermittent CI failures due
to NullReferenceException, which then succeed on a retry.
2018-12-19 11:18:24 -08:00
Anil Kumar Muraleedharan
eab3b02cb3 Refactoring of cnos_interface module like what followed by other vendors (#49927)
* Refactoring of cnos_interface module like what followed by other vendors

* To remove cnos-interface from E326 validation ignore list

* Effect of default parameters impacted UT
2018-12-19 11:38:19 -05:00
Andrea Tartaglia
65c7424a35 Added organization in the scm_credential get (#49884)
* Added organization in the scm_credential get

* Fallback looking for cred in project org

* Tests project with multi org credential

* Fixed CI issue

* Added changelog fragment
2018-12-19 12:01:12 +00:00
rajaspachipulusu17
afdd4e2343 Pluribus Networks dhcp filter module with unit tests (#49848)
* Pluribus Networks dhcp filter module with unit tests
* Added type which was missing in doc
* Removed unwanted global variable
* Fix return type
2018-12-19 17:16:25 +05:30
rajaspachipulusu17
8ca02d8359 Pluribus Networks admin service module with unit tests (#49854)
* Pluribus Networks admin service module with unit tests
* Documentation fix
* import module changes
* Removed unused imports
* Fix return type
2018-12-19 17:14:48 +05:30
Ganesh Nalawade
cc8e90395a
Fix mandatory statement error for junos modules (#50074)
* Fix mandatory statement error for junos modules

Fixes #40267

*  Add error regex in junos terminal plugin to error out
   in case of commit fails

*  If commit fails add logic to discard changes before existing
   else next task will result in error

* Add integration test

* Minor update
2018-12-19 14:46:44 +05:30
Matt Clay
97de7c133e Fix no metadata traceback in validate-modules. 2018-12-19 00:39:53 -08:00
Jordan Borean
65ce1b727e
win_copy - fix remote dir copy when it contains an empty dir (#50126) 2018-12-19 14:55:09 +10:00
Wojciech Wypior
59f4871615 added bigip_asm_policy_manage (#50115)
* added bigip_asm_policy_manage

* Update bigip_asm_policy_manage.py
2018-12-18 19:35:51 -08:00
Wojciech Wypior
f761cc4077 added ASM policy server technology module (#50116)
* added ASM policy server technology module

* Update bigip_asm_policy_server_technology.py
2018-12-18 18:38:19 -08:00
Toshio Kuratomi
bd072fe83a
Make the timeout decorator raise an exception out of the function's scope (#49921)
* Revert "allow caller to deal with timeout (#49449)"

This reverts commit 63279823a7.

Flawed on many levels

* Adds poor API to a public function
* Papers over the fact that the public function is doing something bad
  by catching exceptions it cannot handle in the first place
* Papers over the real cause of the issue which is a bug in the timeout
  decorator
* Doesn't reraise properly
* Catches the wrong exception

Fixes #49824
Fixes #49817

* Make the timeout decorator properly raise an exception outside of the function's scope

signal handlers which raise exceptions will never work well because the
exception can be raised anywhere in the called code.  This leads to
exception race conditions where the exceptions could end up being
hanlded by unintended pieces of the called code.

The timeout decorator was using just that idiom.  It was especially bad
because the decorator syntactically occurs outside of the called code
but because of the signal handler, the exception was being raised inside
of the called code.

This change uses a thread instead of a signal to manage the timeout in
parallel to the execution of the decorated function.  Since raising of
the exception happens inside of the decorator, now, instead of inside of
a signal handler, the timeout exception is raised from outside of the
called code as expected which makes reasoning about where exceptions are
to be expected intuitive again.

Fixes #43884

* Add a common case test.

Adding an integration test driven from our unittests.  Most of the time
we'll timeout in run_command which is running things in a subprocess.
Create a test for that specific case in case anything funky comes up
between threading and execve.

* Don't use OSError-based TimeoutError as a base class

Unlike most standard exceptions, OSError has a specific parameter list
with specific meanings.  Instead follow the example of other stdlib
functions, concurrent.futures and multiprocessing and define a separate
TimeoutException.

* Add comment and docstring to point out that this is not hte Python3 TimeoutError
2018-12-18 18:01:46 -08:00
Dag Wieers
05c6ff79f9 Convert to reduced list of known types (#50010) 2018-12-19 07:25:30 +10:00
Yannig Perré
6b41588e93 Fix with_ini example and unittest
* Fix example in ini.py
* Fix unittest in test_ini.py to pass CI as latest ansible returns list in
  different order. To prevent such issues in future results are sorted
* PEP8 E501 styling improvements

Co-Authored-By: Sergii Golovatiuk <sgolovat@redhat.com>
2018-12-18 12:25:02 -08:00
Abhijeet Kasurde
139e3477a7 Review comments
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-18 12:20:35 -08:00
Abhijeet Kasurde
44bd8fc0a8 Update unit tests for configmanager
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-18 12:20:35 -08:00
Dag Wieers
7fb1a71a2c
no-smart-quotes: Skip files by path in code-smell (#45881)
* no-smart-quotes: Skip files by path in code-smell

This is to ensure the generated docs do not trigger code-smell issues on
contributor systems.

* Implement feedback from review
2018-12-18 20:33:18 +01:00
Matt Martz
6025990fe9
Remove the use of mock from validate-modules (#50098)
* Remove the use of mock from validate-modules

* Monkeypatch AnsibleModule.__init__ not AnsibleModule
2018-12-18 11:44:17 -06:00
Brian Coca
88c87a3583
added handlers_from (#49220)
* added handlers_from

fixes #46769
2018-12-18 11:28:24 -05:00
Dag Wieers
15d39f9108 Sanity fixes in various modules (#50080) 2018-12-18 09:53:46 -06:00
rajaspachipulusu17
d28e700a22 Pluribus networks admin session timeout module with unit tests (#50012)
* Pluribus networks admin session timeout module with unit tests
* Doc fix
* Removed unused imports
* Removed unwanted global variable
2018-12-18 17:23:45 +05:30
Christian Kotte
f123f894df Improve module vmware_local_role_manager (#47870)
* add check mode support
* improve output
2018-12-18 17:10:10 +05:30
Christian Kotte
e65b721283 VMware: new module vmware_host_ad_auth (#47901) 2018-12-18 16:34:11 +05:30
Christian Kotte
f431e5b0e2 VMware: new module vmware_dvswitch_uplink_pg (#48846) 2018-12-18 16:14:18 +05:30
Felix Fontein
92ef500185 openssl_privatekey: add ECC support (#49416)
* Add cryptography backend for openssl_privatekey.

* Adding ECC support.

No support for X25519 and X449, since they don't support serialization.

* Improve finterprint calculation to work with Python 3.

* Add fingerprint check.

* Fix typo.

* Use separate curve option for elliptic curves, and use type 'ECC'.

* Using curve names as defined in IANA registry.

* Bump minimal supported cryptography version. Older versions might work as well, but I couldn't test them.

* Improve documentation.
2018-12-18 09:07:36 +00:00
rajaspachipulusu17
cf00880ab3 Pluribus Networks dscp map module with unit tests (#49849)
* Pluribus Networks dscp map module with unit tests
* Doc string fix
2018-12-18 12:50:16 +05:30
rajaspachipulusu17
4d88cdd83a Pluribus Networks cpu class module with unit tests (#49847)
* Pluribus Networks cpu class module with unit tests
* Doc string fixes
2018-12-18 12:42:33 +05:30
Matt Clay
61b5adcf31 Add OverlayFS work-around for CloudStack tests. 2018-12-17 15:45:31 -08:00
Jérémy Lecour
2fb9b46752 Lineinfile must not insert lines multiples times with insertbefore/insertafter (#49409)
* Change test suite to fit expected behaviour

This reverts some changes from ansible/ansible@723daf3
If a line is found in the file, exactly or via regexp matching, it must 
not be added again.
insertafter/insertbefore options are used only when a line is to be 
inserted, to specify where it must be added.

* Implement the change in behaviour mentioned in the previous commit

* Fix comment to reflect what the code does

* Set the correct return message.

In these cases, the lines are added, not replaced.

* Add a changelog
2018-12-17 16:42:24 -05:00
Matt Martz
7eb1ab45a7
Allow tags to be templated from a variable (#49833)
* Allow tags to be templated from a variable. Fixes #49825

* Restore _load_tags to ensure we do csv tag splitting

* Add tests for csv tags and templated tags

* evaluate_tags doesn't need to accept strings, because _load_tags handles this
2018-12-17 15:40:26 -06:00
Matt Clay
0ccd231afd
Fix MySQL tests when running under Docker. (#50047) 2018-12-17 12:59:40 -08:00
Toshio Kuratomi
61b1daa65f Port from plaform.dist to ansible.module_utils.distro.linux_distribution
ci_complete
2018-12-17 11:01:01 -08:00
Adrian Likins
be65d9cfe5 Skip sanity tests that don't apply to bundled code
* add distro to pep8 skip tests
* Skip no-assert test for distro
* Add bundled distro to the empty-init skip list
2018-12-17 11:01:01 -08:00
Adrian Likins
e872811b8d WIP: add tests to compare to platform.*dist
Can be removed once everything is ported.
2018-12-17 11:01:01 -08:00
Adrian Likins
5e1f8a48f3 Bundle a copy of github.com/nir0s/distro/distro.py
Since the 'platform.dist()' and 'platform.linux_distribution()'
methods will be removed from future versions of python, this
provides an alternative to replace ansibles use of those
methods.

lib/ansible/module_utils/distro.py is a copy of
https://github.com/nir0s/distro/blob/master/distro.py

This module is originally from https://github.com/nir0s/distro
and is license under the Apache License, Version 2.0.
2018-12-17 11:01:01 -08:00
f-bor
134c1a624e new network module: edgeswitch_vlan (#48041)
* initial commit

* better commands generation
2018-12-17 11:30:17 +05:30
anasbadaha
369354547e Issue: 46475 Fix onyx magp module for supporting new json format (#49417)
Signed-off-by: Anas Badaha <anasb@mellanox.com>
2018-12-17 10:52:51 +05:30
Zim Kalinowski
de3d188cdd
support lro in azure_rm_resource (#49919) 2018-12-17 13:21:25 +08:00
Toshio Kuratomi
e09196f760 Fix validate-modules to not complain about sys.exit in comments 2018-12-16 15:03:19 -08: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
Toshio Kuratomi
5147e792d3 Enable the bare-except pylint and pep8 checking 2018-12-16 15:03:19 -08:00
anasbadaha
c0dbc1a441 Issue/38837 (#49873)
* Fix Issue #38837

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix Issue #38837 2

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Enhance decumentation

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix Failures in Shippable

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Fix Version Added

Signed-off-by: Anas Badaha <anasb@mellanox.com>

* Add version_added:2.8 in purge attributes

Signed-off-by: Anas Badaha <anasb@mellanox.com>
2018-12-16 13:16:28 +05:30
Abhijeet Kasurde
162d9497ba
Ad-hoc command: fix 'any' call in play_ds (#49852)
* Ad-hoc command: fix 'any' call in play_ds
* Unit test for ad-hoc cli
* Review comments

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-16 11:07:06 +05:30
Dave Bendit
d62d7176b0 [docker_container] Failing on non-string env values (#49843)
* [docker_container] Failing on non-string env values

Fixes #49802

* Clarify failure message

Co-Authored-By: DBendit <David@ibendit.com>

* Fixup from review
2018-12-14 13:21:54 -06:00
Abhijeet Kasurde
013c42b14f
Misc typo fixes (#49816)
Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-14 15:12:58 +05:30
Yuwei Zhou
7609a8cdd6 support overprovision in azure_rm_vmss (#49806) 2018-12-14 16:48:40 +08:00
Jordan Borean
4019d4f6d1
Windows Privileges - moved util code to it's own C# util (#48897)
* Windows Privileges - moved util code to it's own C# util

* Rename Enabler class to PrivilegeEnabler to remove ambiguity

* rename Utils to PrivilegeUtil

* fix missing util name changes
2018-12-14 12:00:46 +10:00
Jordan Borean
695feea541
ansible-test: do not upgrade homebrew to speed up tests (#49914) 2018-12-14 10:46:16 +10:00
Susant Sahani
59dcf3f277 nmcli: Introduce SIT Tunnel (#45937)
This work enables to add sit tunnel via nmcli module

Signed-off-by: Susant Sahani susant@redhat.com

SUMMARY
ISSUE TYPE
Feature Pull Request
COMPONENT NAME
nmcli

ANSIBLE VERSION
2.8
ADDITIONAL INFORMATION
  - nmcli:
       state: present
       type: sit
       conn_name: sit_test1
       autoconnect: yes
       ip_tunnel_dev: enp0s8
       ip_tunnel_local: 192.168.1.2
       ip_tunnel_remote: 192.168.1.5
2018-12-12 23:06:09 -05:00
Jordan Borean
190d1ed7f1 win become: refactor and add support for passwordless become (#48082)
* win become: refactor and add support for passwordless become

* make tests more stable

* fix up dep message for Load-CommandUtils

* Add further check for System impersonation token

* re-add support for become with accounts that have no password

* doc fixes and slight code improvements

* fix doc sanity issue
2018-12-12 17:15:25 -08:00
Dag Wieers
baf0ad2309 Docs: Add a "seealso" section to the module docs (#45949)
* Docs: Add a separate  "seealso" section to the module docs
to list related modules and/or related references. This clears up the notes
section for things that are actual notes.

So you can add a section in your module documentation and four types of
references are possible.

    seealso:

    # Reference by module name
    - module: aci_tenant

    # Reference by module name, including description
    - module: aci_tenant
      description: ACI module to create tenants on a Cisco ACI fabric.

    # Reference by rST documentation anchor
    - ref: aci_guide
      description: Detailed information on how to manage your ACI infrastructure using Ansible.

    # Reference by Internet resource
    - name: APIC Management Information Model reference
      description: Complete reference of the APIC object model.
      link: https://developer.cisco.com/docs/apic-mim-ref/

This PR also includes:

- Implements ansible-doc support
- Implements schema support for the seealso options
- Updates to the development documentation
- Rename filter convert_symbols_to_format to rst_ify, cfr the existing html_ify and tty_ify filters
  - This makes the existing template a lot easier to read and fixes the confusion I had myself rereading the template (again).
- We fixed the possible suboption types (which was limited to 'bool' only)

* Use latest stable instead of devel docs
2018-12-12 14:19:58 -06:00
cma0
974c45a5f5 itential iap_token module (#46773) 2018-12-12 14:28:20 -05:00
Nilashish Chakraborty
d729614d72
Add support for hashed password (#49464)
* Add support for hashed password

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Fix Shippable errors

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>

* Make pwd options mutually exclusive

Signed-off-by: NilashishC <nilashishchakraborty8@gmail.com>
2018-12-12 22:22:15 +05:30
WhyIsThisOpen
7bdca72713 rhn_register fixes for username and password when unregistering
- Require username and password for unregistering and avoid "cannot marshal None unless allow_none is enabled" error when using an activation key and no channels specified.
- Update test fixtures and add changelog


Co-authored-by: WhyIsThisOpen <WhyIsThisOpen@users.noreply.github.com>
2018-12-12 11:32:48 -05:00
Mike Wiebe
0e4a7b0889 Fix nxos_reload timeout and add integration tests (#49632)
* Fix timeout and add tests

* Correct module name
2018-12-12 10:32:27 -05:00
rajaspachipulusu17
b47cde9d4c Pluribus Networks pn access list ip module with unit test cases (#49604)
* Pluribus Networks pn access list ip module with unit test cases

* Changes according to ansibot standards in unit test modules

* Remove unwanted variables

* Removed unwanted super call
2018-12-12 13:33:01 +00:00
Chris Archibald
8ad5035ce6 Bug Fix and rewrite (#49508) 2018-12-12 12:16:12 +00:00
Christian Kotte
1b9b0b85c4 new module vmware_dvswitch_pvlans (#48855) 2018-12-12 09:13:54 +00:00
Dave Bendit
8fcf9e1a28 [docker_container] Fixes idempotency checks for network_mode (#49797)
Fixes #49794
2018-12-12 09:04:24 +00:00
Abhijeet Kasurde
d36922064b Add support for hex color in slack module (#49804)
Fixes: #11935

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-12 08:41:49 +00:00
Andrea Scarpino
06099bd116 win_uri: fix body with one item in list (#49484) 2018-12-12 14:06:54 +10:00
Zim Kalinowski
a24cc8b235 fixing updating image reference in vmss (#49758) 2018-12-12 11:01:21 +08:00
Josue David Hernandez
9202ef60b0 set ansible_os_family from name variable in os-release for clearlinux OS (#49639)
* set ansible_os_family from name variable in os-release for clearlinux system

Signed-off-by: Josue David Hernandez Gutierrez <josue.d.hernandez.gutierrez@intel.com>

* Add os_family for clear linux and clear linux mixes

Signed-off-by: Josue David Hernandez Gutierrez <josue.d.hernandez.gutierrez@intel.com>
2018-12-11 16:12:38 -05:00
Sam Doran
c1589c33c4
Reboot - Fix command not found, add Apline support, fix Solaris command (#49272)
* Fix various bugs related in reboot

- Use format strings for consistency and improve debug log messages
- Use local variables instead of class attributes in order to be thread safe
- Run setup module to get distribution and version
- Run find module to get full path of shutdown command
- Use ansible_os_family and ansible_distribution to find commands and args
- Use same command for all Solaris/SunOS distributions
- Move delay calculations to properties
- Reliably check for module run failure
- Fix bug in run_test_command() that accidentally made the method work properly
- Use better exceptions rather than Exception
- Use dict literals rather than constructors
- Correct _check_delay() so it always returns a value, not None
- Don't store and return result in run_test_command() because it's not used anywhere
- add test for post reboot command that fails
- test negative values for delay parameters
2018-12-11 11:05:10 -05:00
Matt Martz
2a469fd959 Consolidate handler tracking (#49338)
* Consolidate handler tracking
  -  Remove unused code. ci_complete
  - unit test fixes. ci_complete
  - Restore previous behavior of matching a single handler
  - when notifying a host for a handler, return True if it was added, False otherwise, to reduce copied logic
  - rename funcitons for clarity. ci_complete
  - Remove handler logic for static includes which was disabled previously
2018-12-11 10:58:19 -05:00
Abhijeet Kasurde
e464c543f6
Add support for variable_{start,end}_string (#49711)
Template lookup plugin now support variable_start_string and
variable_end_string, just like template module.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-11 15:22:12 +05:30
Matt Clay
df1c9d0f25 Disable failing ec2_vpc_vpn_facts test. 2018-12-10 14:05:18 -08:00
Dag Wieers
7b01725bb5 mail: Fix new breakage on python 2.7 (#49197)
* mail: Fix new breakage on python 2.7

* Add changelog fragment

* Add basic SMTP testing

* Add SMTP integration tests using starttls and TLS
2018-12-10 10:25:33 -08:00
René Moser
e0ad0eb42c Merge pull request #49678 from resmo/fix/cloudstack-tests-unstable
cloudstack: Fixes for unstable tests
2018-12-10 08:39:16 -08:00
Brian Coca
70ba960f6d
More specificity in errors for cfg mgr (#48995)
* More specificity in errors for cfg mgr
2018-12-10 11:38:42 -05:00
Dag Wieers
23ae3aa32a read_csv: new module to read CSV files (#49578)
* read_csv: new module to read CSV files

* Add a doc reference to the csvfile lookup plugin

* Enable the use of custom dialect options

* Improve error handling

* Fix PEP8

* Fix more PEP8

* Simplify custom dialect code

* Add integration tests

* Fixes for CI

* Fix for python 2.6
2018-12-10 11:42:47 +00:00
Felix Fontein
495a426039 docker_swarm: fix minimal API version (#49691)
* Reduce minimally required docker API version to 1.25, with selective features requiring 1.30.

* Adjust test requirements.

* Forgot some imports.
2018-12-10 14:09:28 +05:30
Zim Kalinowski
b89eb7a8c9
Support for generalizing VMs (#49704) 2018-12-10 16:21:09 +08:00
Felix Fontein
aec98b6aab Add docker_volume_facts module (#49692)
* Add docker_volume_facts module.

* Fix type confusion.

* Improve tests.
2018-12-10 15:41:46 +10:00
Christian Kotte
36e3edff50 VMware: New module vmware_host_snmp (#47937) 2018-12-10 11:01:41 +05:30
Christian Kotte
4903e42e2f VMware: New module vmware_vcenter_settings (#48083) 2018-12-10 11:01:15 +05:30
Dave Bendit
f545763296 [docker_network_facts] Creating docker_network_facts module (#49644)
Part of #49267
2018-12-10 15:24:05 +10:00
Yuwei Zhou
c0d95a73ff azure_rm_image module's source can accept dict value (#48864) 2018-12-10 10:29:12 +08:00
Jordan Borean
478fcf7abb
win_hotfix: use S3 bucket for update files in test (#49696) 2018-12-10 07:34:45 +10:00
Matt Martz
9007dbec2f
Add info about loop based on jinja2 loop var (#42134)
* Add info about loop based on jinja2 loop var

* ansible_loop

* Update test count

* Add extended loop_control that defines whether ansible_loop should be added

* Extended needs to be defaulted

* Revert "Update test count"

This reverts commit f1e93ee469825f4cdcd90fb28667d29aa088275c.

* Add docs about loop_control.extended

* Add revindex and revindex0

* Document ansible_loop in special vars

* Add changelog fragment

* Add tests, change items to allitems so that dot notation works, fix logic error with previtem
2018-12-07 13:49:50 -06:00
Andreas Calminder
876b637208 move some of basic into common (#48078)
* move file functions into common.file

* move *_PERM_BITS and mark as private (_*_PERM_BITS)

* move get_{platform, distribution, distribution_version} get_all_subclasses and load_platform_subclass into common.sys_info

* forgot get_distribution_version, properly rename get_all_subclasses

* add common/sys_info.py to recursive finder test

* update module paths in test_platform_distribution.py

* update docstrings, _get_all_subclasses -> get_all_subclasses

* forgot to update names

* remove trailing whitespace
2018-12-07 10:21:11 -08:00
Matt Clay
6cd8742fa7 Add virtualenv symlink for RHEL 8.
Also enable template_jinja2_latest now that it passes.
2018-12-07 08:53:10 -08:00
John Westcott IV
6469baf460 Added get_certificate module (#41735)
* Added get_certificate module.

* Fixed test against bogus_ca.pem file
2018-12-07 13:27:16 +00:00
Pavlos Tzianos
a4eb4b2551 Rabbitmq user permission fixes (#49404)
* Simplify permission changing code for rabbitmq_user module

* Add check for multiple permission dicts for same host to rabbitmq_user module

* Add docstring for _get_permission method of rabbitmq_user

* Fix method that compares vhost permissions in rabbitmq_user

* Add tests for rabbitmq_user module

* Add helper function for simulating collections.Counter functionality
2018-12-07 13:19:08 +00:00
Matt Clay
a1a0893ebd Fix template_jinja2_latest aliases file. 2018-12-07 00:22:37 -08:00
Jordan Borean
6a09db5131
ansible-test - swap Fedora 25 for 29 (#49634) 2018-12-07 12:00:23 +10:00
Jordan Borean
28a903a1e2
pip tests: skip distribute test case for py3 compat (#49636) 2018-12-07 10:24:46 +10:00
Jordan Borean
198f1e1bea
Revert "Fixes #49362 module dnf: install python3-dnf preferably over python2-dnf. (#49402)" (#49633)
This reverts commit 3247eec97a.
2018-12-07 08:29:12 +10:00
Sean Myers
9434f8608a Add rhsm_repository_release module (#43211)
* Add rhsm_repository_release module

* bump ansible version_added

* Fix imports in rhsm_repository_release unit test
2018-12-06 20:16:18 +00:00
Dave Bendit
73640a4190 [docker_network] Adding scope and attachable flags (#49562)
Incorporating the abandoned work from PRs #35288 and #45552. Also adding in
the version checking from `docker_container.py`, which should be abstracted
out to `docker_common.py`.
2018-12-06 18:50:45 +00:00
lrrb
4f9f1754b4 fix: ensure than all item of a list of excluded files aren't checked (#45122)
* fix: ensure than list of excluded files aren't checked
* test: exclude a list of files
2018-12-06 10:13:31 -08:00
Jordan Borean
5392caee14
ansible-test: change Fedora 24 to 28 (#49586) 2018-12-06 16:30:11 +10:00
Adam Miller
6f90d62be3 fix py3 scope for unique filter errors, enable filters integration tests on rhel8 beta (#48961)
* fix py3 scope for unique filter errors, enable filters integration tests on rhel8 beta

Signed-off-by: Adam Miller <admiller@redhat.com>

* add changelog

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-12-06 16:13:26 +10:00
Jordan Borean
0420d606de
create local subversion server for tests (#49047)
* create local subversion server for tests

* fix sanity issues

* don't touch system config when bringing up site

* removed original setup files

* fix opensuse config
2018-12-06 13:41:05 +10:00
uberjew666
b72187cd2c Fixed win_route module (#46395)
* Changed $IpAddress to $Gateway

* Tweaked win_route unit tests

Checks to see if new static route has the correct gateway

* Create win_route.yaml

* Fixed incorrect variable name
2018-12-05 22:39:06 -05:00
Tim Rupp
1c3fa2b07f
Deprecate the bigip_asm_policy module (#49574)
Specific import and export modules should be used instead
2018-12-05 16:02:16 -08:00
Adam Miller
a5d98d69ff enable service integration test target for rhel8 beta (#48939)
Signed-off-by: Adam Miller <admiller@redhat.com>
2018-12-05 18:07:18 -05:00
Adam Miller
6c61336a4b enable template target integration tests on rhel8 beta (#48940)
Signed-off-by: Adam Miller <admiller@redhat.com>
2018-12-05 17:58:15 -05:00
Adam Miller
ea2b0114ea enable mysql related integration tests for rhel8 beta (#49163)
Signed-off-by: Adam Miller <admiller@redhat.com>
2018-12-05 17:57:44 -05:00
Rhys Campbell
cdc0011333 mongodb_shard module and test exception (#43673)
* mongodb_shard module and test exception

* Update version_added

* Documentation improvements

* Correct yaml errors

* Correct lines over 160 chars

* Correct replicaset

* Minor documentation changes
2018-12-05 16:29:45 -05:00
John R Barker
be8b08f946 Mark cs_snapshot_policy unstable (#49543) 2018-12-05 09:38:48 -08:00
Anil Kumar Muraleedharan
dd004321d4 Refactoring code of cnos_portchannel as cnos_linkagg in tune with other vendors. (#49467)
* Refactoring code of cnos_portchannel as cnos_linkagg in tune with other vendors.
2018-12-05 11:03:42 -05:00
Mike Wiebe
49009879b9 Add explicit ansible_httpapi_port setting (#49314) 2018-12-05 09:51:49 -05:00
Josue David Hernandez
6d42c5020a Fix for changes in clearlinux (#49344)
* Fix for changes in clearlinux

clearlinux is now providing /etc/os-release file and ansible is identifying as NA
then this change allow ansible to find it

Signed-off-by: Josue David Hernandez Gutierrez <josue.d.hernandez.gutierrez@intel.com>

* Add changelog fragment for clearlinux changes

Signed-off-by: Josue David Hernandez Gutierrez <josue.d.hernandez.gutierrez@intel.com>
2018-12-05 13:13:40 +00:00
chris93111
7c8b5a407d VMware: Add option to modify disk type while cloning template (#47859)
* Add parameters to module vmware_guest for conversion of disk to thin or thick when vm is cloned or deployed with template

* unit test for convert clone vm

Co-Authored-By: chris93111 <christopheferreira@ymail.com>
2018-12-05 15:50:23 +05:30
Naval Patel
880390ca0a Added new module lxca_nodes for Lenovo XClarity Administrator (#46767)
* Added new module lxca_nodes
2018-12-05 10:18:36 +00:00
Christian Kotte
f3c4b2fc74 VMware: New module vmware_vcenter_statistics (#48084) 2018-12-05 15:46:42 +05:30
Toshio Kuratomi
c817bef3ae Fix for callback plugins on Python3 when a module returns dictionary keys that aren't strings
This fixes one of the problems reported in https://github.com/ansible/ansible/issues/49343

Upstream Python3 bug for the json traceback:
https://bugs.python.org/issue25457

and PR that may fix it:
https://github.com/python/cpython/pull/8011
2018-12-04 23:03:48 -08:00
Tim Rupp
60b75c2cfd
Adds ASM policy import module (#49526) 2018-12-04 21:34:55 -08:00
Tim Rupp
7a4c7b8c0f
Adds module for gtm topology regions (#49510) 2018-12-04 20:58:52 -08:00
Abhijeet Kasurde
1763c8123b
AWS: Add support for available db types (#48703)
Add several database types which are supported by AWS in valid engine type.

Fixes: #48623

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-12-05 08:59:36 +05:30
James E. King III
79c0e30c5a azure_rm_image: fix creation of image with data disks (#49394) 2018-12-05 09:36:34 +08:00
Wojciech Sciesinski
e4a3e73b15 Add win_psrepository (#48828)
* Add win_psrepository

* Small corrections

* Correct requiqurements - add NuGet

* Extend tests

* Post-review updates

* Post-review - updates 2

* Add empty RETURN section in documentation

* Add empty line at EOF

* Post-review updates 3

* Update tests to run in check_mode too

* Minor updates

* Correct installing/updating NuGet

* a few changes for review

* Remove copyrights

* Revert "Remove copyrights"

This reverts commit 2d687ec6a691d8d71358ae447e0fdc828976a767.
2018-12-04 22:47:28 +01:00
Robert de Bock
3247eec97a Fixes #49362 module dnf: install python3-dnf preferably over python2-dnf. (#49402)
* Create python3and2

Adding tests to see if dnf still works when python-2 and python-3 are installed.

* Update main.yml

Include the tests that run on python 2 and python 3, based on the package manager.

* Update dnf.py

Use python3-dnf by default, otherwise python2-dnf.

* Rename python3and2 to python3and2.yml

Rename.
2018-12-04 16:43:45 -05:00
Tim Rupp
c7dd13758e
Adds bigip_profile_analytics module (#49499) 2018-12-04 12:53:31 -08:00
Tim Rupp
caa6ed3c66
Adds ASM policy fetch module (#49494) 2018-12-04 11:24:34 -08:00
Tim Rupp
138690519d
Various small fixes for f5 ansible modules (#49492) 2018-12-04 11:15:49 -08:00