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 and non-ldap groups definitions And generate the corresponding gitolite configuration and keys directory. Available commands ------------------ - glconf : Print gitolite configuration - glrun : Update gitolite configuration - showconf : Display the repos configuration in YAML. This is mainly useful for debugging. 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 ldap_users_infos: list of ldap user attributes that we should keep available group_re: regular expression to extract group name from cn pubkey_dir: directory containing users ssh keys, used by gitolite tmpl_dir: templates directory www_dir: output directory where some files are written (repos db dump, and some html pages) gitolite_config: gitolite configuration file repodef_dir: directory containing repos definitions (see repos_config) repos_config: list of repos and / or group definition directories. Use something like this to include a directory containing repos or groups definitions : prefix: prefix in the repos tree. In case of git_url or include_dir, this is also used to indicate that the included directory defines repos (*.repo files). group_prefix: This value is prefixed to the defined group names. This is also used to indicate that the included directory can contain groups definitions (*.group files). If you don't want to have a prefix, but still want to define groups, set an empty string. 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