This repository was archived by the owner on Aug 13, 2026. It is now read-only.
Repository navigation
130 lines (104 loc) · 3.59 KB
/
Copy pathrelease.yml
File metadata and controls
130 lines (104 loc) · 3.59 KB
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
name: Release Build
on:
push:
tags:
- 'v*.*.*'
jobs:
build-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Setup Flutter
uses: subosito/flutter-action@v2
with:
flutter-version: '3.38.2'
channel: 'stable'
- name: Install dependencies
run: flutter pub get
- name: Generate Build Hash
run: dart run tool/generate_build_hash.dart
- name: Build Windows
run: flutter build windows --release
- name: Create Windows archive
run: |
cd build/windows/x64/runner/Release
Compress-Archive -Path * -DestinationPath ../../../../../qtask-windows-x64-${{ github.ref_name }}.zip
- name: Upload Windows artifact
uses: actions/upload-artifact@v4
with:
name: qtask-windows-x64
path: qtask-windows-x64-${{ github.ref_name }}.zip
build-macos:
runs-on: macos-14 # macOS 14 runs on Apple Silicon
steps:
- uses: actions/checkout@v4
- name: Setup Flutter
uses: subosito/flutter-action@v2
with:
flutter-version: '3.38.2'
channel: 'stable'
- name: Install dependencies
run: flutter pub get
- name: Generate Build Hash
run: dart run tool/generate_build_hash.dart
- name: Build macOS
run: flutter build macos --release
- name: Create macOS archive
run: |
cd build/macos/Build/Products/Release
zip -r ../../../../../qtask-macos-arm64-${{ github.ref_name }}.zip q_task.app
- name: Upload macOS artifact
uses: actions/upload-artifact@v4
with:
name: qtask-macos-arm64
path: qtask-macos-arm64-${{ github.ref_name }}.zip
build-android:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: '17'
- name: Setup Flutter
uses: subosito/flutter-action@v2
with:
flutter-version: '3.38.2'
channel: 'stable'
- name: Install dependencies
run: flutter pub get
- name: Generate Build Hash
run: dart run tool/generate_build_hash.dart
- name: Build Android APK
run: flutter build apk --release
- name: Rename APK
run: mv build/app/outputs/flutter-apk/app-release.apk build/app/outputs/flutter-apk/qtask-android-${{ github.ref_name }}.apk
- name: Upload Android artifact
uses: actions/upload-artifact@v4
with:
name: qtask-android
path: build/app/outputs/flutter-apk/qtask-android-${{ github.ref_name }}.apk
create-release:
needs: [build-windows, build-macos, build-android]
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Create Release
uses: softprops/action-gh-release@v1
with:
files: |
artifacts/qtask-windows-x64/qtask-windows-x64-${{ github.ref_name }}.zip
artifacts/qtask-macos-arm64/qtask-macos-arm64-${{ github.ref_name }}.zip
artifacts/qtask-android/qtask-android-${{ github.ref_name }}.apk
body_path: RELEASE_NOTES.md
draft: false
prerelease: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}