51 lines
1.2 KiB
Markdown
51 lines
1.2 KiB
Markdown
|
|
# API Reference
|
||
|
|
|
||
|
|
This document describes the API and pipeline functions available in `infctl-cli`.
|
||
|
|
|
||
|
|
## PipelineStep Structure
|
||
|
|
|
||
|
|
Each pipeline step is defined as:
|
||
|
|
|
||
|
|
- `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)
|
||
|
|
|
||
|
|
## Available Functions
|
||
|
|
|
||
|
|
### k8sNamespaceExists
|
||
|
|
Checks if a Kubernetes namespace exists.
|
||
|
|
- Params: `[namespace]` (string)
|
||
|
|
- Returns: error if namespace does not exist
|
||
|
|
|
||
|
|
### RunCommand
|
||
|
|
Runs a shell command.
|
||
|
|
- Params: `[command]` (string)
|
||
|
|
- Returns: error if command fails
|
||
|
|
|
||
|
|
## Example Pipeline JSON
|
||
|
|
|
||
|
|
```
|
||
|
|
[
|
||
|
|
{
|
||
|
|
"name": "ensure inf namespace exists",
|
||
|
|
"function": "k8sNamespaceExists",
|
||
|
|
"params": ["infctl"],
|
||
|
|
"retryCount": 0,
|
||
|
|
"shouldAbort": true
|
||
|
|
},
|
||
|
|
{
|
||
|
|
"name": "create php configmap",
|
||
|
|
"function": "RunCommand",
|
||
|
|
"params": ["./scripts/create_php_configmap_ctl.sh"],
|
||
|
|
"retryCount": 0,
|
||
|
|
"shouldAbort": true
|
||
|
|
}
|
||
|
|
]
|
||
|
|
```
|
||
|
|
|
||
|
|
## Notes
|
||
|
|
- Only functions defined in the codebase are available for use in pipelines.
|
||
|
|
- The API does not expose any HTTP endpoints; all orchestration is via CLI and pipeline JSON.
|