en
Språk
  • en
  • cs
  • hu
  • it
  • es
  • fr
  • de
  • ru
Maskinoversettelse
  • bg
  • dk
  • nl
  • gr
  • il
  • jp
  • kr
  • Nei.
  • pl
  • tr

GitLab integrasjon

0 Innledning

GitLab Integration er et tillegg som kan legges til en av de tre Easy Project-planene.

Hensikten med plugin er å samle viktige data fra GitLab i Easy Project for å hjelpe med rapportering, evaluering og presentasjon av utviklingsaktiviteter, og dermed støtte beslutningstaking fra siden av interessenter som er investert i programvareutviklingsprosjekter og -prosesser til firmaet.

Dens evner inkluderer en veldig enkel innledende tilkobling med GitLab-forekomsten din (både selvhostede eller skyversjoner). Når tilkoblingen er etablert, vil Easy Project vise de mest avgjørende elementene fra GitLab i konfigurerbare og filtrerbare lister (ligner på en oppgaveliste). Disse enhetene er:

  • repositories
  • Slå sammen forespørsler
  • inger
  • Tester

inkludert deres viktigste egenskaper.

Et sentralt element i integrasjonen er at Easy Project IKKE kopierer depotene fysisk. Koden forblir i GitLab.

1 Etablere forbindelse

For det første må du ha et tilgangstoken fra en bruker i GitLab, med riktige tillatelser.

  1. Velg en bruker som Easy Project skal få tilgang til GitLab via. Dette kan være en spesiell bruker som ingen logger av, f.eks. er_integrator
  2. Rediger profilen til denne brukeren
  3. Gå til Access tokens, velg alle tillatelser og Opprett personlig tilgangstoken

  4. Kopier dette tokenet


    Nå kan du gå til Easy Project og skrive inn viktig informasjon

  5. Gå til Admin >> GitLab-integrasjon >> Finn Tilgjengelige integrasjoner og treffer Konfigurer
  6. Gi tilkoblingen et navn, skriv inn URL-en og tilgangstokenet du genererte tidligere.
    OBS: Ved skyer, f.eks https://gitlab.com/my-little-gitlab , bare skriv inn https://gitlab.com/ uten under-url. Ingen grunn til bekymring, du kan bare se prosjekter som brukeren med tilgangstoken kan se. Hvis du angir alle prosjektene dine som private, vil ingen andre kunne se dem.
  7. Spar
  8. Det er det! Tilkobling er gjort.

Alt annet gjøres automatisk i bakgrunnen. Spesielt

  • Easy Project henter alle prosjekter/depoter som brukeren med tilgangstoken er medlem av
  • I disse repositoriene opprettes webhooks => slik at info om nytt forplikter, sammenslåingsforespørsler og tester vil bli sendt til Easy Project

1.1 Tilkoblingsfeilsøking

Oppgave A
Jeg ser ikke noe depot fra denne GitLab-forekomsten

På grunn av uforutsigbare omstendigheter kan det skje at de nevnte operasjonene ikke vil bli gjennomført med hell. Som et resultat kan det hende du ikke ser noe depot fra denne GitLab-forekomsten i Easy Project.

I slike tilfeller kan du importere depotene manuelt, med bare noen få klikk.

  1. Gå til Admin >> Gitlab-integrasjon >> Konfigurerte integrasjoner >> Klikk på navnet

  2. I sidemenyen klikker du Import

  3. Velg gruppen
    Med selv-vert GitLab vil det være en gruppe som representerer hele instansen. Som i eksempelet fra skjermbildet.
    Med sky GitLab vil du se alle offentlige grupper og vil sannsynligvis måtte søke etter gruppen din. Feltet er autofullfør, så søket er raskt og enkelt.
  4. Etter å ha valgt den og klikket bort ser du listen over funne prosjekter/depoter
  5. Velg alle og trykk Import

Oppgave B
Lagre ble funnet, men mine nye forpliktelser, sammenslåingsforespørsler og tester legges ikke til i Easy Project

Nye data fra GitLab sendes til Easy Project via webhooks konfigurert i GitLab. Under normale omstendigheter opprettes de automatisk. Du kan bekrefte dette i GitLab-prosjektet ditt >> Innstillinger >> Webhooks

Hvis det ikke er noen webhook med lenken til applikasjonen din, må du opprette den. Igjen, dette er en enkel operasjon.

  1. Gå til Admin >> Gitlab-integrasjon >> Konfigurerte integrasjoner >> Klikk på navnet
  2. I sidemenyen, klikk på repositories

  3. Klikk på navnet til en
  4. Klikk på Registrer alle integrasjoner

Dette vil manuelt fremtvinge opprettelse av webhook i riktig form.

2 Referer til nøkkelord

Nå som den generelle tilkoblingen er konfigurert, har du allerede informasjon fra GitLab i Easy Project, og du kan bruke den. For å dra full nytte av integreringen, er det et par flere innstillinger. Noen er allerede forhåndsinnstilt, og du kan bare sjekke dem.

Det er mulig å koble bestemte forpliktelser eller slå sammen forespørsler til bestemte oppgaver, og til og med logge tid på denne måten uten å måtte besøke Easy Project. Dette gjøres ved såkalte refererer til nøkkelord. Når du bruker dem i commit-meldingen eller sammenslåingsforespørselsnavnet i kombinasjon med oppgave-ID, vil det opprette en kobling mellom oppgaven og GitLab-elementet. De vanligste eksemplene er refs #1234 or stenger #1234

I de fleste tilfeller vil du finne noen forhåndsinnstilte referansenøkkelord. Her er hvordan du jobber med dem.

  1. Gå til Mer-menyen >> GitLab-integrasjon >> Referanser
  2. Opprett eller rediger en referanse
  3. Hele skjemaet inneholder verktøytips som hjelper deg med å navigere deg gjennom dem

De viktigste reglene å huske er:

  • Oppgaven må identifiseres i skjema #ID , f.eks #1234
  • Loggtid (hvis tillatt) legges alltid inn som @XhYm , f.eks. @1t30m
  • Ved forpliktelser må de refererende nøkkelordene angis i begå melding
  • Ved sammenslåingsforespørsler må de refererende nøkkelordene angis i navn av sammenslåingsforespørselen

3 brukerkartlegging

Siden vi har å gjøre med integrasjon av to forskjellige applikasjoner, har de forskjellige sett med brukere. Alle brukerattributter på GitLab-relaterte enheter (forfatter av forpliktelse, anmelder ved sammenslåingsforespørsel, etc.) i Easy Project + brukt tid logget via refererende nøkkelord, bør kobles til ekte brukere. Så hvordan blir brukere fra GitLab tilordnet Easy Project?

Ikke noe vitenskapelig her, brukere blir ganske enkelt kartlagt via e-posten i begge brukerprofilene. Sørg for at utviklerne dine har identiske e-poster i både GitLab og Easy Project.

Hvis en bruker av en eller annen grunn ikke kan forene e-postene i begge applikasjonene, er det mulighet for å legge inn ekstra e-post i Easy Project i brukerprofilen -> skriv inn GitLab-e-posten her.


4 Hvordan det fungerer

Endelig kommer vi til den morsomme delen. Hva integrasjonen faktisk gjør for brukerne. Få tilgang til hovedsiden/dashbordet til GitLab-integrasjon via Mer-menyen (øverst til høyre) under seksjonen Tillegg.

Du vil finne en side som kan tilpasses i standardtilstand, som du senere kan tilpasse etter dine behov.

Den inkluderer også en meny for å liste enheter eller angi innstillinger. Som nevnt i introduksjonen, samler og viser Easy Project 4 viktige enheter fra GitLab. La oss se nærmere på hver av dem.

4.1 Repositories

Lagringslisten er funksjonelt sett den minst interessante, selv om den virkelig er nødvendig. Et nyttig filter som er verdt å nevne kalles Service, som du vil bruke hvis du har forskjellige GitLab-instanser tilkoblet og du bare trenger å søke gjennom noen av dem.

Navnet på depotet inneholder også navnet på gruppen.

Detalj av depot

Merknader:

  • (Av-)registrer alle integrasjoner ble beskrevet i kapittel 1.1. Det vil opprette/slette webhooks i GitLab-prosjektet.
  • Rediger - endre noen attributter manuelt. Det er ingen annen grunn enn avansert feilsøking for å redigere noen attributter til depotet i Easy Project.
  • synkron~~POS=TRUNC - laster ned alle gjeldende data fra depotet.
  • Slå sammen forespørsler - viser alle sammenslåingsforespørsler i dette depotet.
  • Velg sekvensmal - fortsatt under utvikling, vennligst gi oss mer tid til å polere dette robuste verktøyet.

4.2 Slå sammen forespørsler (kodeforespørsler)

Vi bør avklare hvorfor det er to navn. Sammenslåingsforespørsel er begrepet som brukes i GitLab. Andre verktøy har andre navn på det, for eksempel Trekk forespørsel. Integrasjonsmekanismen til verktøyet vårt er skrevet på en generell måte, slik at vi kan utvide støtten til andre Git-plattformer. Derfor kan du finne etikett i applikasjonen og bildene Kodeforespørsel, som er et generelt begrep som kan brukes på Merge requests eller Pull requests.

