en
Jazyk
  • en
  • de
  • fr
  • es
  • br
  • ru
  • jp
  • kr
AI překlad
  • ae
  • cn
  • vn
  • id
  • eu
  • il
  • gr
  • no
  • fi
  • dk
  • se
  • tr
  • bg
  • nl
  • it
  • pl
  • hu
  • ro
  • ua
  • cs

Integrace GitHubu

0 Úvod

GitHub Integration je doplněk, který lze přidat ke kterémukoli ze tří plánů Easy Redmine.

Účelem pluginu je agregovat důležitá data z GitHubu v Easy Redmine za účelem pomoci s reportováním, hodnocením a prezentací vývojových aktivit, a tím podporovat rozhodování ze strany zainteresovaných stran, které investují do projektů a procesů vývoje softwaru. společnost.

Mezi jeho možnosti patří velmi jednoduché počáteční připojení k vaší instanci GitHub (jak samostatně hostované, tak cloudové verze). Po navázání připojení zobrazí Easy Redmine nejdůležitější položky z GitHubu v konfigurovatelných a filtrovatelných seznamech (podobně jako seznam úkolů). Tyto entity jsou:

  • Úložiště
  • Vytáhnout žádosti
  • Přiznává
  • Zkoušky

včetně jejich nejdůležitějších vlastností.

Klíčovým prvkem integrace je to, že Easy Redmine NEKOpíruje úložiště fyzicky. Kód zůstává na GitHubu.

1 Navazování spojení

Nejprve musíte mít přístupový token od uživatele na GitHubu se správnými oprávněními.

  1. Vyberte uživatele, přes kterého bude Easy Redmine přistupovat na GitHub. Může se jednat o speciálního uživatele, přes kterého se žádná osoba nepřihlásí, např. er_integrator
  2. Přihlaste se na GitHub tímto uživatelem
  3. Klikněte na avatar >> Nastavení

  4. Nastavení vývojáře

  5. Osobní přístupové tokeny

  6. Vygenerujte nový token

  7. Tyto rozsahy musíte povolit
    - repo (úplná kontrola soukromých úložišť)
    - admin:repo_hook (Plná kontrola háčků úložiště)
    - uživatel (Aktualizovat VŠECHNA uživatelská data)
  8. Zkopírujte token

    Nyní můžete přejít na Easy Redmine a zadat důležité informace

  9. Přejděte na Správce >> Integrace Git >> Najít Dostupné integrace a hit přidat

  10. Pojmenujte své připojení, zadejte adresu URL a dříve vygenerovaný přístupový token.
    Poznámka: V případě cloudu, např https://github.com/robogithub-easy , stačí zadat https://github.com/ bez podadresy URL. Není třeba se obávat, můžete vidět pouze projekty, které vidí uživatel s přístupovým tokenem. Pokud nastavíte všechny své projekty jako soukromé, nikdo jiný je neuvidí.

  11. Uložit
  12. A je to! Připojení je provedeno.

Vše ostatní se děje automaticky na pozadí. Zejména

  • Easy Redmine načte všechny projekty/úložiště, jejichž členem je uživatel s přístupovým tokenem
  • V těchto úložištích jsou vytvářeny webhooky => takže informace o nových commitech, pull requestech a testech budou odesílány Easy Redmine

1.1 Odstraňování problémů s připojením

Problém A
Nevidím žádné úložiště z této instance GitHub

V důsledku nepředvídatelných okolností se může stát, že výše uvedené operace nebudou úspěšně provedeny. V důsledku toho nemusíte v Easy Redmine vidět žádné úložiště z této instance GitHubu.

V takovém případě můžete importovat úložiště ručně pomocí několika kliknutí.

  1. Přejděte na Správce >> Integrace Git >> Nakonfigurované integrace >> Klikněte na název

  2. V postranní nabídce klikněte na Přidat úložiště

  3. Najděte úložiště

  4. Po jeho výběru se automaticky vyplní další pole
  5. klikněte Uložit
    Úložiště je přidáno


Problém B
Úložiště byla nalezena, ale moje nové commity, žádosti o stažení a testy nejsou přidány do Easy Redmine

Nová data z GitHubu jsou odesílána do Easy Redmine prostřednictvím webhooků nakonfigurovaných na GitHubu. Za normálních okolností jsou vytvářeny automaticky. Můžete si to ověřit ve svém projektu GitHub >> Nastavení >> Webhooky


Pokud neexistuje webhook s odkazem na vaši aplikaci, budete jej muset vytvořit. Opět se jedná o jednoduchou operaci.

  1. Přejděte na Správce >> Integrace Git >> Nakonfigurované integrace >> Klikněte na název

  2. V postranní nabídce klikněte na Úložiště

  3. Klikněte na jméno jednoho z nich

  4. Klikněte na Zaregistrujte všechny integrace

