Skip to content
A service discovery, configuration and service management platform.
Python HTML TSQL Shell Dockerfile Makefile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci
.github
config
database
docs
huskar_api
tests
tools
.agignore
.coveragerc
.editorconfig
.env.example
.gitattributes
.gitignore
CHANGELOG.md
Dockerfile
Jenkinsfile
LICENSE
Makefile
Procfile
README.md
docker-compose.yml
jenkins.dockerfile
manage.sh
pytest.ini
requirements-dev.in
requirements-dev.txt
requirements.in
requirements.txt
run.py
service_check.py

README.md

Huskar API

CircleCI codecov

HTTP API of Huskar.

Demo

How to start

$ cp .env.example .env && vim .env

Starting the API server in local environment:

$ . path/to/venv/activate
$ make install-deps
$ honcho start

Starting the API server in Docker:

$ docker-compose run --rm wsgi initdb      # initialize database
$ docker-compose run --rm wsgi initadmin   # initialize administrator
$ docker-compose up wsgi                   # start web server

Development FAQ

Using the ZooKeeper CLI:

$ zkCli -server $(docker-compose port zookeeper 2181)

Using the MySQL CLI:

$ mycli mysql://root@$(docker-compose port mysql 3306)/huskar_api

Updating dependencies:

$ docker-compose run --rm wsgi make compile-deps
$ git add -p requirements*

Running tests:

$ docker-compose run --rm wsgi testall -xv
$ docker-compose run --rm wsgi test test_foo.py -xv

Maintaining database schema:

$ docker-compose run --rm wsgi alembic upgrade head
$ vim huskar_api/models/foobar.py
$ docker-compose run --rm wsgi alembic revision --autogenerate -m 'add an index of foo'
$ vim database/migration/versions/xxxxxxx.py
$ docker-compose run --rm wsgi alembic upgrade head
$ docker-compose run --rm wsgi dumpdb
$ git add database

Updating snapshot of email template in tests:

$ docker-compose run --rm wsgi python run.py tests.test_extras.test_email:gen
You can’t perform that action at this time.