Zum Hauptinhalt springen

Überblick

Diese Anleitung beschreibt das vollständige Setup für die Integration einer GitLab-Instanz mit Devin, einschließlich des Admin-Setups und des Nutzer-Setups. Die Integration besteht aus zwei Teilen:
  1. Admin-Setup
    • Die self-hosted GitLab-Instanz der Organisation mit Devin verbinden
    • Ein Dienstkonto einrichten
    • Den Repository-Zugriff konfigurieren
    • OAuth registrieren, damit Nutzer ihre persönlichen GitLab-Identitäten verknüpfen können
  2. Nutzer-Setup
    • Das GitLab-Konto eines einzelnen Nutzers mit seinem Devin-Konto verknüpfen
Das Admin-Setup muss abgeschlossen sein, bevor Nutzer ihr GitLab-Konto verknüpfen können. Nur Enterprise-Admins können die Schritte des Admin-Setups durchführen.

Teil 1: Admin-Setup

Schritt 1: Ein Dienstkonto in GitLab erstellen

In GitLab:
  1. Gehen Sie zur richtigen GitLab-Gruppe
  2. Navigieren Sie zu Settings
  3. Öffnen Sie Service Accounts
  4. Erstellen Sie ein neues Dienstkonto
Dieses Dienstkonto verwendet Devin, um in GitLab auf Repositories zuzugreifen.
Dienstkonto in GitLab erstellen

Schritt 2: Das Dienstkonto als Member der Gruppe hinzufügen

Weiter in GitLab:
  1. Gehen Sie zur Members-Seite der Gruppe
GitLab-Seite für Gruppen-Member
  1. Fügen Sie das Dienstkonto als Member der Gruppe hinzu
  2. Weisen Sie ihm die Rolle Developer zu
Dies ist erforderlich, damit das Dienstkonto angemessen auf Repositories zugreifen kann.

Schritt 3: Ein Personal Access Token für das Dienstkonto erstellen

Nach dem Erstellen des Dienstkontos:
  1. Suchen Sie das neu erstellte Dienstkonto.
  2. Klicken Sie auf die drei Punkte > Zugriffstokens verwalten > Ein neues persönliches Zugriffstoken generieren > Wählen Sie unter den Zugriffsbereichen api aus.
  3. Kopieren Sie dieses Token und bewahren Sie es sicher auf.
Stellen Sie sicher, dass Sie das Token des Dienstkontos auswählen und nicht Ihr Personal Access Token aus den Nutzereinstellungen. Devin soll als Dienstkonto agieren, nicht in Ihrem Namen. Dieses Token verwenden Sie, wenn Sie die GitLab-Verbindung in Devin hinzufügen.

Schritt 4: Die GitLab-Verbindung in Devin hinzufügen

In Devin:
  1. Gehen Sie zu Enterprise Settings
  2. Öffnen Sie Connections
  3. Fügen Sie eine neue Verbindung hinzu
  4. Geben Sie Folgendes ein:
    • Ihre self-hosted GitLab-URL (falls zutreffend)
GitLab-Verbindungs-URL hinzufügen
  • Das für das Dienstkonto erstellte Personal Access Token
Dadurch wird die GitLab-Verbindung auf Enterprise-Ebene erstellt.

Schritt 5: Webhook konfigurieren

Durch das Konfigurieren eines Webhooks kann Devin automatisch Echtzeitbenachrichtigungen erhalten, wenn bestimmte Ereignisse in GitLab eintreten (z. B. beim Öffnen oder Aktualisieren von Merge Requests oder beim Kommentieren von Merge Requests). So konfigurieren Sie den Webhook:
  1. Suchen Sie in Enterprise Settings > Connections nach der GitLab-Instanz, die Sie gerade hinzugefügt haben
  2. Klicken Sie auf das Dropdown-Menü Manage
  3. Wählen Sie Webhook konfigurieren
  4. Folgen Sie den bereitgestellten Befehlen, um die Einrichtung abzuschließen
Webhook konfigurieren
Nach der Konfiguration kann Devin in Echtzeit auf GitLab-Ereignisse reagieren, anstatt auf regelmäßige Abfragen angewiesen zu sein.

