Versionsverwaltung: GitLab 13.11 schickt Agenten ins Kubernetes-Cluster
Das aktuelle Release erweitert die kommerziellen Varianten um Compliance-Konfigurationen und einen Kubernetes-Agenten.
Das Unternehmen GitLab hat die gleichnamige Plattform in Version 13.11 veröffentlicht. Erneut finden sich die größten Ergänzungen in den kommerziellen Varianten Premium und Ultimate. Dabei stehen die Integration mit Kubernetes und die Umsetzung von Compliance-Richtlinien durch entsprechende Pipelines im Vordergrund.
Nutzer der kostenfreien Varianten finden unter anderem einen dedizierten Admin-Modus und die Integration des statischen Analysewerkzeugs Semgrep. Insgesamt verkündet GitLab für die aktuelle Version über 50 Neuerungen und Ergänzungen.
Saubere Einbindung in Kubernetes
Der GitLab-Kubernetes-Agent befindet sich seit geraumer Zeit in Arbeit und ist nun verfügbar. Er bietet eine direkte Integration in Kubernetes und ermöglicht zunächst die Pull-basierte Verteilung von Software sowie die Einbindung von Netzwerk-Security-Vorgaben. In Kürze soll der Agent auch das Push-basierte Deployment anbieten. Im Gegensatz zum bisherigen Ansatz der zertifikatbasierten Anbindung an Kubernetes erfordert der Agent keine explizite Öffnung des Clusters für GitLab. Der Kubernetes-Agent ist Bestandteil der Premium- und Ultimate-Varianten sowohl für das SaaS-Angebot (Software as a Service) als auch für die im eigenen Rechenzentrum gehostete GitLab-Plattform.
Der GitLab-Operator befindet sich derzeit noch im Betastadium. Er dient zum Einrichten von Instanzen der Versionsverwaltung in OpenShift und Kubernetes und ist Bestandteil aller GitLab-Produkte inklusive der kostenfreien. Mittelfristig soll er die Einrichtung über das GitLab Helm Chart ersetzen, aber während der Betaphase rät GitLab vom produktiven Einsatz ab. Bereits in Version 13.10 hatte das Unternehmen den GitLab Runner für Red Hat OpenShift zum Verwalten des Lebenszyklus von GitLab-Runner-Instanzen auf OpenShift eingeführt.
Eine Pipeline fĂĽr saubere Richtlinien
Pipelines fĂĽr Compliance-Frameworks sollen die Einhaltung von Richtlinien wie der DSGVO (Datenschutz-Grundverordnung) beziehungsweise der GDPR (General Data Protection Regulation), des HIPAA (Health Insurance Portability and Accountability Act), der PCI-DSS (Payment Card Industry-Data Security Standard), von SOC 2 (Service Organization Control 2) und SOX (Sarbanes-Oxley) sicherstellen.
Die Ultimate-Variante bringt im aktuellen Release Methoden zum Aufsetzen von Pipelinedefinitionen für die jeweiligen Frameworks mit, die die Plattform automatisch allen betroffenen Projekten zuweist. Die Pipelines mit den Anforderungen lassen sich erweitern, aber nicht verändern. Eine weitere Neuerung für die Einhaltung von Richtlinien sind anpassbare Compliance-Framework-Labels, um neben den standardmäßigen eigene Frameworks zu kennzeichnen.
SprachĂĽbergreifende Codeanalyse
Die Anbindung an quelloffene statische Codeanalysetools über GitLab SAST (Static Application Security Testing) bekommt mit Semgrep von r2c einen Neuzugang, der sprachübergreifend arbeitet. Die Regeln lassen sich wohl recht einfach anhand von passendem Code erstellen, sodass für das Erstellen und Anpassen kein tieferes Verständnis der Syntaxbäume (Abstract Syntax Trees, AST) im Code erforderlich ist. Darüber hinaus existiert für Semgrep ein Open-Source-Verzeichnis mit gut 1000 Regeln aus der Community.
Die Einbindung von Semgrep betrifft ebenso alle GitLab-Varianten wie der neu eingeführte Admin Mode, der die Sicherheit verbessern soll. Vor dem Ausführen administrativer Befehle ist eine separate Authentifizierung erforderlich, und ansonsten arbeiten Admins mit denselben Rechten wie reguläre Nutzerinnen und Nutzer.
Weitere Neuerungen in GitLab 13.11 wie Zeitpläne für die Rufbereitschaft und das optional
-SchlĂĽsselwort in der needs
-Syntax zum Konfigurieren von Jobs in den CI/CD-Pipelines (Continuous Integration, Continuous Delivery) lassen sich der offiziellen AnkĂĽndigung der Versionsverwaltungsplattform entnehmen. Dort ist auch erkennbar, welche neuen Funktionen jeweils fĂĽr die Varianten Free, Premium und Ultimate verfĂĽgbar sind.
(rme)