Cirrus: Confirm networking more

Signed-off-by: Chris Evich <cevich@redhat.com>
This commit is contained in:
Chris Evich
2019-08-16 10:37:21 -04:00
parent 2d47f1ae54
commit 122f694159
3 changed files with 39 additions and 3 deletions

View File

@ -93,8 +93,8 @@ gating_task:
timeout_in: 20m timeout_in: 20m
networking_script: # Don't bother going further if something is down # Don't bother going further if something is down
- 'while read host port; do nc -zv -w 13 $host $port || exit 1; done < ${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/required_host_ports.txt' networking_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/networking.sh'
gate_script: gate_script:
# N/B: entrypoint.sh resets $GOSRC (same as make clean) # N/B: entrypoint.sh resets $GOSRC (same as make clean)
@ -331,6 +331,7 @@ testing_task:
TEST_REMOTE_CLIENT: true TEST_REMOTE_CLIENT: true
TEST_REMOTE_CLIENT: false TEST_REMOTE_CLIENT: false
networking_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/networking.sh'
setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}'
unit_test_script: '$SCRIPT_BASE/unit_test.sh |& ${TIMESTAMP}' unit_test_script: '$SCRIPT_BASE/unit_test.sh |& ${TIMESTAMP}'
integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}' integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}'
@ -374,6 +375,7 @@ testing_crun_task:
matrix: matrix:
TEST_REMOTE_CLIENT: false TEST_REMOTE_CLIENT: false
networking_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/networking.sh'
setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}'
unit_test_script: '$SCRIPT_BASE/unit_test.sh |& ${TIMESTAMP}' unit_test_script: '$SCRIPT_BASE/unit_test.sh |& ${TIMESTAMP}'
integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}' integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}'
@ -413,6 +415,7 @@ special_testing_rootless_task:
timeout_in: 60m timeout_in: 60m
networking_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/networking.sh'
setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}'
integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}' integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}'
system_test_script: '$SCRIPT_BASE/system_test.sh |& ${TIMESTAMP}' system_test_script: '$SCRIPT_BASE/system_test.sh |& ${TIMESTAMP}'
@ -441,6 +444,7 @@ special_testing_in_podman_task:
timeout_in: 60m timeout_in: 60m
networking_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/networking.sh'
setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}'
integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}' integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}'
@ -467,6 +471,7 @@ special_testing_cross_task:
timeout_in: 20m timeout_in: 20m
networking_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/networking.sh'
setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}'
cache_release_archive_script: '$SCRIPT_BASE/cache_release_archive.sh |& ${TIMESTAMP}' cache_release_archive_script: '$SCRIPT_BASE/cache_release_archive.sh |& ${TIMESTAMP}'
@ -494,6 +499,7 @@ special_testing_cgroupv2_task:
timeout_in: 20m timeout_in: 20m
networking_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/networking.sh'
setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}'
integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}' integration_test_script: '$SCRIPT_BASE/integration_test.sh |& ${TIMESTAMP}'
@ -529,7 +535,8 @@ test_build_cache_images_task:
- compute - compute
- devstorage.full_control - devstorage.full_control
environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' networking_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/networking.sh'
setup_environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}'
build_vm_images_script: '$SCRIPT_BASE/build_vm_images.sh |& ${TIMESTAMP}' build_vm_images_script: '$SCRIPT_BASE/build_vm_images.sh |& ${TIMESTAMP}'
df_script: '${DFCMD}' df_script: '${DFCMD}'
journalctl_b_script: 'journalctl -b' journalctl_b_script: 'journalctl -b'
@ -568,6 +575,7 @@ verify_test_built_images_task:
PACKER_BUILDER_NAME: "xfedora-30" PACKER_BUILDER_NAME: "xfedora-30"
PACKER_BUILDER_NAME: "ubuntu-18" PACKER_BUILDER_NAME: "ubuntu-18"
networking_script: '${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/networking.sh'
environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}' environment_script: '$SCRIPT_BASE/setup_environment.sh |& ${TIMESTAMP}'
# Verify expectations once per image # Verify expectations once per image
check_image_script: >- check_image_script: >-

17
contrib/cirrus/networking.sh Executable file
View File

@ -0,0 +1,17 @@
#!/bin/bash
# This script attempts basic confirmation of functional networking
# by connecting to a set of essential external servers and failing
# if any cannot be reached.
source $(dirname $0)/lib.sh
while read host port
do
if [[ "$port" -eq "443" ]]
then
item_test "SSL/TLS to $host:$port" "$(echo -n '' | openssl s_client -quiet -no_ign_eof -connect $host:$port &> /dev/null; echo $?)" -eq "0"
else
item_test "Connect to $host:$port" "$(nc -zv -w 13 $host $port &> /dev/null; echo $?)" -eq 0
fi
done < ${CIRRUS_WORKING_DIR}/${SCRIPT_BASE}/required_host_ports.txt

View File

@ -2,3 +2,14 @@ github.com 22
docker.io 443 docker.io 443
quay.io 443 quay.io 443
registry.fedoraproject.org 443 registry.fedoraproject.org 443
mirrors.fedoraproject.org 443
dl.fedoraproject.org 443
ewr.edge.kernel.org 443
mirror.chpc.utah.edu 443
mirror.clarkson.edu 443
mirror.umd.edu 443
mirror.vcu.edu 443
mirrors.cat.pdx.edu 443
pubmirror1.math.uh.edu 443
pubmirror2.math.uh.edu 443
sjc.edge.kernel.org 443