en
Språk
  • en
  • de
  • fr
  • es
  • br
  • ru
  • jp
  • kr
AI-översättning
  • ae
  • cn
  • vn
  • id
  • eu
  • il
  • gr
  • no
  • fi
  • dk
  • se
  • tr
  • bg
  • nl
  • it
  • pl
  • hu
  • ro
  • ua
  • cs

GitLab -integration

0 Inledning

GitLab Integration är ett tillägg som kan läggas till någon av de tre Easy Redmine-planerna.

Syftet med plugin är att samla viktig data från GitLab i Easy Redmine för att hjälpa till med rapportering, utvärdering och presentation av utvecklingsaktiviteter, och på så sätt stödja beslutsfattande från sidan av intressenter som är investerade i mjukvaruutvecklingsprojekt och processer av företaget.

Dess möjligheter inkluderar en mycket enkel initial anslutning med din GitLab-instans (både självvärd eller molnversioner). När anslutningen är upprättad kommer Easy Redmine att visa de mest avgörande objekten från GitLab i konfigurerbara och filtrerbara listor (liknar en uppgiftslista). Dessa enheter är:

  • arkiv
  • Sammanfoga förfrågningar
  • Begår
  • Tester

inklusive deras viktigaste egenskaper.

En viktig del av integrationen är att Easy Redmine INTE kopierar arkiven fysiskt. Koden finns kvar i GitLab.

1 Upprätta anslutning

För det första måste du ha en åtkomsttoken från en användare i GitLab, med rätt behörighet.

  1. Välj en användare via vilken Easy Redmine kommer att få åtkomst till GitLab. Detta kan vara en speciell användare som ingen person loggar av, t.ex. er_integrator
  2. Redigera användarens profil
  3. Gå till Access-tokens, välj alla behörigheter och Skapa personlig åtkomsttoken

  4. Kopiera denna token


    Nu kan du gå till Easy Redmine och ange den viktiga informationen

  5. Gå till Admin >> GitLab integration >> Hitta Tillgängliga integrationer och slå Inställd
  6. Ge din anslutning ett namn, ange URL:en och åtkomsttoken du genererade tidigare.
    Notera: Vid moln, t.ex https://gitlab.com/my-little-gitlab , skriv bara in https://gitlab.com/ utan sub-url. Du behöver inte oroa dig, du kan bara se projekt som användaren med åtkomsttoken kan se. Om du ställer in alla dina projekt som privata kommer ingen annan att kunna se dem.
  7. Save
  8. Det är allt! Anslutning är gjord.

Allt annat görs automatiskt i bakgrunden. Särskilt

  • Easy Redmine hämtar alla projekt/förråd som användaren med åtkomsttoken är medlem i
  • I dessa repositories skapas webhooks => så att info om ny commits, sammanslagningsförfrågningar och tester kommer att skickas till Easy Redmine

1.1 Anslutningsfelsökning

Problem A
Jag ser inget arkiv från denna GitLab-instans

På grund av oförutsebara omständigheter kan det hända att ovannämnda operationer inte kommer att genomföras framgångsrikt. Som ett resultat kanske du inte ser något arkiv från denna GitLab-instans i Easy Redmine.

I sådana fall kan du importera arkiven manuellt, med bara några få klick.

  1. Gå till Admin >> Gitlab integration >> Konfigurerade integrationer >> Klicka på namnet

  2. Klicka på i sidomenyn Importera

  3. Välj gruppen
    Med självvärd GitLab kommer det att finnas en grupp som representerar hela instansen. Som i exemplet från skärmdump.
    Med molnet GitLab kommer du att se alla offentliga grupper och kommer förmodligen att behöva söka efter din grupp. Fältet är autoslutförande, så sökningen är snabb och enkel.
  4. Efter att ha valt det och klickat bort ser du listan över hittade projekt/förråd
  5. Välj alla och tryck Importera

Problem B
Repositories hittades, men mina nya commits, merge-förfrågningar och tester läggs inte till i Easy Redmine

Ny data från GitLab skickas till Easy Redmine via webhooks konfigurerade i GitLab. Under normala omständigheter skapas de automatiskt. Du kan verifiera detta i ditt GitLab-projekt >> Inställningar >> Webhooks

Om det inte finns någon webhook med länken till din ansökan måste du skapa den. Återigen, detta är en enkel operation.

  1. Gå till Admin >> Gitlab integration >> Konfigurerade integrationer >> Klicka på namnet
  2. Klicka på i sidomenyn arkiv

  3. Klicka på namnet på en
  4. Klicka på Registrera alla integrationer

