Skip to content

Commit 3306776

Browse files
trigger on tag push, ghcr and apk
1 parent 6c52d02 commit 3306776

1 file changed

Lines changed: 57 additions & 6 deletions

File tree

.github/workflows/release.yaml

Lines changed: 57 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
name: Build & Publish Docker Image
1+
name: Build & Publish Release
22

33
on:
44
push:
55
tags:
6-
- 'v0.1.5'
7-
workflow_dispatch: {}
6+
- 'v*'
87

98
env:
109
REGISTRY: ghcr.io
1110
IMAGE_NAME: ${{ github.repository }}
1211

1312
jobs:
14-
build-and-push:
13+
docker:
14+
name: Docker Image → GHCR
1515
runs-on: ubuntu-latest
1616
permissions:
1717
contents: read
@@ -34,7 +34,7 @@ jobs:
3434
with:
3535
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
3636
tags: |
37-
type=raw,value=v0.1.5
37+
type=ref,event=tag
3838
type=raw,value=latest
3939
4040
- name: Set up Docker Buildx
@@ -47,4 +47,55 @@ jobs:
4747
file: ./server/Dockerfile
4848
push: true
4949
tags: ${{ steps.meta.outputs.tags }}
50-
labels: ${{ steps.meta.outputs.labels }}
50+
labels: ${{ steps.meta.outputs.labels }}
51+
52+
apk:
53+
name: Flutter APK → GitHub Release
54+
runs-on: ubuntu-latest
55+
permissions:
56+
contents: write
57+
58+
steps:
59+
- name: Checkout source code
60+
uses: actions/checkout@v4
61+
62+
- name: Set up Java (required for Android builds)
63+
uses: actions/setup-java@v4
64+
with:
65+
distribution: temurin
66+
java-version: '17'
67+
68+
- name: Set up Flutter
69+
uses: subosito/flutter-action@v2
70+
with:
71+
flutter-version: 'stable'
72+
cache: true
73+
74+
- name: Install Flutter dependencies
75+
working-directory: mobile
76+
run: flutter pub get
77+
78+
- name: Run Flutter analyze
79+
working-directory: mobile
80+
run: flutter analyze --no-fatal-infos
81+
82+
- name: Build release APK
83+
working-directory: mobile
84+
run: flutter build apk --release
85+
86+
- name: Rename APK with version tag
87+
run: |
88+
mv mobile/build/app/outputs/flutter-apk/app-release.apk \
89+
mobile/build/app/outputs/flutter-apk/elephant-${{ github.ref_name }}.apk
90+
91+
- name: Create or update GitHub Release
92+
uses: softprops/action-gh-release@v2
93+
with:
94+
tag_name: ${{ github.ref_name }}
95+
name: Elephant ${{ github.ref_name }}
96+
draft: false
97+
prerelease: false
98+
generate_release_notes: true
99+
files: mobile/build/app/outputs/flutter-apk/elephant-${{ github.ref_name }}.apk
100+
env:
101+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 commit comments

Comments
 (0)