How to update Rust (or anything really) for NL Wallet
The below chore documents how you can update Rust in the macos image we use. It
is mostly specifically about Rust, but the below guide has also succesfully been
used to upgrade Flutter for example (since essentially all changes you would
want to do are contained in the wallet.pkr.hcl
file).
Update Rust images
In the nl-wallet-app-builder-dockerfiles
repository:
In
rust-user.sh
update Rust to the desired version (seenl-wallet-app-builder-dockerfiles
MR 60, as an example).Optional: update Rust-related dependencies in
rust-user.sh
,cyclonedx.sh
to the desired version (beware for yanked versions).Run the pipeline manually and test out in your nl-wallet MR.
Get your MR approved and merged, images will be created and uploaded to Harbor registry on merge to main.
Update your MR with the new build image tag.
Update Rust macOS Runner
In the macos-runner
repository:
In
wallet.pkr.hcl
update Rust to the desired version (seemacos-runner
MR 4 as an example).Optional: update Rust-related dependencies too.
Don’t forget to bump the version of the image (see
macos-runner
MR 5 as an example).Get your MR approved and merged.
Build the image via the CI pipeline.
Update Rust workspace version
In the nl-wallet
repository:
Update all
Cargo.toml
files to the desired version (see commitb72338fa25a4081678d7e5a0cf686ae6fa2f52c1
)Update the CI image in
.gitlab-ci.yml
Update the version of the macOS image in
.gitlab-ci.yml
Make sure the pipelines in your MR run successfully
Get your MR approved and merged
And you’re done! 🎉