Project Structure
data/ (text files containing data for use by syntribos tests)
doc/source/ (Sphinx documentation files)
examples/ (example syntribos request templates, config files)
configs/ (example syntribos configs)
templates/ (examples request templates)
scripts/ (helper Python scripts for managing the project)
readme.py (Python file for creating/updating the README.rst)
syntribos/ (core syntribos code)
clients/ (clients for making calls, e.g. HTTP)
http/ (clients for making HTTP requests)
checks/ (for analyzing an HTTP response and returning a signal if
- it detects something that it knows about)
extensions/ (extensions that can be called in request templates)
identity/ (extension for interacting with keystone/Identity)
random_data/ (extension for generating random test data)
cinder/ (extension for interacting with cinder/Block Storage)
glance/ (extension for interacting with glance/Image)
neutron/ (extension for interacting with neutron/Network)
nova/ (extension for interacting with nova/Compute)
formatters/ (output formatters, e.g. JSON, XML/XUnit)
tests/ (location of tests that syntribos can run against a target)
auth/ (tests related to authentication/authorization)
fuzz/ (tests that “fuzz” API requests)
debug/ (internal syntribos tests, these will not be included in a
- normal run of syntribos)
headers/ (tests related to insecure HTTP headers)
transport_layer/ (tests related to SSL and TLS vulnerabilities)
utils/ (utility methods)
tests/unit/ (unit tests for testing syntribos itself)