EBR Tracker Slack Bot
Project description
ebr-trackerbot
Features
show
number of test failures over a given periodtrack
a test for failures for a given periodlist
active tracking requests- Respond to private messages
- Respond to
@mention
once integrated in a channel - Store tracking information in ODBC
Installation
Install with pip install ebr-trackerbot
.
To install with support for ODBC databases (other than SQLite), use pip install ebr-trackerbot['db_support']
. This will compile against the odbc
library, so that must also be installed including the development package if you intend to use ODBC. On Ubuntu this can be done with
sudo apt-get install unixodbc-dev
.
Configuration
Configure the vault authentication and vault credentials as described here: https://github.com/tomtom-international/vault-anyconfig#files-and-formatting Provide an empty file for both if you will not be using Vault.
Provide the following required configuration via a YAML file:
ebr-trackerbot:
slack_token: slack API token (a secret value, should be stored in Vault)
apiurl: url to ebr board api endpoint
Optional settings (also to be included in the ebr-trackerbot section):
init_channel
: a message will be posted in this channel at startup, must be set to an existing channel. Default is#test-slackbot
.storage_backend
: backend storage medium (memory or sqlite). Default is memory.sqlite_filename
: sqlite filename path. Default is data.dbslack_message_template
: custom slack message when test failed. Can contain these placeholders: {{test}} - test name, {{count}} - number of failures, {{period}} - time period. Default is an empty string.check_tests_delay
: frequency in which to check for test failures, specified in seconds. Default is 8600 seconds (one day).log_level
: sets the logging level. See https://docs.python.org/3/library/logging.html#logging-levels for the level options. Default isERROR
.
Note any entry can be stored in Hashicorp Vault using vault-anyconfig. See https://github.com/tomtom-international/vault-anyconfig#main-configuration-file for details.
Run with Docker:
By default, the Docker image assumes a combine vault configuration and credentials file named vault.yaml
. If you are not using Vault, this can be an
empty file, otherwise see the configuration section above.
docker run -e BR_URL=<br board url> -v ${pwd}/config.yaml:/etc/ebr-trackerbot/config.yaml -v ${pwd}/vault.yaml:/etc/ebr-trackerbot/vault.yaml tomtom-docker-registry.bintray.io/python/ebr_trackerbot python ebr-trackerbot
Requirements
Credits
This package was created with Cookiecutter and the tomtom-international/cookiecutter-python project template.
Changelog
0.0.1-dev (2019-07-19)
- First release on PyPI.
0.1.0 (2019-08-13)
- Adds ODBC database support
0.1.1 (2019-08-13)
- Fixes bug due to callback invocation on slack listener
- Cleans up project documentation
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file ebr_trackerbot-0.1.1.tar.gz
.
File metadata
- Download URL: ebr_trackerbot-0.1.1.tar.gz
- Upload date:
- Size: 25.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.12.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.33.0 CPython/3.6.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | af8e949053eb1be958401e9ec23f0ff3a8d6a8d7559d0017ebdea3cdc5a78e22 |
|
MD5 | 90ae95d4661557b64f695a786ccec947 |
|
BLAKE2b-256 | 96dd851074ed56df93445eae83fc0f4212c6410e16cde565d52408cc4b3eb8e1 |