diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2019-12-30 11:23:30 -0800 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2019-12-30 17:43:31 -0800 |
commit | 2f5d37e86ecea25e0030735bed3015f79d428092 (patch) | |
tree | 47ad41d2f3a3af1705492cf34da6d49888d67a98 /.github/workflows | |
parent | f788311b298abd4190e2ae98204171d8e05d11d8 (diff) | |
download | subsurface-2f5d37e86ecea25e0030735bed3015f79d428092.tar.gz |
GitHub Actions: add Ubuntu 19.10 / Qt 5.12 build
And run tests for desktop and mobile.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/linux-eoan-5.12.yml | 24 | ||||
-rw-r--r-- | .github/workflows/scripts/ubuntu-in-container-build.sh | 49 |
2 files changed, 73 insertions, 0 deletions
diff --git a/.github/workflows/linux-eoan-5.12.yml b/.github/workflows/linux-eoan-5.12.yml new file mode 100644 index 000000000..4bd71d443 --- /dev/null +++ b/.github/workflows/linux-eoan-5.12.yml @@ -0,0 +1,24 @@ +name: Linux Qt 5.12 Ubuntu 19.10 +on: + push: + branches: + - master + pull_request: + branches: + - master + +jobs: + buildInContainer: + runs-on: ubuntu-latest + container: + image: ubuntu:19.10 + + steps: + - name: checkout sources + uses: actions/checkout@v1 + + - name: run build + run: | + cd .. + bash -x subsurface/.github/workflows/scripts/ubuntu-in-container-build.sh + diff --git a/.github/workflows/scripts/ubuntu-in-container-build.sh b/.github/workflows/scripts/ubuntu-in-container-build.sh new file mode 100644 index 000000000..e5bb7acfb --- /dev/null +++ b/.github/workflows/scripts/ubuntu-in-container-build.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +# this is used to do a standard build of Subsurface (including tests) in a "random" +# Ubuntu container (I assume we will keep moving this to the latest Ubuntu) + +set -x +set -e + +echo "--------------------------------------------------------------" +echo "update distro and install dependencies" + +apt-get update +apt-get upgrade -y +DEBIAN_FRONTEND=noninteractive apt-get install -y -q --force-yes \ + autoconf automake cmake g++ git libcrypto++-dev libcurl4-gnutls-dev \ + libgit2-dev libqt5qml5 libqt5quick5 libqt5svg5-dev \ + libqt5webkit5-dev libsqlite3-dev libssh2-1-dev libssl-dev libssl-dev \ + libtool libusb-1.0-0-dev libxml2-dev libxslt1-dev libzip-dev make \ + pkg-config qml-module-qtlocation qml-module-qtpositioning \ + qml-module-qtquick2 qt5-default qt5-qmake qtchooser qtconnectivity5-dev \ + qtdeclarative5-dev qtdeclarative5-private-dev qtlocation5-dev \ + qtpositioning5-dev qtscript5-dev qttools5-dev qttools5-dev-tools \ + qtquickcontrols2-5-dev xvfb + +echo "--------------------------------------------------------------" +echo "building mobile" + +# first make sure that no one broke Subsurface-mobile +bash -e -x subsurface/scripts/build.sh -mobile + +echo "--------------------------------------------------------------" +echo "running tests for mobile" + +pushd subsurface/build-mobile +xvfb-run --auto-servernum make check +popd + +echo "--------------------------------------------------------------" +echo "building desktop" + +# now build for the desktop version (including WebKit) +bash -e -x subsurface/scripts/build.sh -desktop -build-with-webkit + +echo "--------------------------------------------------------------" +echo "running tests for desktop" +pushd subsurface/build +xvfb-run --auto-servernum make check +popd + |