Skip to content

wufe/Polo

Repository files navigation



Polo

Serve your application development branches




CodeQL Tests

What is Polo

Polo is a git-based reverse proxy.

Allows you to create a web server which provides the ability to serve your web application in a specific time/branch/tag in history, using git.

You just need to specify the git commit or the branch. A new session will be created for you to navigate into.

Although it provides HTTPS support, it is not intended to be used in production.


Use cases

It can be used for serving your staging / QA environment.

Instead of having one application on a single host, you can let the user select which git branch to serve.

Polo will then start the application and provide a reverse proxy feature for navigation.


Getting started

  • Download Polo from the release page

  • Create one or more configuration files for your application and place them next to the application executable
    There's a minimal example configuration file called testserver.yml which contains instructions to start a little demo project.

  • Start Polo from command line

More info about the installation process and the configuration file in the documentation.


Configuration

You must provide at least one yaml configuration file describing your application remote and how to build and run it.
The configuration file must be put next to the Polo executable file.
You can find an example of a configuration file with all the options in the folder examples.


State diagram

This diagram represents the states walked since the request of a session to its destruction.


Known issues / missing features

  • Add support to command concatenations (; and &&)
  • Admin interface with
    • Control over manual trigger of fetch in a git application folder
    • Application configuration CRUD UI