Iris
![Gitter chat](https://camo.githubusercontent.com/2f58e4245243073f8a95f51602a13f8f2506f43dfb909963a91e9417f1623652/68747470733a2f2f6261646765732e6769747465722e696d2f697269736f6e63616c6c2f4c6f6262792e706e67)
Iris core, API, UI and sender service
Setup database
- remove
ONLY_FULL_GROUP_BY
from MySQL configsql_mode
- create mysql schema:
mysql -u USER -p < ./db/schema_0.sql
- import dummy data:
mysql -u USER -p -o iris < ./db/dummy_data.sql
dummy_data.sql
contains the following entities:
- user
demo
- team
demo_team
- application
Autoalerts
with key:a7a9d7657ac8837cd7dfed0b93f4b8b864007724d7fa21422c24f4ff0adb2e49
Setup dev environment
- create & source your virtualenv
- run
pip install -e .
- run
pip install -r dev_requirements.txt
- edit ./configs/config.dev.yaml to setup database credential and other settings
To install iris with extra features, you can pass in feature flag with pip:
pip install -e '.[prometheus]'
For list of extra features, please see extras_require
setting in setup.py
.
Run everything
forego start
Run web server
make serve
Run sender
iris-sender configs/config.dev.yaml
Tests
Run tests:
make test # all tests, e2e + unit
make e2e # e2e tests
make unit # unit tests
Generate test coverage reports:
make e2e-cov
make unit-cov
Adding new plugins
- create the plugin file under
src/iris/plugins
dir - edit
src/iris/plugins/__init__.py
to add plugin module to__all__
list