Config CI/CD (Rust)
Overview
Workflow CI: cargo fmt --check, cargo clippy, cargo test --workspace, coverage (cargo llvm-cov) — meta ≥95% em domain+application — e verificação de vazamento de memória ao fechar cada épico.
Fechamento de épico (obrigatório)
Antes de merge ou openspec-archive-change:
cargo test --workspace+ E2E (cargo test --test integration)cargo clippysem warnings- Coverage ≥95% domain+application
bash config-cicd-rs/scripts/check-memory-rs.sh(LeakSanitizer ou Valgrind)- CI remoto verde (
.github/workflows/ci.yml)
Detalhes: references/memory-leak-check-rs.md
Workflow
- Copiar template de
references/cicd-pattern-rs.mdpara.github/workflows/ci.yml. - Copiar
scripts/check-memory-rs.shparascripts/check-memory-rs.shno projeto (ou chamar do skill path). - Serviço Postgres para testes de integração.
- Job
memory-check(nightly + LeakSanitizer) em PRs. - Falhar PR se coverage ou memory check falhar.
Commands
# Gate local (espelha CI + memória)
cargo fmt --all -- --check
cargo clippy --workspace --all-targets -- -D warnings
cargo test --workspace
bash config-cicd-rs/scripts/check-memory-rs.sh
Resources
references/cicd-pattern-rs.mdreferences/memory-leak-check-rs.mdscripts/check-memory-rs.sh../skills-standards.md— seção Rust e Epic Definition of Done
Global Standards
- Consultar
../skills-standards.mdseção Rust.