Files
lightOps/.gitea/workflows/release.yml
Eeveid 902029dac3
Some checks failed
发布 Linux 二进制 / release-linux-x86_64 (push) Failing after 2s
移除发布流程的 GitHub Action 依赖
2026-05-25 14:32:09 +08:00

72 lines
2.4 KiB
YAML

name: 发布 Linux 二进制
on:
push:
tags:
- "v*"
jobs:
release-linux-x86_64:
runs-on: runner_admin
steps:
- name: 检出代码
run: |
set -eux
rm -rf lightops-src
git clone https://gitea.kmux.cn/Eeveid/lightOps.git lightops-src
cd lightops-src
TAG="${GITHUB_REF_NAME:-${GITEA_REF_NAME:-${GITHUB_REF##*/}}}"
git checkout "$TAG"
- name: 安装系统依赖
run: |
set -eux
if command -v apt-get >/dev/null 2>&1; then
apt-get update
apt-get install -y build-essential pkg-config sqlite3 curl tar ca-certificates nodejs npm
elif command -v dnf >/dev/null 2>&1; then
dnf install -y gcc gcc-c++ make pkgconf-pkg-config sqlite curl tar ca-certificates nodejs npm
elif command -v yum >/dev/null 2>&1; then
yum install -y gcc gcc-c++ make pkgconfig sqlite curl tar ca-certificates nodejs npm
elif command -v pacman >/dev/null 2>&1; then
pacman -Sy --noconfirm base-devel pkgconf sqlite curl tar ca-certificates nodejs npm
fi
- name: 安装 Rust
run: |
set -eux
if ! command -v cargo >/dev/null 2>&1; then
curl --proto '=https' --tlsv1.2 -fsSL https://sh.rustup.rs | sh -s -- -y --profile minimal
. "$HOME/.cargo/env"
fi
rustc -V
cargo -V
- name: 构建发布包
run: |
set -eux
. "$HOME/.cargo/env" 2>/dev/null || true
cd lightops-src
TAG="${GITHUB_REF_NAME:-${GITEA_REF_NAME:-${GITHUB_REF##*/}}}"
VERSION="${TAG#v}"
bash scripts/build-release.sh --version "$VERSION" --target x86_64-unknown-linux-gnu
- name: 发布到 Gitea Release
env:
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
GITEA_URL: https://gitea.kmux.cn
GITEA_OWNER: Eeveid
GITEA_REPO: lightOps
run: |
set -eux
cd lightops-src
TAG="${GITHUB_REF_NAME:-${GITEA_REF_NAME:-${GITHUB_REF##*/}}}"
bash scripts/publish-gitea-release.sh \
--tag "$TAG" \
--title "LightOps ${TAG}" \
--target "$GITHUB_SHA" \
--no-create-tag \
--no-push-tag \
--package target/releases/*.tar.gz \
--package target/releases/*.tar.gz.sha256