en
Език
  • en
  • cs
  • hu
  • it
  • es
  • fr
  • de
  • ru
Машинен превод
  • bg
  • dk
  • nl
  • gr
  • il
  • jp
  • kr
  • Не.
  • pl
  • tr

Интеграция на GitHub

0 Въведение

GitHub Integration е добавка, която може да се добави към всеки от трите плана на Easy Project.

Целта на приставката е да агрегира важни данни от GitHub в Easy Project, за да помогне с отчитането, оценката и представянето на дейностите по разработка, като по този начин подпомага вземането на решения от страна на заинтересованите страни, които са инвестирани в проекти за разработка на софтуер и процеси на компанията.

Неговите възможности включват много проста първоначална връзка с вашия екземпляр на GitHub (както самостоятелно хоствани, така и облачни версии). Когато връзката е установена, Easy Project ще покаже най-важните елементи от GitHub в списъци с възможност за конфигуриране и филтриране (подобно на списък със задачи). Тези субекти са:

  • Хранилища
  • Заявки за изтегляне
  • Ангажира
  • Тестове

включително техните най-важни атрибути.

Ключов елемент от интеграцията е, че Easy Project НЕ копира физически хранилищата. Кодът остава в GitHub.

1 Установяване на връзка

Първо, трябва да имате токен за достъп от потребител в GitHub с подходящи разрешения.

  1. Изберете потребител, чрез когото Easy Project ще има достъп до GitHub. Това може да е специален потребител, от който никой не влиза, например er_интегратор
  2. Влезте в GitHub от този потребител
  3. Кликнете върху аватара >> Настройки

  4. Настройки на програмиста

  5. Лични токени за достъп

  6. Генерирайте нов токен

  7. Трябва да разрешите тези обхвати
    - репо (Пълен контрол на частни хранилища)
    - admin:repo_hook (Пълен контрол на куките на хранилището)
    - потребител (Актуализиране на ВСИЧКИ потребителски данни)
  8. Копирайте токена

    Сега можете да отидете на Easy Project и да въведете жизненоважната информация

  9. Отидете на Администратор >> Git интеграция >> Намери Налични интеграции и хит Добави

  10. Дайте име на връзката си, въведете URL адреса и маркера за достъп, който генерирахте по-рано.
    Забележка: В случай на облак, напр https://github.com/robogithub-easy , просто въведете https://github.com/ без под-URL адреса. Няма нужда да се притеснявате, можете да видите само проекти, които потребителят с токен за достъп може да види. Ако зададете всичките си проекти като частни, никой друг няма да може да ги види.

  11. Save
  12. Това е! Връзката е извършена.

Всичко останало се извършва автоматично във фонов режим. В частност

  • Easy Project извлича всички проекти/хранилища, в които членува потребителят с токен за достъп
  • В тези хранилища се създават уебкукички =>, така че информацията за нови ангажименти, заявки за изтегляне и тестове да се изпращат до Easy Project

1.1 Отстраняване на неизправности при свързване

Проблем А
Не виждам никакво хранилище от този екземпляр на GitHub

Поради непредвидими обстоятелства може да се случи горепосочените операции да не бъдат извършени успешно. В резултат на това може да не видите никакво хранилище от този екземпляр на GitHub в Easy Project.

В такъв случай можете да импортирате хранилищата ръчно, само с няколко щраквания.

  1. Отидете на Администратор >> Git интеграция >> Конфигурирани интеграции >> Щракнете върху името

  2. В страничното меню щракнете Добавяне на хранилище

  3. Намерете хранилището

  4. След като го изберете, другите полета ще бъдат попълнени автоматично
  5. Кликнете Save
    Добавено е хранилище


Проблем Б
Бяха намерени хранилища, но новите ми ангажименти, заявки за изтегляне и тестове не се добавят в Easy Project

Нови данни от GitHub се изпращат до Easy Project чрез уеб кукички, конфигурирани в GitHub. При нормални обстоятелства те се създават автоматично. Можете да проверите това във вашия проект GitHub >> Настройки >> Webhooks


Ако няма webhook с връзката към вашето приложение, ще трябва да го създадете. Отново, това е проста операция.

  1. Отидете на Администратор >> Git интеграция >> Конфигурирани интеграции >> Щракнете върху името

  2. В страничното меню щракнете върху Хранилища

  3. Кликнете върху името на единия

  4. Кликнете върху Регистрирайте всички интеграции

