GitLab 11.7 wurde mit Releases, mehrstufigen verschachtelten Epen und der Registrierung von NPM-Paketen veröffentlicht

Ein Bild, um Aufmerksamkeit zu erregen


Release Management leicht gemacht


GitLab 11.7 führt Releases für Pläne ein, die mit Core beginnen. Benutzer erhalten jetzt eine vollständige Release-Besetzung - den Quellcode mit allen Artefakten des Projekts. Dadurch entfällt die Notwendigkeit, den Quellcode, das Erstellungsprotokoll, andere Metadaten oder Artefakte im Zusammenhang mit dieser Version manuell an einem Ort zu erfassen. Diese Funktion wird in Zukunft als Grundlage für ein detaillierteres und komplexeres Release-Management dienen.


Das Portfoliomanagement unterstützt jetzt komplexere Projektstrukturpläne


Verschachtelte Epen auf mehreren Ebenen sind die neueste Erweiterung von Portfolio Management in GitLab, die im Ultimate-Plan verfügbar ist. Mit verschachtelten Epen können Sie die Arbeit in mehrstufige Strukturen aufteilen, um komplexere Projekte und Arbeitspläne zu erstellen. Epen können jetzt Aufgaben und andere Epen enthalten. Eine solche Struktur wird eine direkte Verbindung zwischen Planung und Aufgaben für die Implementierung herstellen.


Optimierung der JavaScript-Entwicklung mit NPM-Paketregistern


Gitlab 11.7 im Premium-Plan fügt NPM- Paketregistrierungen direkt zu GitLab hinzu und bietet eine standardmäßige, sicherere Möglichkeit, NPM-Pakete freizugeben und ihre Versionen zwischen Projekten zu verwalten. Geben Sie einfach den Paketnamen ein und NPM mit GitLab erledigt alles, was Sie brauchen, in derselben Oberfläche.


Und mehr


Es ist immer schwierig zu entscheiden, welche Funktionen in einen kurzen Überblick über die monatliche Veröffentlichung aufgenommen werden sollen, daher werden wir einige weitere coole Innovationen nennen:


  • Schließen einer Sicherheitsanfälligkeit mithilfe einer Patch-Datei : GitLab-Sicherheitstools helfen beim Erkennen von Sicherheitsanfälligkeiten. Mit der Veröffentlichung von GitLab 11.7 besteht die Möglichkeit, die Sicherheitsanfälligkeit zu beheben und eine Lösung für von Yarn verwaltete Node.js-Projekte anzubieten. Bisher ist dies das erste offizielle Feature, das Schwachstellen abdeckt, aber sicherlich nicht das letzte!


  • Integration mit Kubernetes per API : Für diejenigen, die wirklich viele Kubernetes-Cluster erstellen oder sich als Meister in der Arbeit mit Kubernetes betrachten, haben wir die Kubernetes-API hinzugefügt, die die manuelle Arbeit erheblich reduziert und das Leben vereinfacht.


  • Anzeigen projektübergreifender Pipeline-Links : Dank unserer neuen Funktion - verbesserte Anzeige projektübergreifender Pipelines - stehen Ihnen jetzt alle erforderlichen Informationen zur Verfügung.



Als nächstes finden Sie eine vollständige Liste der GitLab 11.7-Release-Innovationen!


Wir laden Sie zu unseren Treffen ein


GitLab MVP-Abzeichen


MVP dieses Monats - MortyChoi


MortyChoi hat Unterstützung für private Go-Pakete in Untergruppen hinzugefügt. Vielen Dank für diesen Beitrag, der dazu beitragen wird, diese beliebte Sprache in GitLab weiter zu unterstützen!


Hauptmerkmale der Veröffentlichung von GitLab 11.7


Geben Sie Ihre Projektversionen frei


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Mit unserer neuen Funktion - Releases - können Sie Releases in GitLab erstellen und auf der Übersichtsseite anzeigen. Releases - "Cast" des aktuellen Status des Codes, der Links und anderer Metadaten oder Artefakte im Zusammenhang mit der veröffentlichten Version des Codes. Benutzer Ihres Projekts können jetzt problemlos auf die neueste veröffentlichte Version zugreifen.


Veröffentlichen Sie Releases für Ihre Projekte


Freigabedokumentation und Originalticket .


Geschichtete verschachtelte Epen


(ULTIMATIV, GOLD)


Epen und Aufgaben zusammen wirken sich hervorragend auf die Flexibilität langfristiger Arbeitspläne aus, aber bisher konnten mit ihrer Hilfe nur zweistufige Strukturen erstellt werden.


