Rebuild Docker image

Change-Id: I79581e3f98a4b8ac5c69652cf1a1e9bfb14d8349
tree: 46e666e34fb7415b6d7b98259cb6836d140d833c
  1. sf_notifier/
  2. .dockerignore
  3. .gitignore
  4. .gitreview
  5. _tox.ini
  6. Dockerfile
  7. entrypoint.sh
  8. LICENSE
  9. README.md
  10. requirements.in
  11. requirements.txt
  12. run-func-tests.sh
  13. run-tests.sh
  14. setup.py
  15. test-requirements.txt
  16. tox.ini
README.md

sf-notifier

Prometheus Alertmanager webhook receiver sending alert notification to Salesforce.

Development

Setup

Install Python dependencies:

$ virtualenv venv -p python3
$ source venv/bin/activate
(venv)$ source sf_notifier/vars/development
(venv)$ pip install --upgrade pip
(venv)$ pip install -e .

Add to settings/development.py credentials for your Salesforce customer (not engineering) account:

SF_CONFIG = {
    'AUTH_URL': 'xxx',
    'USERNAME': 'xxx',
    'PASSWORD': 'xxx',
    'ORGANIZATION_ID': 'xxx',
    'ENVIRONMENT_ID': 'xxx',
    'SANDBOX_ENABLED': True
}

You may also specify environment variables to override Python settings:

export SFDC_AUTH_URL="xxx"
export SFDC_USERNAME="xxx"
export SFDC_PASSWORD="xxx"
export SFDC_ORGANIZATION_ID="xxx"
export SFDC_ENVIRONMENT_ID="xxx"
export SFDC_SANDBOX_ENABLED=true

Run server:

(venv)$ uwsgi --http 127.0.0.1:5000 --wsgi-file sf_notifier/server.py --callable app_dispatch

Check in browser:

http://127.0.0.1:5000/metrics

Keeping up-to-date

Install pip-tools (pip example):

pip install pip-tools

Generate new dependencies (or first update direct dependencies in requirements.in):

pip-compile --upgrade requirements.in