Това ще принуди ръчно създаване на webhook в правилната форма.

Ако уеб кукичката съществува, но съдържа индикация за грешка, моля, проверете съобщението за грешка и опитайте да разрешите съответно.


2 Референтни ключови думи

Сега, когато общата връзка е конфигурирана, вече имате информация от GitHub в Easy Project и можете да я използвате. Въпреки това, за да се възползвате напълно от интеграцията, има още няколко настройки. Някои вече са предварително зададени и можете просто да ги проверите.

Възможно е да свържете конкретни ангажименти или заявки за изтегляне с конкретни задачи и дори да регистрирате време по този начин, без да се налага да посещавате Easy Project. Това става чрез т.нар препращане към ключови думи. Когато ги използвате в съобщението за ангажиране или името на заявка за изтегляне в комбинация с ID на задача, това ще създаде връзка между задачата и елемента GitHub. Най-честите примери са реф. #1234 or затваря #1234

В повечето случаи ще намерите няколко предварително зададени референтни ключови думи. Ето как да работите с тях.

  1. Отидете в глобалното меню >> Интегриране на Git >> Препратки


  2. Създайте или редактирайте препратка
  3. Целият формуляр съдържа подсказки, които да ви помогнат да се ориентирате през тях

Най-важните правила, които трябва да запомните, са:

  • Задачата трябва да бъде идентифицирана във формуляр #ID, напр. #1234
  • Времето за регистриране (ако е позволено) винаги се въвежда като @XhYm , например @1h30m
  • При комитации ключовите думи за препращане трябва да бъдат въведени в съобщение за ангажиране
  • При заявки за изтегляне препращащите ключови думи трябва да бъдат въведени в име на заявката за изтегляне

3 Картографиране на потребители

Тъй като имаме работа с интеграция на две различни приложения, всяко от тях има различен набор от потребители. Всички потребителски атрибути на субекти, свързани с GitHub (автор на ангажимент, рецензент при заявка за изтегляне и т.н.) в Easy Project + прекарано време, регистрирано чрез препращащи ключови думи, трябва да бъдат свързани с реални потребители. И така, как всъщност потребителите от GitHub се съпоставят с Easy Project?

Тук няма нищо научно, потребителите са просто картографирани чрез имейл и в двата потребителски профила. Моля, уверете се, че вашите разработчици имат еднакви имейли в GitHub и Easy Project.

Ако по някаква причина един потребител не може да обедини имейлите в двете приложения, има опцията да въведете допълнителен имейл в Easy Project в потребителския профил -> въведете имейла в Github тук.


4 Как работи

Най-накрая стигаме до забавната част. Какво всъщност прави интеграцията за потребителите. Осъществете достъп до главната страница/таблото за управление на интеграцията на Git чрез глобалното меню (горе вдясно) под раздел Добавки.


Ще намерите адаптивна страница в състояние по подразбиране, която по-късно можете да настроите според вашите нужди.

Той също така включва меню за изброяване на обекти или въвеждане на настройки. Както бе споменато във въведението, Easy Project събира и показва 4 ключови обекта от GitHub. Нека разгледаме по-отблизо всеки от тях.

4.1 Хранилища

Списъкът с хранилища е функционално най-малко интересен, макар и наистина необходим. Полезен филтър, който си струва да се спомене, се нарича обслужване, който ще използвате, ако имате свързани различни инстанции на GitHub и трябва да търсите само през някои от тях.


Подробности за хранилището

Забележки:

  • (Не-) Регистрирайте всички интеграции са описани в глава 1.1. Той ще създава/изтрива уеб кукички в проекта GitHub.
  • редактирам - ръчна промяна на някои атрибути. Няма друга причина освен разширено отстраняване на грешки за редактиране на атрибути на хранилището в Easy Project.
  • синхронизирам - изтегля всички текущи данни от хранилището.
  • Заявки за изтегляне - изброява всички заявки за изтегляне в това хранилище.
  • Изберете шаблон за последователност - все още в процес на разработка, моля, дайте ни повече време да полираме този здрав инструмент.

4.2 Заявки за изтегляне (заявки за код)

Трябва да изясним защо има две имена. Заявка за изтегляне е терминът, използван в GitHub. Други инструменти имат различни имена за него, например Искане за сливане. Механизмът за интеграция на нашия инструмент е написан по общ начин, така че да можем да разширим поддръжката към други Git платформи. Следователно в приложението и изображенията може да намерите етикет Искане за код, което е общ термин, който може да се приложи към заявки за изтегляне или заявки за сливане.

Заявката за изтегляне е богат обект (съхранява всички важни атрибути), който позволява да се създават хубави списъци, отчети и дори диаграми над тях директно в Easy Project.

Подробности за заявка за изтегляне


Забележки:

  • Името на заявката за изтегляне съдържа препращащата ключова дума "refs", последвана от ID на задачата с хеш #765 - затова е свързана със задача 765
  • Кликвайки върху синхронизирам ще актуализира всички данни на този PR от GitHub
  • Всички атрибути могат да бъдат показани в списъка със заявки за изтегляне
  • Всички атрибути с изключение на SHA могат да се използват като филтри в списък/отчет/диаграма на заявки за изтегляне
  • Списъкът с заявки за изтегляне също съдържа атрибути на тестове (CI/CD), свързани с него, най-важното - Статус на теста

4.3 Ангажи

Подобно на заявките за изтегляне, списъкът с ангажименти също предоставя огромни възможности за докладване. Списъкът с ангажименти също съдържа атрибути от тестове.


Commit няма собствен подробен изглед в Easy Project. Просто няма нужда от това. Като щракнете върху URL (или SHA), ще бъдете насочени към неговите подробности в GitHub.

4.4 тестове

Те бяха споменати във връзка с посочените по-горе субекти. Тестовете също имат свой собствен списък за генериране на различни отчети. Вероятно най-честата употреба ще бъде преглед на живо на тестове на критичните хранилища, като например кандидати за освобождаване.


Тестът също няма собствен подробен изглед, щракването ще ви отведе до GitHub.

4.5 Синергия - изглед от задача

Нека да разгледаме как върви всичко заедно.


1 Цялостно състояние на GitHub обекти, свързани с тази задача. Може да съдържа различни комбинации от цветове (червено, оранжево, зелено) и икони (отметка, кръст). Най-добрият е, разбира се, зелена отметка в зелена рамка
Комбинацията зависи от състоянието на заявка(и) за изтегляне и резултати от тестове, свързани с ангажименти и заявки за изтегляне. Целта му е да покаже на пръв поглед как върви "техническият" напредък на тази задача, полезно особено за QA или мениджърите по доставка.

2 Име на хранилище(а), в което са поети промените, отнасящи се до тази задача. Като щракнете върху връзката, ще бъдете насочени към списъка с тези ангажименти.

3 Име на заявка(и) за изтегляне, отнасящи се до тази задача. Щраквайки върху него, ще бъдете насочени към подробностите за PR в Easy Project.
В случай че има само ангажименти, отнасящи се до тази задача, но липсва заявка за изтегляне, тази стойност е празна.

4 Състояние на всяка заявка за изтегляне. Щраквайки върху него, ще бъдете пренасочени към подробностите за заявката за изтегляне в GitHub.
В случай че има само ангажименти, отнасящи се до тази задача, но липсва заявка за изтегляне, тази стойност е празна.

5 Резултат от последното тестово изпълнение в заявката за изтегляне. Щраквайки върху него, ще бъдете насочени към GitHub. В него не може да се кликне неизвестен статус (тестът не съществува).
В случай, че има само ангажименти, отнасящи се до тази задача, но липсва заявка за изтегляне, стойността показва последния резултат от теста, изпълнен при последния комит.

6 Изпълнете теста ръчно - отвежда ви до GitHub.

7 Щракнете, за да създадете заявка за изтегляне. Полезно, когато имате само набор от ангажименти, но липсва PR (отвежда ви до GitHub).

4.6 Създаване на клон от задача

Някои потребители намират за удобно да създадат клон директно от задачата.

Бутонът може да бъде намерен в глобално меню върху детайла на задачата


Изберете хранилището в полето за автоматично довършване. Името на клон е предварително попълнено с идентификатор на задачата и тема, но можете да го промените. Изходният клон е предварително попълнен от майстор


Ще видите разклонението като таг под секцията за интегриране на Git на задачата. Може да се кликне и води до клона в GitHub.



5 Разрешения

В момента има две разрешения.

  • Изглед - Достъп до добавката от глобалното меню
  • Управление - редактиране на таблото


Глобалната конфигурация е достъпна само за администратора на Easy Project.

Опитайте Easy Project за 30 дни безплатен пробен период

Пълни функции, SSL защитени, ежедневни архиви, във вашето геолокация