Detta kommer att manuellt tvinga fram skapandet av webhook i rätt form.

2 Refererar till nyckelord

Nu när den allmänna anslutningen är konfigurerad har du redan information från GitLab i Easy Redmine och du kan använda den. Men för att dra full nytta av integrationen finns det ytterligare ett par inställningar. Vissa är redan förinställda och du kan bara kontrollera dem.

Det är möjligt att koppla samman särskilda åtaganden eller sammanfoga förfrågningar till särskilda uppgifter, och till och med logga tid på detta sätt utan att behöva besöka Easy Redmine. Detta görs av sk hänvisar till nyckelord. När du använder dem i commit-meddelandet eller merge-begärans namn i kombination med uppgifts-ID, kommer det att skapa en länk mellan uppgiften och GitLab-objektet. De vanligaste exemplen är refs #1234 or stänger #1234

I de flesta fall hittar du några förinställda referenssökord. Så här arbetar du med dem.

  1. Gå till menyn Mer >> GitLab integration >> Referenser
  2. Skapa eller redigera en referens
  3. Hela formuläret innehåller verktygstips som hjälper dig att navigera dig igenom dem

De viktigaste reglerna att komma ihåg är:

  • Uppgiften måste identifieras i formulär #ID , t.ex. #1234
  • Loggningstid (om tillåtet) anges alltid som @XhYm , t.ex. @1h30m
  • Vid commits måste de refererande nyckelorden anges i begå meddelande
  • Vid sammanslagningsförfrågningar måste de refererande nyckelorden anges i namn av sammanslagningsbegäran

3 Användarkartläggning

Eftersom vi har att göra med integration av två olika applikationer har de olika uppsättningar användare. Alla användarattribut på GitLab-relaterade enheter (författare till commit, granskare vid sammanslagningsbegäran, etc.) i Easy Redmine + spenderad tid som loggas via refererande nyckelord, bör kopplas till riktiga användare. Så, hur mappas egentligen användare från GitLab till Easy Redmine?

Inget vetenskapligt här, användare mappas helt enkelt via e-post i båda användarprofilerna. Se till att dina utvecklare har identisk e-post i både GitLab och Easy Redmine.

Om, av någon anledning, en användare inte kan förena e-postmeddelanden i båda applikationerna, finns det möjlighet att ange ytterligare e-post i Easy Redmine i användarprofilen -> ange GitLab-e-postadressen här.


4 Hur det fungerar

Äntligen når vi den roliga delen. Vad integrationen faktiskt gör för användarna. Gå till huvudsidan/instrumentpanelen för GitLab-integration via menyn Mer (överst till höger) under avsnittet Tillägg.

Du hittar en anpassningsbar sida i standardläge, som du senare kan anpassa efter dina behov.

Den innehåller också en meny för att lista enheter eller ange inställningar. Som nämnts i introduktionen samlar och visar Easy Redmine fyra avgörande enheter från GitLab. Låt oss ta en närmare titt på var och en av dem.

4.1 Förvar

Förvarslistan är funktionellt den minst intressanta, även om den verkligen är nödvändig. Ett användbart filter värt att nämna kallas Service, som du kommer att använda om du har olika GitLab-instanser anslutna och du behöver bara söka igenom några av dem.

Namnet på förvaret innehåller också namnet på dess grupp.

Detalj av förvaret

Anmärkningar:

  • (Av-)Registrera alla integrationer beskrevs i kapitel 1.1. Det kommer att skapa/ta bort webhooks i GitLab-projektet.
  • Redigera - ändra vissa attribut manuellt. Det finns ingen annan anledning än avancerad felsökning att redigera några attribut för förvaret i Easy Redmine.
  • Synkronisera - laddar ner all aktuell data från förvaret.
  • Sammanfoga förfrågningar - listar alla sammanslagningsförfrågningar i detta arkiv.
  • Välj sekvensmall - fortfarande under utveckling, ge oss mer tid att polera detta robusta verktyg.

4.2 Sammanfogningsförfrågningar (kodförfrågningar)

Vi bör förtydliga varför det finns två namn. Sammanfogningsförfrågan är termen som används i GitLab. Andra verktyg har andra namn på det, till exempel Dra begäran. Integreringsmekanismen för vårt verktyg är skriven på ett generellt sätt, så att vi kan utöka stödet till andra Git-plattformar. Därför kan du hitta etikett i applikationen och bilderna Kodbegäran, vilket är en allmän term som kan tillämpas på Merge-förfrågningar eller Pull-förfrågningar.