In dieser Version stellen wir verschachtelte Epen vor: Sie können jetzt Aufgaben und andere Epen enthalten, mit denen Sie ein mehrstufiges Projektaufschlüsselungssystem erstellen können. Auf diese Weise können Sie noch langfristigere strategische Pläne oder Organisationsziele erstellen - um Epen auf hoher Ebene mit mehreren Epenebenen zu erstellen, die die Arbeit vom Standpunkt der Lieferung bis hin zu den Aufgaben in messbare Teile aufteilen.


Mehrstufige Kinderepen


Dokumentation zu Epen und Originalticket .


Projektübergreifende Pipeline-Beziehungen anzeigen


(PREMIUM, ULTIMATIV, SILBER, GOLD)


Jetzt können Sie in der Grafik auf der Pipeline-Anzeigeseite die eingehenden und ausgehenden Abhängigkeiten in den Interprojekt-Pipelines erweitern und sich einen Überblick über alle beteiligten Pipelines verschaffen - unabhängig davon, in welchem ​​Projekt sie beginnen oder enden.


Projektübergreifendes Pipeline-Browsing


Dokumentation zu den Fahrplänen der Förderer und zum Originalticket .


Schließen einer Sicherheitsanfälligkeit mithilfe einer Patch-Datei


(ULTIMATIV, GOLD)


GitLab kann verschiedene Arten von Schwachstellen in Ihren Anwendungen erkennen und mögliche Lösungen vorschlagen.


Ab der Veröffentlichung von GitLab 11.7 können Sie die Patch-Datei herunterladen und mit dem git apply auf Ihr Repository git apply . Senden Sie dann die Änderungen an das Repository, und das Sicherheitspanel bestätigt, dass die Sicherheitsanfälligkeit geschlossen ist. Dies vereinfacht den Prozess der Lösung solcher Probleme und reduziert die Zeit, die zum Anwenden der Lösung erforderlich ist. Derzeit werden beim Scannen von Abhängigkeiten bekannte Schwachstellen in NodeJS-Projekten gemeldet, auf denen der Garnpaket-Manager ausgeführt wird. Dies erfordert keinen zusätzlichen Aufwand. Der Patch wird im Fenster mit den Schwachstellendetails angezeigt, sobald er verfügbar ist.


Beheben Sie die Sicherheitsanfälligkeit mit der Patch-Datei


Dokumentation der vorgeschlagenen Lösungen und des Originaltickets .


Möglichkeit, Anwendungsgeheimnisschlüssel mit Variablen in Kubernetes festzulegen


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Bediener und Administratoren müssen geheime Schlüssel außerhalb des Anwendungsrepositorys einrichten, um das Risiko der Offenlegung sensibler Daten zu verringern. GitLab bietet jetzt die Möglichkeit, geheime Schlüssel als Umgebungsvariablen zu konfigurieren, die für die Anwendung in Ihrem Kubernetes-Cluster verfügbar sind.


Starten Sie einfach den Variablennamen mit K8S_SECRET_ , und die entsprechende CI-Pipeline akzeptiert ihn als geheimen Schlüssel Ihrer Kubernetes-Anwendung.


Konfigurieren Sie die Kubernetes-App-Geheimnisse als Variablen


Dokumentation zum Einrichten geheimer Schlüssel und eines Originaltickets .


NPM-Paketregistrierung


(PREMIUM, ULTIMATIV, SILBER, GOLD)


JavaScript-Entwickler benötigen eine zuverlässige, standardisierte Methode, um NPM-Pakete gemeinsam zu nutzen und ihre Versionen zwischen Projekten zu verwalten. Die Paketregistrierung für NPM bietet Entwicklern von Low-Level-Diensten diese Möglichkeit, ihren Code zu veröffentlichen.


In Version 11.7 von GitLab haben wir eine Registrierung von NPM-Paketen hinzugefügt, die in GitLab integriert sind. Dies bedeutet, dass Entwickler jetzt eine einfache Paketnamenskonvention verwenden können, um die Bibliothek in jedem Node.js-Projekt zu verwenden, während NPM und GitLab den Rest erledigen. All dies ist über dieselbe Schnittstelle verfügbar. Diese Funktion wird in GitLab Premium verfügbar sein.


Schauen Sie sich das Beispielprojekt an, in dem die Montage und Einfügung in die Registrierung erfolgt.


NPM-Registrierung


