Skip to content

Commit

Permalink
Run CI on Ubuntu 24 (GCC 13) (#788)
Browse files Browse the repository at this point in the history
* Run CI on Ubuntu 24 (GCC 13)

* Install libbz2-dev for htslib (which is built during bcftools build)

* And install liblzma-dev for htslib

* Prefer apt-get for non-interactive use

* Also install htslib deps for native_libs CI
  • Loading branch information
jdblischak authored Dec 5, 2024
1 parent 7f611b0 commit 89f4489
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 19 deletions.
8 changes: 4 additions & 4 deletions .azure-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ stages:
strategy:
matrix:
linux:
imageName: 'ubuntu-22.04'
imageName: 'ubuntu-24.04'
python.version: '3.x'
CXX: g++
BUILD_PYTHON_API: ON
Expand All @@ -39,7 +39,7 @@ stages:
jobs:
- job: Build
pool:
vmImage: 'ubuntu-22.04'
vmImage: 'ubuntu-24.04'
strategy:
matrix:
cli:
Expand All @@ -62,7 +62,7 @@ stages:
strategy:
matrix:
linux:
imageName: 'ubuntu-22.04'
imageName: 'ubuntu-24.04'
python.version: '3.x'
CXX: g++
BUILD_PYTHON_API: ON
Expand Down Expand Up @@ -92,7 +92,7 @@ stages:
strategy:
matrix:
ubuntu_18:
imageName: 'ubuntu-22.04'
imageName: 'ubuntu-24.04'
pool:
vmImage: $(imageName)

Expand Down
7 changes: 5 additions & 2 deletions .github/workflows/nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [macos-13, ubuntu-latest]
os: [macos-13, ubuntu-24.04]
branches:
- {libtiledb: release-2.26, tiledb-py: 0.32.0}
- {libtiledb: dev, tiledb-py: dev}
Expand All @@ -48,6 +48,9 @@ jobs:
fetch-depth: 0 # fetch everything for python setuptools_scm
- name: Build libtiledb
run: bash TileDB-VCF/ci/nightly/build-libtiledb.sh
- name: Setup to build htslib from source (Linux)
if: runner.os == 'Linux'
run: sudo apt-get install --yes automake autoconf libbz2-dev liblzma-dev
- name: Setup to build htslib from source (macOS)
if: runner.os == 'macOS'
run: brew install autoconf automake
Expand All @@ -65,7 +68,7 @@ jobs:
otool -L install/lib/libtiledbvcf.dylib
- name: Install bcftools (for tests) (Linux)
if: runner.os == 'Linux'
run: sudo apt install bcftools
run: sudo apt-get install --yes bcftools
- name: Install bcftools (for tests) (macOS)
if: runner.os == 'macOS'
run: brew install bcftools
Expand Down
15 changes: 8 additions & 7 deletions ci/azure-linux_mac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ steps:
set -e pipefail
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 15CF4D18AF4F7421
sudo add-apt-repository 'deb http://apt.llvm.org/focal/ llvm-toolchain-focal-14 main'
sudo apt install -y clang-format-15
sudo apt-get install -y clang-format-15
src=$BUILD_REPOSITORY_LOCALPATH/libtiledbvcf
cd $BUILD_REPOSITORY_LOCALPATH
ci/run-clang-format.sh $src clang-format-15 0 \
Expand All @@ -36,6 +36,12 @@ steps:
- bash: |
set -e pipefail
# Install htslib dependencies
if [[ "$AGENT_OS" == "Linux" ]]; then
sudo apt-get update && sudo apt-get install -y automake autoconf libbz2-dev liblzma-dev
fi
# Install bcftools (only required for running the CLI tests)
version=1.20
if [[ "$AGENT_OS" == "Linux" ]]; then
Expand All @@ -51,14 +57,9 @@ steps:
brew install bcftools automake
fi
# Install autoconf/automake (required for htslib)
if [[ "$AGENT_OS" == "Linux" ]]; then
sudo apt update && sudo apt install -y automake autoconf
fi
# Install some extra dependencies to speed up the core TileDB build
if [[ "$AGENT_OS" == "Linux" ]]; then
sudo apt install -y libssl-dev libbz2-dev liblz4-dev libtbb-dev libcurl4-openssl-dev zlib1g-dev
sudo apt-get install -y libssl-dev libbz2-dev liblz4-dev libtbb-dev libcurl4-openssl-dev zlib1g-dev
fi
displayName: 'Install dependencies'
Expand Down
13 changes: 7 additions & 6 deletions ci/native_libs-linux_osx.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
steps:
- bash: |
set -e pipefail
# Install htslib dependencies
if [[ "$AGENT_OS" == "Linux" ]]; then
sudo apt-get update && sudo apt-get install -y automake autoconf libbz2-dev liblzma-dev
fi
# Install bcftools (only required for running the CLI tests)
version=1.16
if [[ "$AGENT_OS" == "Linux" ]]; then
Expand All @@ -16,14 +22,9 @@ steps:
brew install bcftools automake
fi
# Install autoconf/automake (required for htslib)
if [[ "$AGENT_OS" == "Linux" ]]; then
sudo apt update && sudo apt install -y automake autoconf
fi
# Install some extra dependencies to speed up the core TileDB build
if [[ "$AGENT_OS" == "Linux" ]]; then
sudo apt install -y libssl-dev libbz2-dev liblz4-dev libtbb-dev libcurl4-openssl-dev zlib1g-dev
sudo apt-get install -y libssl-dev libbz2-dev liblz4-dev libtbb-dev libcurl4-openssl-dev zlib1g-dev
fi
displayName: 'Install dependencies'
Expand Down

0 comments on commit 89f4489

Please sign in to comment.