speakerst
Goto Top

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

  1. Rechte anpassen fuer apache
echo "$DATE - Rechte setzen fuer Apache/www-data " | tee -a $LOG
chown -R www-data /srv/gitosis/repositories/$REPO | tee -a $LOG


Ich hoffe ihr könnt mir helfen

Content-Key: 188273

Url: https://administrator.de/contentid/188273

Printed on: April 25, 2024 at 16:04 o'clock