Merge request er en rik enhet (lagrer alle viktige attributter) som gjør det mulig å lage fine oppføringer, rapporter og diagrammer over dem direkte i Easy Project.

Detalj for sammenslåingsforespørsel

Merknader:

  • Navnet på sammenslåingsforespørselen inneholder det refererende nøkkelordet "refs" etterfulgt av oppgave-IDen med hash #765 - det er derfor det ble koblet til oppgave 765
  • Ved å klikke på synkron~~POS=TRUNC vil oppdatere alle data til denne MR fra GitLab
  • Alle attributter kan vises på listen over sammenslåingsforespørsler
  • Alle attributter unntatt SHA kan brukes som filtre på sammenslåingsforespørslers liste/rapport/diagram
  • Listen med sammenslåingsforespørsel inneholder også attributter for tester (CI/CD) relatert til den, viktigst av alt - Teststatus

4.3 Forplikter seg

I likhet med sammenslåingsforespørsler gir listen over forpliktelser også enorme rapporteringsmuligheter. Forpliktelseslisten inneholder også attributter fra tester.


Commit har ikke sin egen detaljvisning i Easy Project. Det er rett og slett ikke behov for det. Ved å klikke på URL (eller SHA), vil du bli dirigert til detaljene i GitLab.

4.4-tester

De ble nevnt i forhold til enhetene ovenfor. Tester har også sin egen liste for å generere ulike rapporter. Den mest vanlige bruken vil sannsynligvis være live-visning av tester på de kritiske depotene, for eksempel utgivelseskandidater.

Testen har heller ikke sin egen detaljvisning, ved å klikke tar du deg til GitLab.

4.5 Synergi - utsikt fra oppgave

La oss ta en titt på hvordan det hele henger sammen.

1 Generell status for GitLab-enheter relatert til denne oppgaven. Den kan inneholde ulike kombinasjoner av farger (rød, oransje, grønn) og ikoner (hake, kryss). Den beste er selvfølgelig grønn hake i grønn ramme
Kombinasjonen avhenger av status for sammenslåingsforespørsel(er) og testresultater relatert til forpliktelser og sammenslåingsforespørsler. Hensikten er å vise ved første øyekast hvordan den "tekniske" fremdriften for denne oppgaven går, spesielt nyttig for QA- eller leveringsansvarlige.

2 Navn på depot(er) som endringene som refererer til denne oppgaven ble forpliktet til. Ved å klikke på lenken blir du dirigert til listen over disse forpliktelsene.

3 Navn på sammenslåingsforespørsel(er) som refererer til denne oppgaven. Ved å klikke på den vil du bli ledet til detaljene i MR i Easy Project.
I tilfelle det bare er forpliktelser som refererer til denne oppgaven, men sammenslåingsforespørsel mangler, er denne verdien tom.

4 Status for hver sammenslåingsforespørsel. Ved å klikke på den vil du bli omdirigert til sammenslåingsforespørselsdetaljen i GitLab.
I tilfelle det bare er forpliktelser som refererer til denne oppgaven, men sammenslåingsforespørsel mangler, er denne verdien tom.

5 Resultat av siste testkjøring i sammenslåingsforespørselen. Ved å klikke på den blir du dirigert til pipelinen i GitLab. Det er ikke klikkbart inn Ukjent status (pipeline eksisterer ikke).
I tilfelle det bare er commits som refererer til denne oppgaven, men sammenslåingsforespørsel mangler, viser verdien siste testresultat som ble kjørt på siste commit.

6 Kjør test manuelt - Klikk for å kjøre pipelinen manuelt (tar deg til GitLab).

7 Klikk for å opprette en sammenslåingsforespørsel. Nyttig når du bare har et sett med forpliktelser, men mangler MR (tar deg til GitLab).

4.6 Lag gren fra oppgave

(Merk: Funksjon tilgjengelig fra 11plus.6.0)

Noen brukere synes det er praktisk å lage en gren direkte fra oppgaven.

Knappen finner du i Mer meny på oppgavedetaljen


Velg depotet i autofullfør-feltet. Filialnavn er forhåndsutfylt med oppgave-ID og emne, men du kan endre det. Kildegren er forhåndsutfylt av Master

Du vil se grenen som en tag under Gitlab-integrasjonsdelen på oppgaven. Den er klikkbar og leder til grenen i GitLab.


5 tillatelser

Det er for øyeblikket to tillatelser.

  • Vis - Få tilgang til tillegget fra Mer-menyen
  • Administrer - rediger dashbordet

Den globale konfigurasjonen er bare tilgjengelig for Easy Project-administrator.

Prøv Easy Project i 30 dager gratis prøveversjon

Fulle funksjoner, SSL-beskyttet, daglige sikkerhetskopier, i din geoposisjon