Files
wayvr/.github/workflows/make-release.yml
2025-12-28 14:05:12 +09:00

112 lines
3.8 KiB
YAML

name: Make Release
on:
push:
tags:
- 'v**'
env:
APPDIR: WlxOverlay-S.AppDir
CARGO_TERM_COLOR: always
SCCACHE_GHA_ENABLED: "true"
RUSTC_WRAPPER: "sccache"
jobs:
make_release:
runs-on: ubuntu-22.04
defaults:
run:
working-directory: ./wlx-overlay-s
steps:
- uses: actions/checkout@v3
- name: Setup sccache
uses: mozilla-actions/sccache-action@v0.0.9
- name: Prepare Environment
run: |
../.github/workflows/scripts/appimage_prepare_env.sh
- name: Cargo Build
run: |
../.github/workflows/scripts/appimage_build_wlx.sh
- name: Package AppImage
run: |
../.github/workflows/scripts/appimage_package.sh
- name: Cargo Build Full
run: |
../.github/workflows/scripts/appimage_build_wlx_full.sh
- name: Build WayVR Dashboard
run: |
../.github/workflows/scripts/appimage_build_wayvr_dashboard.sh
- name: Package AppImage
run: |
../.github/workflows/scripts/appimage_package_full.sh
- name: Build Wayvrctl
run: |
cd ../wayvrctl
cargo build --release
- name: Make tarball
run: |
pip install portage pycargoebuild
wget https://github.com/gentoo/gentoo/raw/refs/heads/master/metadata/license-mapping.conf
mkdir dist
pycargoebuild --distdir dist --license-mapping license-mapping.conf --crate-tarball --crate-tarball-path wlx-overlay-s-crates.tar.xz
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_KEY }}
with:
tag_name: ${{ github.ref_name }}
release_name: WlxOverlay-S ${{ github.ref_name }}
draft: true
prerelease: false
- name: Upload ELF
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_KEY }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./target/release/wlx-overlay-s
asset_name: wlx-overlay-s
asset_content_type: application/octet-stream
- name: Upload WayVRCtl
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_KEY }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./target/release/wayvrctl
asset_name: wayvrctl
asset_content_type: application/octet-stream
- name: Upload AppImage (Full)
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_KEY }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./wlx-overlay-s/WlxOverlay-S-Full-x86_64.AppImage
asset_name: WlxOverlay-S-${{ github.ref_name }}-Full-x86_64.AppImage
asset_content_type: application/octet-stream
- name: Upload AppImage (Slim)
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_KEY }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./wlx-overlay-s/WlxOverlay-S-x86_64.AppImage
asset_name: WlxOverlay-S-${{ github.ref_name }}-Slim-x86_64.AppImage
asset_content_type: application/octet-stream
- name: Upload crates tarball
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_KEY }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: ./wlx-overlay-s/wlx-overlay-s-crates.tar.xz
asset_name: WlxOverlay-S-${{ github.ref_name }}-crates.tar.xz
asset_content_type: application/x-gtar