Skip to content

Conversation

@CalvinAllen
Copy link
Contributor

Summary

Add initial CI/CD workflows for the project.

Workflows Added

Workflow Trigger Purpose
build.yml PR, push to main Build, lint, test on all platforms
commit-lint.yml PR Validate PR titles and commit messages
contributors.yml Daily/manual Auto-update contributors (reusable from .github)

build.yml Details

Jobs:

  1. fmt - Check Rust formatting with rustfmt
  2. clippy - Lint on Linux, macOS, Windows
  3. test - Run tests on Linux, macOS, Windows
  4. build - Build release binaries for:
    • linux-amd64 (x86_64-unknown-linux-gnu)
    • macos-amd64 (x86_64-apple-darwin)
    • macos-arm64 (aarch64-apple-darwin)
    • windows-amd64 (x86_64-pc-windows-msvc)

Features:

  • Cargo caching for faster builds
  • Build artifacts uploaded (7 day retention)
  • Path filtering to skip on docs-only changes

Configuration Files

  • .commitlintrc.yml - Conventional commits rules (same as dtvem.cli)

Test Plan

  • PR triggers commit-lint workflow
  • PR triggers build workflow
  • All platforms build successfully

- Add build.yml: Rust build/test on Linux, macOS, Windows
  - Rustfmt check
  - Clippy linting (all platforms)
  - Tests (all platforms)
  - Release builds (4 targets)
- Add commit-lint.yml: PR title and commit message validation
- Add contributors.yml: Uses reusable workflow from .github
- Add .commitlintrc.yml: Conventional commits configuration
@CalvinAllen CalvinAllen merged commit cd04762 into main Jan 9, 2026
13 checks passed
@CalvinAllen CalvinAllen deleted the ci/workflows/initial-setup branch January 9, 2026 15:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants