Zum Inhalt

Mit GitLab-Ressourcen ist es möglich, GitLab-Projekte in einem Coscine-Projekt zu verlinken und mit eigenen Metadaten zu versehen. So können Sie alle Daten an einem Ort verwalten.

Icon, welches auf der Coscine-Plattform zur Darstellung der GitLab-Ressource verwendet wird. Dargestellt ist in dunkelblau ein Ordnersymbol mit dem Symbol eines Fuchses darauf.

Abbildung 1 – Icon einer GitLab-Ressource

Eigenschaften einer GitLab-Ressource

  • Speicherplatz: Da GitLab-Ressourcen keine Daten in Coscine speichern, sondern nur verlinken, benötigt diese Ressource keinen Speicherplatz.
  • Anwendungsfälle: GitLab-Projekte
  • Zugriffswege: Bedienoberfläche, API
  • Metadaten: Bei der Erstellung einer GitLab-Ressource wird ein Metadatenprofil ausgewählt. Dieses kann für jede Datei im GitLab-Projekt in Coscine ausgefüllt werden.
  • Sonstige Besonderheiten: Die Sicherheit und Zugänglichkeit der Daten ist vom verlinkten GitLab-Anbieter abhängig. Coscine übernimmt keine Verantwortung für diese Daten. Eine GitLab-Ressource kann in den Read-only-Modus versetzt werden. Dadurch sind alle in Coscine zu den Dateien eingetragenen Metadaten schreibgeschützt. Es findet dadurch keine Veränderung Ihres GitLab-Projektes statt.

Eine GitLab-Ressource erstellen und nutzen

  • Wählen Sie bei der Erstellung einer Ressource in Schritt 1 GitLab aus. Daraufhin öffnet sich die Seite zum Einrichten einer GitLab-Ressource (siehe Abbildung 1).
  • Geben Sie die vollständige Domain der GitLab-Instanz ein, die Sie nutzen (z. B. https://gitlab.git.nrw).
  • Geben Sie das Zugriffstoken für das GitLab-Projekt oder die GitLab-Gruppe ein, das oder die Sie mit Coscine verknüpfen wollen.
  • Überprüfen Sie die GitLab-Verbindung mit einem Klick auf die blaue Schaltfläche mit der Aufschrift Überprüfen der GitLab-Verbindung.
  • Wählen Sie das GitLab-Projekt und den GitLab-Branchs aus den Drop-Down-Listen aus.
  • Akzeptieren Sie die Nutzungsbedingungen und Datenschutzerklärung Ihres GitLab-Anbieters. Da der Anbieter der GitLab-Instanz variabel ist (Institutionen können jeweils ihre eigene GitLab-Instanz aufsetzen und verwalten), müssen Sie die jeweils für Sie gültigen Bedingungen Ihres Anbieters kennen und einhalten.

Git-Ressource Interface

Abbildung 1 - Einrichten der GitLab-Ressource

Nach Erstellen der GitLab-Ressource werden in ihr alle Dateien angezeigt, die auch im GitLab-Projekt enthalten sind. Je nach Berechtigungen des genutzten GitLab-Zugriffstokens sind verschiedene Aktionen mit den Dateien über Coscine möglich. Zusätzlich können in einer GitLab-Ressource, wie in anderen Coscine-Ressourcen auch, die Metadaten zu den einzelnen Dateien eingetragen werden.

Achtung: Berechtigungen des GitLab-Zugangstokens und Coscine-Rollen sind unabhängig voneinander

Die definierten Rollen und Scopes des Zugriffstokens beeinflussen, in welchem Umfang der Dateizugriff durch Coscine möglich ist (z. B. Lese- oder Schreibrechte). Durch die Coscine-Rollen wird beeinflusst, welche Mitglieder des Coscine-Projekts Dateizugriff erhalten. Wichtig ist diese Unterscheidung vor allem, wenn die Personen im verknüpften GitLab-Projekt nicht mit den Mitgliedern des Coscine-Projektes übereinstimmen.

GitLab-Zugriffstoken in Coscine

Um GitLab-Projekte als Ressourcen zu integrieren, verwendet Coscine GitLab-Zugriffstokenoken. Nutzende können diese Token in GitLab unter Einstellungen > Zugriffstoken erstellen, um Berechtigungen auf Gruppen- und Projektebene zu erteilen (siehe Abbildung 2). Diese Option ist nur für Nutzende mit Eigentümerberechtigungen in GitLab sichtbar. GitLab-Zugriffstoken können auf Gruppen- und Projektebene individuell erstellt werden.

'Accses Token' unter dem Reiter 'Einstellungen' in GitLab.

Abbildung 2 – GitLab-Zugriffstokens

Je nach Berechtigungen, die das GitLab-Zugriffstoken Coscine geben, sind folgende Aktionen möglich:

  • Anzeige der GitLab-Dateien in Coscine
  • Hochladen von Dateien in GitLab über Coscine
  • Überschreiben von Dateien in GitLab über Coscine
  • Löschen von Dateien in GitLab über Coscine

Unabhängig von den mit dem GitLab-Zugriffstoken verknüpften Berechtigungen können auch in Coscine Rollen mit verschiedenen Zugriffsrechten vergeben werden.

Nötige Berechtigungen des GitLab-Zugriffstokens

Eine nahtlose Kommunikation zwischen Coscine und GitLab erfordert spezifische Berechtigungen für das GitLab-Zugriffstoken, die als Geltungsbereiche bezeichnet werden.

Der Geltungsbereich api ist obligatorisch, damit das GitLab-Zugriffstoken autorisiert ist, um die Funktionalitäten der GitLab-API nutzen zu dürfen (siehe Abbildung 3). Coscine ist folglich dazu befähigt, sämtliche Aktionen auszuführen, wie beispielsweise das Lesen und Schreiben von Dateien.

Auswahlliste für die Geltungsbereiche der zu erstellenden Token.

Abbildung 3 – GitLab-Zugriffstoken-Geltungsbereiche

Bezüglich der Rollen gilt die Empfehlung, dem GitLab-Zugriffstoken die Rolle Maintainer oder mindestens die Rolle Developer zuzuweisen (siehe Abbildung 4). Als Faustregel gilt, dass Sie die Rolle des GitLab-Zugriffstokens so wählen sollten, als wäre Coscine eine reguläre Nutzerin oder ein regulärer Nutzer in Ihrer GitLab-Gruppe/Ihrem GitLab-Projekt.

Rollenauswahl für Nutzende, denen in der GitLab-Instanz bestimmte Rechte erteilt werden sollen.

Abbildung 4 – GitLab-Zugriffstoken-Rollen