Version bump and annotation fix #637
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: libportal CI | |
env: | |
DEBIAN_FRONTEND: noninteractive | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
ubuntu: | |
name: Ubuntu | |
runs-on: ubuntu-latest | |
container: ubuntu:${{ matrix.ubuntu-version }} | |
strategy: | |
matrix: | |
ubuntu-version: ['22.04', '24.04'] | |
compiler: ['gcc', 'clang'] | |
env: | |
CC: ${{ matrix.compiler }} | |
steps: | |
- name: Install dependencies | |
run: | | |
echo "$HOME/.local/bin" >> $GITHUB_PATH | |
apt-get update --quiet | |
apt-get install --quiet -y \ | |
${{ matrix.compiler }} \ | |
dbus \ | |
gettext \ | |
git \ | |
gi-docgen \ | |
libgirepository1.0-dev \ | |
libglib2.0 \ | |
libgtk-3-dev \ | |
libgtk-4-dev \ | |
libqt5x11extras5-dev \ | |
meson \ | |
python3-dbusmock \ | |
python3-pytest \ | |
qtbase5-dev \ | |
qt6-base-dev \ | |
qt6-base-private-dev \ | |
valac | |
- name: Check out libportal | |
uses: actions/checkout@v4 | |
- name: Fix Git ownership | |
run: | | |
echo $GITHUB_WORKSPACE | |
git config --global --add safe.directory $GITHUB_WORKSPACE | |
git status | |
- name: Configure libportal | |
run: meson setup --prefix=/usr _build -Dbackend-gtk3=enabled -Dbackend-gtk4=enabled -Dbackend-qt5=enabled -Dbackend-qt6=enabled | |
- name: Build libportal | |
run: ninja -C_build | |
- name: Run libportal tests | |
working-directory: _build | |
run: meson test --verbose --print-errorlogs | |
- name: Generate dist tarball | |
working-directory: _build | |
run: meson dist | |
- name: Upload test logs | |
uses: actions/upload-artifact@v4 | |
if: success() || failure() | |
with: | |
name: test logs (ubuntu ${{ matrix.ubuntu-version }} ${{ matrix.compiler }}) | |
path: | | |
tests/*.log | |
test-*.log | |
installed-test-logs/ | |
_build/meson-logs/testlog.txt | |
_build/meson-dist/ | |
fedora: | |
name: Fedora | |
runs-on: ubuntu-latest | |
container: fedora:${{ matrix.fedora-version }} | |
strategy: | |
matrix: | |
fedora-version: ['39', '40'] | |
compiler: ['gcc', 'clang'] | |
env: | |
CC: ${{ matrix.compiler }} | |
steps: | |
- name: Install dependencies | |
run: | | |
dnf install --quiet -y \ | |
${{ matrix.compiler }} \ | |
git \ | |
gi-docgen \ | |
gobject-introspection-devel \ | |
gtk3-devel \ | |
gtk4-devel \ | |
meson \ | |
python3-pytest \ | |
python3-dbusmock \ | |
qt5-qtbase-devel \ | |
qt5-qtx11extras-devel \ | |
qt6-qtbase-devel \ | |
qt6-qtbase-private-devel \ | |
vala | |
- name: Check out libportal | |
uses: actions/checkout@v4 | |
- name: Fix Git ownership | |
run: | | |
echo $GITHUB_WORKSPACE | |
git config --global --add safe.directory $GITHUB_WORKSPACE | |
git status | |
- name: Configure libportal | |
run: meson setup --prefix=/usr _build -Dbackend-gtk3=enabled -Dbackend-gtk4=enabled -Dbackend-qt5=enabled -Dbackend-qt6=enabled | |
- name: Build libportal | |
run: ninja -C_build | |
- name: Run libportal tests | |
working-directory: _build | |
run: meson test --verbose --print-errorlogs | |
- name: Generate dist tarball | |
working-directory: _build | |
run: meson dist | |
- name: Upload test logs | |
uses: actions/upload-artifact@v4 | |
if: success() || failure() | |
with: | |
name: test logs (fedora ${{ matrix.fedora-version }} ${{ matrix.compiler }}) | |
path: | | |
tests/*.log | |
test-*.log | |
installed-test-logs/ | |
_build/meson-logs/testlog.txt | |
_build/meson-dist/ | |
abi-check: | |
name: ABI check | |
runs-on: ubuntu-latest | |
container: fedora:latest | |
env: | |
LAST_ABI_BREAK: "467a397fd7996557f837cdc26ac07c01c62810e5" | |
steps: | |
- name: Install dependencies | |
run: | | |
dnf install -y meson gcc gobject-introspection-devel gtk3-devel gtk4-devel qt5-qtbase-devel qt5-qtx11extras-devel qt6-qtbase-devel qt6-qtbase-private-devel git libabigail | |
- name: Install check-abi | |
run: | | |
curl https://gitlab.freedesktop.org/hadess/check-abi/-/raw/main/contrib/check-abi-fedora.sh | bash | |
rm -rf check-abi/ | |
- name: Check out libportal | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Work around git safe directory check | |
run: git config --global --add safe.directory $GITHUB_WORKSPACE | |
- name: Run ABI check | |
run: check-abi --old-parameters="-Dvapi=false -Ddocs=false -Dintrospection=false" --new-parameters="-Dvapi=false -Ddocs=false -Dtests=false -Dintrospection=false" ${LAST_ABI_BREAK} $GITHUB_SHA |