Raw-rs: Remove from workspace (#2066)

* Remove raw-rs from workspace

* Add feature blocking to reqwest

* Use release build to run the tests

* Split Raw-rs CI into a seperate workflow

* Fix cargo-deny check for Raw-rs

* Only run the CI if Raw-rs changes

* Enable clippy check for Raw-rs

* Add newline in clippy check

* Fixups

* Use ubuntu-latest

* Remove mold

* Install sccache

* Attempt 2

* Attempt 3

* Add emoji for consistency

---------

Co-authored-by: Keavon Chambers <keavon@keavon.com>
This commit is contained in:
Elbert Ronnie
2024-10-26 03:14:45 +05:30
committed by GitHub
parent 36fe9bf31b
commit 9d13a8f73b
9 changed files with 2237 additions and 87 deletions

View File

@@ -108,12 +108,24 @@ jobs:
- name: 📥 Clone and checkout repository
uses: actions/checkout@v3
- name: 🔒 Check crate security advisories
- name: 🔒 Check crate security advisories for root workspace
uses: EmbarkStudios/cargo-deny-action@v1
with:
command: check advisories
- name: 📜 Check crate license compatibility
- name: 🔒 Check crate security advisories for /libraries/raw-rs
uses: EmbarkStudios/cargo-deny-action@v1
with:
command: check advisories
manifest-path: libraries/raw-rs/Cargo.toml
- name: 📜 Check crate license compatibility for root workspace
uses: EmbarkStudios/cargo-deny-action@v1
with:
command: check bans licenses sources
- name: 📜 Check crate license compatibility for /libraries/raw-rs
uses: EmbarkStudios/cargo-deny-action@v1
with:
command: check bans licenses sources
manifest-path: libraries/raw-rs/Cargo.toml

View File

@@ -32,8 +32,15 @@ jobs:
- name: Run Clippy
id: clippy
run: |
# Run Clippy and filter output
# Run Clippy and filter output for the root workspace
CLIPPY_OUTPUT=$(cargo clippy --all-targets --all-features -- -W clippy::all 2>&1 | grep -vE "^(\s*Updating|\s*Download|\s*Compiling|\s*Checking|Finished)")
# Run Clippy and filter output for /libraries/raw-rs
cd libraries/raw-rs
CLIPPY_OUTPUT+=$'\n\n'
CLIPPY_OUTPUT+=$(cargo clippy --all-targets --all-features -- -W clippy::all 2>&1 | grep -vE "^(\s*Updating|\s*Download|\s*Compiling|\s*Checking|Finished)")
cd ../..
# Escape special characters for JSON
ESCAPED_OUTPUT=$(echo "$CLIPPY_OUTPUT" | jq -sR .)
echo "CLIPPY_OUTPUT=$ESCAPED_OUTPUT" >> $GITHUB_OUTPUT

61
.github/workflows/library-raw-rs.yml vendored Normal file
View File

@@ -0,0 +1,61 @@
name: "Library: Raw-rs"
on:
push:
branches:
- master
paths:
- "libraries/raw-rs/**"
pull_request:
branches:
- master
paths:
- "libraries/raw-rs/**"
env:
CARGO_TERM_COLOR: always
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
env:
SCCACHE_GHA_ENABLED: "true"
RUSTC_WRAPPER: "sccache"
CARGO_INCREMENTAL: 0
SCCACHE_DIR: /var/lib/github-actions/.cache
steps:
- name: 📥 Clone and checkout repository
uses: actions/checkout@v3
- name: 🦀 Install the latest Rust
run: |
echo "Initial system version:"
rustc --version
rustup update stable
echo "Latest updated version:"
rustc --version
- name: 📦 Run sccache-cache
uses: mozilla-actions/sccache-action@v0.0.6
- name: 🔬 Check Rust formatting
run: |
cd libraries/raw-rs
cargo fmt --all -- --check
- name: 🦀 Build Rust code
run: |
cd libraries/raw-rs
cargo build --release --all-features
- name: 🧪 Run Rust tests
run: |
cd libraries/raw-rs
cargo test --release --all-features
- name: 📈 Run sccache stat for check
shell: bash
run: sccache --show-stats