Skip to content

Commit 63b3144

Browse files
authored
ci: qnap separate build (#877)
1 parent 1b0178f commit 63b3144

File tree

7 files changed

+511
-363
lines changed

7 files changed

+511
-363
lines changed

.github/release-drafter.yml

Lines changed: 105 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,46 +1,123 @@
1-
name-template: 'v$NEXT_PATCH_VERSION 🌈'
2-
tag-template: 'v$NEXT_PATCH_VERSION'
1+
name-template: "v$NEXT_PATCH_VERSION 🌈"
2+
tag-template: "v$NEXT_PATCH_VERSION"
33
categories:
4-
- title: '🆕 Features'
4+
- title: "🆕 Features"
55
labels:
6-
- 'feat'
7-
- 'feature'
8-
- 'enhancement'
9-
- title: '🐛 Bug Fixes'
6+
- "feat"
7+
- "feature"
8+
- "enhancement"
9+
- title: "🐛 Bug Fixes"
1010
labels:
11-
- 'fix'
12-
- 'bugfix'
13-
- 'bug'
14-
- title: '🔧 Performance Improvements'
11+
- "fix"
12+
- "bugfix"
13+
- "bug"
14+
- title: "🔧 Performance Improvements"
1515
labels:
16-
- 'perf'
17-
- title: '🧪 Tests'
18-
label: 'test'
19-
- title: '🧰 Maintenance'
20-
label: 'chore'
21-
- title: '📖 Document'
22-
label: 'docs'
23-
- title: '🚀 CI/CD'
24-
label: 'ci'
25-
- title: '🌎 Internationalization'
26-
label: 'translation'
27-
change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
16+
- "perf"
17+
- title: "🧪 Tests"
18+
label: "test"
19+
- title: "🧰 Maintenance"
20+
label: "chore"
21+
- title: "📖 Document"
22+
label: "docs"
23+
- title: "🚀 CI/CD"
24+
label: "ci"
25+
- title: "🌎 Internationalization"
26+
label: "translation"
27+
change-template: "- $TITLE @$AUTHOR (#$NUMBER)"
2828
version-resolver:
2929
major:
3030
labels:
31-
- 'major'
31+
- "major"
3232
minor:
3333
labels:
34-
- 'minor'
34+
- "minor"
3535
patch:
3636
labels:
37-
- 'patch'
37+
- "patch"
3838
default: patch
3939
template: |
40+
<table>
41+
<thead>
42+
<tr>
43+
<th colspan="2">Windows</th>
44+
<th>MacOS</th>
45+
<th colspan="4">Linux</th>
46+
<th>Android</th>
47+
<th>iOS</th>
48+
<th>Docker</th>
49+
<th colspan="2">Qnap</th>
50+
<th colspan="8">Web</th>
51+
</tr>
52+
<tr>
53+
<td><code>EXE</code></td>
54+
<td><code>Portable</code></td>
55+
<td><code>DMG</code></td>
56+
<td><code>Flathub</code></td>
57+
<td><code>SNAP</code></td>
58+
<td><code>DEB</code></td>
59+
<td><code>AppImage</code></td>
60+
<td><code>APK</code></td>
61+
<td><code>IPA</code></td>
62+
<td>-</td>
63+
<td colspan="2"><code>QPKG</code></td>
64+
<td colspan="3"><code>Windows</code></td>
65+
<td colspan="2"><code>MacOS</code></td>
66+
<td colspan="3"><code>Linux</code></td>
67+
</tr>
68+
</thead>
69+
<tbody>
70+
<tr>
71+
<td>amd64</td>
72+
<td>amd64</td>
73+
<td>-</td>
74+
<td>amd64</td>
75+
<td>amd64</td>
76+
<td>amd64</td>
77+
<td>amd64</td>
78+
<td>-</td>
79+
<td>-</td>
80+
<td>-</td>
81+
<td>amd64</td>
82+
<td>arm64</td>
83+
<td>amd64</td>
84+
<td>amd64</td>
85+
<td>386</td>
86+
<td>amd64</td>
87+
<td>amd64</td>
88+
<td>amd64</td>
89+
<td>amd64</td>
90+
<td>386</td>
91+
</tr>
92+
<tr>
93+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-windows-amd64.zip">Link</a></td>
94+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-windows-amd64-portable.zip">Link</a></td>
95+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-macos.dmg">Link</a></td>
96+
<td><a href="https://flathub.org/apps/com.gopeed.Gopeed">Link</a></td>
97+
<td><a href="https://snapcraft.io/gopeed">Link</a></td>
98+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-linux-amd64.deb">Link</a></td>
99+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-linux-x86_64.AppImage">Link</a></td>
100+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-android.apk">Link</a></td>
101+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-ios.ipa">Link</a></td>
102+
<td><a href="https://hub.docker.com/r/liwei2633/gopeed">Link</a></td>
103+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-$version-qnap-amd64.qpkg">Link</a></td>
104+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-$version-qnap-arm64.qpkg">Link</a></td>
105+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-windows-amd64.zip">Link</a></td>
106+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-windows-arm64.zip">Link</a></td>
107+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-windows-386.zip">Link</a></td>
108+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-macos-amd64.zip">Link</a></td>
109+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-macos-arm64.zip">Link</a></td>
110+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-linux-amd64.zip">Link</a></td>
111+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-linux-arm64.zip">Link</a></td>
112+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-linux-386.zip">Link</a></td>
113+
</tr>
114+
</tbody>
115+
</table>
116+
40117
# Release notes
41118
42119
$CHANGES
43-
120+
44121
# 更新日志
45122
46-
$CHANGES
123+
$CHANGES

.github/workflows/build.yml

Lines changed: 36 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,7 @@ jobs:
428428
asset_path: ui/flutter/dist/*
429429
overwrite: true
430430
build-web:
431-
if: ${{ github.event.inputs.platform == 'all' || github.event.inputs.platform == 'web' }}
431+
if: ${{ github.event.inputs.platform == 'all' || github.event.inputs.platform == 'web' || github.event.inputs.platform == 'qnap' }}
432432
runs-on: ubuntu-latest
433433
needs: [get-release]
434434
steps:
@@ -471,44 +471,70 @@ jobs:
471471
|| true
472472
done
473473
done
474+
- uses: actions/upload-artifact@v3
475+
with:
476+
name: web-dist
477+
path: dist/zip/
478+
- name: Upload
479+
uses: shogo82148/actions-upload-release-asset@v1
480+
with:
481+
upload_url: ${{ needs.get-release.outputs.upload_url }}
482+
asset_path: dist/zip/*
483+
overwrite: true
484+
build-qnap:
485+
if: ${{ github.event.inputs.platform == 'all' || github.event.inputs.platform == 'qnap' }}
486+
runs-on: ubuntu-latest
487+
needs: [get-release, build-web]
488+
steps:
489+
- uses: actions/setup-python@v5
490+
with:
491+
python-version: '3.8.18'
492+
- uses: actions/download-artifact@v3
493+
with:
494+
name: web-dist
495+
path: dist/zip/
496+
- name: Build
497+
env:
498+
VERSION: ${{ needs.get-release.outputs.version }}
499+
run: |
474500
sudo apt update -y
475-
sudo apt install -y pv python2 bsdmainutils
501+
sudo apt install -y pv bsdmainutils
476502
wget -O qdk2_0.32.bionic_amd64.deb "https://github.com/qnap-dev/qdk2/releases/download/v0.32/qdk2_0.32.bionic_amd64.deb"
477503
dpkg -X qdk2_0.32.bionic_amd64.deb qdk2 # Direct installs will fail due to missing dependencies!
478504
[[ -d qdk2 ]] || exit 1
505+
479506
export PATH=$(pwd)/qdk2/usr/bin:$(pwd)/qdk2/usr/share/qdk2/QDK/bin:${PATH}
480507
wget -O Gopeed.template.tar.gz "https://github.com/GopeedLab/QpkgBuild/raw/refs/heads/master/template/Gopeed.template.tar.gz"
481508
tar -zxf Gopeed.template.tar.gz
482509
[[ -d Gopeed ]] || exit 1
510+
483511
goos=linux
484512
goarch_arr=(amd64 arm64)
485513
for goarch in "${goarch_arr[@]}"; do
486514
qarch=x86_64
487515
[[ "${goarch}" == "arm64" ]] && qarch=arm_64
488516
name=gopeed-web-v${VERSION}-${goos}-${goarch}
517+
unzip dist/zip/${name}.zip -d dist/${name}
489518
cp dist/${name}/${name}/* Gopeed/${qarch}/
490519
done
491520
cd Gopeed
492521
sed -i -e 's/__QPKG_VER__/${VERSION}/g' qpkg.cfg
493522
qbuild || exit 1
494-
for f in build/*; do echo ">>> build=[${f}]"; done
523+
524+
mkdir -p ../dist/qnap
495525
goos=qnap
496-
goarch_arr=(amd64 arm64)
497526
for goarch in "${goarch_arr[@]}"; do
498527
qarch=x86_64
499528
[[ "${goarch}" == "arm64" ]] && qarch=arm_64
500529
sname=Gopeed_${VERSION}_${qarch}.qpkg
501-
dname=gopeed-${goos}-v${VERSION}-${goarch}.qpkg
502-
echo "sname=${sname}, dname=${dname}"
503-
[[ -f build/${sname} ]] && cp -ra build/${sname} ../dist/zip/${dname}
530+
dname=gopeed-v${VERSION}-${goos}-${goarch}.qpkg
531+
[[ -f build/${sname} ]] && cp -ra build/${sname} ../dist/qnap/${dname}
504532
done
505-
for f in ../dist/zip/*; do echo ">>> dist=[${f}]"; done
506-
cd ..
507533
- name: Upload
508534
uses: shogo82148/actions-upload-release-asset@v1
509535
with:
510536
upload_url: ${{ needs.get-release.outputs.upload_url }}
511-
asset_path: dist/zip/*
537+
asset_path: dist/qnap/*
512538
overwrite: true
513539
build-docker:
514540
if: ${{ github.event.inputs.platform == 'all' || github.event.inputs.platform == 'docker' }}

README.md

Lines changed: 74 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -22,71 +22,80 @@ Visit ✈ [Official Website](https://gopeed.com) | 📖 [Official Docs](https://
2222
## Download
2323

2424
<table>
25-
<thead>
26-
<tr>
27-
<th>Platform</th>
28-
<th>Package Type</th>
29-
<th>Download Link</th>
30-
</tr>
31-
</thead>
32-
<tbody>
33-
<tr>
34-
<td rowspan=2>Windows</td>
35-
<td><code>EXE Installer</code></td>
36-
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-windows-amd64.zip">Link</a></td>
37-
</tr>
38-
<tr>
39-
<td><code>Portable ZIP</code></td>
40-
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-windows-amd64-portable.zip">Link</a></td>
41-
</tr>
42-
<tr>
43-
<td>MacOS</td>
44-
<td><code>DMG Installer</code></td>
45-
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-macos.dmg">Link</a></td>
46-
</tr>
47-
<tr>
48-
<td rowspan=4>Linux</td>
49-
<td><code>Flathub</code></td>
50-
<td><a href="https://flathub.org/apps/com.gopeed.Gopeed">Link</a></td>
51-
</tr>
52-
<tr>
53-
<td><code>SNAP</code></td>
54-
<td><a href="https://snapcraft.io/gopeed">Link</a></td>
55-
</tr>
56-
<tr>
57-
<td><code>DEB</code></td>
58-
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-linux-amd64.deb">Link</a></td>
59-
</tr>
60-
<tr>
61-
<td><code>AppImage</code></td>
62-
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-linux-x86_64.AppImage">Link</a></td>
63-
</tr>
64-
<tr>
65-
<td>Android</td>
66-
<td><code>APK</code></td>
67-
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-android.apk">Link</a></td>
68-
</tr>
69-
<tr>
70-
<td>iOS</td>
71-
<td><code>IPA</code></td>
72-
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-ios.ipa">Link</a></td>
73-
</tr>
74-
<tr>
75-
<td>Qnap</td>
76-
<td><code>QPKG</code></td>
77-
<td><a href="https://gopeed.com/api/download?tpl=gopeed-qnap-$version-amd64.qpkg">Link</a></td>
78-
</tr>
79-
<tr>
80-
<td>Web</td>
81-
<td></td>
82-
<td><a href="https://github.com/GopeedLab/gopeed/releases/latest">Link</a></td>
83-
</tr>
84-
<tr>
85-
<td>Docker</td>
86-
<td></td>
87-
<td><a href="https://hub.docker.com/r/liwei2633/gopeed">Link</a></td>
88-
</tr>
89-
</tbody>
25+
<thead>
26+
<tr>
27+
<th colspan="2">Windows</th>
28+
<th>MacOS</th>
29+
<th colspan="4">Linux</th>
30+
<th>Android</th>
31+
<th>iOS</th>
32+
<th>Docker</th>
33+
<th colspan="2">Qnap</th>
34+
<th colspan="8">Web</th>
35+
</tr>
36+
<tr>
37+
<td><code>EXE</code></td>
38+
<td><code>Portable</code></td>
39+
<td><code>DMG</code></td>
40+
<td><code>Flathub</code></td>
41+
<td><code>SNAP</code></td>
42+
<td><code>DEB</code></td>
43+
<td><code>AppImage</code></td>
44+
<td><code>APK</code></td>
45+
<td><code>IPA</code></td>
46+
<td>-</td>
47+
<td colspan="2"><code>QPKG</code></td>
48+
<td colspan="3"><code>Windows</code></td>
49+
<td colspan="2"><code>MacOS</code></td>
50+
<td colspan="3"><code>Linux</code></td>
51+
</tr>
52+
</thead>
53+
<tbody>
54+
<tr>
55+
<td>amd64</td>
56+
<td>amd64</td>
57+
<td>-</td>
58+
<td>amd64</td>
59+
<td>amd64</td>
60+
<td>amd64</td>
61+
<td>amd64</td>
62+
<td>-</td>
63+
<td>-</td>
64+
<td>-</td>
65+
<td>amd64</td>
66+
<td>arm64</td>
67+
<td>amd64</td>
68+
<td>amd64</td>
69+
<td>386</td>
70+
<td>amd64</td>
71+
<td>amd64</td>
72+
<td>amd64</td>
73+
<td>amd64</td>
74+
<td>386</td>
75+
</tr>
76+
<tr>
77+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-windows-amd64.zip">Link</a></td>
78+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-windows-amd64-portable.zip">Link</a></td>
79+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-macos.dmg">Link</a></td>
80+
<td><a href="https://flathub.org/apps/com.gopeed.Gopeed">Link</a></td>
81+
<td><a href="https://snapcraft.io/gopeed">Link</a></td>
82+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-linux-amd64.deb">Link</a></td>
83+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-linux-x86_64.AppImage">Link</a></td>
84+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-android.apk">Link</a></td>
85+
<td><a href="https://gopeed.com/api/download?tpl=Gopeed-$version-ios.ipa">Link</a></td>
86+
<td><a href="https://hub.docker.com/r/liwei2633/gopeed">Link</a></td>
87+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-$version-qnap-amd64.qpkg">Link</a></td>
88+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-$version-qnap-arm64.qpkg">Link</a></td>
89+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-windows-amd64.zip">Link</a></td>
90+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-windows-arm64.zip">Link</a></td>
91+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-windows-386.zip">Link</a></td>
92+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-macos-amd64.zip">Link</a></td>
93+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-macos-arm64.zip">Link</a></td>
94+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-linux-amd64.zip">Link</a></td>
95+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-linux-arm64.zip">Link</a></td>
96+
<td><a href="https://gopeed.com/api/download?tpl=gopeed-web-$version-linux-386.zip">Link</a></td>
97+
</tr>
98+
</tbody>
9099
</table>
91100

92101
More about installation, please refer to [Installation](https://docs.gopeed.com/install.html)

0 commit comments

Comments
 (0)