From 1232c2f6b9c8c6c8c2bb249cf8368cebd77fb63d Mon Sep 17 00:00:00 2001 From: fanquake Date: Wed, 29 Mar 2023 11:43:03 +0100 Subject: [PATCH 1/2] ci: use LLVM/clang-16 in native_asan job Similar to #27298. --- .cirrus.yml | 3 ++- ci/test/00_setup_env_native_asan.sh | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.cirrus.yml b/.cirrus.yml index 0b91aad00c0c8..45700cb4acf29 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -269,8 +269,9 @@ task: # Images can be found here: https://cloud.google.com/compute/docs/images/os-details compute_engine_instance: image_project: ubuntu-os-cloud - image: family/ubuntu-2204-lts # when upgrading, check if we can drop "ADD_UNTRUSTED_BPFCC_PPA" + image: family/ubuntu-2304-amd64 # https://cirrus-ci.org/guide/custom-vms/#custom-compute-engine-vms cpu: 4 + disk: 100 memory: 12G env: << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV diff --git a/ci/test/00_setup_env_native_asan.sh b/ci/test/00_setup_env_native_asan.sh index bb3f6997f3689..b251a77b7edc1 100755 --- a/ci/test/00_setup_env_native_asan.sh +++ b/ci/test/00_setup_env_native_asan.sh @@ -19,8 +19,8 @@ else fi export CONTAINER_NAME=ci_native_asan -export PACKAGES="systemtap-sdt-dev clang llvm python3-zmq qtbase5-dev qttools5-dev-tools libevent-dev bsdmainutils libboost-dev libdb5.3++-dev libminiupnpc-dev libnatpmp-dev libzmq3-dev libqrencode-dev libsqlite3-dev ${BPFCC_PACKAGE}" -export CI_IMAGE_NAME_TAG=ubuntu:22.04 +export PACKAGES="systemtap-sdt-dev clang-16 llvm-16 libclang-rt-16-dev python3-zmq qtbase5-dev qttools5-dev-tools libevent-dev bsdmainutils libboost-dev libdb5.3++-dev libminiupnpc-dev libnatpmp-dev libzmq3-dev libqrencode-dev libsqlite3-dev ${BPFCC_PACKAGE}" +export CI_IMAGE_NAME_TAG=ubuntu:23.04 # Version 23.04 will reach EOL in Jan 2024, and can be replaced by "ubuntu:24.04" (or anything else that ships the wanted clang version). export NO_DEPENDS=1 export GOAL="install" -export BITCOIN_CONFIG="--enable-c++20 --enable-usdt --enable-zmq --with-incompatible-bdb --with-gui=qt5 CPPFLAGS='-DARENA_DEBUG -DDEBUG_LOCKORDER' --with-sanitizers=address,integer,undefined CC=clang CXX=clang++" +export BITCOIN_CONFIG="--enable-c++20 --enable-usdt --enable-zmq --with-incompatible-bdb --with-gui=qt5 CPPFLAGS='-DARENA_DEBUG -DDEBUG_LOCKORDER' --with-sanitizers=address,integer,undefined CC=clang-16 CXX=clang++-16" From f952e679cd9c642e2c1f484ad8d75510ce25324c Mon Sep 17 00:00:00 2001 From: fanquake Date: Fri, 21 Apr 2023 15:23:08 +0100 Subject: [PATCH 2/2] ci: remove usage of untrusted bpfcc-tools We've migrated this job to Ubuntu 23.04, which ships with newer versions of the tools: https://packages.ubuntu.com/lunar/bpfcc-tools. --- ci/test/00_setup_env_native_asan.sh | 5 ----- ci/test/01_base_install.sh | 8 -------- 2 files changed, 13 deletions(-) diff --git a/ci/test/00_setup_env_native_asan.sh b/ci/test/00_setup_env_native_asan.sh index b251a77b7edc1..8701d383ddea7 100755 --- a/ci/test/00_setup_env_native_asan.sh +++ b/ci/test/00_setup_env_native_asan.sh @@ -8,13 +8,8 @@ export LC_ALL=C.UTF-8 # Only install BCC tracing packages in Cirrus CI. if [[ "${CIRRUS_CI}" == "true" ]]; then - # We install an up-to-date 'bpfcc-tools' package from an untrusted PPA. - # This can be dropped with the next Ubuntu or Debian release that includes up-to-date packages. - # See the if-then in ci/test/04_install.sh too. - export ADD_UNTRUSTED_BPFCC_PPA=true export BPFCC_PACKAGE="bpfcc-tools" else - export ADD_UNTRUSTED_BPFCC_PPA=false export BPFCC_PACKAGE="" fi diff --git a/ci/test/01_base_install.sh b/ci/test/01_base_install.sh index d7ff80d972f6e..641ff964f33ab 100755 --- a/ci/test/01_base_install.sh +++ b/ci/test/01_base_install.sh @@ -21,14 +21,6 @@ if [[ $CI_IMAGE_NAME_TAG == *centos* ]]; then ${CI_RETRY_EXE} bash -c "dnf -y install epel-release" ${CI_RETRY_EXE} bash -c "dnf -y --allowerasing install $CI_BASE_PACKAGES $PACKAGES" elif [ "$CI_USE_APT_INSTALL" != "no" ]; then - if [[ "${ADD_UNTRUSTED_BPFCC_PPA}" == "true" ]]; then - # Ubuntu 22.04 LTS and Debian 11 both have an outdated bpfcc-tools packages. - # The iovisor PPA is outdated as well. The next Ubuntu and Debian releases will contain updated - # packages. Meanwhile, use an untrusted PPA to install an up-to-date version of the bpfcc-tools - # package. - # TODO: drop this once we can use newer images in GCE - add-apt-repository ppa:hadret/bpfcc - fi if [[ -n "${APPEND_APT_SOURCES_LIST}" ]]; then echo "${APPEND_APT_SOURCES_LIST}" >> /etc/apt/sources.list fi