1
1
name : Flutter CI
2
2
3
- on : push
3
+ on :
4
+ push :
5
+ tags :
6
+ - " *"
4
7
5
8
jobs :
6
9
build-and-release-linux :
@@ -24,18 +27,22 @@ jobs:
24
27
run : flutter build linux --release
25
28
- name : Build Appimage
26
29
run : bash ./github_appimage_build.sh
27
- - name : Set outputs
28
- id : vars
29
- run : echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
30
+ - name : Compress action step
31
+ uses : a7ul/tar-action@v1.1.0
32
+ id : compress
33
+ with :
34
+ command : c
35
+ files : build/linux/x64/release/bundle/
36
+ outPath : renamer-linux.tar.gz
30
37
- name : Linux Release
31
38
uses : actions/upload-artifact@v4
32
39
with :
33
- name : Renamer-${{github.ref_name}}-${{ steps.vars.outputs.sha_short }} -linux
34
- path : build/ linux/x64/release/bundle
40
+ name : renamer -linux
41
+ path : renamer- linux.tar.gz
35
42
- name : Linux Appimage Release
36
43
uses : actions/upload-artifact@v4
37
44
with :
38
- name : Renamer-${{github.ref_name}}-${{ steps.vars.outputs.sha_short }} -appimage
45
+ name : renamer -appimage
39
46
path : Renamer-x86_64.AppImage
40
47
- uses : actions/setup-java@v2
41
48
with :
@@ -49,17 +56,15 @@ jobs:
49
56
run : |
50
57
flutter build apk --release
51
58
flutter build apk --release --split-per-abi
52
- flutter build appbundle --release
53
- mv build/app/outputs/bundle/release/app-release.aab build/app/outputs/flutter-apk/
54
59
env :
55
60
KEYSTORE : renamer.jks
56
61
KEYSTORE_PASSWORD : ${{ secrets.KEYSTORE_PASSWORD }}
57
62
KEY_ALIAS : ${{ secrets.KEY_ALIAS }}
58
63
KEY_PASSWORD : ${{ secrets.KEY_PASSWORD}}
59
64
- name : Android Release
60
- uses : actions/upload-artifact@v1
65
+ uses : actions/upload-artifact@v4
61
66
with :
62
- name : renamer-${{github.ref_name}}-${{ steps.vars.outputs.sha_short }}- android
67
+ name : renamer-android
63
68
path : build/app/outputs/flutter-apk
64
69
65
70
@@ -88,13 +93,10 @@ jobs:
88
93
run : npm install enigmavirtualbox -g
89
94
- name : build single exe file
90
95
run : enigmavirtualbox cli ".\evb\renamer.evb"
91
- - name : Set output
92
- id : vars
93
- run : echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
94
96
- name : Windows Release
95
97
uses : actions/upload-artifact@v4
96
98
with :
97
- name : renamer-${{github.ref_name}}-${{ steps.vars.outputs.sha_short }}-windows
99
+ name : renamer-win
98
100
path : renamer.exe
99
101
100
102
build-and-release-macos :
@@ -118,22 +120,43 @@ jobs:
118
120
run : npm install -g appdmg
119
121
- name : build dmg
120
122
run : appdmg ./dmg/config.json ./build/macos/Build/Products/Release/renamer.dmg
121
- - name : Set outputs
122
- id : vars
123
- run : echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
124
123
- name : macOS Release
125
124
uses : actions/upload-artifact@v4
126
125
with :
127
- name : renamer-${{github.ref_name}}-${{ steps.vars.outputs.sha_short }}- macos
126
+ name : renamer-macos
128
127
path : build/macos/Build/Products/Release/renamer.dmg
129
128
- name : Build ios
130
129
run : |
131
130
flutter build ios --release --no-codesign
132
131
ln -sf ./build/ios/iphoneos Payload
133
- zip -r9 renamer-${{github.ref_name}}-${{ steps.vars.outputs.sha_short }}- release.ipa Payload/runner.app
132
+ zip -r9 renamer-release.ipa Payload/runner.app
134
133
- name : ios Release
135
134
uses : actions/upload-artifact@v4
136
135
with :
137
- name : renamer-${{github.ref_name}}-${{ steps.vars.outputs.sha_short }}-ios
138
- path : renamer-${{github.ref_name}}-${{ steps.vars.outputs.sha_short }}-release.ipa
136
+ name : renamer-ios
137
+ path : renamer-release.ipa
138
+
139
+
140
+ upload :
141
+ runs-on : ubuntu-latest
139
142
143
+ needs :
144
+ - build-and-release-linux
145
+ - build-and-release-windows
146
+ - build-and-release-macos
147
+ steps :
148
+ - uses : actions/download-artifact@v4
149
+ with :
150
+ path : ./renamer-release
151
+ merge-multiple : true
152
+ - name : Install dependencies
153
+ run : sudo apt-get install tree -y
154
+ - name : Upload Release
155
+ uses : ncipollo/release-action@v1
156
+ with :
157
+ token : ${{ secrets.GIT_TOKEN }}
158
+ omitBodyDuringUpdate : true
159
+ omitNameDuringUpdate : true
160
+ omitPrereleaseDuringUpdate : true
161
+ allowUpdates : true
162
+ artifacts : renamer-release/*
0 commit comments