A basic Django app for using Gitolite
Project description
Django Gitolite
A basic Django app for using Gitolite
Configuration
By default the Gitolite rc file is ~/.gitolite.rc. Follow these steps:
- Add
LOCAL_CODE => "$ENV{HOME}/local",to the rc file. - Create
~/local/triggers/post-compile/django, it should be executable and call thegitolitetriggermanagement command. - Create
~/local/hooks/common/post-receive, it should be executable and call thegitolitehookmanagement command. - Add
POST_COMPILE => ['post-compile/django'],to the rc file. - Add
POST_CREATE => ['post-compile/django'],to the rc file. - Add
SSH_AUTHKEYS => ['post-compile/ssh-authkeys'],to the rc file.
This is an example post-compile/django script:
#!/bin/bash
source ~/virtualenv/bin/activate
export PYTHONPATH=~/site
export DJANGO_SETTINGS_MODULE=settings
python ~/site/manage.py gitolitetrigger $@
This is an example post-receive script:
#!/bin/bash
source ~/virtualenv/bin/activate
export PYTHONPATH=~/site
export DJANGO_SETTINGS_MODULE=settings
python ~/site/manage.py gitolitehook $@
Running as another user
This configuration requires sudo and the current user to be in the same group
as the gitolite user's default group.
As the gitolite user, open ~/.gitolite.rc and add UMASK => 0027,. This is
required to be able to read gl-creator and gl-forked-from files in the
repositories. Next, ensure that the key directory, ~/.gitolite/keydir exists
and is writable by the current user. Files in this directory need to be
readable by the gitolite user, to ensure that files are created belong to the
gitolite user's default group use chmod g+rwxs ~/.gitolite/keydir.
Next, you need to setup sudo so the gitolite user can use it to run Gitolite
triggers. Insert the following line into /etc/sudoers:
%git ALL=(git)NOPASSWD:/usr/bin/gitolite trigger SSH_AUTHKEYS
Below is the following I use on my server:
Defaults: site-eyl env_keep += "GL_USER"
%git ALL=(git)NOPASSWD:/usr/bin/gitolite trigger SSH_AUTHKEYS,/usr/bin/gitolite list-phy-repos,/usr/bin/gitolite access *,/usr/bin/gitolite D *
Defaults:git env_keep += "GL_REPO GL_USER GL_BYPASS_ACCESS_CHECKS"
git ALL=(site-eyl) NOPASSWD: /srv/site-eyl/bin/manage gitolitehook,/srv/site-eyl/bin/manage gitolitetrigger *
License
All code is licensed under GPL v3.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file django-gitolite-0.2.2.tar.gz.
File metadata
- Download URL: django-gitolite-0.2.2.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/54.1.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1d456ddccb8904cb7b92423be46058b2b4b7cf01e2e82c05a662ecae3fc9a727
|
|
| MD5 |
f99e674052feadeed3ef6f9a98d345f0
|
|
| BLAKE2b-256 |
877c144adf379f9255f824de1325f18cc619990d969562dbede23ffd063b55cc
|
File details
Details for the file django_gitolite-0.2.2-py3-none-any.whl.
File metadata
- Download URL: django_gitolite-0.2.2-py3-none-any.whl
- Upload date:
- Size: 24.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/54.1.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
587d2e9059fea40708eedaee39eac3c8f38cde7df9503266776be4bae03891a4
|
|
| MD5 |
0b1768ea719f9ec720401c73bdaa1fe0
|
|
| BLAKE2b-256 |
249c85e25d7e6abbf02891dde9636137b10922cd2a46beeb719ce7c98a9fe331
|