This is Redmine Gitolite Hook combined with redmine-gitolite
A Redmine plugin which manages your gitolite configuration based on your projects and user memberships in Redmine.
Provides Gitolite hook, for automaticaly pulling changes to
Includes Public Key management views (extracted from plan.io).
-
lockfile
-
gitolite (works with 1.8.7)
-
Gitolite server
-
accessible Git executable
-
Install Redmine and put this plugin in vendor/plugins directory and migrate
database (plugins)
$ cd redmine/vendor/plugins $ git clone git://github.com/ivyl/redmine-gitolite.git $ rake db:migrate_plugins
-
User running redmine (his key must be named named “redmine”) must have RW+ access to gitolite-admin (assuming that you have gitolite installed).
-
Make sure that redmine user has gitolite server in his known_host list
$ sudo su - redmine $ ssh gitolite.server * [accept key]
-
Add update hook to common gitolite hooks (examples in contrib dir) and configure it
(host, api key, etc, see sources)
$ sudo su - gitolite $ cat > .gitolite/hooks/common/post-receive * [paste hook] $ vim .gitolite/hooks/common/update * [enable WS for repository management in administration repository settings] * [copy generated API key] * [configure, in complex hook you can do this by git config options] $ chmod +x .gitolite/hooks/common/update
-
Configure plugin in redmine settings
* [Adminitration -> Plugins -> Redmine Gitolite] * [Gitolite URL should be set to your gitolite-admin git repository] * [Base path should point directory which will hold local copies (must exist) * [Set developer and ro urls as in given examples (just slightly modify them)] * [%{name} will be replaced with your repository identifier]
-
You should manage your keys only from Redmine to avoid conflicts.
-
Need new bare git repo? Create it via Redmine, disable other features.
-
This is most convinient way to manage keys by your user.
Open new issue and complain. You can also fix it and sent pull request. This plugin is in active usage in current, edge Redmine. Any suggestions are welcome.