Skip to content

Modernize build pipeline and bump version to 0.1.0#43

Merged
soulgarden merged 1 commit intomainfrom
release/v0.1.0
Mar 2, 2026
Merged

Modernize build pipeline and bump version to 0.1.0#43
soulgarden merged 1 commit intomainfrom
release/v0.1.0

Conversation

@soulgarden
Copy link
Owner

@soulgarden soulgarden commented Mar 2, 2026

Summary

  • modernize Makefile and align commands with current standards
  • add and use VERSION as source of truth for image/versioning
  • bump project version to 0.1.0 across Cargo and Helm metadata
  • add pinned Rust toolchain file (1.93.1)
  • update Docker build/runtime bases (rust:1.93.1-alpine, alpine:3.23)
  • update GitHub Actions workflow to lint/test/build flow with version-based tagging

Additional fixes

  • adjusted src/watcher.rs to satisfy strict clippy settings

Validation

  • make ci passed
    • cargo fmt --all -- --check
    • cargo clippy --all-targets -- -D warnings
    • cargo test -- --test-threads=1 (47 passed)
    • cargo check
  • docker build -t logalert:test-refactor --platform linux/amd64 . passed

Summary by CodeRabbit

Release Notes

  • Chores
    • Released version 0.1.0
    • Docker image optimized with multi-stage builds for improved efficiency
    • Build pipeline enhanced with additional formatting and lint validation checks
    • Rust toolchain updated to version 1.93.1

@coderabbitai
Copy link

coderabbitai bot commented Mar 2, 2026

📝 Walkthrough

Walkthrough

This PR introduces a version bump from 0.0.10 to 0.1.0 across the project, upgrades the Rust toolchain to 1.93.1, enhances CI/CD workflows with formatting and linting steps, and transforms Docker builds to use multi-stage architecture with dynamic versioning and improved caching strategies.

Changes

Cohort / File(s) Summary
CI/CD & Workflow
.github/workflows/main.yml, Makefile
Workflow restructuring with new lint/test dependencies, formatting checks, dynamic version handling, Docker image tagging strategy (versioned + latest), and cache improvements. Makefile adds CI targets (fmt-check, lint, ci, get-version, increment-version) and dynamic variable substitution for image/version references.
Version & Toolchain Configuration
VERSION, Cargo.toml, rust-toolchain.toml
Version bump to 0.1.0 in Cargo.toml; new VERSION file introduced; new rust-toolchain.toml specifies channel 1.93.1 with x86_64-unknown-linux-musl target, rustfmt, and clippy components.
Docker
Dockerfile
Multi-stage build introduced; base image upgraded from rust:1.91-alpine to rust:1.93.1-alpine; builder stage adds gcc and make; final stage created (alpine:3.23) with libgcc, www-data user, and binary deployment to /bin/logalert.
Helm Charts
helm/logalert/Chart.yaml, helm/logalert/values.yaml
Version and appVersion bumped to 0.1.0 in Chart.yaml; image tag updated to 0.1.0 in values.yaml.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~35 minutes

Poem

🐰 A version bump in the springtime air,
From 0.0.10, we rise with care!
Docker builds in stages shine,
Rust 1.93.1, a fine design,
With Helm and CI all aligned. 🚀

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the main changes: modernizing the build pipeline and bumping the version to 0.1.0, which are the primary objectives of this PR.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch release/v0.1.0

Tip

Try Coding Plans. Let us write the prompt for your AI agent so you can ship faster (with fewer bugs).
Share your feedback on Discord.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@helm/logalert/values.yaml`:
- Line 88: Remove the hardcoded Slack webhook URL value for the key webhook_url
in the chart defaults and replace it with a non-secret placeholder (e.g., empty
string or null), add a short comment that this must be supplied via secure means
at deploy time, and update deployment docs to instruct users to provide the real
value via Helm --set/values from a secret manager (or sealed/ExternalSecret)
rather than committing it into the values.yaml.

ℹ️ Review info

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 6508ae9 and 23881c8.

⛔ Files ignored due to path filters (1)
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (8)
  • .github/workflows/main.yml
  • Cargo.toml
  • Dockerfile
  • Makefile
  • VERSION
  • helm/logalert/Chart.yaml
  • helm/logalert/values.yaml
  • rust-toolchain.toml

@soulgarden soulgarden merged commit 952f066 into main Mar 2, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant