Use GitHub actions instead of Travis

This commit is contained in:
Simon Brunel 2024-08-20 20:59:47 +02:00
parent f382ad25fc
commit 14031392ac
2 changed files with 43 additions and 38 deletions

43
.github/workflows/ci.yaml vendored Normal file
View File

@ -0,0 +1,43 @@
# https://docs.github.com/actions/reference/workflow-syntax-for-github-actions
# https://doc.qt.io/qt-6/supported-platforms.html
# https://ddalcino.github.io/aqt-list-server/
name: CI
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
qt:
- 5.9.9
steps:
- uses: actions/checkout@v4
- uses: jurplel/install-qt-action@v4
with:
version: ${{ matrix.qt }}
archives: qtbase icu
tools: tools_cmake
arch: gcc_64
host: linux
- run: |
qmake --version
cmake --version
gcc --version
g++ --version
- run: |
cmake -G "Unix Makefiles"
cmake --build . -- -j12
cmake --build . --target test
- run: |
sudo apt-get install lcov > /dev/null
lcov --version
lcov --capture --directory . -o coverage.info
lcov -e coverage.info '**/src/**/*' -o coverage.info
- uses: codecov/codecov-action@v3
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
files: coverage.info

View File

@ -1,38 +0,0 @@
sudo: required
dist: xenial
language: cpp
compiler: gcc
before_install:
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
- sudo add-apt-repository -y ppa:beineri/opt-qt563-xenial
- sudo apt-get update -qq
install:
- sudo apt-get install -qq gcc-4.9 g++-4.9
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 90
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 90
- sudo update-alternatives --install /usr/bin/gcov gcov /usr/bin/gcov-4.9 90
- sudo apt-get install -qq qt56base
- source /opt/qt56/bin/qt56-env.sh
- wget http://archive.ubuntu.com/ubuntu/pool/universe/l/lcov/lcov_1.13.orig.tar.gz
- tar xf lcov_1.13.orig.tar.gz
- cd lcov-1.13/
- sudo make install
- cd ..
before_script:
- cmake --version
- qmake --version
- gcc --version && g++ --version
- lcov --version && gcov --version
script:
- cmake -G "Unix Makefiles"
- cmake --build . -- -j12
- cmake --build . --target test
- lcov -capture --directory . --o coverage.info
- lcov -e coverage.info '**/src/**/*' -o coverage.info
after_success:
- bash <(curl -s https://codecov.io/bash) -f coverage.info