pta-hook.sh: collect delegated config fragments
collect the delegated config fragments from correspondingly named branches of the gitolite-admin repo, and put them all in conf/fragments/ also deprecate changes to conf and keydir locations from now on
This commit is contained in:
parent
5bb0850c5c
commit
2f2af033f5
|
@ -57,8 +57,12 @@ $GL_LOGT="$GL_ADMINDIR/logs/gitolite-%y-%m.log";
|
||||||
|
|
||||||
# --------------------------------------
|
# --------------------------------------
|
||||||
|
|
||||||
# I see even less reason to change these, since they're all relative to the
|
# Please DO NOT change the following paths unless you really know what you're
|
||||||
# gitolite admin directory above, but hey it's *your* system...
|
# doing. It'll work for now but it's officially deprecated to have them
|
||||||
|
# elsewhere from now on, and may break some future features.
|
||||||
|
|
||||||
|
# Anyway, the conf files and keydirs don't grow constantly, (like the logs and
|
||||||
|
# the repositories do), so I don't think this is a major problem for anyone.
|
||||||
|
|
||||||
$GL_CONF="$GL_ADMINDIR/conf/gitolite.conf";
|
$GL_CONF="$GL_ADMINDIR/conf/gitolite.conf";
|
||||||
$GL_KEYDIR="$GL_ADMINDIR/keydir";
|
$GL_KEYDIR="$GL_ADMINDIR/keydir";
|
||||||
|
|
|
@ -1,6 +1,29 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
GIT_WORK_TREE=/home/git/.gitolite git checkout -f
|
# get this from your .gitolite.conf; and don't forget this is shell, while
|
||||||
|
# that is perl :-)
|
||||||
|
export GL_ADMINDIR=/home/git/.gitolite
|
||||||
|
|
||||||
cd /home/git/.gitolite
|
# checkout the master branch to $GL_ADMINDIR
|
||||||
|
GIT_WORK_TREE=$GL_ADMINDIR git checkout -f master
|
||||||
|
|
||||||
|
# collect all the delegated fragments
|
||||||
|
mkdir -p $GL_ADMINDIR/conf/fragments
|
||||||
|
for br in $(git for-each-ref --format='%(refname:short)')
|
||||||
|
do
|
||||||
|
# skip master (duh!)
|
||||||
|
[[ $br == master ]] && continue
|
||||||
|
# all other branches *should* contain a file called <branchname>.conf
|
||||||
|
# inside conf/fragments; if so copy it
|
||||||
|
if git show $br:conf/fragments/$br.conf > /dev/null 2>&1
|
||||||
|
then
|
||||||
|
git show $br:conf/fragments/$br.conf > $GL_ADMINDIR/conf/fragments/$br.conf
|
||||||
|
echo "(extracted $br conf; `wc -l < $GL_ADMINDIR/conf/fragments/$br.conf` lines)"
|
||||||
|
else
|
||||||
|
echo " ***** ERROR *****"
|
||||||
|
echo " branch $br does not contain conf/fragments/$br.conf"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
cd $GL_ADMINDIR
|
||||||
src/gl-compile-conf
|
src/gl-compile-conf
|
||||||
|
|
Loading…
Reference in a new issue