Skip to content

soasme/blackgate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

238 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Blackgate

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

https://travis-ci.org/soasme/blackgate.svg?branch=master

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 `pwd`:/etc/blackgate/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", ...

About

Blackgate is an API gateway application

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors