ci: Fix the nick used in IRC reporting.
authorEric Anholt <eric@anholt.net>
Tue, 5 May 2020 19:17:49 +0000 (12:17 -0700)
committerMarge Bot <eric+marge@anholt.net>
Wed, 6 May 2020 18:34:38 +0000 (18:34 +0000)
robclark found that we needed unique IDs when multiple runners were trying
to report flakes at the same time, but it turns out due to nick limits (16
chars on freenode) we were just getting all the runners appended with
"-142" (or whatever the prefix of the pipelines are these days).  And, for
the new flake reporting from baremetal, all the runners ended up being
just "google-freedreno".

Reviewed-by: Rob Clark <robdclark@chromium.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4896>

.gitlab-ci/bare-metal/fastboot.sh
.gitlab-ci/deqp-runner.sh

index 801cb9a14079ec7950d79ce61c3c7bde12843d58..7b9e6162a071c9db324f710ea58b2f2a48b11461 100755 (executable)
@@ -57,6 +57,7 @@ chmod +x rootfs/set-job-env-vars.sh
 for var in \
     CI_COMMIT_BRANCH \
     CI_COMMIT_TITLE \
+    CI_JOB_ID \
     CI_JOB_URL \
     CI_MERGE_REQUEST_SOURCE_BRANCH_NAME \
     CI_MERGE_REQUEST_TITLE \
index d2e0b592304e62f42322c46727b55b0cc768cfaf..0749fc917f35d435ae0f542087570388e96a259c 100755 (executable)
@@ -102,7 +102,16 @@ report_flakes() {
         return 0
     fi
     flakes=$1
-    bot="$CI_RUNNER_DESCRIPTION-$CI_PIPELINE_ID"
+    # The nick needs to be something unique so that multiple runners
+    # connecting at the same time don't race for one nick and get blocked.
+    # freenode has a 16-char limit on nicks (9 is the IETF standard, but
+    # various servers extend that).  So, trim off the common prefixes of the
+    # runner name, and append the job ID so that software runners with more
+    # than one concurrent job (think swrast) don't collide.  For freedreno,
+    # that gives us a nick as long as db410c-N-JJJJJJJJ, and it'll be a while
+    # before we make it to 9-digit jobs (we're at 7 so far).
+    runner=`echo $CI_RUNNER_DESCRIPTION | sed 's|mesa-||' | sed 's|google-freedreno-||g'`
+    bot="$runner-$CI_JOB_ID"
     channel="$FLAKES_CHANNEL"
     (
     echo NICK $bot