Fedora und CentOS führen Git Forge aus. GitLab eröffnet 18 proprietäre Funktionen

Projekte CentOS и Fedora сообщили über die Entscheidung, einen kollaborativen Entwicklungsdienst Git Forge zu erstellen, der auf der GitLab-Plattform erstellt wird. GitLab wird zur primären Plattform für die Interaktion mit Git-Repositorys und zum Hosten von Projekten im Zusammenhang mit CentOS- und Fedora-Distributionen. Zuvor genutzter Dienst Seite wird weiterhin bestehen, aber in die Obhut einer an Weiterentwicklung interessierten Gemeinschaft übergeben. Pagure wird aus dem Support des bei Red Hat beschäftigten CPE-Teams (Community Platform Engineering) entfernt, das sich mit der Wartung der Infrastruktur für die Entwicklung und Veröffentlichung von Fedora- und CentOS-Releases beschäftigt.

Bei der Bewertung möglicher Lösungen für das neue Git Forge haben wir darüber nachgedacht
Pagure und Gitlab. Basierend auf einer Studie von ca 300 Bewertungen Aufgrund der Wünsche und Wünsche der Teilnehmer der Fedora-, CentOS-, RHEL- und CPE-Projekte wurden Funktionalitätsanforderungen formuliert und die Wahl fiel auf Gitlab. Neben Standardoperationen mit Repositories (Zusammenführen, Erstellen von Forks, Hinzufügen von Code usw.) wurden Sicherheit, Benutzerfreundlichkeit und Stabilität der Plattform als zentrale Anforderungen genannt.

Zu den Anforderungen gehörten Funktionen wie das Senden von Push-Anfragen über HTTPS, Möglichkeiten zur Beschränkung des Zugriffs auf Zweigstellen, Unterstützung für private Zweigstellen, Trennung des Zugriffs für externe und interne Benutzer (z. B. um an der Beseitigung von Schwachstellen während eines Embargos für die Offenlegung von Informationen über das Problem zu arbeiten). , Vertrautheitsschnittstelle, Vereinheitlichung von Subsystemen für die Arbeit mit Problemberichten, Code, Dokumentation und Planung neuer Funktionen, Verfügbarkeit von Tools für die Integration mit IDE, Unterstützung für Standard-Workflows.

Von den GitLab-Funktionen, die letztendlich die Entscheidung für diese Plattform beeinflussten, wurden die Unterstützung von Untergruppen mit selektivem Zugriff auf Repositorys, die Möglichkeit, einen Bot für automatische Zusammenführungen zu verwenden (CentOS Stream ist erforderlich, um Pakete mit dem Kernel zu verwalten), erwähnt Vorhandensein integrierter Tools für die Planungsentwicklung, die Möglichkeit, einen vorgefertigten SAAS-Dienst mit garantierter Verfügbarkeit zu nutzen (setzt Ressourcen für die Wartung der Serverinfrastruktur frei).

Die Entscheidung steht bereits verursacht Kritik unter Entwicklern, da die Entscheidung ohne ausführliche vorherige Diskussion getroffen wurde. Es wurden auch Bedenken geäußert, dass der Dienst nicht die kostenlose Comminity-Edition von GitLab nutzen würde. Insbesondere die zur Umsetzung der in der Ankündigung beschriebenen Anforderungen an Git Forge erforderlichen Fähigkeiten sind nur in der proprietären Version verfügbar GitLab Ultimate.

Kritisiert wurde auch die Absicht, den von GitLab bereitgestellten SAAS-Dienst (Application as a Service) zu nutzen, anstatt GitLab auf seinen Servern bereitzustellen, wodurch der Dienst außer Kontrolle gerät (es ist beispielsweise unmöglich, sicher zu sein, dass alle Schwachstellen in das System wird umgehend beseitigt, richtig Infrastruktur bleibt erhalten, eines Tages wird es keine mehr geben Telemetrie auferlegt und Sabotage durch das Personal eines Drittunternehmens ist ausgeschlossen). Die Lösung funktioniert auch nicht mit Die Gründungsprinzipien von Fedora, die festlegen, dass das Projekt kostenlosen Alternativen den Vorzug geben muss.

Inzwischen GitLab kündigte die über die Entdeckung von Implementierungen von 18 Funktionalitäten, die bisher nur in proprietären Editionen von GitLab angeboten wurden. Die Funktionen decken verschiedene Bereiche der Verwaltung des gesamten Softwareentwicklungszyklus ab, einschließlich Entwicklungsplanung, Projekterstellung, Überprüfung, Paketverwaltung, Release-Generierung, Konfiguration und Sicherheit.

Folgende Funktionen wurden in den Freilandbereich übertragen:

  • Zugehöriges Problem anhängen;
  • Exportproblem von GitLab nach CSV;
  • Eine Methode zum Planen, Organisieren und Visualisieren des Entwicklungsprozesses einzelner Funktionen oder Releases;
  • Integrierter Dienst zur Verbindung von Projektteilnehmern mit Dritten per E-Mail.
  • Webterminal für Web-IDE;
  • Möglichkeit, Dateien zu synchronisieren, um Codeänderungen im Webterminal zu testen;
  • Entwerfen Sie Steuerelemente, mit denen Sie Mockups und Assets zur Ausgabe hochladen können, wobei die Ausgabe als zentraler Zugriffspunkt auf alles dient, was Sie zum Entwickeln einer neuen Funktion benötigen.
  • Codequalitätsberichte;
  • Unterstützung für Paketmanager Conan (C/C++), Maven (Java), NPM (node.js) und NuGet (.NET);
  • Unterstützung für Canary-Bereitstellungen, sodass Sie auf einem kleinen Teil der Systeme eine neue Version der Anwendung installieren können;
  • Inkrementelle Verteilungen ermöglichen die Bereitstellung neuer Versionen zunächst nur für eine kleine Anzahl von Systemen und erhöhen die Abdeckung schrittweise auf 100 %.
  • Funktionalitätsaktivierungsflags, die es ermöglichen, das Projekt in verschiedenen Editionen bereitzustellen und bestimmte Funktionen dynamisch zu aktivieren;
  • Bereitstellungsübersichtsmodus, mit dem Sie den Status jeder auf Kubernetes basierenden kontinuierlichen Integrationsumgebung beurteilen können;
  • Unterstützung für die Definition mehrerer Kubernetes-Cluster im Konfigurator (Sie können beispielsweise separate Kubernetes-Cluster für Testimplementierungen und Workloads verwenden);
  • Unterstützung für die Definition von Sicherheitsrichtlinien für Containernetzwerke, mit denen Sie den Zugriff zwischen Kubernetes-Pods einschränken können.

Darüber hinaus kann darauf hingewiesen werden Veröffentlichung GitLab-Updates 12.9.1, 12.8.8 und 12.7.8 (Community Edition und Enterprise Edition), die die Schwachstelle beheben. Das Problem besteht seit der Veröffentlichung von GitLab EE/CE 8.5 und ermöglicht das Lesen des Inhalts jeder lokalen Datei, wenn ein Problem zwischen Projekten verschoben wird.
Einzelheiten zur Sicherheitslücke werden nach 30 Tagen bekannt gegeben.

Source: opennet.ru

Kommentar hinzufügen