A network automation service that checks compliance of network device based on compliance policies configured in the config policy API.
- Multi-vendor support
- Device Inventory API (With input validation)
- Config Policy API (With input validation)
- Template Renderer
- Log files output to easily determine what configs are not deployed to specific devices
- Flask (Web Framework)
- Cerberus (Data validation)
- Jinja2 (Template renderer)
- Netmiko (Device connections)
- Requests (API calls)
- CiscoConfParse (Parsing for compliance inspection)
- Deploy the topology
make deploy
- Run the compliance checker
make run
- Requires the compliance/device API to be running
- Device topology must be deployed
- Cleanup and Teardown
make cleanup
Endpoint | Method | Purpose |
---|---|---|
/api/v1/devices/ | GET/POST | Retrieves all devices |
/api/v1/devices/{device}/ | GET | Retrieves a device |
/api/v1/config/compliance/ | GET/POST | Retrieves/adds a policy |
/api/v1/config/compliance/{id}/ | GET/DELETE | Retrieves a policy by id |
- Converting Web Framework from Flask to Django