Schritt 6: Repository-Zugriff überprüfen

Nach dem Hinzufügen der Verbindung:
  1. Vergewissern Sie sich, dass das Dienstkonto Zugriff auf die Repositorys hat, die Sie verwenden möchten
  2. Wenn Repositorys in Devin nicht sofort angezeigt werden, aktualisieren Sie die Repository-Liste manuell
  3. Gehen Sie zu Enterprise Repositories
  4. Wählen Sie die richtige Organisation aus
Enterprise Repositories
  1. Öffnen Sie Manage Permissions
  2. Fügen Sie die relevanten Repositorys mit den entsprechenden Lese-/Schreibberechtigungen hinzu
Manage repository permissions
Wenn Repos fehlen, kann das daran liegen, dass Devin die Repository-Liste regelmäßig und nicht sofort aktualisiert.

Teil 2: Nutzerverknüpfung für self-hosted GitLab aktivieren

Schritt 7: Eine OAuth-Anwendung in der self-hosted GitLab-Instanz registrieren

Damit einzelne Nutzer ihre GitLab-Identität mit Devin verknüpfen können, muss der Admin für die self-hosted GitLab-Instanz eine OAuth-App registrieren. In Devin:
  1. Gehen Sie zum Bereich für die Enterprise-GitLab-Verbindung
  2. Öffnen Sie Erweitert
  3. Gehen Sie zum Abschnitt für self-hosted GitLab
  4. Starten Sie den Ablauf, um eine OAuth-Anwendung zu registrieren
OAuth-Anwendung registrieren

Schritt 8: OAuth-App-Registrierung in GitLab abschließen

Folgen Sie dem Link im Registrierungs-Modal, um das GitLab-Anwendungsformular zu öffnen. Füllen Sie die Felder wie gezeigt aus:
  1. Stellen Sie Name und Redirect URI genau wie im Devin-Modal gezeigt ein
  2. Aktivieren Sie das Kontrollkästchen Confidential
  3. Wählen Sie den api-Geltungsbereich aus
  4. Klicken Sie auf Save application
GitLab-OAuth-App-Einstellungen
  1. Kopieren Sie die Application ID und das Application Secret aus GitLab
  2. Kehren Sie zu Devin zurück und fügen Sie diese Werte in das Registrierungs-Modal ein
  3. Klicken Sie auf Register
Damit ist die auf Administratorseite erforderliche Einrichtung für die Verknüpfung von Nutzeridentitäten abgeschlossen.

Teil 3: Voraussetzung: Mitgliedschaft in der Organisation

Schritt 9: Stellen Sie sicher, dass der Nutzer zur richtigen Devin-Organisation gehört

Bevor ein Nutzer sein GitLab-Konto verknüpfen kann, muss er Member einer Devin-Organisation mit GitLab-Repositoryberechtigungen sein. In Devin:
  1. Gehen Sie zum Bereich für die Organisationsmitgliedschaft
  2. Vergewissern Sie sich, dass der Nutzer zu einer Devin-Organisation mit GitLab-Repositoryberechtigungen gehört
  3. Falls nicht, fügen Sie ihn zuerst hinzu
Personal Connections zeigt nur Integrationen für Organisationen an, denen der Nutzer angehört. Wenn ein Nutzer keiner Devin-Organisation mit GitLab-Repositoryberechtigungen angehört, wird die GitLab-Integration möglicherweise gar nicht angezeigt.

Teil 4: Setup für Endnutzer

Schritt 10: Personal Connections öffnen

Als Endnutzer in Devin:
  1. Gehe zu Personal Connections
  2. Suche nach der self-hosted GitLab-Integration
Wenn sie nicht angezeigt wird, prüfe zuerst, ob du Mitglied der Organisation bist.
Sobald die Integration angezeigt wird:
  1. Wählen Sie die self-hosted GitLab-Verbindung aus
  2. Schließen Sie den Verknüpfungsvorgang ab
  3. Verknüpfen Sie das GitLab-Konto des Nutzers mit seinem Devin-Konto
Danach sollte Devin GitLab-Vorgänge im Namen dieses Nutzers ausführen können.