mirror of
https://git.naxdy.org/Mirror/Ryujinx.git
synced 2025-01-13 06:09:11 +00:00
95 lines
3.1 KiB
YAML
95 lines
3.1 KiB
YAML
name: Release job
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches: [ stable ]
|
|
paths-ignore:
|
|
- '.github/**'
|
|
- '*.yml'
|
|
- '*.json'
|
|
- '*.config'
|
|
- 'README.md'
|
|
|
|
concurrency: release-stable
|
|
|
|
env:
|
|
POWERSHELL_TELEMETRY_OPTOUT: 1
|
|
DOTNET_CLI_TELEMETRY_OPTOUT: 1
|
|
RYUJINX_BASE_VERSION: "1.1"
|
|
RYUJINX_TARGET_RELEASE_CHANNEL_NAME: "stable"
|
|
RYUJINX_TARGET_RELEASE_CHANNEL_OWNER: "Ryujinx"
|
|
RYUJINX_TARGET_RELEASE_CHANNEL_REPO: "release-channel-master"
|
|
|
|
jobs:
|
|
release:
|
|
name: Release ${{ matrix.OS_NAME }}
|
|
runs-on: ${{ matrix.os }}
|
|
timeout-minutes: ${{ fromJSON(vars.JOB_TIMEOUT) }}
|
|
strategy:
|
|
matrix:
|
|
os: [ ubuntu-latest, ubuntu-latest, windows-latest ]
|
|
include:
|
|
- os: ubuntu-latest
|
|
OS_NAME: Linux x64
|
|
DOTNET_RUNTIME_IDENTIFIER: linux-x64
|
|
|
|
- os: ubuntu-latest
|
|
OS_NAME: macOS universal
|
|
DOTNET_RUNTIME_IDENTIFIER: osx-universal
|
|
|
|
- os: windows-latest
|
|
OS_NAME: Windows x64
|
|
DOTNET_RUNTIME_IDENTIFIER: win10-x64
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Setup LLVM 14
|
|
if: matrix.DOTNET_RUNTIME_IDENTIFIER == 'osx-universal'
|
|
run: |
|
|
wget https://apt.llvm.org/llvm.sh
|
|
chmod +x llvm.sh
|
|
sudo ./llvm.sh 14
|
|
|
|
- name: Install rcodesign
|
|
if: matrix.DOTNET_RUNTIME_IDENTIFIER == 'osx-universal'
|
|
run: |
|
|
mkdir -p $HOME/.bin
|
|
gh release download -R indygreg/apple-platform-rs -O apple-codesign.tar.gz -p 'apple-codesign-*-x86_64-unknown-linux-musl.tar.gz'
|
|
tar -xzvf apple-codesign.tar.gz --wildcards '*/rcodesign' --strip-components=1
|
|
rm apple-codesign.tar.gz
|
|
mv rcodesign $HOME/.bin/
|
|
echo "$HOME/.bin" >> $GITHUB_PATH
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Prepare release
|
|
id: release
|
|
uses: ./.github/actions/ryujinx-release
|
|
with:
|
|
base_version: ${{ env.RYUJINX_BASE_VERSION }}
|
|
rid: ${{ matrix.DOTNET_RUNTIME_IDENTIFIER }}
|
|
channel: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_NAME }}
|
|
owner: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_OWNER }}
|
|
repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }}
|
|
|
|
- name: Pushing new release
|
|
uses: ncipollo/release-action@v1
|
|
with:
|
|
name: ${{ steps.release.outputs.build_version }}
|
|
artifacts: "release_output/*.tar.gz,release_output/*.zip"
|
|
tag: ${{ steps.release.outputs.build_version }}
|
|
body: "For more information about this release please check out the official [Changelog](https://github.com/Ryujinx/Ryujinx/wiki/Changelog)."
|
|
omitBodyDuringUpdate: true
|
|
allowUpdates: true
|
|
replacesArtifacts: true
|
|
owner: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_OWNER }}
|
|
repo: ${{ env.RYUJINX_TARGET_RELEASE_CHANNEL_REPO }}
|
|
token: ${{ secrets.RELEASE_TOKEN }}
|
|
|
|
flatpak_release:
|
|
uses: ./.github/workflows/flatpak.yml
|
|
needs: release
|
|
with:
|
|
ryujinx_version: "1.1.${{ github.run_number }}"
|
|
secrets: inherit
|