Gitosis Plugin

A Redmine plugin which manages your gitosis configuration based on your projects and memberships in Redmine. Includes Public Key management views (extracted from Planio Redmine Hosting).

Features

  • Updates your Gitosis config (create repos, add keys, add access privileges)
  • Allows users to upload public keys

Getting the plugin

Please head over to GitHub to fetch the latest version.

Release notes

This plugin is provided as is and experimental. It works great in production for Planio, but we don’t guarantee it will work for you.

Requirements

Note: this is probably not a complete list
  • ruby inifiles
    gem install inifile
    
  • ruby ssh2 library
    for Debian/Ubuntu users:
    apt-get install libnet-ssh2-ruby1.8
    

    or
    gem install net-ssh
    
  • ruby lockfile library
    for Debian/Ubuntu users:
    apt-get install liblockfile-ruby
    

    or
    gem install lockfile
    

Installation notes

  • make sure the plugin folder is named redmine_gitosis and not redmine-gitosis (note "_" vs "-")
  • you must setup a key with gitosis-admin write rights and copy it to /path/to/redmine/vendor/plugins/redmine_gitosis/extra/ssh/private_key
    • for some misterious reason I had to copy the key in ~/.ssh/id for the user running passenger (but under mongrel it wasn't required)
  • edit /path/to/redmine/vendor/plugins/redmine_gitosis/lib/gitosis.rb and fix the following
    • GITOSIS_URI - this should be the uri for retrieving the gitosis-admin repository
    • GITOSIS_BASE_PATH - this should be set to the path where gitosis stores the repositories (used for repository deletes only)
  • after install each user should have a link, on the my account page, right next to the change password link

Resources & related discussion

License

MIT

Author

Jan Schulz-Hofen, ROCKET RENTALS GmbH

Forks

There is a redmine_gitosis fork at GitHub which contains some fixes and seems to be more active than the original project.

Some improvements have also been published here: https://redmine.koumbit.net/projects/redmine-gitosis/repository