Skip to content

Commit

Permalink
Added GitHub Action CI. (#518)
Browse files Browse the repository at this point in the history
* Added GitHub Action CI.

Signed-off-by: RICCIARDI-Adrien <adrien.ricciardi@hotmail.fr>

* Removed Travis CI support.

Signed-off-by: RICCIARDI-Adrien <adrien.ricciardi@hotmail.fr>
  • Loading branch information
RICCIARDI-Adrien committed Jan 23, 2022
1 parent 570ca2d commit adf1eb0
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 54 deletions.
32 changes: 32 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Build
on: [push, pull_request]

jobs:
build:
name: Build
runs-on: ubuntu-20.04
container: ubuntu:xenial
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
TRAVIS_BUILD_NUMBER: ${{ github.run_number }}
VERSION: ${{ github.ref_name }}
steps:
- name: Configure build machine
run: |
apt update
apt install -y -q apt-transport-https curl git kmod software-properties-common sudo wget
# The keyboard-configuration package is needed later and requires the user to input a number via dpkg-reconfigure, so preinstall it without front-end to avoid blocking the later installations
DEBIAN_FRONTEND=noninteractive apt install -y -q keyboard-configuration
- name: Checkout sources
run: |
# Can't use actions/checkout@v2 action here because Ubuntu 16.04 git version is too old, so the action downloads an archive instead of a git repository, and this prevents linuxdeployqt from finding the commit it is built from
git clone --depth=1 https://github.com/${{ github.repository }} --branch=${{ github.ref_name }} .
- name: Environment tests
run: ./tests/tests-environment.sh
- name: CI tests
run: ./tests/tests-ci.sh
- name: Deploy release (only when building from master branch)
if: ${{ github.ref == 'refs/heads/master' }}
run: |
wget -c https://github.com/probonopd/uploadtool/raw/master/upload.sh
bash ./upload.sh ./linuxdeployqt-*.AppImage*
38 changes: 0 additions & 38 deletions .travis.yml

This file was deleted.

31 changes: 15 additions & 16 deletions tests/tests-ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,18 @@ set -x

source /opt/qt*/bin/qt*-env.sh
/opt/qt*/bin/qmake CONFIG+=release CONFIG+=force_debug_info linuxdeployqt.pro
# make -j$(nproc) # Not doing here but below with "pvs-tool trace"
make -j$(nproc)

# Test
wget -q -O - http://files.viva64.com/etc/pubkey.txt | sudo apt-key add -
sudo wget -O /etc/apt/sources.list.d/viva64.list http://files.viva64.com/etc/viva64.list
sudo apt-get update
sudo apt-get -y install --no-install-recommends pvs-studio
pvs-studio-analyzer credentials probono@puredarwin.org $PVS_KEY -o ./licence.lic
pvs-studio-analyzer trace -- make -j$(nproc)
pvs-studio-analyzer analyze -e /opt -e /usr -o pvs-studio.log -j $(nproc) -l ./licence.lic
plog-converter -a GA:1,2 -t tasklist -o pvs-studio-report.txt pvs-studio.log
rm ./licence.lic
# Test (it is commented out because current PVS Studio license is expired, it might be re-enabled later if a new license is granted)
#wget -q -O - http://files.viva64.com/etc/pubkey.txt | sudo apt-key add -
#sudo wget -O /etc/apt/sources.list.d/viva64.list http://files.viva64.com/etc/viva64.list
#sudo apt-get update
#sudo apt-get -y install --no-install-recommends pvs-studio
#pvs-studio-analyzer credentials probono@puredarwin.org $PVS_KEY -o ./licence.lic
#pvs-studio-analyzer trace -- make -j$(nproc)
#pvs-studio-analyzer analyze -e /opt -e /usr -o pvs-studio.log -j $(nproc) -l ./licence.lic
#plog-converter -a GA:1,2 -t tasklist -o pvs-studio-report.txt pvs-studio.log
#rm ./licence.lic

# exit on failure
set -e
Expand All @@ -26,8 +26,7 @@ cp ./bin/linuxdeployqt linuxdeployqt.AppDir/usr/bin/
cp -r /usr/local/lib/appimagekit linuxdeployqt.AppDir/usr/lib/
chmod +x linuxdeployqt.AppDir/AppRun
find linuxdeployqt.AppDir/
export VERSION=continuous
if [ ! -z $TRAVIS_TAG ] ; then export VERSION=$TRAVIS_TAG ; fi
if [ -z "$VERSION" ] ; then export VERSION=continuous ; fi
./bin/linuxdeployqt linuxdeployqt.AppDir/linuxdeployqt.desktop -verbose=3 -appimage \
-executable=linuxdeployqt.AppDir/usr/bin/desktop-file-validate
ls -lh
Expand All @@ -43,7 +42,7 @@ do
done

# enable core dumps
echo "/tmp/coredump" | sudo tee /proc/sys/kernel/core_pattern
#echo "/tmp/coredump" | sudo tee /proc/sys/kernel/core_pattern

ulimit -c unlimited
ulimit -a -S
Expand All @@ -52,8 +51,8 @@ ulimit -a -H
# error handling performed separately
set +e

# print version number
./linuxdeployqt-*-x86_64.AppImage --version
# print version number (need to extract the AppImage because we are running in a container, see https://github.com/AppImage/AppImageKit/wiki/FUSE#docker)
./linuxdeployqt-*-x86_64.AppImage --appimage-extract-and-run --version

# TODO: reactivate tests
#bash -e tests/tests.sh
Expand Down

0 comments on commit adf1eb0

Please sign in to comment.