51 lines
1.5 KiB
YAML
51 lines
1.5 KiB
YAML
name: Build and publish mistserver
|
|
|
|
on:
|
|
push:
|
|
tags:
|
|
- 'v*'
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: alpine-linux
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup .NET SDK
|
|
run: apk add dotnet10-sdk
|
|
|
|
- name: Restore Dependencies
|
|
run: dotnet restore ./MistoxServer
|
|
|
|
- name: Dotnet Publish
|
|
run: dotnet publish ./MistoxServer --configuration Release --output ./publish --no-restore
|
|
|
|
- name: Archive Production Artifacts
|
|
run: |
|
|
cd ./publish
|
|
zip -r ../mistserver-${{ github.ref_name }}.zip .
|
|
cd ..
|
|
|
|
# 2. Publish directly to Gitea Releases
|
|
- name: Create Gitea Release
|
|
uses: https://gitea.com/actions/release-action@main
|
|
with:
|
|
# Automatically uses the tag string pushed (e.g., v1.2.3)
|
|
name: "Release ${{ github.ref_name }}"
|
|
|
|
# Change this text to your desired version description (Supports Markdown)
|
|
body: |
|
|
## Mistserver Version ${{ github.ref_name }}
|
|
Automated deployment build compiled on Alpine Linux.
|
|
|
|
### Changelog
|
|
- Compiled via Gitea Actions
|
|
- Run ID: ${{ github.run_id }}
|
|
|
|
# Target the zipped artifact we generated in step 1
|
|
files: |
|
|
mistserver-*.zip
|
|
|
|
# Uses Gitea's automatically injected repository token for authorization
|
|
api_key: '${{ secrets.GITHUB_TOKEN }}' |