Dokumentation zur Registrierung von NPM-Paketen und zum Originalticket .


API-Unterstützung für die Kubernetes-Integration


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


In dieser Version haben wir API-Unterstützung für die Integration in Kubernetes hinzugefügt. Dies bedeutet, dass alle Aktionen, die jetzt in der GUI verfügbar sind - Hinzufügen, Entfernen und Auflisten von Kubernetes-Clustern - jetzt über die API verfügbar sind. Dies gibt Entwicklungsteams die Möglichkeit, während des Entwicklungsprozesses Cluster zu erstellen.


API-Unterstützung für die Kubernetes-Integration


Cluster-API-Dokumentation und Originalticket .


Weitere Verbesserungen in GitLab 11.7


Suchfilterfenster zum Navigieren in Task Boards


(STARTER, PREMIUM, ULTIMATE, BRONZE, SILBER, GOLD)


Die Entwicklungsteams verwenden häufig mehrere Taskboards, was die Navigation in der Dropdown-Liste erschwert, wenn zu viele Aufgaben vorhanden sind. In dieser Version haben wir einen Suchfilter hinzugefügt, um dieses Problem zu lösen. Jetzt können Sie einfach einige Zeichen in das Suchfeld eingeben, um die Anzahl der Aufgaben schnell auf die für Sie interessanten zu reduzieren, was die Navigation erheblich vereinfacht.


Suchfilterfeld für Issue Board Navigation


Dokumentation in der Taskleiste und das Originalticket .


Neugestaltung der Projektliste


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Projekte sind eine der Hauptkomponenten von GitLab. Daher versuchen wir, das Erscheinungsbild von Projektlisten zu verbessern und die Arbeit mit ihnen zu vereinfachen.


In GitLab 11.7 stellen wir ein neues Design für die Benutzeroberfläche von Projektlisten vor, das sich auf die Lesbarkeit und die Bereitstellung eines kurzen Berichts über die Projektaktivität konzentriert. Wir haben jeder Zeile in der Liste der Projekte einen Platz für zusätzliche Informationen zum Projekt und Leerzeichen hinzugefügt, und wir planen, das Design basierend auf Ihrem Feedback weiter zu verbessern .


Neugestaltung der Projektliste


Projektdokumentation und Originalticket .


Unterstützung für Sammelpostfächer, einschließlich Microsoft Exchange und Google Groups, für Funktionen, die eingehende E-Mails verwenden


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


GitLab bietet verschiedene coole Funktionen, die eingehende E-Mails verwenden, z. B. E-Mail-Antwort , Ticketerstellung per E- Mail , Erstellung von Zusammenführungsanforderungen (in der russischen Lokalisierung von GitLab „Zusammenführungsanforderung“) per E-Mail und technischen Support per E-Mail . Bisher konnten diese Funktionen nur verwendet werden, wenn Ihr E-Mail-Server die Unteradressierungsfunktion unterstützte.


Ab dieser Version unterstützt GitLab sowohl Unteradressierungs- als auch Sammelpostfächer mit einem neuen Nachrichtenformat, das die Integration von GitLab in noch mehr E-Mail-Server ermöglicht, einschließlich Microsoft Exchange und Google Groups, die keine Unteradressierung unterstützen. .


Dokumentation per eingehender E-Mail und Originalticket .


Importieren Sie Aufgaben im CSV-Format


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Wenn Entwicklungsteams anfangen, GitLab zu verwenden, stellt sich häufig heraus, dass sie unterschiedliche Tools verwenden und Daten geerbt haben. Möglicherweise verwenden Sie Jira gerade, möchten jedoch mit der Aufgabenverwaltung in GitLab fortfahren.


Ab dieser Version ist dieser Übergang viel einfacher. Da viele Aufgabenverfolgungssysteme den Export von CSV-Dateien unterstützen, können Sie solche Aufgaben jetzt in GitLab importieren. Auf diese Weise können Sie weiterhin an aktuellen Aufgaben arbeiten, indem Sie ältere Daten in GitLab importieren, um sie bei Bedarf weiter zu suchen und abzurufen. Dies funktioniert mit Jira oder einem anderen Task-Tracking-System, das den CSV-Export unterstützt.


GitLab verfügt bereits über eine Funktion zum Exportieren von CSV-Dateien .


Importprobleme CSV


Dokumentation zum Importieren von CSV-Dateien und des Originaltickets .


Generieren einer kurzen SHA-Sequenz als Umgebungsvariable


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


