aboutsummaryrefslogtreecommitdiffstats
path: root/README
blob: e411b415e2b6b5f08bddc649ac3c457f4b6ce5d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
mgagit is a tool used to manage Mageia git repositories.

How it works
------------

mgagit takes :
 - an ldap directory containing groups, and users with ssh keys
 - repositories definitions

And generate the corresponding gitolite configuration and keys directory.


Available commands
------------------

- glconf : Print gitolite configuration
- glrun  : Update gitolite configuration


Configuration
-------------

Configuration is done in the file /etc/mgagit.conf. The default
configuration is available in file /usr/share/mgagit/config.

The files are in YAML format.

The following configuration options are available :
 use_ldap: enable use of ldap to fetch user keys and groups
 ldapserver: hostname of the ldap server
 binddn: dn used to authenticate on the ldap server
 bindpwfile: file containing the password used to authenticate
 groupbase: the base used to search ldap groups
 groupfilter: filter to search ldap groups
 userbase: the base used to search ldap users
 userfilter: filter to search ldap users
 uid_username_re: regular expression to extract a username from ldap uid
 group_re: regular expression to extract group name from cn
 pubkey_dir: directory containing users ssh keys, used by gitolite
 tmpl_dir: templates directory
 gitolite_config: gitolite configuration file
 repodef_dir: directory containing repos definitions (see repos_config)
 repos_config: list of repos definition directories. Use something like
 this to include a directory containing repos definitions :
  - prefix: prefix in the repos tree
    git_url: url of a git repository containing definitions, that will be
             cloned and pulled, in 'repodef_dir'
    include_dir: alternatively, you can specify the path to a directory
                 containing definitions (if it's not from a git repository,
                 or if you don't want to be pulled automatically)
    gl_template: template file used to define the repos