Skip to content
This repository has been archived by the owner on Apr 22, 2024. It is now read-only.

A reverse proxy to broadcast requests to multiple backends

License

Notifications You must be signed in to change notification settings

redhat-appstudio/sprayproxy

Repository files navigation

DEPRECATED

New repository location: https://github.com/konflux-ci/sprayproxy.

Spray Proxy

A very simple reverse proxy that broadcasts to multiple backends.

Try it

make build
bin/sprayproxy server --backend <backend-server> --backend <another-backend-server>

You can also configure the proxy with environment variables:

  • SPRAYPROXY_SERVER_HOST: host for the proxy
  • SPRAYPROXY_SERVER_PORT: port to serve the proxy
  • SPRAYPROXY_SERVER_BACKEND: a space-separated list of backends to forward traffic. Example:
SPRAYPROXY_SERVER_BACKEND="http://localhost:8080 http://localhost:8081"
  • SPRAYPROXY_FORWARDING_REQUEST_TIMEOUT: override the default forwarding request timeout. Default is 15 seconds.
  • SPRAYPROXY_MAX_REQUEST_SIZE: override the default maximum request size. In bytes. Default is 25MB.
  • GH_APP_WEBHOOK_SECRET: webhook secret for GitHub apps. See the Github Apps guide for more info.

The following environment variables are insecure and should not be used in production environments:

  • SPRAYPROXY_SERVER_INSECURE_SKIP_TLS_VERIFY: Skip TLS verification when forwarding to backends.
  • SPRAYPROXY_SERVER_INSECURE_SKIP_WEBHOOK_VERIFY: Skip GitHub webhook verification for incoming requests.
  • SPRAYPROXY_SERVER_ENABLE_DYNAMIC_BACKENDS: Register and Unregister backends on the fly. Note: this setting is for stateless deployment of the sprayproxy and should not be used in production and staging environments.

Developing

  • Run make build to build the proxy sever (output to bin/sprayproxy)
  • Run make test to run unit tests
  • Run make run to launch the proxy with default configuration

About

A reverse proxy to broadcast requests to multiple backends

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages