mirror of
https://github.com/KRTirtho/spotube.git
synced 2025-09-13 07:55:18 +00:00
73 lines
2.8 KiB
YAML
73 lines
2.8 KiB
YAML
name: Spotube Build & Release
|
|
on:
|
|
release:
|
|
types:
|
|
- published
|
|
|
|
jobs:
|
|
publish_chocolatey:
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: KRTirtho/flutter_distributor
|
|
ref: deb-implementation
|
|
path: build/flutter_distributor
|
|
- name: Get latest tag
|
|
id: tag
|
|
uses: dawidd6/action-get-tag@v1
|
|
with:
|
|
# Optionally strip `v` prefix
|
|
strip_v: true
|
|
# Replace Version in files
|
|
- run: |
|
|
choco install sed make -y
|
|
sed -i "s/%{{SPOTUBE_VERSION}}%/${{ steps.tag.outputs.tag }}/" windows/runner/Runner.rc
|
|
sed -i "s/%{{SPOTUBE_VERSION}}%/${{ steps.tag.outputs.tag }}/" choco-struct/tools/VERIFICATION.txt
|
|
sed -i "s/%{{SPOTUBE_VERSION}}%/${{ steps.tag.outputs.tag }}/" choco-struct/spotube.nuspec
|
|
|
|
# Build Windows Executable
|
|
- uses: subosito/flutter-action@v2.2.0
|
|
with:
|
|
cache: true
|
|
- run: |
|
|
flutter config --enable-windows-desktop
|
|
flutter pub get
|
|
dart bin/create-secrets.dart '${{ secrets.LYRICS_SECRET }}' '${{ secrets.SPOTIFY_SECRET }}'
|
|
make innoinstall
|
|
dart pub global activate --source path build/flutter_distributor/packages/flutter_distributor
|
|
flutter_distributor package --platform=windows --targets=exe --skip-clean
|
|
|
|
# Create Chocolatey Package
|
|
# setting the sha256 hash for new bundle
|
|
- run: |
|
|
Set-Variable -Name HASH -Value (Get-FileHash dist\${{ steps.tag.outputs.tag }}\spotube-${{ steps.tag.outputs.tag }}+${{ steps.tag.outputs.tag }}-windows-setup.exe).Hash
|
|
sed -i "s/%{{WIN_SHA256}}%/$HASH/" choco-struct/tools/VERIFICATION.txt
|
|
make VERSION=${{ steps.tag.outputs.tag }} choco
|
|
|
|
# Rename the artifacts
|
|
- run: |
|
|
Rename-Item -Path dist/${{ steps.tag.outputs.tag }}/spotube.${{ steps.tag.outputs.tag }}.nupkg -NewName Spotube-windows-x86_64.nupkg
|
|
Rename-Item -Path dist/${{ steps.tag.outputs.tag }}/spotube-${{ steps.tag.outputs.tag }}+${{ steps.tag.outputs.tag }}-windows-setup.exe Spotube-windows-x86_64-setup.exe
|
|
|
|
# Upload release binary
|
|
- uses: meeDamian/github-release@2.0
|
|
with:
|
|
token: ${{ secrets.GITHUB_TOKEN }}
|
|
tag: v${{ steps.tag.outputs.tag }}
|
|
files: dist/${{ steps.tag.outputs.tag }}
|
|
|
|
# Publish to Chocolatey Repository
|
|
- run: |
|
|
choco apikey -k ${{ secrets.CHOCO_API_KEY }} -s https://push.chocolatey.org/
|
|
echo 'published to community.chocolatey.org'
|
|
|
|
# choco push dist/${{ steps.tag.outputs.tag }}/Spotube-windows-x86_64.nupkg
|
|
|
|
# Upload artifacts
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: Spotube-Windows-Bundle
|
|
path: dist/${{ steps.tag.outputs.tag }}
|