Skip to main content

Blackgate is an API gateway application.

Project description

Blackgate is an API gateway application. It’s stateless and extendable.

https://travis-ci.org/soasme/blackgate.svg?branch=master https://images.microbadger.com/badges/image/soasme/blackgate.svg

Install via pip

Run:

$ pip install blackgate

Or:

$ git clone git@github.com:soasme/blackgate.git
$ cd blackgate
$ python setup.py install

Install via docker

Run:

$ docker pull soasme/blackgate

Example

Configure Upstream

A minimal Blackgate config looks something like this:

---
proxies:
  - name: github
    upstream_url: 'https://api.github.com'
    request_path_regex: /github/(.*)
    request_path_sub: /\1

Just save it as blackgate.yml.

Run Application

Run application:

$ blackgate -c ./blackgate.yml --no-daemon start

# or run as a daemon
$ blackgate -c ./blackgate.yml --pidfile=/tmp/blackgate.pid start

# or run via docker
$ docker run -it --rm --name blackgate \
    -p 9654:9654 \
    -v blackgate.yml:/etc/blackgate.yml blackgate:latest

Test Blackgate

Using curl to test functionality:

$ curl http://127.0.0.1:9654/github/repos/soasme/blackgate
{"id":59739087,"name":"blackgate","full_name":"soasme/blackgate", ...

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

blackgate-0.3.0.tar.gz (7.3 kB view hashes)

Uploaded Source

Built Distribution

blackgate-0.3.0-py2.py3-none-any.whl (10.0 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page