To ručně vynutí vytvoření webhooku ve správném tvaru.

Pokud webhook existuje, ale obsahuje indikaci chyby, zkontrolujte prosím chybovou zprávu a pokuste se ji vyřešit.


2 Odkazování na klíčová slova

Nyní, když je nakonfigurováno obecné připojení, již máte informace z GitHubu v Easy Redmine a můžete je využít. Chcete-li však integraci plně využít, existuje několik dalších nastavení. Některé jsou již přednastaveny a můžete je pouze zkontrolovat.

Je možné připojit konkrétní commity nebo pull requesty ke konkrétním úkolům a dokonce tímto způsobem zaznamenávat čas, aniž byste museli navštívit Easy Redmine. To se provádí tzv odkazující klíčová slova. Když je použijete ve zprávě odevzdání nebo název požadavku na stažení v kombinaci s ID úlohy, vytvoří se propojení mezi úlohou a položkou GitHubu. Nejběžnější příklady jsou reference #1234 or zavírá #1234

Ve většině případů najdete několik přednastavených referenčních klíčových slov. Zde je návod, jak s nimi pracovat.

  1. Přejděte do globální nabídky >> Integrace Git >> Reference


  2. Vytvořte nebo upravte referenci
  3. Celý formulář obsahuje popisky, které vám pomohou se v nich orientovat

Nejdůležitější pravidla k zapamatování jsou:

  • Úkol musí být identifikován ve tvaru #ID , např. #1234
  • Doba protokolování (je-li povolena) se vždy zadává jako @XhYm , např. @1h30m
  • Při odevzdáních je třeba zadat referenční klíčová slova do potvrzení zprávy
  • U žádostí o stažení je třeba zadat referenční klíčová slova do název žádosti o stažení

3 Mapování uživatelů

Vzhledem k tomu, že se jedná o integraci dvou různých aplikací, každá má různé skupiny uživatelů. Všechny uživatelské atributy na entitách souvisejících s GitHub (autor odevzdání, recenzent na žádost o stažení atd.) v Easy Redmine + strávený čas protokolovaný pomocí odkazujících klíčových slov by měly být propojeny se skutečnými uživateli. Jak jsou tedy uživatelé z GitHubu mapováni na Easy Redmine?

Není zde nic vědeckého, uživatelé jsou jednoduše mapováni prostřednictvím e-mailu v obou uživatelských profilech. Ujistěte se prosím, že vaši vývojáři mají v GitHubu i Easy Redmine stejné e-maily.

Pokud se jednomu uživateli z nějakého důvodu nedaří sjednotit emaily v obou aplikacích, je zde možnost zadat další email v Easy Redmine v uživatelském profilu -> zde zadejte email Github.


4 Jak to funguje

Konečně se dostáváme k té zábavné části. Co vlastně integrace dělá pro uživatele. Vstupte na hlavní stránku/panel integrace Git prostřednictvím globální nabídky (vpravo nahoře) v sekci Doplňky.


Ve výchozím stavu najdete přizpůsobitelnou stránku, kterou si později můžete vyladit podle svých potřeb.

Obsahuje také nabídku pro výpis entit nebo zadání nastavení. Jak bylo zmíněno v úvodu, Easy Redmine shromažďuje a zobrazuje 4 klíčové entity z GitHubu. Pojďme se na každou z nich podívat blíže.

4.1 Úložiště

Seznam úložišť je funkčně nejméně zajímavý, i když skutečně nezbytný. Užitečný filtr, který stojí za zmínku, je tzv Servis, který využijete v případě, že máte připojené různé instance GitHubu a potřebujete prohledávat jen některé z nich.


Detail úložiště

Poznámky:

  • (Zrušte) registraci všech integrací byly popsány v kapitole 1.1. Vytvoří/odstraní webhooky v projektu GitHub.
  • Změnit - ručně změnit některé atributy. Neexistuje žádný jiný důvod než pokročilé ladění upravovat jakékoli atributy úložiště v Easy Redmine.
  • Synchronizovat - stáhne všechna aktuální data z úložiště.
  • Vytáhnout žádosti - vypíše všechny požadavky na stažení v tomto úložišti.
  • Vyberte šablonu sekvence - stále ve vývoji, dejte nám prosím více času na vyleštění tohoto robustního nástroje.

4.2 Žádosti o stažení (žádosti o kód)

Měli bychom si ujasnit, proč existují dvě jména. Vytáhněte požadavek je termín používaný na GitHubu. Jiné nástroje pro to mají například různé názvy Žádost o sloučení. Integrační mechanismus našeho nástroje je napsán obecně, abychom mohli rozšířit podporu na další platformy Git. Proto v aplikaci a obrázcích můžete najít štítek Žádost o kód, což je obecný termín, který lze použít pro požadavky Pull nebo Merge.

