1313 strategy :
1414 matrix :
1515 node-version : [14.x]
16- runtime : [ linux-x64, linux-armv7l, linux-arm64, win-x64, osx-x64 ]
16+ runtime : [ linux-x64, linux-armv7l, linux-arm64, win-x64, win-arm64, osx-x64, osx-arm64 ]
1717 include :
1818 - runtime : linux-x64
1919 os : ubuntu-latest
2626
2727 - runtime : osx-x64
2828 os : macOS-latest
29-
29+
30+ - runtime : osx-arm64
31+ os : macOS-latest
32+
3033 - runtime : win-x64
3134 os : windows-latest
35+
36+ - runtime : win-arm64
37+ os : windows-latest
3238
3339 runs-on : ${{ matrix.os }}
3440
5763 run : npm run build:arm32 --if-present
5864
5965 - name : Build ARM64 with Node.js ${{ matrix.node-version}}
60- if : startsWith (matrix.os, 'ubuntu') && startsWith(matrix. runtime, 'linux- arm64')
66+ if : contains (matrix.runtime, 'arm64')
6167 run : npm run build:arm64 --if-present
6268
6369 - name : Upload AppImage x64 Release
@@ -161,9 +167,9 @@ jobs:
161167 asset_path : build/freetube-${{ env.PACKAGE_VERSION }}.aarch64.rpm
162168 asset_content_type : application/x-rpm
163169
164- - name : Upload Windows .exe Release
170+ - name : Upload Windows x64 .exe Release
165171 uses : actions/upload-release-asset@v1
166- if : startsWith(matrix.os, 'windows')
172+ if : startsWith(matrix.os, 'windows') && startsWith(matrix.runtime, 'win-x64')
167173 env :
168174 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
169175 with :
@@ -172,9 +178,20 @@ jobs:
172178 asset_path : build/freetube Setup ${{ env.PACKAGE_VERSION }}.exe
173179 asset_content_type : application/x-ms-dos-executable
174180
175- - name : Upload Windows .zip Release
181+ - name : Upload Windows arm64 .exe Release
176182 uses : actions/upload-release-asset@v1
177- if : startsWith(matrix.os, 'windows')
183+ if : startsWith(matrix.os, 'windows') && startsWith(matrix.runtime, 'win-arm64')
184+ env :
185+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
186+ with :
187+ upload_url : https://uploads.github.com/repos/FreeTubeApp/FreeTube/releases/${{ secrets.UPLOAD_ID }}/assets{?name,label}
188+ asset_name : freetube-${{ env.PACKAGE_VERSION }}-setup-arm64.exe
189+ asset_path : build/freetube Setup ${{ env.PACKAGE_VERSION }}.exe
190+ asset_content_type : application/x-ms-dos-executable
191+
192+ - name : Upload Windows x64 .zip Release
193+ uses : actions/upload-release-asset@v1
194+ if : startsWith(matrix.os, 'windows') && startsWith(matrix.runtime, 'win-x64')
178195 env :
179196 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
180197 with :
@@ -183,13 +200,57 @@ jobs:
183200 asset_path : build/freetube-${{ env.PACKAGE_VERSION }}-win.zip
184201 asset_content_type : application/zip
185202
186- - name : Upload Mac .dmg Release
203+ - name : Upload Windows arm64 .zip Release
204+ uses : actions/upload-release-asset@v1
205+ if : startsWith(matrix.os, 'windows') && startsWith(matrix.runtime, 'win-arm64')
206+ env :
207+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
208+ with :
209+ upload_url : https://uploads.github.com/repos/FreeTubeApp/FreeTube/releases/${{ secrets.UPLOAD_ID }}/assets{?name,label}
210+ asset_name : freetube-${{ env.PACKAGE_VERSION }}-win-arm64-portable.zip
211+ asset_path : build/freetube-${{ env.PACKAGE_VERSION }}-win.zip
212+ asset_content_type : application/zip
213+
214+ - name : Upload Windows x64 portable Release
215+ uses : actions/upload-release-asset@v1
216+ if : startsWith(matrix.os, 'windows') && startsWith(matrix.runtime, 'win-x64')
217+ env :
218+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
219+ with :
220+ upload_url : https://uploads.github.com/repos/FreeTubeApp/FreeTube/releases/${{ secrets.UPLOAD_ID }}/assets{?name,label}
221+ asset_name : freetube-${{ env.PACKAGE_VERSION }}-win-x64-portable.exe
222+ asset_path : build/FreeTube ${{ env.PACKAGE_VERSION }}.exe
223+ asset_content_type : application/x-ms-dos-executable
224+
225+ - name : Upload Windows arm64 portable Release
226+ uses : actions/upload-release-asset@v1
227+ if : startsWith(matrix.os, 'windows') && startsWith(matrix.runtime, 'win-arm64')
228+ env :
229+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
230+ with :
231+ upload_url : https://uploads.github.com/repos/FreeTubeApp/FreeTube/releases/${{ secrets.UPLOAD_ID }}/assets{?name,label}
232+ asset_name : freetube-${{ env.PACKAGE_VERSION }}-win-arm64-portable.exe
233+ asset_path : build/FreeTube ${{ env.PACKAGE_VERSION }}.exe
234+ asset_content_type : application/x-ms-dos-executable
235+
236+ - name : Upload Mac x64 .dmg Release
237+ uses : actions/upload-release-asset@v1
238+ if : startsWith(matrix.os, 'macos') && startsWith(matrix.runtime, 'osx-x64')
239+ env :
240+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
241+ with :
242+ upload_url : https://uploads.github.com/repos/FreeTubeApp/FreeTube/releases/${{ secrets.UPLOAD_ID }}/assets{?name,label}
243+ asset_name : freetube-${{ env.PACKAGE_VERSION }}-mac-x64.dmg
244+ asset_path : build/freetube-${{ env.PACKAGE_VERSION }}.dmg
245+ asset_content_type : application/x-apple-diskimage
246+
247+ - name : Upload Mac arm64 .dmg Release
187248 uses : actions/upload-release-asset@v1
188- if : startsWith(matrix.os, 'macos')
249+ if : startsWith(matrix.os, 'macos') && startsWith(matrix.runtime, 'osx-arm64')
189250 env :
190251 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
191252 with :
192253 upload_url : https://uploads.github.com/repos/FreeTubeApp/FreeTube/releases/${{ secrets.UPLOAD_ID }}/assets{?name,label}
193- asset_name : freetube-${{ env.PACKAGE_VERSION }}-mac.dmg
254+ asset_name : freetube-${{ env.PACKAGE_VERSION }}-mac-arm64 .dmg
194255 asset_path : build/freetube-${{ env.PACKAGE_VERSION }}.dmg
195256 asset_content_type : application/x-apple-diskimage
0 commit comments