SAService Architect Back to designer
SAService ArchitectDocumentation
Code generation 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.

CommandScopeDescription
make rust-genWorkspace

Generate Rust HTTP transport sources.

make rust-buildWorkspace

Build the complete Cargo workspace.

make rust-testWorkspace

Test all workspace crates and targets.

make rust-lintWorkspace

Check rustfmt and fail on Clippy warnings.

make rust-formatWorkspace

Format Rust sources.

make rust-docker-buildWorkspace

Build independent Rust service runtime images.

make rust-packageWorkspace

Package all Rust services as standalone repositories.

make rust-cleanWorkspace

Remove Cargo build artifacts.

Standalone Rust package commands

Targets inside a generated service crate.

CommandScopeDescription
make generatePackage

Run generated transport binding scripts when the package owns a schema.

make buildPackage

Generate bindings and run cargo build --locked.

make testPackage

Generate bindings and run cargo test --locked --all-targets.

make lintPackage

Check rustfmt and run Clippy with warnings denied.

make fmtPackage

Format package sources.

make cleanPackage

Remove Cargo artifacts.

make helpPackage

Print the package command list.

Rust workflow

make rust-gen
make rust-build
make rust-lint
make rust-test
make rust-package