ci: 迁移 GitHub Actions 到 Gitea
CI - 构建和测试 / 单元测试 (push) Failing after 30s
CI - 构建和测试 / 类型检查 (push) Failing after 1m30s
CI - 构建和测试 / 代码质量 (push) Has been cancelled
CI - 构建和测试 / Linux 构建 (push) Has been cancelled

This commit is contained in:
2026-05-22 16:19:45 +08:00
parent 1a1254f045
commit 517241e41b
3 changed files with 60 additions and 129 deletions
+60
View File
@@ -0,0 +1,60 @@
name: CI - 构建和测试
on:
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
jobs:
check:
name: 类型检查
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: 安装 Rust
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
. "$HOME/.cargo/env"
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: cargo check
run: cargo check --all-targets
test:
name: 单元测试
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: 安装 Rust
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
. "$HOME/.cargo/env"
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: cargo test
run: cargo test --all
clippy:
name: 代码质量
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: 安装 Rust
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
. "$HOME/.cargo/env"
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
rustup component add clippy
- name: cargo clippy
run: cargo clippy --all-targets -- -D warnings
build:
name: Linux 构建
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: 安装 Rust
run: |
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
. "$HOME/.cargo/env"
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- name: cargo build
run: cargo build --release
-75
View File
@@ -1,75 +0,0 @@
name: CI - 构建、测试和质量检查
on:
push:
branches: [main, develop]
pull_request:
branches: [main, develop]
jobs:
check:
name: Rust 代码检查
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: 检查代码
run: cargo check --all-targets
test:
name: 单元测试
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: 运行测试
run: cargo test --all
fmt:
name: 代码格式检查
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt
- name: 检查代码格式
run: cargo fmt -- --check
clippy:
name: Clippy 代码质量检查
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- name: 运行 Clippy
run: cargo clippy --all-targets -- -D warnings
build:
name: 构建可执行文件
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
include:
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
binary_name: claude_code_rs
- os: windows-latest
target: x86_64-pc-windows-msvc
binary_name: claude_code_rs.exe
- os: macos-latest
target: x86_64-apple-darwin
binary_name: claude_code_rs
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: 构建 Release 版本
run: cargo build --release --target ${{ matrix.target }}
- name: 上传构建产物
uses: actions/upload-artifact@v3
with:
name: ${{ matrix.os }}-binary
path: target/${{ matrix.target }}/release/${{ matrix.binary_name }}
-54
View File
@@ -1,54 +0,0 @@
name: 发布 - 构建和发布新版本
on:
push:
tags:
- 'v*'
jobs:
build:
name: 构建 ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
include:
- os: ubuntu-latest
target: x86_64-unknown-linux-gnu
artifact: claude_code_rs
asset_name: claude-code-rust-linux-x86_64
- os: windows-latest
target: x86_64-pc-windows-msvc
artifact: claude_code_rs.exe
asset_name: claude-code-rust-windows-x86_64.exe
- os: macos-latest
target: x86_64-apple-darwin
artifact: claude_code_rs
asset_name: claude-code-rust-macos-x86_64
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- name: 构建 Release
run: cargo build --release --target ${{ matrix.target }}
- name: 上传资源到发布
uses: softprops/action-gh-release@v1
with:
files: target/${{ matrix.target }}/release/${{ matrix.artifact }}
docker:
name: 构建 Docker 镜像
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: docker/setup-buildx-action@v2
- name: 构建 Docker 镜像
run: |
docker build -t claude-code-rust:${{ github.ref_name }} .
docker tag claude-code-rust:${{ github.ref_name }} claude-code-rust:latest
- name: 验证镜像
run: docker run --rm claude-code-rust:latest --version