77 lines
2.2 KiB
YAML
77 lines
2.2 KiB
YAML
name: Lagrange.OneBot Release
|
||
|
||
on:
|
||
workflow_dispatch:
|
||
|
||
env:
|
||
GH_TOKEN: ${{ github.token }}
|
||
|
||
jobs:
|
||
delete-tag:
|
||
runs-on: ubuntu-latest
|
||
|
||
permissions:
|
||
contents: write
|
||
|
||
steps:
|
||
- run: gh release delete nightly --cleanup-tag -y -R ${{ github.repository }}
|
||
|
||
create-tag:
|
||
needs:
|
||
- delete-tag
|
||
|
||
runs-on: ubuntu-latest
|
||
|
||
permissions:
|
||
contents: write
|
||
|
||
steps:
|
||
- run: echo -e "> ⚠️This is a nightly release.\r\n> ⚠️This is not the latest version." > note
|
||
|
||
- run: gh release create nightly -F ./note -p -t "Nightly Release" -R ${{ github.repository }}
|
||
|
||
build-and-upload-release:
|
||
if: ${{ always() }}
|
||
|
||
needs:
|
||
- create-tag
|
||
|
||
runs-on: ubuntu-latest
|
||
|
||
permissions:
|
||
contents: write
|
||
|
||
strategy:
|
||
matrix:
|
||
runtimeIdentifier:
|
||
[
|
||
win-x64,
|
||
win-x86,
|
||
linux-x64,
|
||
linux-arm,
|
||
linux-arm64,
|
||
osx-x64,
|
||
osx-arm64,
|
||
linux-musl-x64,
|
||
linux-musl-arm,
|
||
linux-musl-arm64,
|
||
]
|
||
|
||
steps:
|
||
- uses: actions/checkout@v4
|
||
|
||
- uses: actions/setup-dotnet@v4
|
||
with:
|
||
dotnet-version: '9.0.x'
|
||
|
||
- run: dotnet publish Lagrange.OneBot/Lagrange.OneBot.csproj --self-contained -p:PublishSingleFile=true -p:IncludeNativeLibrariesForSelfExtract=true -p:DebugType=none -p:RuntimeIdentifier=${{ matrix.runtimeIdentifier }} --framework net9.0
|
||
|
||
- run: |
|
||
if [[ ${{ matrix.runtimeIdentifier }} == 'win-x64' || ${{ matrix.runtimeIdentifier }} == 'win-x86' ]]; then
|
||
zip -r Lagrange.OneBot_${{ matrix.runtimeIdentifier }}_net9.0_SelfContained.zip ./Lagrange.OneBot/bin/Release/net9.0/${{ matrix.runtimeIdentifier }}/publish
|
||
gh release upload nightly Lagrange.OneBot_${{ matrix.runtimeIdentifier }}_net9.0_SelfContained.zip -R ${{ github.repository }}
|
||
else
|
||
tar -czvf Lagrange.OneBot_${{ matrix.runtimeIdentifier }}_net9.0_SelfContained.tar.gz ./Lagrange.OneBot/bin/Release/net9.0/${{ matrix.runtimeIdentifier }}/publish
|
||
gh release upload nightly Lagrange.OneBot_${{ matrix.runtimeIdentifier }}_net9.0_SelfContained.tar.gz -R ${{ github.repository }}
|
||
fi
|