From 517241e41b1dfc3a91c58df738a9a47a668da93b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E8=88=AA=E5=AE=87?= <3364451258@qq.com> Date: Fri, 22 May 2026 16:19:45 +0800 Subject: [PATCH] =?UTF-8?q?ci:=20=E8=BF=81=E7=A7=BB=20GitHub=20Actions=20?= =?UTF-8?q?=E5=88=B0=20Gitea?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/ci.yml | 60 ++++++++++++++++++++++++++++ .github/workflows/ci.yml | 75 ----------------------------------- .github/workflows/release.yml | 54 ------------------------- 3 files changed, 60 insertions(+), 129 deletions(-) create mode 100644 .gitea/workflows/ci.yml delete mode 100644 .github/workflows/ci.yml delete mode 100644 .github/workflows/release.yml diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml new file mode 100644 index 0000000..19bc701 --- /dev/null +++ b/.gitea/workflows/ci.yml @@ -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 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml deleted file mode 100644 index ed565ec..0000000 --- a/.github/workflows/ci.yml +++ /dev/null @@ -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 }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 6cf82db..0000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -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