mirror of
https://github.com/Yubico/yubioath-flutter.git
synced 2024-12-25 19:21:38 +03:00
79 lines
2.2 KiB
YAML
79 lines
2.2 KiB
YAML
name: Windows
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build:
|
|
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: '3.9'
|
|
|
|
- name: Check app versions
|
|
run: |
|
|
python set-version.py
|
|
git diff --exit-code
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
choco install swig
|
|
python -m pip install --upgrade pip
|
|
pip install poetry
|
|
|
|
- uses: subosito/flutter-action@v2
|
|
with:
|
|
channel: 'stable'
|
|
- run: flutter config --enable-windows-desktop
|
|
- run: flutter --version
|
|
|
|
- name: Run tests
|
|
run: |
|
|
flutter test
|
|
flutter analyze
|
|
|
|
- name: Build the Helper
|
|
run: .\build-helper.bat
|
|
|
|
- name: Build the app
|
|
run: flutter build windows
|
|
|
|
- name: Check generated files
|
|
run: git diff -I '.*android.*flutter_plugins.*qrscanner_zxing' --exit-code
|
|
|
|
- name: Move .dll files
|
|
run: |
|
|
$dest = "build\windows\runner\Release"
|
|
cp $dest\helper\MSVCP140.dll $dest\
|
|
cp $dest\helper\VCRUNTIME140.dll $dest\
|
|
cp $dest\helper\VCRUNTIME140_1.dll $dest\
|
|
|
|
|
|
- name: Create an unsigned .msi installer package
|
|
run: |
|
|
$env:PATH += ";$env:WIX\bin"
|
|
$env:SRCDIR = "build\windows\runner\Release\"
|
|
heat dir .\build\windows\runner\Release\ -out fragment.wxs -gg -scom -srd -sfrag -dr INSTALLDIR -cg ApplicationFiles -var env.SRCDIR
|
|
candle .\fragment.wxs .\resources\win\yubioath-desktop.wxs -ext WixUtilExtension -arch x64
|
|
light fragment.wixobj yubioath-desktop.wixobj -ext WixUIExtension -ext WixUtilExtension -o yubioath-desktop.msi
|
|
|
|
- name: Rename and archive app bundle
|
|
run: |
|
|
$arr = $env:GITHUB_REF -split '/'
|
|
$branch = $arr[2]
|
|
$dest = "deploy\yubioath-desktop-$branch-windows"
|
|
mkdir $dest
|
|
mv build\windows\runner\Release\* $dest\
|
|
mv yubioath-desktop.msi deploy
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: yubioath-desktop-windows
|
|
path: deploy
|