Skip to main content
The packages read configuration from either environment variables or a YAML file referenced in launch parameters. Use whichever is easier for your deployment and keep sensitive data (wallet passwords, managed IPFS JWTs) outside of version control.

Environment Variables

If the keystore was written while PEAQ_ROBOT_KEY_PASSWORD was set, every process that opens it (core node, storage bridge, scripts, PeaqRobot()) needs the same password in its environment. When the keystore cannot be decrypted, the SDK creates a new wallet and overwrites the keystore file, and the old key is lost. Back up the keystore file before you start, and export the password in every terminal and service unit that runs a node.
core_node reads these variables through the shared configuration module. Precedence is YAML file, then launch parameters, then environment variables: a value in the YAML overrides the same launch parameter, and environment variables only fill in what neither sets. PEAQ_ROBOT_NETWORK and PEAQ_ROBOT_LOG_LEVEL only take effect through core.launch.py; when you start core_node with ros2 run or your own launch file, set network and log_level as parameters or in the YAML. storage_bridge_node has its own parameters and reads its YAML from config.yaml_path or PEAQ_ROS2_BRIDGE_YAML.

YAML Configuration

Create a copy of the example file and fill in required fields:
Example snippet:
core_node loads this file from its config.yaml_path parameter or PEAQ_ROS2_CONFIG_YAML; the storage bridge reads config.yaml_path or PEAQ_ROS2_BRIDGE_YAML. The SDK creates and saves a new wallet whenever the keystore at wallet.path is missing or cannot be read, whatever auto_generate says, so check the path before the first launch and back the file up.

Secret Management

  • Keep PEAQ_ROBOT_KEY_PASSWORD in an .env file or secret manager and source it before launching nodes.
  • Do not commit the populated peaq_robot.yaml to version control. Copy it per environment instead.
  • Rotate managed gateway credentials regularly and store them in the same secure channel as other secrets.
Proceed to launch the core services once configuration is in place.