Rust Jenkins agent
Introduction
This agent is used to build / execute Rust code and tools.
The image is built in the global ods project and is named jenkins-agent-rust.
It can be referenced in a Jenkinsfile with ods/jenkins-agent-rust.
Default MSRV and Edition
Rust installation is managed by rustup, which offers a convenient way to load and manage Rust versions automatically.
And, the version defined in the rust-toolchain file is the one that the Jenkins Agent will use (even if it is not the default). That file MUST be in the root of the projects' repository.
Default Minimum Supported Rust Version (MSRV) 1.88.
Default Rust edition in use is 2024. See Rust Edition Guide for further information.
Features
The image contains the following tools:
-
Rust toolchain (Rustup)
-
Rust compiler (Rustc)
-
Rust package manager (Cargo)
-
Rust Next generation test runner (Cargo Nextest)
-
Rust code coverage (Cargo LLVM Coverage)
-
Rust code generation (Cargo Generate)
-
Rust project’s dependency graph linter (Cargo Deny)
Do you miss any tool? Open a feature request in the ods-quickstarters GitHub repository.
Known limitations
By default, no Nexus repository/registry nor mirror available for Rust packages and dependencies (only available in Nexus Pro from version 3.73.0 and/or Nexus Community from version 3.77.0). If not having Nexus Pro v3.37.0+, one can use git repositories or local file system to store and reference Rust packages and dependencies.