-
Notifications
You must be signed in to change notification settings - Fork 0
47 lines (41 loc) · 1.62 KB
/
release_apk.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# This is a basic workflow to help you get started with Actions
name: Build and Release APK
# Controls when the workflow will run
on:
# Triggers the workflow on push or pull request events but only for the "main" branch
push:
branches: [ "release" ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- uses: actions/checkout@v3
- uses: DeterminateSystems/nix-installer-action@main
- uses: DeterminateSystems/magic-nix-cache-action@main
- run: |
tag=$(cat pubspec.yaml | grep '^version:' | sed 's/^version:\s*\(.*\)\s*$/\1/g')
echo "app_tag=$tag" >> $GITHUB_ENV
echo "Setting app tag as $tag"
echo "From github ${{ env.app_tag }} "
- run: nix flake check
- run: nix develop --command flutter pub get
# Enable when test is written
# - run: nix develop --command flutter test
- run: nix develop --command flutter build apk --release
- name: Create Github Release
uses: ncipollo/release-action@v1
with:
commit: ${{ github.sha }}
tag: ${{ env.app_tag }}
artifacts: "build/app/outputs/flutter-apk/app-release.apk"
- name: Save APK to Artifacts
uses: actions/upload-artifact@v2
with:
name: APK
path: build/app/outputs/flutter-apk/app-release.apk