DLR Portal
Home|Sitemap|Kontakt|Barrierefreiheit Impressum und Nutzungsbedingungen Datenschutz Cookies & Tracking |English
Sie sind hier: Home:Software:RepoGuard
Erweiterte Suche
Aktuelles
Institut
Abteilungen
Themen
Projekte
Software
Open Source
DataFinder
DAVInspector
Plug&Care Connector
RepoGuard
RCE
Veröffentlichungen
Karriere
Drucken

RepoGuard



 RepoGuard
zum Bild RepoGuard

Bei der Entwicklung von Software ist eine gute Prozessunterstützung durch geeignete Software-Engineering-Werkzeuge sinnvoll, um effizient arbeiten zu können. Die dazu notwendige Tool-Infrastruktur kann entweder durch kommerziell verfügbare integrierte Werkzeug-Suites abgedeckt oder durch eine Integration von frei verfügbaren oder kommerziellen Tools unterschiedlicher Hersteller aufgebaut werden.

RepoGuard ist eine Software, die es erlaubt ein Versionsverwaltungssystem, wie z.B. Subversion, Perforce oder GIT, in eine existierende Arbeitsumgebung zu integrieren und umfangreiche Überprüfungen des Source-Codes beim Einchecken durchzuführen. Besonders häufig auftretende Anwendungsfälle von RepoGuard sind dabei die Anbindung von Issue- oder Bug-Tracking-Systemen an Code-Repositories und die Überprüfung von Kodierrichtlinien des eingecheckten Source-Codes. RepoGuard ist aber darüber hinaus allgemein für beliebige Aufgaben einsetzbar.

 RepoGuard Architektur
zum Bild RepoGuard Architektur

RepoGuard ist als ein erweiterbares Framework realisiert. Durch das Erweitern mit Plug-Ins für Überprüfungen ("checks") können beliebige Zustände und Eigenschaften von Source-Code oder externen Datenbanken abgefragt werden. Durch beliebig viele Ausgabe-Plug-Ins ("handler") können alle notwendigen Aktionen durchgeführt werden. In beiden Arten von Plug-Ins werden häufig externe Tools von Drittanbietern (Open-Source oder kommerziell) angebunden, um die eigentlichen Überprüfungen oder Aktionen durchzuführen. Der Aufruf von RepoGuard erfolgt als Hook-Skript durch das entsprechende VCS direkt auf dem Server des Repositories. Zur Nutzung ist kein somit zusätzlicher Server-Prozess notwendig. Die Implementierung von RepoGuard ist plattformunabhängig in Python erfolgt.

RepoGuard wird im DLR entwickelt und eingesetzt und ist als Open-Source-Software frei verfügbar (Apache License V2.0). Informationen zu aktuellen Versionen finden sich auf der RepoGuard-Projektseite.

Beispiele für Überprüfungen

Mögliche Überprüfungen von Source-Code oder sonstigen Randbedingungen:

  • Überprüfung von Kodierrichtlinien, z.B. durch Aufruf von Checkstyle für Java-Code oder Pylint für Python-Code.
  • Durchführung von Source-Code-Analysen, z.B. durch Aufruf von Findbugs für Java-Code oder QS C/C++ für C++-Code.
  • Überprüfung von Zugriffsrechten durch Prüfung der Rechte von Benutzern auf das gesamte Repository, einzelne Verzeichnisse oder einzelne Dateien.
  • Anbindung an Issue- oder Bug-Tracking-Systeme, z.B. zur Überprüfung auf Gültigkeit von Issue-IDs.

Beispiele für Aktionen

Mögliche Ausgabe-Ziele für Ergebnisse der Repository-Vorgänge und SVNChecker-Checks sind:

  • Versand einer E-Mail
  • Aktualisierung einer Log-Datei
  • Ausgabe von Informationen auf der Konsole
  • Eintrag in eine Datenbank ("Commit-Datenbank")
  • Eintrag in ein Issue- oder Bug-Tracking-System
  • Aktualisierung eines RSS-Feeds
  • Erzeugung von Weblog-Einträgen

Links

  • RepoGuard-Projektseite (tigris.org)
  • Präsentation "Einsatz von Subversion bei der Entwicklung technisch-wissenschaftlicher Software"
  • Präsentation "RepoGuard - Validation Framework for Version Control Systems"


Kontakt
Tobias Schlauch
Deutsches Zentrum für Luft- und Raumfahrt (DLR)

Institut für Softwaretechnologie
, Intelligente und verteilte Systeme
Braunschweig

Tel.: +49 531 295-2765

Fax: +49 531 295-2767

Artikel zum Thema
SVNChecker
Open Source
Software
DLR Software
Verwandte Themen im DLR
Management von Dokumenten und Informationen
Copyright © 2022 Deutsches Zentrum für Luft- und Raumfahrt e.V. (DLR). Alle Rechte vorbehalten.