Working with a project ¶
A STM32CubeCLI project records its required tool bundles so developers and automation use the
same toolchain. STM32CubeCLI searches the current directory and its parents for
.settings.
Use
--cwd
<directory>
to select a project elsewhere.
The project contains two files:
.settings/bundles.store.jsonrecords direct requirements and version ranges..settings/bundles-lock.store.jsonrecords exact bundle and dependency versions for each platform.
Commit both files. Compatible lock data selects command versions and missing bundles to install, making the toolchain reproducible while those versions remain available.
cube bundle init --project cmake@^3.30.0
cube bundle show --project
After cloning a project, run the following command to install its locked toolchain:
cube bundle install --project
See
Your first project
for a hands-on walkthrough of
this flow, and the
Command reference
for the full
cube
bundle
syntax.
External bundle locations ¶
External bundle locations let
cube
discover bundles that are managed outside the
standard
CUBE_BUNDLE_PATH
repository. Register a directory to use bundles in place,
without copying or installing them into the standard repository. While developing a bundle,
this lets you test changes directly from its working directory without repeatedly packaging
and installing it. External locations can also contain bundles maintained by another tool or
in a shared workspace.
-
external add <directory>... -
Register directories containing externally managed bundles. A directory is recorded even if it does not currently exist.
cube bundle external add ~/cube-bundles/custom-toolcube bundle external add C:\CubeBundles\custom-tool -
external remove <directory>... -
Stop loading bundles from the specified external directories. Bundle files are not deleted.
cube bundle external remove ~/cube-bundles/custom-toolcube bundle external remove C:\CubeBundles\custom-tool -
external list -
List registered external directories.
Example:
cube bundle external list