code-certifier is a command-line tool divided into two sub-commands: hazard-analyzer and pub-api.
The command-line binary is in ccertifier.
The hazard-analyzer crate is in crates/hazard-analyzer.
The pub-api crate is in crates/pub-api.
Run hazard-analyzer with the following command:
ccertifier hazard-analyzer [OPTIONS] --firmware-path <FIRMWARE_PATH> --manifest-path <MANIFEST_PATH>To see the list of supported options, run:
ccertifier help hazard-analyzerExample with some options:
ccertifier hazard-analyzer --firmware-path path/to/firmware --devices-path path/to/devices --manifest-path path/to/manifest --quietTo specify the path to the firmware, use --firmware-path or -f:
ccertifier hazard-analyzer -f path/to/firmware -m <MANIFEST_PATH>To specify the path to a local directory containing the Ascot devices, use --devices-path or -d:
ccertifier hazard-analyzer -f path/to/firmware -d path/to/devices -m <MANIFEST_PATH>To specify the output JSON manifest path, use --manifest-path or -m:
ccertifier hazard-analyzer -f path/to/firmware -m path/to/manifestIf not specified the tool will clone the remote ascot-firmware repository and use that ascot-firmware/ascot-axum/src/devices/.
To prevent the tool from printing the analysis results to the terminal, use --quiet or -q:
ccertifier hazard-analyzer -f path/to/firmware -q -m <MANIFEST_PATH>Run pub-api with the following command:
ccertifier pub-api [OPTIONS] --manifest-path <MANIFEST_PATH>To see the list of supported options, run:
ccertifier help pub-apiExample with some options:
ccertifier pub-api --library-path path/to/ascot/library/manifest --axum-path path/to/ascot/axum/manifest --manifest-path path/to/manifestTo specify the path to the Cargo.toml manifest of a local directory containing ascot-library, use --library-path or -l:
ccertifier pub-api -l path/to/ascot/library/manifest -m <MANIFEST_PATH>If not specified the tool will clone the remote ascot-firmware repository and use that ascot-firmware/Cargo.toml.
To specify the path to the Cargo.toml manifest of a local directory containing ascot-axum, use --axum-path or -a:
ccertifier pub-api -a path/to/ascot/axum/manifest -m <MANIFEST_PATH>If not specified the tool will clone the remote ascot-firmware repository and use that ascot-firmware/ascot-axum/Cargo.toml.
To specify the output JSON manifest path, use --manifest-path or -m:
ccertifier pub-api -m path/to/manifest