separate gui release #3
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Gui Release build | |
on: [ push ] | |
permissions: | |
contents: write | |
jobs: | |
release: | |
name: Gui Release - ${{ matrix.platform.os }} | |
strategy: | |
matrix: | |
platform: | |
- os: ubuntu-24.04 | |
name: vpxtool-gui-linux-x86_64 | |
- os: ubuntu-24.04-arm | |
name: vpxtool-gui-linux-arm64 | |
- os: windows-latest | |
name: vpxtool-windows-x86_64 | |
- os: macos-latest | |
name: vpxtool-gui-macOS-aarch64 | |
runs-on: ${{ matrix.platform.os }} | |
steps: | |
- name: Install bevy linux dependencies | |
run: sudo apt-get update && sudo apt-get install g++ pkg-config libx11-dev libasound2-dev libudev-dev libxkbcommon-x11-0 libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev | |
if: contains(matrix.platform.os, 'ubuntu') | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- run: rustup toolchain install stable --profile minimal | |
- uses: Swatinem/[email protected] | |
- name: Build | |
run: cargo build --package vpxtool_gui --locked --release | |
- name: Set full archive name as env variable | |
shell: bash | |
run: | | |
VERSION=$(if [[ $GITHUB_REF == refs/tags/* ]]; then echo ${GITHUB_REF#refs/tags/} | sed 's/\//-/g'; else echo $GITHUB_SHA; fi) | |
EXTENSION="tar.gz" | |
if [[ "${{ matrix.platform.os }}" == "windows-latest" ]]; then | |
EXTENSION="zip" | |
fi | |
echo "ARCHIVE_NAME=${{ matrix.platform.name }}-${VERSION}.$EXTENSION" >> $GITHUB_ENV | |
echo "GUI_BINARY_NAME=target/release/vpxtool-gui${{ matrix.platform.bin_ext }}" >> $GITHUB_ENV | |
- name: Package as archive | |
shell: bash | |
run: | | |
if [[ "${{ matrix.platform.os }}" == "windows-latest" ]]; then | |
7z a $ARCHIVE_NAME GUI_BINARY_NAME vpxtool_gui/assets | |
else | |
tar czvf $ARCHIVE_NAME GUI_BINARY_NAME vpxtool_gui/assets | |
fi | |
- name: Publish release artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: $ARCHIVE_NAME | |
path: $ARCHIVE_NAME | |
if: startsWith( github.ref, 'refs/tags/v' ) == false | |
# - name: Publish GitHub release | |
# uses: softprops/action-gh-release@v2 | |
# with: | |
# files: "vpxtool*" | |
# if: startsWith( github.ref, 'refs/tags/v' ) |