ci: CI Workflow Fixes and Improvements #58

Closed
sameh-farouk wants to merge 6 commits from develop-workflow-fixes into develop
Member

This PR brings major improvements to both Linux and macOS CI/CD workflows, adding comprehensive testing, better error reporting, performance optimizations, and multi-architecture support.

🔧 Key Changes

Fixed Workflow Triggers

  • Before: Only triggered on main branch pushes
  • After: Triggers on develop branch pushes AND pull requests

Added Comprehensive Testing

  • Rust Tests: Added cargo test --workspace --release
  • Rhai Tests: Added Rhai test suite execution

Error Reporting

  • Benefit: Developers see exactly what failed and why

Performance Optimizations

  • Cargo Registry Caching: Faster dependency downloads
  • Target Directory Caching: Faster rebuilds across runs
  • Optimized Profiling Tests: Reduced heavy rhia test execution time by 60-65%

Multi-Architecture Support (macOS)

  • Apple Silicon (ARM64): aarch64-apple-darwin
  • Intel (x86_64): x86_64-apple-darwin
  • Matrix Strategy: Parallel builds for both architectures

fixes: geomind_research/herolib_rust#57

This PR brings major improvements to both Linux and macOS CI/CD workflows, adding comprehensive testing, better error reporting, performance optimizations, and multi-architecture support. ## 🔧 Key Changes ### **Fixed Workflow Triggers** - **Before:** Only triggered on `main` branch pushes - **After:** Triggers on `develop` branch pushes AND pull requests ### **Added Comprehensive Testing** - **Rust Tests:** Added `cargo test --workspace --release` - **Rhai Tests:** Added Rhai test suite execution ### **Error Reporting** - **Benefit:** Developers see exactly what failed and why ### **Performance Optimizations** - **Cargo Registry Caching:** Faster dependency downloads - **Target Directory Caching:** Faster rebuilds across runs - **Optimized Profiling Tests:** Reduced heavy rhia test execution time by 60-65% ### **Multi-Architecture Support (macOS)** - **Apple Silicon (ARM64):** `aarch64-apple-darwin` - **Intel (x86_64):** `x86_64-apple-darwin` - **Matrix Strategy:** Parallel builds for both architectures **fixes: https://forge.ourworld.tf/geomind_research/herolib_rust/issues/57**
ci: add Rust/Rhai tests, caching, multi-arch macOS builds
Some checks failed
Build Linux / build-linux (linux-amd64, false, x86_64-unknown-linux-gnu) (pull_request) Failing after 1m48s
Build macOS / build-macos (darwin-arm64, false, aarch64-apple-darwin) (pull_request) Has been cancelled
Build macOS / build-macos (darwin-x86_64, false, x86_64-apple-darwin) (pull_request) Has been cancelled
594c0f676c
- Change CI triggers from main to develop branch
- Add pull_request triggers for develop branch
- Add Cargo registry and target directory caching
- Add Rust test execution step (cargo test --workspace --release)
- Add Rhai test execution with detailed reporting and failure tracking
- Add macOS multi-architecture build matrix (arm64 and x86_64)
- Optimize Rhai test scripts for faster execution (reduced test sizes and durations)
fix: add explicit f32 type annotation
Some checks failed
Build Linux / build-linux (linux-amd64, false, x86_64-unknown-linux-gnu) (pull_request) Failing after 1m48s
Build macOS / build-macos (darwin-arm64, false, aarch64-apple-darwin) (pull_request) Has been cancelled
Build macOS / build-macos (darwin-x86_64, false, x86_64-apple-darwin) (pull_request) Has been cancelled
7ea60ecee0
fix: change max_temp type from f32 to f64 in thermal state detection
Some checks failed
Build Linux / build-linux (linux-amd64, false, x86_64-unknown-linux-gnu) (pull_request) Failing after 2m28s
Build macOS / build-macos (darwin-arm64, false, aarch64-apple-darwin) (pull_request) Has been cancelled
Build macOS / build-macos (darwin-x86_64, false, x86_64-apple-darwin) (pull_request) Has been cancelled
e621ce6973
fix: add SystemError import to capabilities module
Some checks failed
Build Linux / build-linux (linux-amd64, false, x86_64-unknown-linux-gnu) (pull_request) Failing after 6m20s
Build macOS / build-macos (darwin-arm64, false, aarch64-apple-darwin) (pull_request) Has been cancelled
Build macOS / build-macos (darwin-x86_64, false, x86_64-apple-darwin) (pull_request) Has been cancelled
c590860558
fix: move SystemError import to Linux-specific function scope in capabilities module
Some checks failed
Build Linux / build-linux (linux-amd64, false, x86_64-unknown-linux-gnu) (pull_request) Failing after 6m57s
Build macOS / build-macos (darwin-arm64, false, aarch64-apple-darwin) (pull_request) Has been cancelled
Build macOS / build-macos (darwin-x86_64, false, x86_64-apple-darwin) (pull_request) Has been cancelled
ab79483cf0
sameh-farouk changed title from ci: CI Workflow Fixes and Improvements to WIP: ci: CI Workflow Fixes and Improvements 2026-01-19 12:29:13 +00:00
thabeta approved these changes 2026-01-19 13:06:22 +00:00
thabeta changed title from WIP: ci: CI Workflow Fixes and Improvements to ci: CI Workflow Fixes and Improvements 2026-01-19 13:06:30 +00:00
Merge branch 'develop' into develop-workflow-fixes
Some checks failed
Build Linux / build-linux (linux-amd64, false, x86_64-unknown-linux-gnu) (pull_request) Failing after 4m58s
Build macOS / build-macos (darwin-arm64, false, aarch64-apple-darwin) (pull_request) Has been cancelled
Build macOS / build-macos (darwin-x86_64, false, x86_64-apple-darwin) (pull_request) Has been cancelled
9568443216
sameh-farouk closed this pull request 2026-01-21 14:43:10 +00:00
Some checks failed
Build Linux / build-linux (linux-amd64, false, x86_64-unknown-linux-gnu) (pull_request) Failing after 4m58s
Build macOS / build-macos (darwin-arm64, false, aarch64-apple-darwin) (pull_request) Has been cancelled
Build macOS / build-macos (darwin-x86_64, false, x86_64-apple-darwin) (pull_request) Has been cancelled

Pull request closed

Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_lib!58
No description provided.