This repository has been archived on 2026-08-05. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
Course-Project-on-Surveying…/.gitea/workflows/release.yml
T
biss 864feaf317
Build and Release / Publish Windows x64 (push) Successful in 1m56s
修复exe自动构建
2026-07-19 08:17:11 +08:00

67 lines
1.7 KiB
YAML

name: Build and Release
on:
push:
tags:
- "v*"
permissions:
code: read
releases: write
jobs:
release:
name: Publish Windows x64
runs-on: ubuntu-latest
steps:
- name: Check out source
uses: actions/checkout@v4
- name: Set up .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: "8.0.x"
- name: Build Windows executable
shell: bash
env:
TAG_NAME: ${{ gitea.ref_name }}
run: |
set -euo pipefail
version="${TAG_NAME#v}"
if [[ -z "${version}" ]]; then
echo "The release tag must contain a version, for example v1.0.0."
exit 1
fi
dotnet publish ./kcsj.csproj \
--configuration Release \
--runtime win-x64 \
--self-contained true \
--output ./publish \
-p:EnableWindowsTargeting=true \
-p:PublishSingleFile=true \
-p:EnableCompressionInSingleFile=true \
-p:IncludeNativeLibrariesForSelfExtract=true \
-p:DebugType=None \
-p:Version="${version}"
mkdir -p ./dist
mv ./publish/kcsj.exe "./dist/kcsj-${TAG_NAME}-win-x64.exe"
# Gitea's release action is written in Go and is compiled by the runner.
- name: Set up Go for the release action
uses: actions/setup-go@v5
with:
go-version: stable
- name: Create Gitea release
uses: https://gitea.com/actions/release-action@main
with:
title: ${{ gitea.ref_name }}
files: |-
dist/*
api_key: ${{ secrets.GITEA_TOKEN }}