Bash Script für Git
Hi Leute, vieleicht könnt ihr mir helfen. Ich musste bei uns in der Firma einen git server einrichten. Die Repos sollen über http erreichbar sein, die User werden aus dem LDAP gezogen. Das LDAP sieht so aus das es pro Projekt eine eine Gruppe gibt.
Um das ganze zu autmomatisieren habe ich jetzt ein Bash Script geschieben was das ganze Automatisiert. Mein Problem dabei ist das ich pro Git Projekt eine eigene Location im aapche anlegen lassen muss und das ich mir aus dem LDAP die gid ziehen muss.
1.Weiß jemand von euch ob ich eien Location im Ordner conf.d speichern kann oder muss eine Location immer in einem Vhost sein?
2. Ich steh ein wenig auf dem schlauch wie ich per Script immer an die richtie GID komme. Da es für jedes git Proejkt eine eigene LDAP Gruppe gibt ist demnach auch immer die GID anders. Wie bringe ich das dem Script bei?
Hier das Script:
#!/bin/bash
REPO=$1
LOG=/root/git.log
echo "$DATE - Anlegen des Repros $REPO" | tee -a $LOG
#Repository anlegen
git init --bare /srv/gitosis/repositories/$REPO | tee -a $LOG
echo "$DATE - Apache LDAP Anfrage anlegen " | tee -a $LOG
echo "<LocationMatch "^/git/$REPO1">/"AuthType Bacic"/"AuthBasicProvider ldap"/"AuthName "git""/"AuthzLDAPAuthoritative Off"/"AuthLDAPURL ldap://ldap.Firma.de:389/dc=firma,dc=de?gid"/"require group 4711"/"</LocationMatch>" >> /etc/apache2/conf.d/$REPO
chown -R www-data /srv/gitosis/repositories/$REPO | tee -a $LOG
Ich hoffe ihr könnt mir helfen
Um das ganze zu autmomatisieren habe ich jetzt ein Bash Script geschieben was das ganze Automatisiert. Mein Problem dabei ist das ich pro Git Projekt eine eigene Location im aapche anlegen lassen muss und das ich mir aus dem LDAP die gid ziehen muss.
1.Weiß jemand von euch ob ich eien Location im Ordner conf.d speichern kann oder muss eine Location immer in einem Vhost sein?
2. Ich steh ein wenig auf dem schlauch wie ich per Script immer an die richtie GID komme. Da es für jedes git Proejkt eine eigene LDAP Gruppe gibt ist demnach auch immer die GID anders. Wie bringe ich das dem Script bei?
Hier das Script:
#!/bin/bash
REPO=$1
LOG=/root/git.log
echo "$DATE - Anlegen des Repros $REPO" | tee -a $LOG
#Repository anlegen
git init --bare /srv/gitosis/repositories/$REPO | tee -a $LOG
echo "$DATE - Apache LDAP Anfrage anlegen " | tee -a $LOG
echo "<LocationMatch "^/git/$REPO1">/"AuthType Bacic"/"AuthBasicProvider ldap"/"AuthName "git""/"AuthzLDAPAuthoritative Off"/"AuthLDAPURL ldap://ldap.Firma.de:389/dc=firma,dc=de?gid"/"require group 4711"/"</LocationMatch>" >> /etc/apache2/conf.d/$REPO
- Rechte anpassen fuer apache
chown -R www-data /srv/gitosis/repositories/$REPO | tee -a $LOG
Ich hoffe ihr könnt mir helfen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 188273
Url: https://administrator.de/forum/bash-script-fuer-git-188273.html
Ausgedruckt am: 17.04.2025 um 04:04 Uhr