Increase python version coverage for tests. (#24762)

* Improve ansible-test inventory handling.
* Fix python 3 re-raise of exception from thread.
* Fix python 3 encoding for windows-integration.
* Run network tests on multiple python versions.
* Run windows tests on multiple python versions.
* Support Shippable delegation using --tox.
* Skip vyos_command on python 3 tests until fixed.
* Add python 3 filtering to local and tox.
* Fix tests to support back to back runs.
* Temporarily test networking with python 2.7 only.

Running the tests back to back causes intermittent test failures
which need to be addressed before we can test multiple versions
in a single test run.
This commit is contained in:
Matt Clay 2017-05-19 01:37:53 +08:00 committed by GitHub
commit 5babe2daea
13 changed files with 140 additions and 51 deletions

View file

@ -0,0 +1,14 @@
# This is the configuration template for ansible-test network-integration tests.
#
# You do not need this template if you are:
#
# 1) Running integration tests without using ansible-test.
# 2) Using the `--platform` option to provision temporary network instances on EC2.
#
# If you do not want to use the automatically provisioned temporary network instances,
# fill in the @VAR placeholders below and save this file without the .template extension.
#
# NOTE: Automatic provisioning of network instances on EC2 requires an ansible-core-ci API key.
[@OS]
@NAME ansible_connection="local" ansible_host=@HOST ansible_network_os="@OS" ansible_user="@USER" ansible_ssh_private_key_file="@KEY_FILE"

View file

@ -1,25 +1,28 @@
[windows_hosts]
# This is the configuration template for ansible-test windows-integration tests.
# It can also be used with the legacy `make` based method of running tests.
#
# You do not need this template if you are:
#
# 1) Using the `--windows` option to provision temporary Windows instances on EC2.
#
# If you do not want to use the automatically provisioned temporary Windows instances,
# fill in the @VAR placeholders below and save this file without the .template extension.
#
# NOTE: Automatic provisioning of Windows instances on EC2 requires an ansible-core-ci API key.
#
# REMINDER: Standard ports for winrm are 5985 (HTTP) and 5986 (HTTPS).
[windows]
@NAME ansible_host=@HOST ansible_user=@USER ansible_password=@PASSWORD ansible_port=@PORT
[windows:vars]
ansible_connection=winrm
ansible_winrm_server_cert_validation=ignore
# support winrm connection tests (temporary solution, does not support testing enable/disable of pipelining)
[winrm:children]
windows
testhost_binary_modules
[windows_hosts:vars]
ansible_connection=winrm
ansible_host=@ansible_host
ansible_user=@ansible_user
ansible_password=@ansible_password
# HTTPS uses 5986, HTTP uses 5985
ansible_port=5986
ansible_winrm_server_cert_validation=ignore
[winrm]
winrm-pipelining ansible_ssh_pipelining=true
winrm-no-pipelining ansible_ssh_pipelining=false
[winrm:vars]
ansible_connection=winrm
ansible_host=@ansible_host
ansible_user=@ansible_user
ansible_password=@ansible_password
# HTTPS uses 5986, HTTP uses 5985
ansible_port=5986
ansible_winrm_server_cert_validation=ignore
# support winrm binary module tests (temporary solution)
[testhost_binary_modules:children]
windows

View file

@ -1 +1,2 @@
network/ci
skip/python3

View file

@ -35,8 +35,6 @@
- show hardware cpu detail
- show hardware mem
- show license
- show log
- show system boot-messages
provider: "{{ cli }}"
register: result

View file

@ -1 +1,2 @@
windows/ci/group1
windows/ci/minimal