You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kolaente e52b76ee3d
added License
4 years ago
bin Enabled Config 4 years ago
compiled-Release Added Binaries 4 years ago
pkg/linux_amd64 Enabled Config 4 years ago
src Move Deploy Dir instead of deleting it 4 years ago
.gitignore Updated Gitignore 4 years ago
LICENSE added License 4 years ago Updated Readme 4 years ago

Simple Git Deploy

This simple application provides automatic update of git repositories on your server. Triggered by a webhook (like the one from github), it can be very useful when you don't have (or don't want) a fully-fleged CI-Server to update your website.

Note: The application currently runs only under linux-systems as it uses a bash-script to update.


Usage is pretty simple. Simply configure the application via config.ini:

secret= iamverySecret
  • ssh_key: Path to the Deploy-SSH
  • git_url: SSH-Path to your Git-Project
  • deploy_dir: The folder to which the updated version of your site will be deployed. You need write permissions.
  • container_name: If you run your site within a docker-container, the application can automatically restart the container for any changes to take effect.
  • secret: The Secret sent by the webhook - to prevent abuse
  • interface: The interface the server should listen on
  • branch_name: The name of the branch. If an update to this branch is triggered, the application will run the update.


"error decoding response"

Make sure the request is made with "application/x-www-urlencoded"

Error 127

You recive an errormessage like this:

2017/04/29 16:51:51 Recived payload, Secret: m3VScr9st09y , Ref: refs/heads/master
2017/04/29 16:51:51 Recived corresponding secret:  m3VScr9st09y
2017/04/29 16:51:51 Starting update...
2017/04/29 16:51:51 exit status 127

Make sure the exists in the same folder as your binary and is executable.

Not Cloning - the script runs pretty fast but wont clone

Check the permissions of your keyfile. They should be 600, otherwise the ssh-agent will ignore the keyfile and won't clone:

Permissions 0664 for '/path/to/deploy-key' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.