diff --git a/.github/workflows/ci-docker.yml b/.github/workflows/ci-docker.yml new file mode 100644 index 0000000000..fdf1b8e06a --- /dev/null +++ b/.github/workflows/ci-docker.yml @@ -0,0 +1,15 @@ +name: ci-tests-docker +on: [push] +jobs: + ci_tests_archlinux: + runs-on: ubuntu-latest + name: Test Docker Action + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Test Action + uses: ./util/ci/actions/archlinux-test + - uses: actions/upload-artifact@v2 + with: + name: TestLog + path: ${{ github.workspace }}/LastTest.log diff --git a/util/ci/actions/archlinux-test/Dockerfile b/util/ci/actions/archlinux-test/Dockerfile new file mode 100644 index 0000000000..24352b54f7 --- /dev/null +++ b/util/ci/actions/archlinux-test/Dockerfile @@ -0,0 +1,8 @@ +from archlinux/base +run pacman -Syu --quiet --noconfirm gcc cmake make boost python2 pkg-config gettext guile git ninja gtest gmock sqlite3 webkit2gtk swig gwenhywfar aqbanking intltool libxslt postgresql-libs libmariadbclient libdbi libdbi-drivers > /dev/null +run echo en_US.UTF-8 UTF-8 >> /etc/locale.gen +run echo en_GB.UTF-8 UTF-8 >> /etc/locale.gen +run echo fr_FR.UTF-8 UTF-8 >> /etc/locale.gen +run locale-gen +copy entrypoint.sh / +entrypoint /entrypoint.sh diff --git a/util/ci/actions/archlinux-test/action.yaml b/util/ci/actions/archlinux-test/action.yaml new file mode 100644 index 0000000000..d2043c7284 --- /dev/null +++ b/util/ci/actions/archlinux-test/action.yaml @@ -0,0 +1,5 @@ +name: 'CI Tests ArchLinux' +description: 'Run GnuCash CI tests in an ArchLinux Docker' +runs: + using: 'docker' + image: 'Dockerfile' diff --git a/util/ci/actions/archlinux-test/entrypoint.sh b/util/ci/actions/archlinux-test/entrypoint.sh new file mode 100755 index 0000000000..9b21224af5 --- /dev/null +++ b/util/ci/actions/archlinux-test/entrypoint.sh @@ -0,0 +1,13 @@ +#!/bin/bash -le + +mkdir -p "$HOME"/.local/share + +mkdir build +cd build +export TZ="America/Los_Angeles" + +cmake /github/workspace -DWITH_PYTHON=ON -DCMAKE_BUILD_TYPE=debug -G Ninja +ninja +ninja check + +cp Testing/Temporary/LastTest.log /github/workspace