diff --git a/shippable.yml b/shippable.yml index c7d060a3698..4665c984cfd 100644 --- a/shippable.yml +++ b/shippable.yml @@ -20,6 +20,8 @@ matrix: - env: TEST=windows/2 - env: TEST=windows/3 + - env: TEST=network + - env: TEST=linux/centos6/1 - env: TEST=linux/centos7/1 - env: TEST=linux/fedora24/1 diff --git a/test/integration/targets/net_command/aliases b/test/integration/targets/net_command/aliases index 1e984071f1f..a04aa1ac323 100644 --- a/test/integration/targets/net_command/aliases +++ b/test/integration/targets/net_command/aliases @@ -1 +1,2 @@ network/basics +network/ci diff --git a/test/runner/requirements/network-integration.txt b/test/runner/requirements/network-integration.txt new file mode 100644 index 00000000000..5fa9cf88262 --- /dev/null +++ b/test/runner/requirements/network-integration.txt @@ -0,0 +1,5 @@ +jinja2 +junit-xml +paramiko +pycrypto +pyyaml diff --git a/test/utils/shippable/network.sh b/test/utils/shippable/network.sh new file mode 100755 index 00000000000..fe6db96af9a --- /dev/null +++ b/test/utils/shippable/network.sh @@ -0,0 +1,24 @@ +#!/bin/bash -eux + +set -o pipefail + +ansible-test network-integration --explain 2>&1 | { grep ' network-integration: .* (targeted)$' || true; } > /tmp/network.txt + +target="network/ci/" + +if [ -s /tmp/network.txt ]; then + echo "Detected changes requiring integration tests specific to networking:" + cat /tmp/network.txt + + echo "Running network integration tests for multiple platforms concurrently." + + ansible-test network-integration --color -v --retry-on-error "${target}" --requirements \ + --platform vyos/1.1.0 \ + +else + echo "No changes requiring integration tests specific to networking were detected." + echo "Running network integration tests for a single platform only." + + ansible-test network-integration --color -v --retry-on-error "${target}" --requirements \ + --platform vyos/1.1.0 +fi