Bevor Sie beginnen
- Sie benötigen in Enclave die Rolle Owner oder Admin.
- Enclave listet die GitLab-Gruppen auf, in denen Sie mindestens die Rolle Developer haben.
- Um den Webhook hinzuzufügen, benötigen Sie die Rolle Maintainer für jedes Projekt oder die Rolle Owner für die Gruppe. Gruppen-Webhooks erfordern GitLab Premium oder Ultimate.
- Bei selbst gehostetem GitLab benötigt das Access Token den Scope
apiund die Rolle Maintainer.
GitLab verbinden
1
Integrationen öffnen
Öffnen Sie Settings → Integrations in app.enclave.ai. Klicken Sie neben GitLab auf Connect.
2
GitLab autorisieren
Wählen Sie GitLab.com, melden Sie sich bei Ihrem GitLab-Konto an und autorisieren Sie die Enclave-Anwendung.
Über GitLab-OAuth erhält Enclave den Scope
api. GitLab bietet keinen engeren Scope, der das Veröffentlichen von MR-Kommentaren und das Verwalten von Webhooks erlaubt. Enclave nutzt ihn, um Projekte und Merge Requests zu lesen, MR-Kommentare zu veröffentlichen und Webhook-Ereignisse zu empfangen.3
Webhook hinzufügen
Enclave zeigt eine Webhook URL und ein Secret token an. Kopieren Sie beides. Das Secret wird nur einmal angezeigt.Öffnen Sie in GitLab Ihr Projekt (oder bei selbst gehostetem GitLab Ihre Gruppe) und gehen Sie zu Settings → Webhooks. Fügen Sie die URL und das Secret Token ein, aktivieren Sie Push events und Merge request events und klicken Sie auf Add webhook. Klicken Sie auf Test, um eine Testzustellung zu senden.Die Verbindung bleibt ausstehend, bis das erste Ereignis eintrifft.
4
Projekte für MR-Reviews auswählen
Automatische Reviews sind standardmäßig für jedes GitLab-Projekt aktiviert. Um sie für ein Projekt zu deaktivieren, verwenden Sie dessen Schalter PR Reviews unter Coverage → Repositories. Siehe PR- und Abhängigkeitsanalyse.
Tipps
- Erstellen Sie ein eigenes GitLab-Konto für Enclave, damit MR-Kommentare eindeutig zugeordnet sind. Bei selbst gehostetem GitLab ist ein Service-Account-Token am besten, danach ein Group Access Token. Ein persönliches Token funktioniert auch, aber dann erscheint jeder Kommentar unter Ihrem Namen.
- Verbinden Sie jedes Projekt eines Systems. Enclave findet serviceübergreifende Probleme nur, wenn es sowohl den Service als auch die von ihm aufgerufenen APIs sehen kann.
Fehlerbehebung
Bei selbst gehostetem GitLab prüft Validate & connect zuerst Ihre URL und Ihr Token:- Enclave requires GitLab 14 or newer: Aktualisieren Sie Ihre Instanz.
- GitLab rejected the token oder The token must include the ‘api’ scope: Stellen Sie ein neues Token mit dem Scope
apiaus. - The token authenticated but cannot see any projects: Fügen Sie das Token zuerst einer Gruppe oder einem Projekt hinzu.
- We refused to call that URL: Der Hostname wurde zu einer privaten oder internen Adresse aufgelöst. Enclave verbindet sich nicht mit solchen Adressen.
- We could not reach your GitLab instance: Prüfen Sie die URL und Ihre Firewall-Regeln.