Pull request je bohatá entita (ukládá všechny důležité atributy), která umožňuje vytvářet pěkné výpisy, reporty a dokonce i grafy nad nimi přímo v Easy Redmine.

Detail požadavku na stažení

Poznámky:

  • Název požadavku na stažení obsahuje odkazující klíčové slovo „refs“ následované ID úlohy s hashem #765 – proto byl propojen s úlohou 765
  • Kliknutím na Synchronizovat aktualizuje všechna data tohoto PR z GitHubu
  • Všechny atributy mohou být zobrazeny v seznamu požadavků na stažení
  • Všechny atributy kromě SHA lze použít jako filtry v seznamu/zprávě/grafu požadavků na stažení
  • Pull request list obsahuje také atributy testů (CI/CD) s tím souvisejících, především - Stav testu

4.3 Závazky

Podobně jako u požadavků na stažení poskytuje seznam potvrzení také rozsáhlé možnosti hlášení. Seznam odevzdání obsahuje také atributy z testů.


Commit nemá vlastní detailní zobrazení v Easy Redmine. Prostě to není potřeba. Kliknutím na URL (nebo SHA) budete přesměrováni na jeho detail v GitHubu.

Testy 4.4

Byly zmíněny ve vztahu k výše uvedeným subjektům. Testy mají také svůj vlastní seznam pro generování různých zpráv. Pravděpodobně nejběžnějším využitím bude živé zobrazení testů na kritických úložištích, jako jsou kandidáti na vydání.

Test také nemá vlastní detailní zobrazení, kliknutím se dostanete na GitHub.

4.5 Synergie - pohled z úlohy

Pojďme se podívat, jak to všechno jde dohromady.

1 Celkový stav entit GitHub souvisejících s tímto úkolem. Může obsahovat různé kombinace barev (červená, oranžová, zelená) a ikon (zaškrtnutí, křížek). Nejlepší je samozřejmě zelené zaškrtnutí v zeleném rámečku
Kombinace závisí na stavu požadavku (požadavek na stažení) a na výsledcích testů souvisejících s potvrzeními a požadavky na stažení. Jeho účelem je na první pohled ukázat, jak probíhá „technický“ průběh tohoto úkolu, užitečného zejména pro QA nebo delivery manažery.

2 Název úložiště (úložišť), do kterého byly provedeny změny týkající se tohoto úkolu. Kliknutím na odkaz budete přesměrováni na seznam těchto závazků.

3 Název požadavku(ů) na stažení odkazujícího na tuto úlohu. Kliknutím na něj budete přesměrováni na detail PR v Easy Redmine.
V případě, že existují pouze potvrzení odkazující na tuto úlohu, ale chybí požadavek na stažení, je tato hodnota prázdná.

4 Stav každého požadavku na stažení. Kliknutím na něj budete přesměrováni na detail požadavku na stažení v GitHubu.
V případě, že existují pouze potvrzení odkazující na tuto úlohu, ale chybí požadavek na stažení, je tato hodnota prázdná.

5 Výsledek posledního testovacího běhu v požadavku na stažení. Kliknutím na něj budete přesměrováni na GitHub. Nelze na něj kliknout Neznámý stav (test neexistuje).
V případě, že existují pouze potvrzení odkazující na tuto úlohu, ale chybí požadavek na stažení, hodnota ukazuje výsledek posledního testu spuštěného při posledním potvrzení.

6 Spustit test ručně – přenese vás na GitHub.

7 Kliknutím vytvoříte požadavek na stažení. Užitečné, když máte pouze sadu commitů, ale chybí vám PR (přesměruje vás na GitHub).

4.6 Vytvořit větev z úlohy

Některým uživatelům se hodí vytvořit větev přímo z úkolu.

Tlačítko najdete v globální menu na detail úkolu


V poli automatického doplňování vyberte úložiště. Název pobočky je předvyplněn ID úkolu a předmětem, ale můžete jej změnit. Zdrojová větev je předvyplněna mistr

Větev uvidíte jako značku v části Integrace Git na úloze. Je klikací a vede na pobočku v GitHubu.



5 Oprávnění

Aktuálně existují dvě oprávnění.

  • Zobrazit – Přístup k doplňku z globální nabídky
  • Spravovat – upravit řídicí panel

Globální konfigurace je přístupná pouze správci Easy Redmine.

Vyzkoušejte Easy Redmine ve 30denní bezplatné zkušební verzi

Plné funkce, chráněné SSL, denní zálohy ve vaší geolokaci