Rust `cargo` GitHub Action 使用教程

Rust cargo GitHub Action 使用教程

cargo 📦 GitHub Action for Rust `cargo` command cargo 项目地址: https://gitcode.com/gh_mirrors/cargo1/cargo

项目介绍

actions-rs/cargo 是一个用于 Rust 语言项目的 GitHub Action,它允许你在 GitHub Actions 工作流中运行指定的 cargo 命令。这个 Action 特别适用于自动化 Rust 项目的构建、测试和发布流程。通过使用这个 Action,你可以轻松地将 Rust 项目的 CI/CD 流程集成到 GitHub 的持续集成和持续部署系统中。

项目快速启动

1. 创建 GitHub Actions 工作流文件

在你的 Rust 项目根目录下,创建一个 .github/workflows 目录,并在其中创建一个 YAML 文件,例如 ci.yml

2. 编写工作流配置

ci.yml 文件中,编写以下内容来配置一个简单的 CI 工作流:

name: Rust CI

on: [push]

jobs:
  build_and_test:
    name: Rust project
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
      - uses: actions-rs/cargo@v1
        with:
          command: build
          args: --release --all-features

3. 提交并推送代码

将修改后的文件提交并推送到 GitHub 仓库:

git add .github/workflows/ci.yml
git commit -m "Add GitHub Actions workflow for Rust CI"
git push origin main

4. 查看工作流运行结果

在 GitHub 仓库的 "Actions" 标签页中,你可以查看工作流的运行结果。

应用案例和最佳实践

1. 自动化测试

在 CI 工作流中添加测试步骤,确保每次代码推送后都能自动运行测试:

jobs:
  build_and_test:
    name: Rust project
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
      - uses: actions-rs/cargo@v1
        with:
          command: test

2. 跨平台构建

使用 cross 工具进行跨平台构建,例如在 ARM 架构上构建 Rust 项目:

jobs:
  linux_arm7:
    name: Linux ARMv7
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - uses: actions-rs/toolchain@v1
        with:
          toolchain: stable
          target: armv7-unknown-linux-gnueabihf
          override: true
      - uses: actions-rs/cargo@v1
        with:
          use-cross: true
          command: build
          args: --target armv7-unknown-linux-gnueabihf

典型生态项目

1. actions-rs/toolchain

actions-rs/toolchain 是一个用于安装和管理 Rust 工具链的 GitHub Action。它与 actions-rs/cargo 配合使用,可以确保在不同的 Rust 版本和工具链上运行 cargo 命令。

2. actions/checkout

actions/checkout 是一个用于签出代码库的 GitHub Action。它是所有 GitHub Actions 工作流的基础,确保工作流能够访问代码库中的文件。

3. actions/cache

actions/cache 是一个用于缓存依赖项的 GitHub Action。在 Rust 项目中,它可以缓存 cargo 的依赖项,加快构建速度。

通过结合这些生态项目,你可以构建一个高效、可靠的 Rust 项目 CI/CD 工作流。

cargo 📦 GitHub Action for Rust `cargo` command cargo 项目地址: https://gitcode.com/gh_mirrors/cargo1/cargo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

余纳娓

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值