name: ci-tests on: [push, pull_request] permissions: {} jobs: ci_tests_ubuntu-22: runs-on: ubuntu-22.04 name: Ubuntu-22.04 CI Tests env: TZ: America/Los_Angeles steps: - name: Checkout uses: actions/checkout@v4 - run: sudo apt-get update - name: Install additional dependencies run: sudo apt-get install -y gettext cmake libxslt-dev xsltproc ninja-build libboost-all-dev libgtk-3-dev guile-2.2-dev libgwengui-gtk3-dev libaqbanking-dev libofx-dev libdbi-dev libdbd-sqlite3 libwebkit2gtk-4.0-dev googletest - name: Install language packs. run: sudo apt-get --reinstall install -y language-pack-en language-pack-fr - run: | echo "ROOT_DIR=$GITHUB_WORKSPACE/.." >> $GITHUB_ENV - name: Create Directories run: | pwd mkdir $ROOT_DIR/inst mkdir build - name: Configure GnuCash run: | cd build cmake -G Ninja -DWITH_PYTHON=ON -DCMAKE_INSTALL_PREFIX=$ROOT_DIR/inst $GITHUB_WORKSPACE - name: Build and Test GnuCash run: | cd build ninja ninja distcheck env: CTEST_OUTPUT_ON_FAILURE: On - uses: actions/upload-artifact@v4 if: failure() with: name: TestLog path: ${{ github.workspace }}/build/Testing/Temporary/LastTest.log ci_tests_ASAN: runs-on: ubuntu-latest name: Address Sanitizer CI Tests continue-on-error: true env: TZ: America/Los_Angeles steps: - name: Checkout uses: actions/checkout@v4 - run: sudo apt-get update - name: Install additional dependencies run: sudo apt-get install -y gettext cmake libxslt-dev xsltproc ninja-build libboost-all-dev libgtk-3-dev guile-2.2-dev libgwengui-gtk3-dev libaqbanking-dev libofx-dev libdbi-dev libdbd-sqlite3 libwebkit2gtk-4.0-dev googletest - name: Install language packs. run: sudo apt-get --reinstall install -y language-pack-en language-pack-fr - run: | echo "ROOT_DIR=$GITHUB_WORKSPACE/.." >> $GITHUB_ENV - name: Create Directories run: | pwd mkdir $ROOT_DIR/inst mkdir build - name: Configure GnuCash run: | cd build cmake -G Ninja -DWITH_PYTHON=ON -DCMAKE_INSTALL_PREFIX=$ROOT_DIR/inst $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=Asan - name: Build and Test GnuCash run: | cd build ninja ninja check env: CTEST_OUTPUT_ON_FAILURE: On - uses: actions/upload-artifact@v4 if: failure() with: name: TestLog path: ${{ github.workspace }}/build/Testing/Temporary/LastTest.log