Merge request är en rik enhet (lagrar alla viktiga attribut) som gör det möjligt att skapa fina listor, rapporter och diagram ovanför dem direkt i Easy Redmine.

Detalj av sammanslagningsbegäran

Anmärkningar:

  • Namnet på sammanslagningsbegäran innehåller refererande nyckelordet "refs" följt av uppgifts-ID med hash #765 - det är därför det länkades till uppgift 765
  • Genom att klicka på Synkronisera kommer att uppdatera all data om denna MR från GitLab
  • Alla attribut kan visas på listan över sammanslagningsförfrågningar
  • Alla attribut utom SHA kan användas som filter på sammanslagningsförfrågningars lista/rapport/diagram
  • Lista över sammanslagningsförfrågningar innehåller också attribut för tester (CI/CD) relaterade till den, viktigast av allt - Teststatus

4.3 Åtar sig

I likhet med sammanslagningsförfrågningar ger listan över åtaganden också stora rapporteringsmöjligheter. Bekräftelselistan innehåller även attribut från tester.


Commit har ingen egen detaljvy i Easy Redmine. Det finns helt enkelt inget behov av det. Genom att klicka på URL (eller SHA) kommer du att dirigeras till dess detalj i GitLab.

4.4 tester

De nämndes i förhållande till enheterna ovan. Tester har också en egen lista för att generera olika rapporter. Förmodligen den vanligaste användningen kommer att vara livevisning av tester på de kritiska arkiven, såsom releasekandidater.

Testet har inte heller sin egen detaljvy, genom att klicka kommer du till GitLab.

4.5 Synergi - vy från uppgift

Låt oss ta en titt på hur allt går ihop.

1 Övergripande status för GitLab-entiteter relaterade till denna uppgift. Den kan innehålla olika kombinationer av färger (röd, orange, grön) och ikoner (bocken, kryss). Det bästa är förstås grön bock i grön ram
Kombinationen beror på status för sammanslagningsförfrågningar och testresultat relaterade till åtaganden och sammanslagningsförfrågningar. Syftet är att visa vid första anblicken hur den "tekniska" utvecklingen av denna uppgift går, särskilt användbart för QA- eller leveranschefer.

2 Namn på lagringsplatser som ändringarna som hänvisar till denna uppgift har genomförts i. Genom att klicka på länken kommer du att dirigeras till listan över dessa åtaganden.

3 Namn på sammanslagningsbegäran som hänvisar till denna uppgift. Genom att klicka på den kommer du att dirigeras till detaljerna om MR i Easy Redmine.
Om det bara finns commits som hänvisar till denna uppgift men sammanslagningsbegäran saknas, är detta värde tomt.

4 Status för varje sammanslagningsförfrågan. Genom att klicka på den kommer du att omdirigeras till detaljerna för sammanslagningsförfrågan i GitLab.
Om det bara finns commits som hänvisar till denna uppgift men sammanslagningsbegäran saknas, är detta värde tomt.

5 Resultat av den senaste testkörningen i sammanslagningsbegäran. Genom att klicka på den kommer du att dirigeras till pipelinen i GitLab. Det går inte att klicka in Okänd status (pipeline finns inte).
Om det bara finns commits som hänvisar till denna uppgift men merge-begäran saknas, visar värdet det senaste testresultatet som kördes på den senaste commit.

6 Kör test manuellt - Klicka för att köra pipelinen manuellt (tar dig till GitLab).

7 Klicka för att skapa en sammanslagningsförfrågan. Användbart när du bara har en uppsättning commits, men saknar MR (tar dig till GitLab).

4.6 Skapa gren från uppgift

(Obs: Funktion tillgänglig från 11plus.6.0)

Vissa användare tycker att det är praktiskt att skapa en filial direkt från uppgiften.

Knappen finns i Mer meny på uppgiftsdetaljen


Välj arkivet i fältet för autoslutförande. Filialnamn är förifyllt med uppgifts-ID och ämne, men du kan ändra det. Källgren är förifylld av Master

Du kommer att se grenen som en tagg under Gitlab-integrationssektionen på uppgiften. Den är klickbar och leder till grenen i GitLab.



5 behörigheter

Det finns för närvarande två behörigheter.

  • Visa - Öppna tillägget från menyn Mer
  • Hantera - redigera instrumentpanelen

Den globala konfigurationen är endast tillgänglig för Easy Redmine admin.

Prova Easy Redmine i 30 dagars gratis provperiod

Fullständiga funktioner, SSL-skyddad, dagliga säkerhetskopior, i din geolokalisering