Author SHA1 Message Date
melfely 782c9166c2 ci: removes the uneeded step "install git"
Release-plz / Release-plz PR (push) Successful in 1m28s
Release-plz / Release-plz release (push) Successful in 1m32s
2026-09-10 21:02:58 -05:00
melfely c365c2b9e5 ci: attempting to use manual git credential config
Release-plz / Release-plz PR (push) Failing after 0s
Release-plz / Release-plz release (push) Successful in 1m31s
2026-09-10 20:58:06 -05:00
melfely 135ea657fa ci: added repository url replacement
Release-plz / Release-plz release (push) Successful in 3m21s
Release-plz / Release-plz PR (push) Failing after 3m25s
2026-09-10 20:44:15 -05:00
melfely bb37eb9d94 feat: added pub fn sub()
Release-plz / Release-plz release (push) Successful in 1m27s
Release-plz / Release-plz PR (push) Failing after 1m34s
This takes in two u64, and returns the difference.

TESTING WORKFLOWS
2026-09-10 20:18:36 -05:00
melfely 77cfc8bed9 ci: added git user and correct cargo repo token signature
Release-plz / Release-plz release (push) Successful in 1m33s
Release-plz / Release-plz PR (push) Successful in 1m34s
2026-09-10 20:12:55 -05:00
melfely 8abb2f210b fix: wrong url in the config.toml cargo registry
Release-plz / Release-plz PR (push) Failing after 1m28s
Release-plz / Release-plz release (push) Failing after 1m33s
2026-09-10 20:05:24 -05:00
melfely a70cbca5a9 ci: Change from release-plz action to cli
Release-plz / Release-plz release (push) Failing after 1m47s
Release-plz / Release-plz PR (push) Failing after 1m54s
The action currently only supports github (I think) while the CLI tool claims to support gitea (the action also does...)
2026-09-10 20:00:06 -05:00
melfely bbca93470c ci: replaces v0.5 with v0.4 (this working is a hell of a stretch)
Release-plz / Release-plz PR (push) Failing after 1m20s
Release-plz / Release-plz release (push) Failing after 1m20s
2026-09-10 19:36:18 -05:00
melfely a1aaf5cd7e ci: Added gh tool install.
Release-plz / Release-plz PR (push) Failing after 1m43s
Release-plz / Release-plz release (push) Failing after 1m44s
2026-09-10 19:31:37 -05:00
melfely b3d5f4ef18 ci: Removed Github token from the run.
Release-plz / Release-plz release (push) Failing after 1m38s
Release-plz / Release-plz PR (push) Failing after 1m40s
2026-09-10 18:54:03 -05:00
melfely 316a3c591d ci: Added Release-Plz CI workflow.
Release-plz / Release-plz release (push) Failing after 1m53s
Release-plz / Release-plz PR (push) Failing after 1m55s
2026-09-10 18:47:25 -05:00
8 changed files with 12 additions and 103 deletions
+6 -3
View File
@@ -2,7 +2,9 @@ name: Release-plz
on:
push:
branches: [main, master]
# Comment out branch restrictions until we are closer to done
# branches:
# - [main, master]
jobs:
@@ -50,7 +52,8 @@ jobs:
- name: Run release-plz release
run: |
release-plz release --forge gitea --git-token ${{ secrets.GITEA_TOKEN }} --registry gitea --token "Bearer ${{ secrets.CARGO_REGISTRIES_GITEA_TOKEN }}"
release-plz release --forge gitea --git-token ${{ secrets.GITEA_TOKEN }} --registry gitea --token "Bearer ${{ secrets.CARGO_REGISTRIES_GITEA_TOKEN }}"
# Create a PR with the new versions and changelog, preparing the next releases
release-plz-pr:
name: Release-plz PR
@@ -74,7 +77,7 @@ jobs:
- name: Fill Credentials
run: |
git config --global credential.helper store
echo "https://ci-bot:${{ secrets.GITEA_TOKEN }}@gitea.melfely.com" > ~/.git-credentials
echo "https://ci-bot:${{ secret.GITEA_TOKEN }}@gitea.melfely.com" > ~/.git-credentials
- name: Run release-plz release-pr
run: |
Generated
+2 -5
View File
@@ -4,11 +4,8 @@ version = 4
[[package]]
name = "example_bin"
version = "0.1.1"
dependencies = [
"example_lib",
]
version = "0.1.0"
[[package]]
name = "example_lib"
version = "0.1.1"
version = "0.1.0"
+2 -56
View File
@@ -1,57 +1,3 @@
# Rust Workspace Template with Pre-Configured Workflows
This Setup does ALOT of checking and analyis before letting you push to main/master. Requiring a massive amount of Cross-Platform support.
## Why?
This automates everything from linting, to CI/CD. This allows us to just work on projects, as long as we follow the rules, without having to worry about deployement.
Fully automating out an entire departement in most companies called DevOps.
**You just need to pay attention to the following**
## How to use properly.
This is an EXAMPLE workspace, look around at the how the Cargo.Toml files are setup, they are important. Once you get comfortable, delete the existing stuff, and start making your own.
A few major points.
### Git Commits
This uses a tool to auto generate change logs and version indexing. As LONG as you feed it good data, one of such requirements are good commits
This project **REQUIRES** you to use the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) format. This allows for a whole HOST of good automated tooling. That you will love, in comparison to doing it all by hand. WHILE adding a bit of a requirement to making good split up commits.
Any commits **not** following this standard should be rejected or reworded. If a commit is *to large* or some other problem to not fit the mold. Then change the commit, do **NOT** break the rules.
### Gitea Registry
We don't publish to crates.io, instead we publish to the pre-configured gitea crates repo. Which keeps everything private. Does have the disadvantage of reqiuring a bit of extra work to use.
In the example_bin Cargo.toml file you can see
```toml
example_lib = { version = "0.1.1", path = "../example_lib", registry = "gitea" }
```
This line is VERY important, it uses a PATH based dependency to find the project. Which allows for it to be live.
Note that the version number will need to be updated, along WITH the fact that you need to make sure that it uses the "gitea" regsitry here as well. That is where cargo will expect to find it at later.
### Workspace
in the root level Cargo.toml is the workspace config
```toml
[workspace]
resolver = "3"
members = ["example_bin", "example_lib"]
```
notice how it LISTS all the crates that are members of the workspace? That is important!
### Cargo Lock files
All of the workflow tools remotely use --locked versions of cargo build and check, so therefore it **CANNOT** update the lock files.
The lock files are what versions of a package you are using when it was built. This is all about the philophsy of [reproducible builds](https://reproducible-builds.org/)
# rust_workflow_template
Rust Cargo Template with CI/CD Setup.
-14
View File
@@ -1,14 +0,0 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
## [0.1.1](https://gitea.melfely.com/melfely/rust_workflow_template/compare/example_bin-v0.1.0...example_bin-v0.1.1) - 2026-09-11
### Added
- bin example now references the local example_lib
+1 -2
View File
@@ -1,7 +1,6 @@
[package]
name = "example_bin"
version = "0.1.1"
version = "0.1.0"
edition = "2024"
[dependencies]
example_lib = { version = "0.1.0", path = "../example_lib", registry = "gitea" }
-8
View File
@@ -1,11 +1,3 @@
use example_lib::*;
fn main() {
println!("Hello, world!");
let result = add(1, 1);
assert_eq!(result, 2);
let result = sub(1, 1);
assert_eq!(result, 0);
}
-14
View File
@@ -1,14 +0,0 @@
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
## [0.1.1](https://gitea.melfely.com/melfely/rust_workflow_template/compare/example_lib-v0.1.0...example_lib-v0.1.1) - 2026-09-11
### Added
- added pub fn sub()
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "example_lib"
version = "0.1.1"
version = "0.1.0"
edition = "2024"
[dependencies]