Commands Reference¶
This page provides a detailed reference for all available hier-config-cli commands.
Global Options¶
These options are available for all commands:
| Option | Short | Description |
|---|---|---|
--verbose |
-v |
Increase verbosity. Use -v for INFO level, -vv for DEBUG level |
--help |
-h |
Show help message and exit |
Commands¶
remediation¶
Generates the commands needed to transform the running configuration into the intended configuration.
Synopsis:
Options:
| Option | Required | Description |
|---|---|---|
--platform |
Yes | Target platform (ios, nxos, iosxr, eos, junos, vyos, fortios, etc.) |
--running-config |
Yes | Path to the running configuration file |
--generated-config |
Yes | Path to the intended/generated configuration file |
--format |
No | Output format: text, json, or yaml (default: text) |
--output, -o |
No | Write output to file instead of stdout |
Examples:
# Basic usage
hier-config-cli remediation \
--platform ios \
--running-config running.conf \
--generated-config intended.conf
# Save to file
hier-config-cli remediation \
--platform ios \
--running-config running.conf \
--generated-config intended.conf \
--output remediation.txt
# JSON format
hier-config-cli remediation \
--platform nxos \
--running-config running.conf \
--generated-config intended.conf \
--format json
# With verbose logging
hier-config-cli -v remediation \
--platform iosxr \
--running-config running.conf \
--generated-config intended.conf
rollback¶
Generates the commands needed to revert from the intended configuration back to the running configuration. This is useful for preparing rollback procedures before making changes.
Synopsis:
Options:
Same as remediation command.
Examples:
# Basic usage
hier-config-cli rollback \
--platform ios \
--running-config running.conf \
--generated-config intended.conf
# Save to file
hier-config-cli rollback \
--platform eos \
--running-config running.conf \
--generated-config intended.conf \
--output rollback.txt
# YAML format
hier-config-cli rollback \
--platform junos \
--running-config running.conf \
--generated-config intended.conf \
--format yaml
future¶
Predicts what the complete configuration will look like after applying the intended configuration to the running configuration.
Synopsis:
Options:
Same as remediation command.
Examples:
# Basic usage
hier-config-cli future \
--platform ios \
--running-config running.conf \
--generated-config intended.conf
# Save to file
hier-config-cli future \
--platform vyos \
--running-config running.conf \
--generated-config intended.conf \
--output future_state.txt
# JSON format
hier-config-cli future \
--platform fortios \
--running-config running.conf \
--generated-config intended.conf \
--format json
list-platforms¶
Lists all available and supported network platforms.
Synopsis:
Options:
None
Example:
Output:
version¶
Shows the installed version of hier-config-cli.
Synopsis:
Options:
None
Example:
Output:
Common Usage Patterns¶
Complete Change Workflow¶
# 1. Generate remediation
hier-config-cli remediation \
--platform ios \
--running-config running.conf \
--generated-config intended.conf \
--output remediation.txt
# 2. Generate rollback (for safety)
hier-config-cli rollback \
--platform ios \
--running-config running.conf \
--generated-config intended.conf \
--output rollback.txt
# 3. Preview future state
hier-config-cli future \
--platform ios \
--running-config running.conf \
--generated-config intended.conf \
--output future.txt
# 4. Review all files before applying changes
cat remediation.txt
cat rollback.txt
cat future.txt
Batch Processing Multiple Devices¶
# Process multiple devices
for device in router1 router2 switch1; do
hier-config-cli remediation \
--platform ios \
--running-config configs/${device}_running.conf \
--generated-config configs/${device}_intended.conf \
--output remediation/${device}_remediation.txt
done
Using with Different Platforms¶
# Cisco IOS
hier-config-cli remediation --platform ios \
--running-config ios_running.conf \
--generated-config ios_intended.conf
# Cisco NX-OS
hier-config-cli remediation --platform nxos \
--running-config nxos_running.conf \
--generated-config nxos_intended.conf
# Arista EOS
hier-config-cli remediation --platform eos \
--running-config eos_running.conf \
--generated-config eos_intended.conf
# Juniper JunOS
hier-config-cli remediation --platform junos \
--running-config junos_running.conf \
--generated-config junos_intended.conf
Exit Codes¶
| Code | Description |
|---|---|
| 0 | Success |
| 1 | Error (file not found, invalid platform, parsing error, etc.) |
Error Handling¶
The CLI provides clear error messages for common issues:
File Not Found:
Invalid Platform:
Permission Denied:
Tips¶
- Use Tab Completion: If your shell supports it, enable tab completion for easier command entry
- Combine with Shell Tools: Pipe output to
less,grep, or other tools for analysis - Check File Paths: Always use absolute paths or ensure you're in the correct directory
- Review Before Applying: Always review generated commands before applying them to production devices