From: Maria Matejka Date: Tue, 17 Dec 2024 11:38:12 +0000 (+0100) Subject: CI: fix test collisions between branches X-Git-Tag: v2.16.2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=13b0f10fa9314bcd643c7796273850b3317e1928;p=thirdparty%2Fbird.git CI: fix test collisions between branches The build-netlab job was side-effecting the test-* jobs, and if for some reason Gitlab scheduled build-netlab before other pipeline's test-* jobs finished, these jobs got a wrong binary, possibly failing. Solved by using explicit artifacts, which is not the fastest way to do this (we could keep the binaries named there) but it's the gitlab-right way to do this. --- diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 6538ff92e..aa58cdee9 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -327,19 +327,22 @@ pkg-opensuse-15.3-amd64: build-netlab: stage: build + variables: + BDIR: build-netlab tags: - netlab - amd64 script: - - DIR=$(pwd) - autoreconf - - ./configure + - mkdir $BDIR + - cd $BDIR + - ../configure - make - - cd $TOOLS_DIR - - sudo git clean -fx - - git pull --ff-only - - mv $DIR/bird $DIR/birdc netlab/common - - ln -s $STAYRTR_BINARY netlab/common/stayrtr + artifacts: + paths: + - $BDIR/bird + - $BDIR/birdc + expire_in: 2 hours .test: &test-base stage: test @@ -348,7 +351,13 @@ build-netlab: - netlab - amd64 script: - - cd $TOOLS_DIR/netlab + - DIR=$(pwd) + - cd $TOOLS_DIR + - sudo git clean -fx + - git pull --ff-only + - mv $DIR/build-netlab/* netlab/common/ + - ln -s $STAYRTR_BINARY netlab/common/stayrtr + - cd netlab - sudo ./stop - sudo ./runtest -s v2 -m check $TEST_NAME