85 lines
2.4 KiB
YAML
85 lines
2.4 KiB
YAML
|
name: CI
|
||
|
|
||
|
on: [push, pull_request]
|
||
|
|
||
|
jobs:
|
||
|
build:
|
||
|
name: Native Build
|
||
|
runs-on: ubuntu-latest
|
||
|
strategy:
|
||
|
matrix:
|
||
|
tag: [bionic, centos7]
|
||
|
container: infactum/tg2sip-builder:${{ matrix.tag }}
|
||
|
|
||
|
steps:
|
||
|
- uses: actions/checkout@v2
|
||
|
|
||
|
- name: Build
|
||
|
run: |
|
||
|
[ -d "/opt/rh" ] && source /opt/rh/devtoolset-7/enable
|
||
|
mkdir build && cd build
|
||
|
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
|
||
|
cmake -DCMAKE_BUILD_TYPE=Release ..
|
||
|
cmake --build . -j $(grep -c ^processor /proc/cpuinfo);
|
||
|
|
||
|
- uses: actions/upload-artifact@v2
|
||
|
with:
|
||
|
name: tg2sip_${{ matrix.tag }}
|
||
|
path: |
|
||
|
build/tg2sip
|
||
|
build/gen_db
|
||
|
build/settings.ini
|
||
|
|
||
|
# AppImage generation cannot be fully done inside container
|
||
|
# because of FUSE requirements
|
||
|
- name: Prepare AppImage
|
||
|
if: matrix.tag == 'centos7'
|
||
|
run: |
|
||
|
linuxdeploy --appdir tg2sip -e build/tg2sip
|
||
|
linuxdeploy --appdir gen_db -e build/gen_db
|
||
|
|
||
|
- uses: actions/upload-artifact@v2
|
||
|
if: matrix.tag == 'centos7'
|
||
|
with:
|
||
|
name: tmp
|
||
|
path: |
|
||
|
tg2sip/
|
||
|
gen_db/
|
||
|
|
||
|
appimage:
|
||
|
name: Pack AppImage
|
||
|
needs: [build]
|
||
|
runs-on: ubuntu-latest
|
||
|
|
||
|
steps:
|
||
|
- uses: actions/checkout@v2
|
||
|
|
||
|
- uses: actions/download-artifact@v2
|
||
|
with:
|
||
|
name: tmp
|
||
|
path: tmp
|
||
|
|
||
|
- name: Prepare
|
||
|
run: |
|
||
|
wget https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage -O appimagetool.AppImage
|
||
|
chmod +x appimagetool.AppImage
|
||
|
wget https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage -O linuxdeploy.AppImage
|
||
|
chmod +x linuxdeploy.AppImage
|
||
|
|
||
|
- name: Pack
|
||
|
run: |
|
||
|
./linuxdeploy.AppImage --appdir tmp/tg2sip -d buildenv/tg2sip.desktop -i buildenv/icon.svg
|
||
|
./linuxdeploy.AppImage --appdir tmp/gen_db -d buildenv/gen_db.desktop -i buildenv/icon.svg
|
||
|
chmod +x tmp/tg2sip/usr/bin/tg2sip
|
||
|
chmod +x tmp/gen_db/usr/bin/gen_db
|
||
|
./appimagetool.AppImage tmp/tg2sip
|
||
|
./appimagetool.AppImage tmp/gen_db
|
||
|
|
||
|
- uses: actions/upload-artifact@v2
|
||
|
with:
|
||
|
name: tg2sip_universal
|
||
|
path: |
|
||
|
tg2sip-x86_64.AppImage
|
||
|
gen_db-x86_64.AppImage
|
||
|
settings.ini;
|