From 122b297a204437dfccf75b638a555c360a6765f5 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Fri, 18 Sep 2020 15:53:06 -0400 Subject: [PATCH 1/3] Copy tracing things back to maint-0.3.5, for consistency. --- .gitlab-ci.yml | 12 ++++++++++++ scripts/ci/ci-driver.sh | 5 +++++ 2 files changed, 17 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 176c71f8f0..48bcf6b000 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -92,6 +92,7 @@ variables: - if [ "$STEM" = yes ]; then git clone --depth 1 https://git.torproject.org/stem.git ; export STEM_PATH="$(pwd)/stem"; fi # TODO: This next line should not be debian-only. - if [ "$CHUTNEY" = yes ]; then git clone --depth 1 https://git.torproject.org/chutney.git ; export CHUTNEY_PATH="$(pwd)/chutney"; fi + - if [ "$TRACING" = yes ]; then apt install liblttng-ust-dev; fi # Minmal check on debian: just make, make check. # @@ -155,3 +156,14 @@ debian-integration: STEM: "yes" script: - ./scripts/ci/ci-driver.sh + +##### +# Tracing build on Debian stable. +debian-tracing: + image: debian:stable + <<: *debian-template + variables: + TRACING: "yes" + CHECK: "no" + script: + - ./scripts/ci/ci-driver.sh diff --git a/scripts/ci/ci-driver.sh b/scripts/ci/ci-driver.sh index 527bba82e5..cd91a91bbf 100755 --- a/scripts/ci/ci-driver.sh +++ b/scripts/ci/ci-driver.sh @@ -33,6 +33,7 @@ COVERAGE="${COVERAGE:-no}" RUST="${RUST:-no}" DOXYGEN="${DOXYGEN:-no}" ASCIIDOC="${ASCIIDOC:-no}" +TRACING="${TRACING:-no}" # Options for which tests to run. All should be yes/no. CHECK="${CHECK:-yes}" @@ -191,6 +192,7 @@ yes_or_no COVERAGE yes_or_no RUST yes_or_no DOXYGEN yes_or_no ASCIIDOC +yes_or_no TRACING yes_or_no RUN_STAGE_CONFIGURE yes_or_no RUN_STAGE_BUILD @@ -241,6 +243,9 @@ fi if [[ "$ASCIIDOC" != "yes" ]]; then configure_options+=("--disable-asciidoc") fi +if [[ "$TRACING" == "yes" ]]; then + configure_options+=("--enable-tracing-instrumentation-lttng") +fi ############################################################################# # Tell the user about our versions of different tools and packages. From f8f3e57016214685a2474342883eb16dfaf22ce1 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Fri, 18 Sep 2020 15:55:02 -0400 Subject: [PATCH 2/3] .gitlab.yml: missing comments --- .gitlab-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 48bcf6b000..028a49f52c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -37,7 +37,7 @@ variables: paths: - artifacts/ -# This template +# This template should be usable on any system that's based on apt. .apt-template: &apt-template | export LC_ALL=C.UTF-8 echo Etc/UTC > /etc/timezone @@ -54,6 +54,7 @@ variables: apt-get update -qq apt-get upgrade -qy +# This template sets us up for Debian system in particular. .debian-template: &debian-template <<: *artifacts-template variables: From 0b77c706a1799d2ee6d8da4737bb7f152140e3c4 Mon Sep 17 00:00:00 2001 From: Nick Mathewson Date: Fri, 18 Sep 2020 15:56:59 -0400 Subject: [PATCH 3/3] Make debian-trace job conditional on src/lib/trace/trace_sys.c --- .gitlab-ci.yml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 028a49f52c..ce279a4bce 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -168,3 +168,15 @@ debian-tracing: CHECK: "no" script: - ./scripts/ci/ci-driver.sh + # Ensure that we only run tracing when it's implemented. + # + # Once versions before 0.4.5 are obsolete, we can remove this test. + rules: + # This first "if" check prevents us from running a duplicate version of + # this pipeline whenever we push and create an MR. I don't understand why + # it is necessary, though the following URL purports to explain: + # + # https://docs.gitlab.com/ee/ci/yaml/#prevent-duplicate-pipelines + - if: '$CI_PIPELINE_SOURCE == "push"' + exists: + - src/lib/trace/trace_sys.c