# Configuration Schema This document describes the configuration schema for `infctl-cli`. ## Base Configuration (`base.json`) Example: ```json { "retry_delay_seconds": 3 } ``` - `retry_delay_seconds` (integer): Delay in seconds before retrying failed steps. ## Project Configuration (`config.json`) Project configuration fields are defined in the code and may include: - Project name - Directory paths - URLs - Port numbers - Log format Refer to the code for exact field names and types. ## Pipeline Configuration (`pipeline.json`) Pipeline configuration is an array of steps. Each step: - `name`: Step name (string) - `function`: Function to call (string) - `params`: List of parameters (array of strings) - `retryCount`: Number of retries (integer) - `shouldAbort`: Whether to abort on failure (boolean) Example: ```json [ { "name": "ensure inf namespace exists", "function": "k8sNamespaceExists", "params": ["infctl"], "retryCount": 0, "shouldAbort": true } ] ``` ## Notes - Example configuration files are provided as `.example` files in the repository. - All configuration fields must match those defined in the codebase; do not add undocumented fields.