ChainCashLabs / chaincash-rs

ChainCash Server: Free Banking for Everyone!
Creative Commons Zero v1.0 Universal
7 stars 4 forks source link

Improve Project CI/CD Process #46

Open laruh opened 3 months ago

laruh commented 3 months ago

I would like to propose some ci/cd enhancements and clarify several points regarding GitHub workflows, dependabot configurations, and general project setup.

Release and Dev Builds

GitHub Workflows YMLs List

Chaincash-RS Releases

For the Releases section (https://github.com/ChainCashLabs/chaincash-rs/releases) I suggest to upload release zips to VirusTotal for security checks. Well I suggest to add new releases manually, by upploading zips to virustotal, providing checksum, adding release description etc. We can discuss the first release draft later.

Clippy in CI

Compilation Targets

Rust Toolchain Version

Dependabot Configuration

I can provide a Dependabot configuration in PR with workflows, so you can review it. It's important to be careful with allowing Dependabot to open PRs automatically, as it can generate many PRs, potentially overwhelming the team. However, it remains useful for notifying about security vulnerabilities.

Documentation Comments

kushti commented 3 months ago

There is , for example, this Rust repo with releases and Docker publishing https://github.com/ergoplatform/oracle-core

But for starters we can do releases manually.

On checksum, is it easy to get reproducible build with Rust? With Scala / Java it seems to be very tricky (as compiler is injecting its version and timestamps into binaries).

enforcing strict deny rules for missing doc comments might be too stringent. I suggest recommending doc comments in contributors.md and review.md guides

Indeed