vial/.github/workflows/main.yml

111 lines
2.9 KiB
YAML

name: CI
on: [push, pull_request]
jobs:
build-linux:
runs-on: ubuntu-16.04
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
with:
python-version: '3.6.x'
- name: Install dependencies
run: |
sudo apt-get install libusb-1.0-0-dev libudev-dev ruby ruby-dev rubygems build-essential desktop-file-utils
wget https://github.com/AppImage/pkg2appimage/archive/38603d92359a48189c35debad9005e8e902e6070.zip
unzip *.zip
sudo gem install --no-document fpm
- name: Setup venv
run: |
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
- name: Build
run: |
source venv/bin/activate
fbs freeze
find -name libgdk-3.so.0 | xargs rm
fbs installer
deactivate
./pkg2appimage-*/pkg2appimage misc/Vial.yml
mv out/Vial-*.AppImage out/Vial-x86_64.AppImage
- uses: actions/upload-artifact@v1
with:
name: vial-linux
path: out/Vial-x86_64.AppImage
build-mac:
runs-on: macos-10.15
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
with:
python-version: '3.6.x'
- name: Setup venv
run: |
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
- name: Build
run: |
source venv/bin/activate
fbs freeze
hdiutil create -volname Vial -srcfolder "target/Vial.app" -ov -format UDZO vial-mac.dmg
- uses: actions/upload-artifact@v1
with:
name: vial-mac
path: vial-mac.dmg
build-win:
runs-on: windows-2019
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
with:
python-version: '3.6.x'
- name: Setup venv
run: |
python -m venv venv
. .\venv\Scripts\activate.ps1
pip install -r requirements.txt
- name: Install NSIS
run: |
Invoke-WebRequest "https://sourceforge.net/projects/nsis/files/NSIS%203/3.06.1/nsis-3.06.1-setup.exe/download" -UserAgent "wget" -OutFile nsis-3.06.1-setup.exe
if ((Get-FileHash nsis-3.06.1-setup.exe -Algorithm sha256).Hash -ne "f60488a676308079bfdf6845dc7114cfd4bbff47b66be4db827b89bb8d7fdc52") { Write-Error 'SHA256 mismatch' }
Start-Process -FilePath "nsis-3.06.1-setup.exe" -ArgumentList "/S", "/D=C:\Program Files (x86)\NSIS" -NoNewWindow -Wait
- name: Build
run: |
. .\venv\Scripts\activate.ps1
fbs freeze
Compress-Archive -Path "target\Vial" -DestinationPath vial-win.zip
- uses: actions/upload-artifact@v1
with:
name: vial-win
path: vial-win.zip
- name: Create installer
run: |
$env:Path += ";C:\Program Files (x86)\NSIS"
. .\venv\Scripts\activate.ps1
fbs installer
- uses: actions/upload-artifact@v1
with:
name: vial-win-installer
path: target\VialSetup.exe