From fe0e62ddc40a59d4f138d53840a2919e9aac7b4d Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Wed, 12 Aug 2020 09:38:19 -0400 Subject: [PATCH] CI: Try to enable integration tests, hardening, and clang. --- .gitlab-ci.yml | 34 +++++++++++++++++++++++++--------- scripts/ci/ci-driver.sh | 3 +++ 2 files changed, 28 insertions(+), 9 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index abc5003678..3959bba024 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -66,6 +66,7 @@ variables: - apt-get install automake build-essential + ca-certificates git libevent-dev liblzma-dev @@ -77,6 +78,10 @@ variables: zlib1g-dev - if [ "$ASCIIDOC" = yes ]; then apt-get install asciidoc xmlto; fi - if [ "$DOXYGEN" = yes ]; then apt-get install doxygen; fi + - if [ "$STEM" = yes ]; then apt-get install timelimit; fi + - if [ "$CC" = clang ]; then apt-get install clang; fi + - if [ "$STEM" = yes ]; then git clone --depth 1 https://git.torproject.org/stem.git ; export STEM_PATH="$(pwd)/stem"; fi + - if [ "$CHUTNEY" = yes ]; then git clone --depth 1 https://git.torproject.org/chutney.git ; export CHUTNEY_PATH="$(pwd)/chutney"; fi debian-minimal: image: debian:stable @@ -84,17 +89,18 @@ debian-minimal: script: - ./scripts/ci/ci-driver.sh -############################################### -# Temporarily diabled. This one just takes too long to finish right now! + +# TODO: This one just takes too long to finish right now! # Maybe we need to divide the call to ./src/test/test into a few segments, # that all end in similar amount of time? -#debian-hardened: -# image: debian:testing -# <<: *debian-template -# variables: -# HARDENING: "yes" -# script: -# - ./scripts/ci/ci-driver.sh +debian-hardened: + image: debian:testing + <<: *debian-template + variables: + HARDENING: "yes" + CC: "clang" + script: + - ./scripts/ci/ci-driver.sh debian-distcheck: image: debian:stable @@ -115,3 +121,13 @@ debian-docs: CHECK: "no" script: - ./scripts/ci/ci-driver.sh + +debian-integration: + image: debian:stable + <<: *debian-template + variables: + CHECK: "no" + CHUTNEY: "yes" + # STEM: "yes" -- currently failing on <044. + script: + - ./scripts/ci/ci-driver.sh diff --git a/scripts/ci/ci-driver.sh b/scripts/ci/ci-driver.sh index ad08ee5af0..05c1415da0 100755 --- a/scripts/ci/ci-driver.sh +++ b/scripts/ci/ci-driver.sh @@ -411,10 +411,13 @@ fi if [[ "${CHUTNEY}" = "yes" ]]; then start_section "Chutney" + export CHUTNEY_TOR_SANDBOX=0 + export CHUTNEY_ALLOW_FAILURES=2 if runcmd make "${CHUTNEY_MAKE_TARGET}"; then hooray "Chutney tests have succeeded" else error "Chutney says:" + export CHUTNEY_DATA_DIR="${CHUTNEY_PATH}/net" runcmd "${CHUTNEY_PATH}"/tools/diagnostics.sh || true # XXXX These next two should be part of a make target. runcmd ls test_network_log || true