Internal Components

class src.service.Service(name)

Representation of a single SERVICE as represented in YAML.

class Route(name, route_, method, status, params)

Each SERVICE has 1+ routes. A route has a name, route, method, status and optional query params.

generate_service(filename)

Dynamically create a Flask app defining the service and its routes, exporting it to the given filepath.

insert_dockerfile(filename, exposed_port)
insert_requirements(filename)
load_home_route()

Give a simple / response identifying the server.

load_route(route_config)

Accept well-formatted config dict and add the route to the service.

src.config_tools.configure_nginx_ondisk(input_nginxconf='./nginx/')

Configure local directory to later build into NGINX docker image.

MAKES DIR nginx_server

src.config_tools.configure_service_ondisk(service_name, service)

Configure local directory to later build into SERVICE docker image.

MAKES DIR service

src.config_tools.generate_dockercompose(services)

Accept list of services and generate a docker-compose file.

src.config_tools.mk_architecture_ondisk(services, nginx_conf_dir=None)

Catch-all env-creator. Run to set up everything.

src.config_tools.mk_workspace_ondisk()
src.config_tools.parse_input_config(config)

Opens and parses well-formatted yaml as defined in the DOCS.

src.config_tools.parse_services(configuration)
src.config_tools.parse_tests(configuration)
src.config_tools.spin_up_local_network(detach=True, build=True)
src.config_tools.tear_down_local_network()
src.test.analyze_test_results(test_reports)
src.test.run_test(test, services)
src.test.run_tests(tests, services)
src.test.send_to_nginx(path, request_type)
class src.test_case.TestCase(name, test_configuration)
class TestAssertion(service, route_, test_configuration)