Public | Automated Build

Last pushed: 2 years ago
Short Description
Short description is empty for this repo.
Full Description

Fluo Working Copy

A simple daemon which listens on the endpoint /webhook for incoming POST requests and runs git pull on the mounted working copy.

Sample docker-compose file:

workingcopy:
    image: "dypsilon/fluo-working-copy"
    ports:
        - "8005:8005"
    volumes:
        - .:/wc # Mount the working copy at /wc
        - /home/vagrant/.ssh/id_rsa:/mnt/id_rsa # Mount your ssh key at /mnt/id_rsa
    environment:
        HOST: 0.0.0.0 # The server listens on this host. Defaults to 0.0.0.0
        PORT: 8005 # The server will listen on this port. Defaults to 8005
        AUTH: bitbucket:abcdef # Credentials for basic auth. Leave empty for no auth.
        DIR: /wc # The mount point of the working copy.
        REPOSITORY: origin # Defaults to origin. See the command below.
        REFSPEC: master # Defaults to master. See the command below.

The command is git pull --ff-only --verbose <repository> <refspec>.

Emitting Webhooks

fluo-working-copy is able to emmit webhooks after a pull occured. This allows other parts of your deployment workflow to integrate with your working copy. To emmit webhooks use the environment variable WH_CONFIG to point the working copy to your config file. By default fluo-working-copy will look for a config file at /etc/webhooks and emmit webhooks as soon as it finds one.

The config file is a simple text file with one webhook URL per line. The webhooks are called asynchronously. You can configure the timeout of the request with WH_TIMEOUT (defaults to 3000 milliseconds).

Docker Pull Command
Owner
dypsilon
Source Repository