Skip to content
master
Switch branches/tags
Code

Latest commit

* remove non-inclusive language (#635)

* master -> leader in config (#637)

* remove non-inclusive language

* master -> leader in config

* restore sphinx required master_doc (#638)

* remove non-inclusive language

* master -> leader in config

* restore sphinx required master_doc
6f251a9

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
.ci
 
 
 
 
 
 
db
 
 
 
 
ops
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Iris Build Status License Gitter chat

Iris core, API, UI and sender service. For third-party integration support, see iris-relay, a stateless proxy designed to sit at the edge of a production network and allow external traffic to pass through. We also have an Iris mobile app for iOS/Android, at the iris-mobile repo.

Setup database

  1. remove ONLY_FULL_GROUP_BY from MySQL config sql_mode
  2. create mysql schema: mysql -u USER -p < ./db/schema_0.sql
  3. import dummy data: mysql -u USER -p -o iris < ./db/dummy_data.sql

dummy_data.sql contains the following entities:

  • user demo with password demo
  • team demo_team
  • application Autoalerts with key: a7a9d7657ac8837cd7dfed0b93f4b8b864007724d7fa21422c24f4ff0adb2e49

Setup dev environment

  1. create & source your virtualenv
  2. install build dependencies: libssl-dev libxml2-dev libxslt1-dev libsasl2-dev python-dev libldap2-dev
  3. run pip install -e '.[dev,kazoo]'
  4. 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

  1. create the plugin file under src/iris/plugins dir
  2. edit src/iris/plugins/__init__.py to add plugin module to __all__ list