Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/soasme/blackgate
Blackgate is an API gateway application
https://github.com/soasme/blackgate
Last synced: 2 months ago
JSON representation
Blackgate is an API gateway application
- Host: GitHub
- URL: https://github.com/soasme/blackgate
- Owner: soasme
- License: mit
- Created: 2016-05-26T09:47:04.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-09-19T11:05:57.000Z (over 5 years ago)
- Last Synced: 2024-10-31T11:44:50.525Z (3 months ago)
- Language: Python
- Homepage: http://pythonhosted.org/blackgate/index.html
- Size: 201 KB
- Stars: 13
- Watchers: 2
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.rst
- Changelog: HISTORY.rst
- License: LICENSE
Awesome Lists containing this project
- starred-awesome - blackgate - Blackgate is an API gateway application (Python)
README
Blackgate
=========Blackgate is an API gateway application. It's stateless and extendable.
.. image:: https://travis-ci.org/soasme/blackgate.svg?branch=master
.. image:: https://images.microbadger.com/badges/image/soasme/blackgate.svg
:target: https://microbadger.com/images/soasme/blackgateInstall via pip
---------------Run::
$ pip install blackgate
Or::
$ git clone [email protected]:soasme/blackgate.git
$ cd blackgate
$ python setup.py installInstall 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: /\1Just 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:latestTest 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", ...