ci: Add GitHub Actions workflows for CI and Release#1208
ci: Add GitHub Actions workflows for CI and Release#1208marlon-costa-dc wants to merge 1 commit intomozilla:masterfrom
Conversation
Add CI workflow with: - cargo check - cargo clippy (with -D warnings) - rustfmt check - tests (on Ubuntu, macOS, Windows) - cargo build --release Add Release workflow with: - Automatic release creation on version tags - Cross-platform binary uploads (9 targets) - Supports Linux, macOS, and Windows
There was a problem hiding this comment.
Pull request overview
This PR adds GitHub Actions workflows to automate continuous integration and release processes for the rust-code-analysis project. The CI workflow enforces code quality through automated checks on every push and pull request, while the release workflow streamlines the creation of multi-platform binary releases.
Changes:
- Added comprehensive CI workflow with format checking, linting, testing, and build verification across Ubuntu, macOS, and Windows
- Added automated release workflow that builds and publishes binaries for 9 platform targets on version tag pushes
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
.github/workflows/ci.yml |
Implements automated quality gates including cargo check, clippy linting with warnings as errors, formatting validation, multi-platform testing, and release build verification |
.github/workflows/release.yml |
Automates GitHub release creation and multi-platform binary distribution for Linux, macOS, and Windows targets using cross-compilation toolchains |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| name: Check | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - uses: actions/checkout@v4 |
There was a problem hiding this comment.
Use the latest checkout version. Please checks that all the other GitHub Actions versions are updated too. If we do not want to do that manually in the future, we can add to this PR a dependabot file that updates actions and crates.io dependencies for us
|
Ok, no problem, I will close this one. It is not necessary to merge with upstream. |
|
This PR is failing CI due to 18 pre-existing clippy warnings in the upstream codebase (e.g., These warnings are not introduced by this PR - they exist in the current Dependency: This PR requires #1211 to be merged first for CI to pass. What this PR actually changes:
Once #1211 is merged, this PR's CI should pass. |
|
@marlon-costa-dc I don't think you need to close this, we can accept it. |
Summary
Add GitHub Actions workflows for continuous integration and automated releases.
CI Workflow (
.github/workflows/ci.yml)Runs on push/PR to master/main branches:
cargo check --all-featurescargo clippy -- -D warningscargo fmt --checkRelease Workflow (
.github/workflows/release.yml)Triggers on version tags (
v*) or manual dispatch:Benefits
This PR is part of splitting #1206 into separate focused PRs as requested.