RESTful interface for Elastic Build Results.
Project description
ebr-board
RESTful interface for Elastic Build Results.
Usage
To view the API documentation, start the server and go to to <url>/api/docs
.
Configuration
ebr-board uses Vault-Anyconfig to read in its configuration, allowing it to access a Hashicorp Vault instance for loading secrets. For more details refer to its documentation.
In order to deploy a simple ebr-board instance, you will need two files: config.yaml
and vault.yaml
. Leave vault.yaml
empty, as we will not use
secret loading from Vault-Anyconfig in this instance.
config.yaml
should be formatted as follows:
elastic:
host: <elastic_url>
port: 9200
timeout: 20
use_ssl: true
verify_certs: true
ca_certs: /etc/ebr-board/elastic.crt
index: testspipeline*
user: <elastic_user>
pwd: <elastic_password>
Dev Mode
To start in dev mode, run python ebr_board/ebr_board.py
Production Mode
Can be invoked with ebr_board:create_app(config_filename='/etc/ebr-board/config.yaml', vault_config_filename='/etc/ebr-board/vault.yaml', vault_creds_filename='/etc/ebr-board/vault.yaml', load_certs=True, reverse_proxy=True)
, for example from Gunicorn. You should configure it behind a reverse proxy - for more details see
any guide on configuring Flask servers for deployment. A Dockerfile pre-configuring Gunicorn is available in the root of the repository.
Features
- Provides abstraction to fetch:
- a list of builds from a given job
- tests from a given job
- aggregations of tests failures
Todo:
- Improve test coverage
- Fill in coverage of resources
- Expand aggregation/search functionality
Credits
This package was created with Cookiecutter and the tomtom-international/cookiecutter-python project template.
Changelog
0.0.1-dev (2019-07-05)
- First release on PyPI.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.