A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/divshot/gitling below:

divshot/gitling: A smart HTTP git server with flexible external authorization via HTTP.

Gitling Smart HTTP Git Server

Gitling is a smart HTTP git server designed for multi-tenant git contexts. Gitling allows for making an optional HTTP authentication request to an external URL in order to verify a push and set its location.

Note: Gitling only works for HTTP-based git. If you're looking for custom SSH git authentication (a la GitHub/Heroku), I wish you luck.

If you already have a go environment up and running, it's quite simple:

go get github.com/divshot/gitling

If you don't, you'll need to make that happen first. Binary distribution

Basic usage is as follows:

gitling --auth-url https://example.com/auth -p 8080 -r /path/to/root -b /usr/bin/git

Just try gitling -h if you need help with specific options.

If you specify an authorization URL using -a or --auth-url, Gitling will make an HTTP POST request to the specified URL.The request will have a JSON body containing details about the request. For instance, if I set my git remote as https://open:sesame@example.com/project-name.git and pushed, the request body would look like this:

{
  "username":"open",
  "password":"sesame",
  "path":"project-name.git"
}

Your response to this POST tells Gitling how to proceed. The first signal is the HTTP status code you return.

In addition to HTTP status codes, a 200 response should be accompanied with a JSON object with one or more of the following keys:

If you don't specify a path, the path specified by the user will be used. For error responses (401, 403) the body of the response will be printed out for the user to see.


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4