107 lines
4.5 KiB
YAML
107 lines
4.5 KiB
YAML
name: Build Application and Make Release
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- '*'
|
|
|
|
jobs:
|
|
|
|
build_release:
|
|
name: Build Release
|
|
uses: ./.github/workflows/build.yml
|
|
with:
|
|
build_type: Release
|
|
is_qt_cached: false
|
|
secrets:
|
|
SPARKLE_ED25519_KEY: ${{ secrets.SPARKLE_ED25519_KEY }}
|
|
|
|
create_release:
|
|
needs: build_release
|
|
runs-on: ubuntu-latest
|
|
outputs:
|
|
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
with:
|
|
submodules: 'true'
|
|
path: 'PollyMC-source'
|
|
- name: Download artifacts
|
|
uses: actions/download-artifact@v3
|
|
- name: Grab and store version
|
|
run: |
|
|
tag_name=$(echo ${{ github.ref }} | grep -oE "[^/]+$")
|
|
echo "VERSION=$tag_name" >> $GITHUB_ENV
|
|
- name: Package artifacts properly
|
|
run: |
|
|
mv ${{ github.workspace }}/PollyMC-source PollyMC-${{ env.VERSION }}
|
|
mv PollyMC-Linux-Qt6-Portable*/PollyMC-portable.tar.gz PollyMC-Linux-Qt6-Portable-${{ env.VERSION }}.tar.gz
|
|
mv PollyMC-Linux-Qt6*/PollyMC.tar.gz PollyMC-Linux-Qt6-${{ env.VERSION }}.tar.gz
|
|
mv PollyMC-Linux-Portable*/PollyMC-portable.tar.gz PollyMC-Linux-Portable-${{ env.VERSION }}.tar.gz
|
|
mv PollyMC-Linux*/PollyMC.tar.gz PollyMC-Linux-${{ env.VERSION }}.tar.gz
|
|
mv PollyMC-*.AppImage/PollyMC-*.AppImage PollyMC-Linux-${{ env.VERSION }}-x86_64.AppImage
|
|
mv PollyMC-macOS-Legacy*/PollyMC.tar.gz PollyMC-macOS-Legacy-${{ env.VERSION }}.tar.gz
|
|
mv PollyMC-macOS*/PollyMC.tar.gz PollyMC-macOS-${{ env.VERSION }}.tar.gz
|
|
|
|
tar -czf PollyMC-${{ env.VERSION }}.tar.gz PollyMC-${{ env.VERSION }}
|
|
|
|
for d in PollyMC-Windows-MSVC*; do
|
|
cd "${d}" || continue
|
|
LEGACY="$(echo -n ${d} | grep -o Legacy || true)"
|
|
ARM64="$(echo -n ${d} | grep -o arm64 || true)"
|
|
INST="$(echo -n ${d} | grep -o Setup || true)"
|
|
PORT="$(echo -n ${d} | grep -o Portable || true)"
|
|
NAME="PollyMC-Windows-MSVC"
|
|
test -z "${LEGACY}" || NAME="${NAME}-Legacy"
|
|
test -z "${ARM64}" || NAME="${NAME}-arm64"
|
|
test -z "${PORT}" || NAME="${NAME}-Portable"
|
|
test -z "${INST}" || mv PollyMC-*.exe ../${NAME}-Setup-${{ env.VERSION }}.exe
|
|
test -n "${INST}" || zip -r -9 "../${NAME}-${{ env.VERSION }}.zip" *
|
|
cd ..
|
|
done
|
|
|
|
for d in PollyMC-Windows-MinGW-w64*; do
|
|
cd "${d}" || continue
|
|
INST="$(echo -n ${d} | grep -o Setup || true)"
|
|
PORT="$(echo -n ${d} | grep -o Portable || true)"
|
|
NAME="PollyMC-Windows-MinGW-w64"
|
|
test -z "${PORT}" || NAME="${NAME}-Portable"
|
|
test -z "${INST}" || mv PollyMC-*.exe ../${NAME}-Setup-${{ env.VERSION }}.exe
|
|
test -n "${INST}" || zip -r -9 "../${NAME}-${{ env.VERSION }}.zip" *
|
|
cd ..
|
|
done
|
|
|
|
- name: Create release
|
|
id: create_release
|
|
uses: softprops/action-gh-release@v1
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
with:
|
|
tag_name: ${{ github.ref }}
|
|
name: PollyMC ${{ env.VERSION }}
|
|
draft: true
|
|
prerelease: false
|
|
files: |
|
|
PollyMC-Linux-${{ env.VERSION }}.tar.gz
|
|
PollyMC-Linux-Portable-${{ env.VERSION }}.tar.gz
|
|
PollyMC-Linux-${{ env.VERSION }}-x86_64.AppImage
|
|
PollyMC-Linux-Qt6-${{ env.VERSION }}.tar.gz
|
|
PollyMC-Linux-Qt6-Portable-${{ env.VERSION }}.tar.gz
|
|
PollyMC-Windows-MinGW-w64-${{ env.VERSION }}.zip
|
|
PollyMC-Windows-MinGW-w64-Portable-${{ env.VERSION }}.zip
|
|
PollyMC-Windows-MinGW-w64-Setup-${{ env.VERSION }}.exe
|
|
PollyMC-Windows-MSVC-Legacy-${{ env.VERSION }}.zip
|
|
PollyMC-Windows-MSVC-Legacy-Portable-${{ env.VERSION }}.zip
|
|
PollyMC-Windows-MSVC-Legacy-Setup-${{ env.VERSION }}.exe
|
|
PollyMC-Windows-MSVC-arm64-${{ env.VERSION }}.zip
|
|
PollyMC-Windows-MSVC-arm64-Portable-${{ env.VERSION }}.zip
|
|
PollyMC-Windows-MSVC-arm64-Setup-${{ env.VERSION }}.exe
|
|
PollyMC-Windows-MSVC-${{ env.VERSION }}.zip
|
|
PollyMC-Windows-MSVC-Portable-${{ env.VERSION }}.zip
|
|
PollyMC-Windows-MSVC-Setup-${{ env.VERSION }}.exe
|
|
PollyMC-macOS-${{ env.VERSION }}.tar.gz
|
|
PollyMC-macOS-Legacy-${{ env.VERSION }}.tar.gz
|
|
PollyMC-${{ env.VERSION }}.tar.gz
|
|
|