Commit graph

6155 commits

Author SHA1 Message Date
Matt Clay
e53390b3b1
Fix ansible-test multi-group smoke test handling. (#46363)
* Fix ansible-test smoke tests across groups.
* Fix ansible-test list arg defaults.
* Fix ansible-test require and exclude delegation.
* Fix detection of Windows specific changes.
* Add minimal Windows testing for Python 3.7.
2018-10-02 12:26:14 -07:00
Sloane Hertel
27534e9b47 Move network utils that are used by AWS modules (#45579)
* Separate networking tools that may be used by modules outside of networking so changes to networking-only utilities don't trigger AWS integration tests

* Add unit tests for moved network utils

* Add comment to prevent imports from being mistakenly removed

* Move to_bits as well
2018-10-02 15:08:00 -04:00
Matt Clay
33b34f5c82 Rebalance shippable/posix/ CI groups. 2018-10-02 11:09:21 -07:00
Egor Zaitsev
6df1f6b203 New module: routeros_facts – collect facts from RouterOS devices (#46114)
* feat(routeros): implement routeros_facts module

* fix(routeros): review by felixfontein

* fix(routeros): review by ganeshrn

* fix(routeros): review by felixfontein
2018-10-02 13:44:23 +05:30
Jordan Borean
c20433e5e4 remove comments from multiplle yaml string that breaks tests for now 2018-10-01 18:16:23 -07:00
Pilou
b76c4c840e WIP: Check that union Jinja filter can be chained (#46298)
* Check that union Jinja filter can be chained

* set filters: fix unexpected templating type error

this error occurs with Jinja 2.10 since 32ec69d827,
for example when union filters are chained:

$ ansible all -i localhost, -mdebug -a"msg={{ []|union([])|union([]) }}"
localhost | FAILED! => {
    "msg": "Unexpected templating type error occurred on ({{ []|union([])|union([]) }}):
            unsupported operand type(s) for +: 'set' and 'list'"
}
2018-10-01 16:30:24 -04:00
Brian Coca
d3d812b604 avoid tests when ncclient is not installed 2018-10-01 13:43:26 -04:00
abarbare
c5d5d08b6b feat: add scaleway security_group_rule management (#45694)
* feat: add scaleway security_group_rule management
2018-10-01 12:37:48 +01:00
Remo Wenger
83e584577a docker_container: ambiguous parameter "stop_timeout" (#43874)
* docker_container: Honour stop_timeout when creating docker containers (#43814)

* Adjusting description to what actually happens.

See docker-py changelog for 2.7.0: 'APIClient.stop will
no longer override the stop_timeout value present in the
container’s configuration.'

* Add a test whether stop_timeout can be configured for the container.

* Added changelog.

* Integrate with comparisons (by default, ignore stop_timeout value for restarts; will be configurable with PR ansible/ansible#44789).

* Fix config change code and tests (#2)

* Improving wildcard test.
* Using correct config.
2018-09-30 12:03:53 +01:00
Sam Doran
8b1ae30e2e
Use bytes rather than native string for result (#46281)
This prevents a stack trace in Python 3 when the result is an empty file since
the file is open in binary mode and a native string in Python 3 is str,
not bytes.
2018-09-28 16:04:50 -04:00
Dag Wieers
d6bd52ad59 Add unit tests 2018-09-28 19:19:58 +02:00
Dag Wieers
84437855c9 Add integration tests
By checking the cmd result with the original we cause these tests to
fail on older releases without this PR.
2018-09-28 19:19:58 +02:00
Metzger, Simon
00d78d7ef3 added period in description. Changed integration test to work correctly. 2018-09-28 18:45:13 +02:00
Metzger, Simon
285af0b6fb added parameter leaf_port_blk_description in module and integration tests 2018-09-28 18:45:13 +02:00
Metzger, Simon
be2c73ac18 be compliant to pep8 and pylint. Added integration tests. 2018-09-28 18:45:13 +02:00
Felix Fontein
84682464c7 docker_container: allow to configure comparison for existing containers (#44789)
* Added comparison configuration.

* Improving user feedback on specifying a wrong option.

* Avoid bare except.

* Added basic integration tests.

* Adding wildcard support.

* Warn if ignore_image=yes is overridden.

* Added changelog fragment.
2018-09-28 08:33:38 +01:00
Matt Clay
04ddadd89b Move module tests using TQM to integration tests. 2018-09-27 13:46:19 -07:00
Felix Fontein
a727a1ee67 [aws] route53 module: fix idempotency for CAA records (#46049)
* Fixing record order for CAA records to properly handle idempotency.

* Add integration tests that reproduce CAA failure
2018-09-27 15:08:47 -04:00
Kevin Subileau
ac9d506a61 win_nssm: tests and several bug fixes (#44755)
* win_nssm: add failing tests for issue #44079

* win_nssm: use Run-Command instead of Invoke-Expression to prevent interpretation issue

Fix #44079

* win_nssm: add more failing tests

These tests highlight several issues with this module:
 * Service not started when state=started
 * Errors with app_parameters (see #25265)
 * Exception when passing several dependencies separated by comma as specified in doc

* win_nssm: fix service not started when state=started

Nssm status returns a multiline output that doesn't match any of the strict patterns in the switch statement.

* win_nssm: fix incorrect separator in doc for service dependencies

The dependencies parameter works with space as separator, but not with comma as shown in the documentation

* win_nssm: fix error with app_parameters parameter

Fix #25265

* win_nssm: add idempotence tests

* win_nssm: fix several idempotence issues and misbehaviors

Add missing space between arguments when app_parameters contains several keys.
Use Argv-ToString and Escape-Argument to improve arguments handling (parameters with quotes, backslashes or spaces).

* win_nssm: test parameters with spaces, quotes or backslashes

* win_nssm: restore comma as separator for service dependencies

Revert commit ddd4b4b

* win_nssm: restore support of string as dict form for app_parameters and remove support of literal YAML dict

* win_nssm: wrong variable in tests
2018-09-27 13:15:04 +10:00
Yunge Zhu
69594c5370 add azure_rm_cdnprofile and azure_rm_cdnprofile_facts (#45097)
* add cdn profile with facts

* fix merge issue

* fix version

* fix lint

* move cdn client out of azure_rm_common

* fix lint

* fix helper

* fix code bug

* fix bug

* fix import

* fix typo

* fix test
2018-09-27 10:10:01 +10:00
Sandra McCann
08c392477e made sros_config docs match code for match options (#46135)
* made docs match code for match options

* fixed shippable error
2018-09-26 19:08:26 +05:30
tstoner
b427499e3e Added feature facts to nxos_facts (#45934)
* Added feature facts to nxos_facts

* Fixed ansibot indentation

* Resolved ansibot whitespace missing after ','

* Per PR suggestion, created method in base class to gather switch config
and store in global variable to prevent multiple calls to switch.

* Addressed ansibot blank line & whitespace after ,
2018-09-26 15:57:09 +05:30
René Moser
7f92a8c94c
cs_staticnat: fix sanity (#46037) 2018-09-26 09:03:16 +02:00
René Moser
c09b785a66
cs_instance: doc: fix typo in examples (#46035) 2018-09-26 09:02:06 +02:00
Jordan Borean
40379b76b1
skip installing linux-image-extra in CI as it shouldn't be needed (#46101) 2018-09-26 05:41:17 +10:00
Brian Coca
32ec69d827
allow jinja2 unique filter compat (#45637)
* allow jinja2 unique filter compat
* detect if unique is provided, fallback with warning
* handle j2 specific params
* now all filters using unique must pass environment
* added env to tests

also normalized on how we normally import and use exceptoins
2018-09-25 14:27:02 -04:00
John R Barker
f4f5d941e5
botmeta support: core (#45917)
* botmeta enforce `support: core`
2018-09-25 18:37:01 +01:00
abarbare
98b0594352 feat: add scaleway security group module (#45686)
fix: pep8 coding style

fix: error order requests
2018-09-25 16:39:49 +01:00
Matt Martz
49eb53b44d
pylint plugin to catch due/past-due deprecated calls (#44143)
* Start of work on pylint plugin to catch due/past-due deprecated calls

* Improve deprecated pylint plugin

* Catch call to AnsibleModule.deprecate also

* Skip splatted kwargs, we can't infer that info

* Add error for invalid version in deprecation

* Skip version if it's a reference to a var

* Disable ansible-deprecated-no-version for displaying deprecated module info

* fix comments

* is None

* Force specifying a version, this can be disabled on a per case basis

* Disable ansible-deprecated-version by default

* Remove to look for 2.8 deprecated

* Revert "Remove to look for 2.8 deprecated"

This reverts commit 4e84034fd1.

* Add script and template used for creating issues for deprecated issues

* Fix underscore var
2018-09-25 10:31:41 -05:00
Dan
f20938788a fixed nxos_aaa_server_host issue with type 7 encrypt key (#46015)
* fixed nxos_aaa_server_host issue with type 7 encrypt and added test cases

* added idempotence tests
2018-09-25 16:39:22 +05:30
Dan
a6c20488d3 Add ospf net type (#45904)
* Added ospf network type option to nxos_interface_ospf module

* Added documentation and example for the 'network' parameter

* adding version
2018-09-25 11:38:39 +05:30
tstoner
e74e8b8e75 Additional feature enhancements to nxos_logging (#45844)
* Various changes to nxos_logging.  Plus added purge capibility.

* Made a few new nxapi_logging test cases conditional based on version
and/or platform.

* Addressed PR comments and ansibot shippable.  Fixed up nxos_logging documentation format.

* Addressed ansibot shippable issues with whitespaces and documentation.

* Resolved ansibot codestyle trailing whitespace
2018-09-25 11:02:09 +05:30
Jordan Borean
e26861435f
async tests: add stability (#46100) 2018-09-25 10:22:06 +10:00
Matt Martz
86e8d21667
Perform full RETURN schema validation in one step, don't try to loop (#46079) 2018-09-24 16:38:04 -05:00
Matt Martz
c0915e2f5a
Support nested JSON decoding in AnsibleJSONDecoder (#45924)
* Support nested JSON decoding in AnsibleJSONDecoder

* Add tests for vault portion of AnsibleJSONDecoder
2018-09-24 14:33:19 -05:00
Rémy Léone
53886ecc9b Add an Online servers fact 2018-09-24 21:03:50 +02:00
Matt Clay
4085d01617 Reduce noise in docs-build test failures. 2018-09-24 10:14:47 -07:00
Rémy Léone
6d7004f367 Add a Scaleway IP module (#45121)
- Add an option to enable public ip at server creation
2018-09-24 10:14:23 -04:00
Felix Fontein
7caf70db42 docker_container: fix various idempotency problems and non-working options (#45905)
* Sorting args.

* Doing comparisons of options with container parameters in a more context-sensitive way.

This prevents unnecessary restarts, or missing restarts (f.ex. if parameters are removed from ``cmd``).

* Make blkio_weight work.

* Fix cap_drop idempotency problem.

* Making groups idempotent if it contains integers.

* Make cpuset_mems work.

* Make dns_opts work.

* Fixing log_opts: docker expects string values, returns error for integer.

* Adding tests from felixfontein/ansible-docker_container-test#2.

* Make uts work.

* Adding changelog entry.

* Forgot option security_opts.

* Fixing typo.

* Explain strict set(dict) comparison a bit more.

* Improving idempotency tests.

* Making dns_servers a list, since the ordering is relevant.

* Making dns_search_domains a list, since the ordering is relevant.

* Improving dns_search_domains/dns_servers.

* Fixing entrypoint test.

* Making sure options are only supported for correct docker-py versions.
2018-09-24 10:40:05 +01:00
René Moser
83ec418470
cs_loadbalancer_rule_member: fix error handling (#46012)
* make use of query_api
* fix sanity
2018-09-22 13:40:40 +02:00
Abhijeet Kasurde
905acd7c9e
VMware: vmware_inventory contrib testing (#42879)
* VMware: vmware_inventory contrib testing
* Use python.py to run inventory script during test.

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-09-22 12:08:20 +05:30
Matt Clay
54937ba784 Fix ansible-test docker python version handling.
This removes the old name based version detection behavior and
uses versions defined in the docker completion file instead, as
the new containers do not follow the old naming scheme.
2018-09-21 20:11:38 -07:00
Sloane Hertel
18dc928e28
Fix and re-enable sts_assume_role integration tests (#46026)
* Fix the STS assume role error message assertion when the role to assume does not exist.
2018-09-21 22:57:55 -04:00
Matt Clay
7d8f1a7aae Disable failing sts_assume_role integration test. 2018-09-21 18:38:02 -07:00
Matt Clay
339d22a2bd
Improve stability of Docker integration tests. (#46005) 2018-09-21 14:48:40 -07:00
Matt Clay
d603cd41fe Fix integration test library search path.
This prevents tests from loading modules outside the source tree,
which could result in testing the wrong module if a system-wide
install is present, or custom modules exist.
2018-09-21 13:53:09 -07:00
Matt Clay
ac492476e5
Bug fixes and cleanup for ansible-test. (#45991)
* Remove unused imports.
* Clean up ConfigParser usage in ansible-test.
* Fix bare except statements in ansible-test.
* Miscellaneous cleanup from PyCharm inspections.
* Enable pylint no-self-use for ansible-test.
* Remove obsolete pylint ignores for Python 3.7.
* Fix shellcheck issuers under newer shellcheck.
* Use newer path for ansible-test.
* Fix issues in code-smell tests.
2018-09-21 11:38:22 -07:00
Sam Doran
b60854357b
Unify terms and UI between 1Password lookups and facts module (#45427)
* Unify login behavior between 1Password lookup plugins and module

- Use the same names for all credential aspects
- Only require the minimal amount of information for each
- Add more examples

* Change parameter terms

- use terms in line with 1Password documentation.
- update examples
- update tests

* Improve error messages in lookup plugin

* Unify onepassword_facts with lookup plugins

- use same methods and logic for signing in or reusing existing session
- unify terms with lookup plugins

* Change rc test for determing login

An rc other than 1 can be returned when a current login session does not exist.

* Create AnsibleModuleError class

ansible.errors is not available to modules, so create an AnsibleModuleError class within the module

Do not user os.path.expanduser since this is already done by virtue of the type being "path" in the argument spec.

* Add note about risk with fact caching sensitive data

* Add note on op version that was used for testing
2018-09-21 14:26:05 -04:00
Matt Clay
45b5685037 Add python.py coverage injector for ansible-test.
This can be used to run Python scripts from the repository with the
correct interpreter and allow collection of code coverage.

Useful for testing contrib inventory scripts.
2018-09-21 11:21:32 -07:00
Matt Clay
2148999048 Improve error handling for docs-build test. 2018-09-21 08:34:07 -07:00
tstoner
216da1c475 Changed when condition from checking image version to checking keys being (#45943)
defined
2018-09-21 16:36:37 +05:30
Matt Clay
2056c981ae Improve ansible-test match error handling. 2018-09-21 00:05:33 -07:00
Jordan Borean
27c10fa502
add skip/docker alias to skip tests when running on Docker (#45955)
* add skip/docker alias to skip tests when running on Docker

* changed warning message wording
2018-09-21 16:09:54 +10:00
Jordan Borean
198423d6fb
powershell: do not quote join_path result to reflect ShellBase join_path (#45944) 2018-09-21 15:31:12 +10:00
Andrew Gaffney
acac001742 Add number of skipped tasks to play recap in 'default' callback (#45797) 2018-09-20 14:38:54 -04:00
Matt Martz
95e77ac853
Ensure that the src file contents is converted to unicode in diff info (#45744)
* Ensure that the src file contents is converted to unicode in diff info. Fixes #45717

* Fix up and cleanup

* The diff functionality in the callback plugins should have the
  to_text() calls removed since we're now doing it in ActionBase
* catching of UnicodeError and warnings in the callback diff
  functionality from 61d01f549f haven't been
  needed since we switched to to_text so remove them.
* Add a note to ActionBase's diff function giving an example of when the
  diff function will be inaccurate and how to fix it

* Fix callback get_diff() tests

I believe the unittests of callback's get_diff() were wrong.  They were
sending in a list where strings were expected.  Because previous code
was transforming the lists into strings via their repr, the previous
tests did not fail but they would have formatted the test cases output
in an odd way if we had looked at it.
2018-09-20 12:31:48 -05:00
Dag Wieers
24dd87bd0a Fix incorrect use of subprocess.CalledProcessError (#45890) 2018-09-20 10:14:11 -07:00
Rémy Léone
7c7a7efbbe Add an option to enable public ip at server creation (#44826) 2018-09-20 12:13:26 -04:00
max-allan-surevine
cb460dee74 Update keycloak_client.py (#43547)
* Update keycloak_client.py to document the 'realm' parameter, eliminate E322 ignore
2018-09-20 10:34:04 -05:00
Nathaniel Case
406b59aeba
Move persistent connections to only use registered variables (#45616)
* Try to intuit proper plugins to send to ansible-connection

* Move sub-plugins to init so that vars will be populated in executor

* Fix connection unit tests
2018-09-20 09:56:43 -04:00
Jordan Borean
5c73d4f4bd
async: use async_dir for the async results file directory (#45461)
* win async: use async_dir for the async results file directory

* tried to unify POSIX and PowerShell async implementations of async_dir

* fix sanity issue
2018-09-20 19:37:54 +10:00
Matt Clay
5a3000af19 Support comments in ansible-test flat files. 2018-09-20 00:48:00 -07:00
Dag Wieers
cb4bf04be6 Fix pylint error on utf8 character in string (#45880)
Small fix
2018-09-20 12:01:44 +10:00
Matt Clay
f3d1f9544b
Make ansible-test available in the bin directory. (#45876) 2018-09-19 17:58:55 -07:00
Jordan Borean
582a4dfa13
append AWS region to test instance file (#45877) 2018-09-20 10:56:56 +10:00
Zim Kalinowski
83645963fb Fixing assigning ssl certificate to http listener in app gateway (#45830)
* fixed ssl certificate reference

* modified test
2018-09-19 17:00:27 -07:00
Zim Kalinowski
16fa49a894 adding os disk name (#45126)
* adding os disk name

* fixed test
2018-09-19 16:51:37 -07:00
Jordan Borean
a7d372c3ba
go back to FreeBSD 11.1 for tests due to 11.2 stability issues (#45872) 2018-09-20 09:24:16 +10:00
Eric Helms
74b94e119e Deprecate foreman and katello modules (#42043)
* Deprecate foreman and katello modules in 2.8, remove in 2.12
2018-09-19 11:41:54 -05:00
Felix Fontein
bc69aeca7f Fixing HTTPError case of fetch_url for Python 3 compatibility. (#45628)
* Fixing HTTPError case of fetch_url for Python 3 compatibility.

* Adding unit test.

* PEP8.

* Changelog.
2018-09-19 10:53:16 -05:00
Daniel Speichert
d34cf93f1a Migrate from MySQLdb to PyMySQL (#40123)
* Migrate from MySQLdb to PyMySQL

* Deduplicate driver loading and failure message

* Explain requirements

* Apply requirements docs change to proxysql too

* Add changelog
2018-09-19 08:44:05 -07:00
Pilou
60160c1e90 doc: exercising module code locally: update cmd (#45697)
The documented way to execute module code locally wasn't always working:

    $ python ./lib/ansible/modules/files/file.py <<< '{"ANSIBLE_MODULE_ARGS": {}}'
    Traceback (most recent call last):
      File "./lib/ansible/modules/files/file.py", line 177, in <module>
        from ansible.module_utils.basic import AnsibleModule
      File "~/ansible/lib/ansible/module_utils/basic.py", line 78, in <module>
        import tempfile
      File "~/ansible/lib/ansible/modules/files/tempfile.py", line 69, in <module>
        from tempfile import mkstemp, mkdtemp
    ImportError: cannot import name 'mkstemp'
2018-09-19 10:10:55 -04:00
Dag Wieers
2edf20d1ed Docs: Avoid use of 'default: null' (#45795)
Various modules document the default 'null' value, but it causes None to
be shown in the documentation explicitly.
2018-09-19 09:02:27 -05:00
Felix Fontein
6e04a1dbdc integration tests for docker_container (#45747)
* First round of integration tests for docker_container.

* Added regression test for #45700.

* Work around dict order randomization.
2018-09-19 21:01:23 +10:00
Matt Clay
846ee7e85f Fix issues with docker_stack test:
- Leave swarm at end of test to avoid breaking docker_swarm test.
- Do not update stack to avoid error leaving swarm.
- Put test back in correct group.
2018-09-18 20:12:17 -07:00
Tim Rupp
ccfbed3dbc
Adds bigiq_device_facts module (#45822)
This module can be used to query a variety of facts from a BIG-IQ
2018-09-18 22:30:31 -04:00
Matt Clay
99cac99cbc Block network access for unit tests in docker. 2018-09-18 17:53:04 -07:00
Matt Clay
be199cfe90 Minor fixes for unit test delegation. 2018-09-18 16:12:15 -07:00
Julien PRIGENT
6059246093 EFS - add support for new Provisioned Throughput (#43253)
* efs.py: Add support for EFS provisioned throughput

* efs_facts.py: Add support for EFS provisioned throughput

* efs_facts integration tests updated with provision throughput

* efs_facts: Tests refactoring - add failure and success playbook according to botocore version.

* efs_facts: More tests and new option descriptions adjustment

* efs_facts tests renamed to efs
2018-09-19 09:10:56 +10:00
René Moser
1ed3bd9168
vultr: fix for unreliable API behavior (#45712) 2018-09-19 00:01:53 +02:00
Matt Clay
abe8e4c9e8
Run unit tests in parallel. (#45812) 2018-09-18 13:58:22 -07:00
Matt Clay
06e2e0e040 Change group on docker_stack test.
This should provide a temporary fix for conflicts with the docker_swarm test.
2018-09-18 11:49:39 -07:00
Matt Clay
379a7f4f5a
Fix ansible-test unit test execution. (#45772)
* Fix ansible-test units requirements install.
* Run unit tests as unprivileged user under Docker.
2018-09-18 08:37:14 -07:00
Dario Zanzico
54c3d1c24e New module: add docker_stack module (clound/docker/docker_stack) (#24588)
* add docker_stack module + tests
2018-09-18 09:54:44 +01:00
Matt Clay
53b230ca74 Fix unit test parametrize order on Python 3.5. 2018-09-17 22:45:42 -07:00
Matt Clay
0686450cae
Fix unit tests which modify the source tree. (#45763)
* Fix CNOS unit test log usage.
* Use temp dir for Galaxy unit tests.
* Write to temp files in interfaces_file unit test.
* Fix log placement in netapp_e_ldap unit test.
2018-09-17 20:27:14 -07:00
Will Thames
d2569a3f7d Improve iam_group exception handling (#45599)
* Improve iam_group exception handling

Use AnsibleAWSModule for iam_group and handle BotoCoreErrors
as well as ClientErrors. Use fail_json_aws to improve error messages

* Add minimal iam_group test suite

Update some of the read-only IAM permissions (this is not sufficient
to run the test suite but it gets further than it did until it tries
to add a (non-existent) user)

* Clean up after tests
2018-09-17 19:53:44 -04:00
Sloane Hertel
2167ce6cb6
Remove placeboify from unit tests that are not calling AWS (i.e. creating a recording) (#45754) 2018-09-17 18:17:43 -04:00
Sloane Hertel
5467ac3454
[aws unit test utils] only create a recordings directory when the env var is set (#45752)
* Only create placebo recording test directories when the environment variable PLACEBO_RECORD is set
2018-09-17 18:16:44 -04:00
Aidan Feldman
fa18d45eb3 Link to the Galaxy platforms list from the meta file template (#34046)
* Link to the Galaxy platforms list from the meta file template
Fixes https://github.com/ansible/galaxy/issues/52.
* make ansible/ansible text match mazer text on platforms
2018-09-17 13:39:54 -05:00
Sloane Hertel
d7ca3f2bd3 ec2_group: fix regression for targets that are a list containing strings and lists (#45594)
* Fix targets that may be a list containing strings and lists which worked prior to 2.6.

* Add ec2_group integration tests for lists of nested targets

* changelog

* Add diff mode support for lists of targets containing strings and lists.
2018-09-17 14:31:41 -04:00
John R Barker
78201d1c32 Allow removed_in: 2.12 (#45732) 2018-09-17 10:54:00 -04:00
David Passante
05328ebf21 Cloudstack: fix support for some VPC service capabilities (#45727)
* Fix support for VPC capabilities such as redundant routers or region level VPC

* Add integration test cases for "region level VPC" and "distributed router" capabilities
2018-09-17 16:08:16 +02:00
Matt Clay
e7426e3795
Minor cleanup of code-smell tests. (#45658)
* Minor cleanup of code-smell tests.
* Add exception handling for YAML load.
2018-09-14 11:12:06 -07:00
Maugli
235b11f681 Return correct version on installed VyOS (#39115)
* Return correct version on installed VyOS

Previously existing regexp will shows only "VyOS" without numeric output of router version.
For example: from  "Version:      VyOS 1.1.6" only VyOS will be written in ansible_net_version variable
For more informative output numeric value should be returned as well

* Fixed unittests
2018-09-14 22:51:30 +05:30
John R Barker
822236810e
BOTMETA Validator + Bulk tidyup, support:(core,community,network) (#44903)
plugins/ is COMMUNITY
Set sensible defaults for directories
support:network for the platforms that we Networking SUPPORTS,
everything else is COMMUNITY
Mark other support:network (ansible-connection, etc)
Infoblox is support:core
contrib/ by definition should be support:community
Remove duplicated labels
Make yamllint happy(ier)
Adds sanity test to ensure BOTMETA.yml is valid
2018-09-14 12:33:23 +01:00
Pilou
9984c0fd40 hashi_vault lookup: add integration tests (#44814)
* hashi_vault lookup: add integration tests

* hashi_vault lookup tests: use ansible-ci-files
2018-09-13 19:13:57 +01:00
Anton Nikulin
b7263eab1d Store Authorization header inside HttpApi connection plugin (#45598) 2018-09-13 19:34:30 +05:30
Nathaniel Case
285b927889
network command modules cleanup (#45242)
* Standardize _command modules

* Centralize command transformation process

* Fix check mode error test
2018-09-13 08:55:35 -04:00
Zim Kalinowski
df768914a1 adding sql firewall rule facts (#45059) 2018-09-13 17:54:58 +08:00
Jordan Borean
d81249994e
win_script: add support for become and centralise exec wrapper builder (#45582)
* win_script: add support for become and centralise exec wrapper builder

* satisfying the pep8 gods

* do not scan for module dependencies when running as a script
2018-09-13 08:50:13 +10:00
Nathaniel Case
0b433b3ea9
Clean up after cnos tests (#45564) 2018-09-12 12:17:29 -04:00
Anil Kumar Muraleedharan
ac58c36ad0 Lenovo cli bugfixes (#45278)
* To change all CLIs present in the code to latest CNOS CLI. One bug of executing with Lenovo Jakku switch is also getting fixed.

* To change the file names as the commands have changed from display to show

* To change to new CLI in test_cnos_comand.py as well
2018-09-12 10:31:45 -04:00
Dag Wieers
cbf2c2a000 Fix integration tests (#43847)
I doubt this is the correct test, but until we have this fixed/improved
at least this works fine.
2018-09-12 19:34:50 +05:30
Zim Kalinowski
111febe62e extended vmss facts (#45535) 2018-09-12 13:22:47 +08:00
Matt Clay
c50d6f1944 Update RHEL and FreeBSD versions used for tests:
- RHEL 7.4 -> 7.5
- FreeBSD 11.1 -> 11.2
2018-09-11 20:57:57 -07:00
Deepak Agrawal
81214409cf
asa_config/ios_config: diff strict does not work with multiple parents (#45150)
* multiple parents issues in diff

* Integration tests for missing functionality

* add testcase for other platforms. vnxos does not support qos so need to find a command chain on v-nxos for multiple parets. junos uses on-device diff so should not need this.

* Fix for issue when any candidate parent did not meet the exact line in running-config

* DCI runs eos_config without become flag
2018-09-12 07:50:24 +05:30
Matt Clay
d478a4c3f6 Update default container to version 1.2.0. 2018-09-11 13:17:11 -07:00
Matt Martz
5785de582f
Fix logic to not re-download existing files when force=no (#45495)
* Fix logic to not re-download existing files when force=no. Fixes #45491

* Reduce logic complexity
2018-09-11 13:56:13 -05:00
Matt Clay
c0bf9815c9 Fix ACI unit test on Python 3.7.0.
The previous logic was only needed for pre-release versions of 3.7.
2018-09-11 10:58:46 -07:00
Alicia Cozine
4264be2b18 Remove more docs build errors (#45364)
* orphans testing pages to avoid not-in-toctree errors

* orphans various pages pending reorg

* adds module_utils and special_vars to main TOC

* uses a glob for scenario_guide TOC

* normalize and Sentence-case headings on community pages, typos

* re-orgs community TOC, adds all pages to toctree

* removes scenario guides index page

* adds style guide to community index

* basic update to style guide

* fix typo that created a new error

* removes not-in-toctree from ignore errors list

* leave removing files for future cleanup task
2018-09-11 17:51:47 +01:00
David Rodríguez
600c7ac108 Fix remote checksums when paths have leading dots (#45287)
* Fix remote checksums with paths have leading dots

* Fix result recorded from the wrong file

* Add changelog fragment
2018-09-11 12:47:29 -04:00
Yuwei Zhou
fa04387550 fix the autoscale resource id (#45477)
* fix the autoscale resource id

* Update main.yml
2018-09-11 18:52:43 +08:00
James Cassell
211aeebd0d remove unused templar._clean_data() (#42739) 2018-09-11 09:11:03 +02:00
Zim Kalinowski
8a221d81dd fixing facts for mysql server (#45374) 2018-09-11 14:27:50 +08:00
Jordan Borean
01398f61d5
Win deprecate 2.8 (#45473)
* Remove deprecated/expired functionality

* win:_msi: Remove the win_msi module

* removed some missed deprecated return options and added porting guide reference

Co-authored-by: dagwieers <dagwieers@users.noreply.github.com>
2018-09-11 14:23:48 +10:00
Jordan Borean
ec6d82435f
win_scheduled_task: add deprecation warning for repetition format (#45468)
* win_scheduled_task: add deprecation warning for repetition format

* fixed up sanity issues
2018-09-11 14:22:57 +10:00
Jordan Borean
881f3a599c
windows testing - changes to accomodate future behaviour changes (#45464) 2018-09-11 13:04:23 +10:00
Zim Kalinowski
0b029d6792 adding tags support to postgresql (#45339) 2018-09-11 10:20:27 +08:00
Jordan Borean
d4ce1b9f31
fix Ansible.ModuleUtils.FileUtil to respect ErrorAction if running in a try/catch (#45451) 2018-09-11 09:47:56 +10:00
Jordan Borean
c9c141fb6a
win_say - fix up syntax and test issues (#45450) 2018-09-11 08:23:46 +10:00
Jordan Borean
25ae4f2b73
reordered windows test groups for better efficiency (#45445) 2018-09-11 07:29:39 +10:00
Matt Clay
ed49f37957 Reduce cost of Azure DB tests. 2018-09-10 14:16:12 -07:00
Matt Martz
0015d4cef3
2.8 Core Deprecation Removal (#45232)
* Remove deprecated ansible.vars.unsafe_proxy. Fixes #45040

* Remove deprecated validate_md5 alias from fetch module. Fixes #45039

* Remove deprecated private arg from import/include_role. Fixes #45038

* All include deprecations bumped to 2.12. Fixes #45037

* Add changelog for deprecated removals
2018-09-10 15:05:52 -05:00
Jon Dufresne
ef67d4074b Prefer io.BytesIO over six; available on all supported Pythons (#45388)
On all supported Pythons, the io.BytesIO is always a stream
implementation using an in-memory bytes buffer. Makes code slightly more
forward compatible by reducing use of the six module.
2018-09-10 15:19:16 -04:00
Zim Kalinowski
e203531735 fixing broken sql server tags (#45378) 2018-09-10 15:31:01 +08:00
Matt Clay
1891827dfa Update default-test-container to 1.1.0. 2018-09-07 19:44:45 -07:00
Matt Clay
75d1cb3b05 Fix tower_project integration test.
Changes required due to https://github.com/ansible/ansible/pull/45158
2018-09-07 19:31:06 -07:00
Kevin Breit
6c67674eab meraki_mr_l3_firewall - Integration test fix (#45366)
* Fix integration test as wrong module was called

* Create block section for failures on integration test for mr_l3_firewall integration test
2018-09-08 03:44:50 +02:00
Will Thames
1463c2e4a8
Use a sensible default for k8s merge_type (#45284)
* Use a sensible default for k8s merge_type

The sensible default for merge_type is `['strategic-merge', 'merge'].
However, we can't make this the default default, as we need to support
users who are using openshift 0.6.0, where the merge_type parameter is
unsupported.

* Refactor k8s test suite for merge_type tests

Allow tests with pre-merge-type openshift and post-merge-type
openshift.
2018-09-08 10:08:09 +10:00
jctanner
ab133def0b vmware_guest test - Use the cluster name instead of the path (#45368) 2018-09-08 04:06:16 +05:30
Alexander Bethke
a3a189fc83 Add integration tests for flatpak_remote module
PR #42315
2018-09-07 23:01:36 +02:00
Meecr0b
2f6b8591b1 tower_credential: expect ssh_key_data to be a string instead of path (#45158)
* expect ssh_key_data to be a string instead of path

ssh_key_data should be a string filled with the private key
the old behavior can be archived with a lookup

Fixes #45119

* clarifies ssh_key_data description, adds newline
2018-09-07 13:41:09 -04:00
Alexander Bethke
19acd5d4f7 Add integration tests for flatpak module
PR #42169
2018-09-07 17:49:26 +02:00
Matt Martz
2ac647def8
Ensure loop with delegate_to can short circuit the same as without delegate_to. Fixes #45189 (#45231) 2018-09-07 10:16:03 -05:00
Pieter Avonts
1a810f8f11 VMware: Rewrite get_resource_pool method for correct resource_pool selection (#39792)
* rewrite get_resource_pool method for correct resource_pool selection
* only keep name if path is given for cluster, esxi_hostname or resource_pool
* Revert "only keep name if path is given for cluster, esxi_hostname or resource_pool"
* This reverts commit 50293ec763c024b0eaceac5d775ccc0ad3ff8bd7.
* if the name argument contains a path, only use the last part for matching
* remove path from cluster argument in tests
* remove find_objs in favour of reusing find_obj with an extra folder argument
* fix find_obj ignoring first if name is not given
2018-09-07 18:23:26 +05:30
Abhijeet Kasurde
fd985db72d
VMware: Refactor disc logic (#39285)
* Refactoring related to network device
* Assign unique random temporary key while creating SCSI or/and IDE controller devices
* Add testcase for this change

Fixes: #38679

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-09-07 17:04:02 +05:30
Zim Kalinowski
fca1dc4cf2 consolidating dns recordset tests (#45331) 2018-09-07 14:49:38 +08:00
Zim Kalinowski
d309530bb6 consolidate availabilityset tests (#45327) 2018-09-07 12:52:00 +08:00
Zim Kalinowski
8adc7901ed consolidate dnszone tests (#45328) 2018-09-07 12:50:51 +08:00
Abhijeet Kasurde
e653a93044
VMware: update vmware_local_role_manager with action (#44566)
With this fix user can add, remove and set privileges to
an existing role with privileges.

Fixes: #44391

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-09-07 09:33:50 +05:30
Sloane Hertel
8b341619ae Fix backwards compatibility without providing prefix since boto3 does more parameter validation than boto (#45308)
Use .get() instead of assuming a rule has a Transitions or Filter key (both of which are optional)
2018-09-06 15:44:26 -04:00
Ryan Brown
079299db4d
[aws] ec2_group multi-account and peered VPC bugfix (#45296)
* Add tests to replicate bug #44788 

* Handle when userId is same account due to in-account peering

* Module defaults for main.yml

* Turn off VPC peering tests in CI
2018-09-06 15:06:03 -04:00
Ganesh Nalawade
a3c137c1ab
Fix diff_ignore_lines option issue for candidate configuration (#45201)
* Fix diff_ignore_lines option issue for candidate configuration

*  diff_ignore_lines option is to handle the running config fetch from
   remote host and ignore the lines that are auto updated eg: commit time and date
*  This option should not be used while processing candidate (input) configuration

* Fix review comment
2018-09-06 23:54:56 +05:30
Brian Coca
64c594d226
correct and clarify deprecation (#45234)
* correct and clarify deprecation
2018-09-06 13:24:44 -04:00
Adam Miller
db34d3923a Improve dnf group output for clarity
Add note about group removal bug upstream dnf

Signed-off-by: Adam Miller <admiller@redhat.com>
2018-09-06 09:27:24 -07:00
Rémy Léone
eb882e4b01 Select image facts by region (#44965) 2018-09-06 11:57:43 -04:00
Deepak Agrawal
23d54ed1d4
iosxr dci failure on devel/2.7 (#45268) 2018-09-06 13:35:25 +05:30
Yunge Zhu
2955d7cd1b add publish url in webapp facts output (#45131)
* add publish url in webapp facts output

* update name

* fix test
2018-09-06 08:04:09 +08:00
Matt Clay
4173a30941 Remove obsolete default container. 2018-09-05 15:29:00 -07:00
Matt Clay
3f8edb440a Switch default test container to quay.io. 2018-09-05 14:31:10 -07:00
Matt Clay
6fb333faff
Fixes for ansible-test sanity import test. (#45249)
* Fix import test on Python 3.7.
* Fix path processing in import sanity test.
2018-09-05 13:54:50 -07:00
Ryan Brown
20f21779d3
Fix ec2_group for numbered protocols (GRE) (#42765)
* Fix spurious `changed=True` when int is passed as tag

* Fix for all AWS module using compare_aws_tags

* Handle improperly stringified protocols and allow inconsistency between None/-1 on non-tcp protocols

* Add integration test that reproduces the same bug

* Return false if the comparsison is not equal
2018-09-05 13:34:26 -04:00
Zim Kalinowski
0ad262e3ec Consolidate keyvault tests (#45196) 2018-09-05 17:48:27 +08:00
Zim Kalinowski
a5e2b60870 adding tags to keyvault (#45145) 2018-09-05 16:21:15 +08:00
Abhijeet Kasurde
9c1ba18607
VMware: Return Disk UUID information (#45157)
This fix adds feature of disk uuid for given virtual machine disk.

Fixes: #45149

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-09-05 10:35:13 +05:30
Rémy Léone
f6303ba5df Add user_data/cloud-init support for scaleway_compute module (#42697) 2018-09-04 19:56:05 -04:00
Matt Clay
998badbda5 Fix ansible-test virtualenv use in import test. 2018-09-04 10:07:48 -07:00
Matt Clay
f7979e4938 Skip ipaddr test that fails on Python 3.7+. 2018-09-04 09:23:31 -07:00
Abhijeet Kasurde
4e9b8136c2 Add support for Devuan (#45148)
Devuan is part of Debian family. This fix adds support for Devuan OS.

Fixes: #45047

Signed-off-by: Abhijeet Kasurde <akasurde@redhat.com>
2018-09-04 08:38:57 -04:00
Zim Kalinowski
d4aa7db323 consolidate sql tests into one (#45064) 2018-09-04 12:30:09 +08:00
Zim Kalinowski
1f8635fbd9 Virtual machine facts - retrieving instance view (#45128) 2018-09-04 11:25:01 +08:00
Zim Kalinowski
9bd702ef37 vm size idempotence (#45108) 2018-09-04 09:41:41 +08:00
Madhura-CSI
a4663d8e73 New module for azure custom image facts (#42102)
* new module for azure custom image facts

* added facts in aliases, corrected assertion

* simplified managed disk id struct

* updated ansible version
2018-09-04 02:28:01 +08:00
Matt Clay
b3a3e8ba7b
Update test constraints. (#44975)
- Limit virtualenv version on Python 2.6.
- Limit pyopenssl version on Python 2.6.
- Pin pyfmg version to keep unit tests passing.
2018-09-03 09:34:22 -07:00
Dag Wieers
e99db084f4
aci_interface_policy_leaf_policy_group: Fix filtering by lagT (#45088) 2018-09-03 16:40:57 +02:00
Dag Wieers
6faf400621
aci_switch_policy_vpc_protection_group: Fix idempotency (#45091) 2018-09-03 16:39:39 +02:00
Zim Kalinowski
5c9241fa7c merge mysql server and database tests (#45060) 2018-09-03 16:52:09 +08:00
Zim Kalinowski
9b28319020 adding container instance facts (#43326) 2018-09-03 15:51:42 +08:00
Yunge Zhu
107ae1a4f3 improve vmss test (#44892)
* improve vmss test

* fix lint

* fix lint

* fix lint

* fix  test bug
2018-09-03 09:52:22 +08:00
Zim Kalinowski
d8cf645a8c merging postgresql server and database facts (#45061) 2018-09-03 09:49:18 +08:00
zikalino
0ee598a710 added missing public ip address alias 2018-09-01 17:05:23 -07:00
Matt Martz
f89d873698
Stub out modules scheduled for 2.8 removal (#44985)
* Remove modules scheduled for 2.8

* Add changelog and porting guide

* Skip docs test on removed modules

* Don't link to removed modules
2018-08-31 16:27:32 -05:00
Rémy Léone
5cf9644003 Add an user facts module for Online (#44709) 2018-08-31 14:02:40 -04:00
Matt Clay
771768966f Flush output from timing script. 2018-08-31 07:58:12 -07:00
Anil Kumar Muraleedharan
fbf55a09cc Lenovo image refactor (#44953)
* Refactoring code to adhere to persistence connection.

* Update cnos_rollback.py

* Updating license for the refactored method

* Update cnos_rollback.py

* Removing the BSD License as suggested by Legal

* Adding cnos_image after testing on sftp. Test code is also added

* Removing debug comments

* adding space
2018-08-31 20:04:57 +05:30
Ganesh Nalawade
c0326aea2f
Fix cli_command multiple prompt issue (#44922)
* Add check in network_cli to handle all prompts

* Add check_all flag to mandatory handle all the command prompt
  in prompts list. By default if any one prompt is handled
  remaining prompts are ignored.

* Fix cli_command multiple prompt issue

* If multiple prompt and answers are given as input network_cli
  handles only the first prompt that matched by default
* If a command execution results in muliple prompt the fix
  add support to set a boolean option C(check_all) to indicate
  network_cli to wait till all the prompts and answers are processed.

* Update cli_command

* Update api doc

* Fix unit test failure

* Fix CI failure

* Update network_cli

* Fix review comment
2018-08-31 20:04:12 +05:30
Ganesh Nalawade
005233f814
Fix iosxr_config integration test failure (#44969)
*  Check for commands presence in case running config
   is used as base config for diff
*  Correct the fixtures
2018-08-31 19:57:38 +05:30
Deepak Agrawal
50c7702e46
cisco firepower : Make API endpoints configurable via hostvars (#44952)
* httpapi host vars

* Make configurable end-points for firepower

* pep8 fix
2018-08-31 18:38:16 +05:30
Alex Stephen
276ad32a45 removing libcloud secrets support for legacy gcp modules (#44932)
* removing libcloud secrets support for legacy gcp modules

* test fixes
2018-08-31 08:28:32 -04:00
Matt Clay
1b54af068d Disable azure_rm_virtualmachine_scaleset test.
Temporary solution to avoid quota issues.
2018-08-31 00:16:32 -07:00
Matt Clay
debc1e229e Split Azure tests into 8 groups. 2018-08-30 23:21:57 -07:00
Nilashish Chakraborty
0f268e70a1
Fix ios_user issues (#44904)
* Fix ios_user issues

* Modify regex and fix unittests
2018-08-31 11:08:46 +05:30
Ubuntu
7d81de2516 updates to azure_rm_sqlfirewallrule
updates to azure_rm_sqlfirewallrule

small fixes

move sql client to common

adding state

fixed sample

fixed sanity

fixed aliases

removed unnecessary object

removed unused resource_group

changed group to less crowdy

tags

no tags on firewall rule
2018-08-30 21:54:58 -07:00
Yuwei Zhou
b7d614df78 add auto scale module (#41533)
* add autoscale modules

* add test alias
2018-08-30 21:18:56 -07:00
Yunge Zhu
f6fa5a11bb azure vm test: async second vm deletion (#44887)
* async second vm deletion

* fix typo

* random resource names, comment out disable steps

* fix syntax

* fix syntax error again

* fix test

* fix typo
2018-08-31 12:14:55 +08:00
Roman Belyakovsky
4f70eb3e26 ec2_vol_facts: moved to boto3 (#43348)
* ec2_vol_facts: moved to boto3

* vol_facts: formatting fixes

* vol_facts: formatting fixes

* vol_facts: added integration tests

* vol_facts: improved integration tests

* vol_facts: integration tests, fixed ami

* vol_facts: integration tests, fixed ami

* vol_facts: refactor, post-review update

* vol_facts: implemented pagination

* vol_facts: pep8 style fix

* CI IAM policy requirements fix

* Tests fixed, added to unsupported, removed empty files

* removed shippable alias
2018-08-31 13:50:17 +10:00
Matt Clay
abdd6a6475 Fix pslint issues. 2018-08-30 19:38:17 -07:00
Zim Kalinowski
59a302152a added missing alias in container registry tests (#44936) 2018-08-31 10:23:10 +08:00
Richard Levenberg
c759381b0b win_xml module for manipulating XML files on Windows (#26404)
documentation fixups

handling backup in a more ansible canonical way

remove quotes from $dest

Handle elements with only text child nodes
2018-08-31 12:20:09 +10:00
Sloane Hertel
113336d6f1 rds_instance module and tests (#43789)
* Add functions to retrieve the allowed and required parameters for boto3 client methods

* Add custom waiter for stopping an RDS DB instance

* Add rds_instance module

* Add rds_instance integration tests

* address requested changes from ryansb

* address requested changes from willthames

* address requested changes from dmsimard

* Fix final snapshots

Fix idempotence with already-deleting DB instances

Remove unused import from module_utils/aws/core.py

Consolidate function to get all boto3 client method parameters and the subset of required parameters

* Add some additional rds_instance integration tests

* Add some common functions to module_utils/aws/rds

* Move common code out of rds_instance

* Remove hardcoded engine choices and require the minimum boto3

* Document wait behavior

* Provide a list of valid engines in the error message if it is invalid

Add supported methods to whitelist

Remove AWSRetry around waiter

Wait for a less crazy amount of time

Remove unused variables

* Add a test for an invalid engine option

* pep8

* Missed adding a method to the whitelist

* Use retries

* Fix some little things

* Fix more things

* Improve error message

* Support creating cross-region read replicas

* Remove unused imports

* Add retry when getting RDS instance

* Soft-check required options so module fails properly when options are missing

* Fix mariadb parameter version

* Fix cross-region read_replica creation and tests

* fix modify tests

* Fix a modification test

* Fix typo

* Remove test for option_group_name that exists for this account but may not for others and added as a TODO to do properly
2018-08-31 12:17:02 +10:00
Dag Wieers
dbe30cc050
win_wait_for_process: Fixes and integration tests (#44801)
* win_wait_for_process: Add integration tests

* Disable reporting changes

* Added more tests checking PID

* Various improvements

This PR includes:
- Use Get-Process instead of CIM Win32_Process
- Rewrite of process filter logic (speedup)
- Fix error messages
- Fixes to documentation, examples and return output

* win_wait_for_process: Limit to PowerShell 4 and higher

* Improve RESULT documentation

* Last minute fixes for CI

* Catch Powershell exceptions

* Increase timeout to make tests more stable
2018-08-31 03:13:51 +02:00
Dag Wieers
15c9bb5aa0
Disable PSUseOutputTypeCorrectly
Because of a bug that produces false positives.
2018-08-31 02:52:57 +02:00
Will Thames
ce110ff081 K8s retry merge (#44821)
* Make merge_type a list and apply merge_type in order

Allow use case of preferring strategic-merge and failing
back to merge, or just preferring a different merge type

* Improve k8s module test coverage
2018-08-30 20:42:47 -04:00
Matt Clay
c1173a2aec Add seccomp support to ansible-test. 2018-08-30 16:38:31 -07:00
Matt Martz
2a4e92aab7
ensure if we get a non-Task object in _get_delegated_vars, we return early (#44934) 2018-08-30 17:11:32 -05:00
Alex Stephen
3550f342e0 Gcp auth deprecation (#44866) 2018-08-30 17:14:39 -04:00
Matt Martz
a0d7d4b82f Change insertion order of apply block to not affect the include_X task itself (#44912) 2018-08-30 16:56:28 -04:00
Sam Doran
8cd8d17980
Add ability to unlock 1Password vault to lookup plugins (#44923)
* Add ability to use login to 1Password vault to 1Password lookups

* Adjust unit tests

* Add changelog
2018-08-30 16:24:06 -04:00
Matt Martz
9d89e15ff0
Ensure we only cache the loop when the task had a loop (#44901)
* Further restrict caching of loop when the task actually had a loop. Fixes #44874

* Extend tests for loop caching
2018-08-30 12:02:43 -05:00