Skip to content

Lagrange.OneBot Release #94

Lagrange.OneBot Release

Lagrange.OneBot Release #94

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: 8.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 net8.0
- run: |
if [[ ${{ matrix.runtimeIdentifier }} == 'win-x64' || ${{ matrix.runtimeIdentifier }} == 'win-x86' ]]; then
zip -r Lagrange.OneBot_${{ matrix.runtimeIdentifier }}_net8.0_SelfContained.zip ./Lagrange.OneBot/bin/Release/net8.0/${{ matrix.runtimeIdentifier }}/publish
gh release upload nightly Lagrange.OneBot_${{ matrix.runtimeIdentifier }}_net8.0_SelfContained.zip -R ${{ github.repository }}
else
tar -czvf Lagrange.OneBot_${{ matrix.runtimeIdentifier }}_net8.0_SelfContained.tar.gz ./Lagrange.OneBot/bin/Release/net8.0/${{ matrix.runtimeIdentifier }}/publish
gh release upload nightly Lagrange.OneBot_${{ matrix.runtimeIdentifier }}_net8.0_SelfContained.tar.gz -R ${{ github.repository }}
fi