In Git sind SHAs Zeiger auf bestimmte Objekte (z. B. Commits) im Git-Repository, die aus 40 Zeichen bestehen. Oft muss nicht die gesamte Zeichenfolge angezeigt werden, und Sie möchten, dass nur die ersten acht Zeichen der SHA angezeigt werden, um dem Link schnell zu folgen, obwohl diese Sequenz möglicherweise nicht eindeutig ist. Wir haben die Umgebungsvariable CI_COMMIT_SHORT_SHA für die CI-Pipeline hinzugefügt, um dieses Problem zu lösen. Auf diese Weise können Sie den ersten Teil des SHA-Commits generieren.


Short Commit SHA als Umgebungsvariable verfügbar


Dokumentation zu Umgebungsvariablen und dem Originalticket .


Strengere Einschränkungen bei der Bestätigung Ihrer Zusammenführungsanforderungen


(STARTER, PREMIUM, ULTIMATE, BRONZE, SILBER, GOLD)


Eine Codeüberprüfung ist eine Vorgehensweise, die in jedem erfolgreichen Projekt von jemandem durchgeführt werden sollte, der nicht der Autor der Änderung ist. Standardmäßig ist die Bestätigung Ihrer Zusammenführungsanfragen untersagt. Die Urheberschaft der Zusammenführungsanforderung und nicht die darin enthaltenen Commits wurden jedoch in dieser Einschränkung berücksichtigt.


Ab GitLab 11.7 verhindern Einschränkungen bei der Bestätigung ihrer Zusammenführungsanforderungen auch die Bestätigung der Zusammenführungsanforderungen durch Personen, die Änderungen an ihnen vorgenommen haben, sodass Zusammenführungsanforderungen für die Urheberschaft mehrerer Entwickler völlig unabhängige Überprüfungen und Bestätigungen erhalten.


Dokumentation zur Bestätigung von Zusammenführungsanforderungen und ein Originalticket .


Die Autorisierungsunterstützung für das Netzwerk umfasst


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Wenn Sie externe Dateien mit dem Schlüsselwort include in Ihre Pipeline-Definition aufnehmen, werden diese Dateien über HTTP / HTTPS angefordert. Jetzt können Sie mit den Autorisierungsdaten, mit denen die Pipeline arbeitet, ohne öffentlichen Zugriff auf YAML-Dateien in einem anderen Projekt zugreifen (z. B. ein privates Projekt auf GitLab.com).


Die YAML-Dokumentation enthält das Originalticket .


Filterung von Sicherheitslücken in der Gruppe


(ULTIMATIV, GOLD)


Mithilfe von Gruppensicherheits-Dashboards können Sicherheitsteams alles unter Kontrolle halten und Schwachstellen anzeigen, die sich auf ihre Gruppen auswirken.


Mit GitLab 11.7 können Benutzer die angezeigten Schwachstellen nach Schweregrad, Berichtstyp und Projektname filtern. Dank dieser Funktion können sie sich auf das konzentrieren, was sie benötigen, und schneller auf ihre Daten zugreifen. Dies ist besonders nützlich, wenn die Liste viele Einträge enthält.


Filtern Sie Schwachstellen im Group Security Dashboard


Dokumentation zur Anzeige von Sicherheitslücken und ein Originalticket .


Das Anzeigen von Abhängigkeits-Scan-Ergebnissen wird in einem Gruppensicherheitsfenster angezeigt


(ULTIMATIV, GOLD)


Das Sicherheitspanel der Gruppe wurde ursprünglich nur mit SAST- Ergebnissen veröffentlicht, sodass Benutzer andere Arten von Sicherheitslücken mit dieser Funktion nicht verwalten konnten.


Mit GitLab 11.7 wurden dem verfügbaren Datensatz Abhängigkeits-Scan- Ergebnisse hinzugefügt. Wenn Sie bereits die neue Berichtssyntax verwenden , werden die Ergebnisse automatisch im Sicherheitsbereich angezeigt. Die Auto DevOps- Vorlage wurde ebenfalls aktualisiert. Jetzt ist GitLab Runner Version 11.5 oder höher erforderlich, um den Abhängigkeitsscan ordnungsgemäß auszuführen.


Anzeigen der Ergebnisse des Abhängigkeits-Scans im Group Security Dashboard


Gruppensicherheitsdokumentation und Originalticket .


