make rust-*Rust commands
Rust targets operate on the workspace while preserving the ability to build every crate independently.
When to use
Use this reference when generating, reviewing or operating a Service Architect project.
Behavior
- Transport generation precedes builds where the crate owns a schema.
- Cargo commands use locked dependencies and all-target test/lint checks.
Rust workspace commands
Language-specific root targets.
make rust-genWorkspaceGenerate Rust HTTP transport sources.
make rust-buildWorkspaceBuild the complete Cargo workspace.
make rust-testWorkspaceTest all workspace crates and targets.
make rust-lintWorkspaceCheck rustfmt and fail on Clippy warnings.
make rust-formatWorkspaceFormat Rust sources.
make rust-docker-buildWorkspaceBuild independent Rust service runtime images.
make rust-packageWorkspacePackage all Rust services as standalone repositories.
make rust-cleanWorkspaceRemove Cargo build artifacts.
Standalone Rust package commands
Targets inside a generated service crate.
make generatePackageRun generated transport binding scripts when the package owns a schema.
make buildPackageGenerate bindings and run cargo build --locked.
make testPackageGenerate bindings and run cargo test --locked --all-targets.
make lintPackageCheck rustfmt and run Clippy with warnings denied.
make fmtPackageFormat package sources.
make cleanPackageRemove Cargo artifacts.
make helpPackagePrint the package command list.
Rust workflow
make rust-gen
make rust-build
make rust-lint
make rust-test
make rust-package