Switch to Fedora 31 builds

We still have GCC 8 in the ARM targets, so let's make sure we're using
one target with a similar compiler during our project builds.

Change-Id: I58ab5c2e61dd4effff027d9d02ead72a88a3bd2c
Depends-on: https://gerrit.cesnet.cz/c/CzechLight/dependencies/+/2481
Depends-on: https://gerrit.cesnet.cz/c/ci/zuul-jobs-cesnet/+/2481
diff --git a/ci/build.sh b/ci/build.sh
index 956fa0d..fe8d8a7 100755
--- a/ci/build.sh
+++ b/ci/build.sh
@@ -32,6 +32,11 @@
     export CFLAGS="-fsanitize=address ${CFLAGS}"
     export CXXFLAGS="-fsanitize=address ${CXXFLAGS}"
     export LDFLAGS="-fsanitize=address ${LDFLAGS}"
+
+    if [[ $ZUUL_JOB_NAME =~ f31-.* ]]; then
+        # On Fedora 31, libev's ev_realloc looks fishy for sysrepoctl & sysrepocfg
+        export LSAN_OPTIONS="suppressions=${ZUUL_PROJECT_SRC_DIR}/ci/lsan.supp:print_suppressions=0"
+    fi
 fi
 
 if [[ $ZUUL_JOB_NAME =~ .*-tsan ]]; then
diff --git a/ci/lsan.supp b/ci/lsan.supp
new file mode 100644
index 0000000..af49784
--- /dev/null
+++ b/ci/lsan.supp
@@ -0,0 +1,11 @@
+# Fedora 31: sysrepocfg and sysrepoctl binaries
+# Direct leak of 112 byte(s) in 2 object(s) allocated from:
+#  #0 0x7f12a9dc314e in realloc (/lib64/libasan.so.5+0x10e14e)
+#  #1 0x7f12a760bb99 in ev_realloc /usr/src/debug/libev-4.27-1.fc31.x86_64/ev.c:1776
+leak:ev.c
+
+# I have no idea if it is legit -- libnetconf2's test_server_thread
+# Direct leak of 321 byte(s) in 1 object(s) allocated from:
+#  #0 0x7fc37cd79f16 in __interceptor_calloc (/lib64/libasan.so.5+0x10df16)
+#  #1 0x7fc37b004871 in ssh_find_all_matching /usr/src/debug/libssh-0.9.4-2.fc31.x86_64/src/token.c:221
+leak:ssh_find_all_matching