Einschließlich CI / CD-Dateien aus anderen Projekten und Vorlagen


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Mit dem Schlüsselwort include können Benutzer dynamisch CI / CD-Pipelines erstellen, wobei externe Dateien in die Konfiguration einbezogen werden. Bisher war dies nur für Dateien im Projekt-Repository oder für Remote-Dateien möglich, die über HTTP heruntergeladen wurden.


Mit GitLab 11.7 können Benutzer ihre Konfigurationsfragmente auch aus anderen Projekten und aus vordefinierten Vorlagen einfügen. GitLab enthält Snippets für bestimmte Jobs, z. B. sast oder dependency_scanning , damit Benutzer auf sie verweisen können, anstatt die aktuelle Definition zu kopieren und sast . Jobs werden beim Aktualisieren von GitLab automatisch auf die neueste Version aktualisiert, sodass keine manuellen Änderungen erforderlich sind.


Fügen Sie CI / CD-Dateien aus anderen Projekten und Vorlagen hinzu


Die YAML-Dokumentation enthält das Originalticket .


Standard-RBAC-Modus beim Erstellen eines Kubernetes-Clusters


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Das Sichern des Kubernetes-Clusters ist für die Steuerung und Einschränkung des Benutzerzugriffs auf den Cluster und die von diesen Personen zugelassenen Aktionen von entscheidender Bedeutung.


Ab GitLab 11.7 unterstützen alle Cluster standardmäßig RBAC während der Erstellung und bieten eine sicherere Infrastruktur.


Cluster- und RBAC-Dokumentation und Originalticket .


Unterstützung für private Go-Pakete in Untergruppen


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Auf GitLab gehostete Go-Pakete können mit dem Befehl go get installiert werden, dies wurde jedoch zuvor für private Projekte in Untergruppen nicht unterstützt. Ab GitLab 11.7 kann jedes Projekt als Go-Paket verwendet werden, einschließlich privater Projekte in Untergruppen.


Private Pakete werden vom Befehl go get Verwendung der .netrc und eines persönlichen Zugriffstokens im password .


Vielen Dank an MortyChoi für diese Funktion!


Untergruppendokumentation und Originalticket .


Unterstützung für NGINX Ingress 0.16.0+ Metriken


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Mit der Veröffentlichung von NGINX Ingress 0.16.0 werden Prometheus-Metriken nun nativ eingebettet , anstatt sich auf externe Exporttools zu verlassen.


GitLab 11.7 unterstützt jetzt Metriken, die aus NGINX Ingress 0.16.0+ exportiert wurden, und erkennt automatisch Durchsatz-, Latenz- und Bereitstellungsfehlerraten und zeigt diese an.


NGINX Ingress Dokumentation und Originalticket .


Überspringen von CI-Baugruppen während des Git-Pushs


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Wenn Benutzer die CI / CD-Pipeline für ein Commit nicht ausführen wollten, konnten sie der Commit-Beschreibung einen speziellen Hinweis [ci skip] oder [skip ci] hinzufügen. Viele Benutzer möchten oder können jedoch ihre Commit-Beschreibungen nicht ändern, um zusätzliche Informationen hinzuzufügen.


Ab GitLab 11.7 bei Verwendung von Git Version 2.10 und höher können Benutzer die Git-Push-Einstellungen verwenden , um zu verhindern, dass die Pipeline beim Senden eines Commits an GitLab gestartet wird. Jetzt können Sie git push -o ci.skip , um dasselbe Ziel zu erreichen, ohne die Commit-Beschreibung zu ändern.


Vielen Dank an Jonathon Reinhart für diese Funktion!


Dokumentation für fehlende CI-Jobs und das Originalticket .


GitLab Runner 11.7


(KERN, STARTER, PREMIUM, ULTIMATIV, KOSTENLOS, BRONZE, SILBER, GOLD)


Wir veröffentlichen auch GitLab Runner 11.7! GitLab Runner ist ein Open Source-Projekt, mit dem CI / CD-Jobs ausgeführt und Ergebnisse an GitLab zurückgesendet werden.


Die wichtigsten Änderungen:


Eine Liste aller Änderungen finden Sie im CHANGELOG GitLab Runner.


GitLab Runner-Dokumentation .




Detaillierte Versionshinweise und Anweisungen zum Aktualisieren / Installieren finden Sie im englischen Originalbeitrag: GitLab 11.7, das mit Releases, Multi-Level Child Epics und NPM Registry geliefert wird .


Cattidourden , Maryartkey , Ainoneko und Rishavant arbeiteten an der Übersetzung aus dem Englischen.

Source: https://habr.com/ru/post/de438478/


All Articles