refactor(ci): extract system deps to reusable action
Metrics Collection / collect-metrics (push) Has been cancelled
Code Quality / quality-checks (push) Has been cancelled

This commit is contained in:
2026-03-17 20:07:34 +01:00
parent 50c5de5371
commit 3038c29c57
3 changed files with 21 additions and 20 deletions
+17
View File
@@ -0,0 +1,17 @@
name: Install system dependencies
description: Install system dependencies required for building rustlock
runs:
using: composite
steps:
- name: Install system dependencies (Ubuntu/Debian)
shell: bash
run: |
sudo apt-get update
sudo apt-get install -y \
curl \
llvm clang libclang-dev \
pkg-config \
libglib2.0-dev libcairo2-dev libpango1.0-dev libatk1.0-dev \
libgdk-pixbuf-2.0-dev libpam0g-dev libdbus-1-dev \
libwayland-dev libxkbcommon-dev
+3 -11
View File
@@ -21,6 +21,8 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2 - uses: Swatinem/rust-cache@v2
- uses: ./.github/actions/deps
- name: Install Rust - name: Install Rust
uses: dtolnay/rust-toolchain@stable uses: dtolnay/rust-toolchain@stable
@@ -52,17 +54,7 @@ jobs:
path: loc.json path: loc.json
retention-days: 30 retention-days: 30
- name: Check compile times - name: Generate dependency graph
run: |
echo "=== Compilation Metrics ==="
echo "Note: For accurate compile times, run: cargo clean && cargo build --timings"
echo ""
echo "To optimize compile times:"
echo "1. Check for large dependencies with: cargo tree --depth 1"
echo "2. Consider feature flag optimization"
echo "3. Review workspace structure"
- name: Dependency analysis
run: | run: |
cargo install cargo-depgraph cargo install cargo-depgraph
cargo depgraph --all-features --dedup-transitive --format dot > deps.dot cargo depgraph --all-features --dedup-transitive --format dot > deps.dot
+1 -9
View File
@@ -17,15 +17,7 @@ jobs:
- uses: actions/checkout@v4 - uses: actions/checkout@v4
- uses: Swatinem/rust-cache@v2 - uses: Swatinem/rust-cache@v2
- name: Install system dependencies - uses: ./.github/actions/deps
run: |
sudo apt-get update
sudo apt-get install -y \
llvm clang libclang-dev \
pkg-config \
libglib2.0-dev libcairo2-dev libpango1.0-dev libatk1.0-dev \
libpam0g-dev libdbus-1-dev \
libwayland-dev libxkbcommon-dev
- name: Install Rust with tools - name: Install Rust with tools
uses: dtolnay/rust-toolchain@stable uses: dtolnay/rust-toolchain@stable