infctl-cli/docs/CONFIG_SCHEMA.md

1.2 KiB

Configuration Schema

This document describes the configuration schema for infctl-cli.

Base Configuration (base.json)

Example:

{
  "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:

[
  {
    "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.