Projekt
När vi utvärderade möjliga lösningar för nya Git Forge, övervägde vi
Pagure och Gitlab. Baserat på en studie av ca
Kraven inkluderade funktioner som att skicka push-förfrågningar över HTTPS, sätt att begränsa åtkomst till filialer, stöd för privata filialer, åtskillnad av åtkomst för externa och interna användare (till exempel för att arbeta med att eliminera sårbarheter under ett embargo mot att avslöja information om problemet) , förtrogenhetsgränssnitt, enande av delsystem för att arbeta med problemrapporter, kod, dokumentation och planering av nya funktioner, tillgänglighet av verktyg för integration med IDE, stöd för standardarbetsflöden.
Av GitLab-funktionerna som i slutändan påverkade beslutet att välja denna plattform, nämndes stöd för undergrupper med selektiv åtkomst till arkiv, möjligheten att använda en bot för automatiska sammanslagningar (CentOS Stream krävs för att underhålla paket med kärnan), närvaro av inbyggda verktyg för planering av utveckling, möjligheten att använda en färdig SAAS-tjänst med en garanterad tillgänglighetsnivå (kommer att frigöra resurser för att underhålla serverinfrastrukturen).
Beslutet är redan
Avsikten att använda SAAS-tjänsten (application as a service) tillhandahållen av GitLab, istället för att distribuera GitLab på sina servrar, kritiserades också, vilket tar tjänsten utom kontroll (det är till exempel omöjligt att vara säker på att alla sårbarheter i systemet elimineras omedelbart,
Under tiden, GitLab
Följande funktioner har överförts till det fria utbudet:
- Bifogar relaterad fråga;
- Exportproblem från GitLab till CSV;
- Ett sätt att planera, organisera och visualisera utvecklingsprocessen för individuella funktioner eller releaser;
- Inbyggd tjänst för att koppla projektdeltagare med tredje part via e-post.
- Webbterminal för webb-IDE;
- Möjlighet att synkronisera filer för att testa ändringar i kod i webbterminalen;
- Designkontroller som låter dig ladda upp mockups och tillgångar till utfärdandet, genom att använda problemet som en enda åtkomstpunkt till allt du behöver för att utveckla en ny funktion;
- Kodkvalitetsrapporter;
- Stöd för pakethanterare Conan (C/C++), Maven (Java), NPM (node.js) och NuGet (.NET);
- Stöd för kanariefågelinstallationer, så att du kan installera en ny version av programmet på en liten del av systemen;
- Inkrementella distributioner, som gör att nya versioner kan levereras till endast ett litet antal system först, vilket gradvis ökar täckningen till 100 %;
- Funktionsaktiveringsflaggor, som gör det möjligt att leverera projektet i olika upplagor, dynamiskt aktivera vissa funktioner;
- Översiktsläge för distribution, som låter dig bedöma tillståndet för varje kontinuerlig integrationsmiljö baserat på Kubernetes;
- Stöd för att definiera flera Kubernetes-kluster i konfiguratorn (du kan till exempel använda separata Kubernetes-kluster för testimplementeringar och arbetsbelastningar);
- Stöd för att definiera säkerhetspolicyer för containernätverk som gör att du kan begränsa åtkomst mellan Kubernetes-poddar.
Dessutom kan det noteras
Detaljer om sårbarheten kommer att avslöjas efter 30 dagar.
Källa: opennet.ru