Проследявайте активността на хранилището на GitHub в реално време на Slack с помощта на този API.
Интегрирането на GitHub със Slack ще ви помогне да рационализирате комуникацията на вашия екип, като ги информирате за събития в хранилището в реално време. Тази интеграция помага за по-ефективно сътрудничество, обсъждане на промени в контекста на кодовата база и бързо справяне с всички проблеми, които могат да възникнат по време на разработката.
Освен това, интегрирането на GitHub със Slack ви позволява да персонализирате известията, за да отговарят на уникалния работен процес на вашия екип. Това минимизира разсейването и се фокусира върху това, което наистина има значение. Този персонализиран подход към комуникацията дава възможност на вашия екип да взема информирани решения и да предприема навременни действия, като гарантира най-висококачествен резултат.
Стъпка 1: Създайте ново приложение Slack
За да следвате, трябва да се чувствате удобно с помощта на платформата Slack. Трябва също да сте запознати с GitHub.
Първата стъпка от интеграцията е създаването на ново приложение Slack. Това приложение ще отговаря за публикуването на съобщения в избрания канал на Slack, когато настъпи събитие в хранилището. За да създадете ново приложение, отворете Slack уебсайт и влезте в акаунта си. След това създайте ново работно пространство. Ще използвате това работно пространство, за да тествате приложението си, преди да го инсталирате в работното пространство на вашия екип.
Навигирайте до Slack API уебсайт в нов раздел на браузъра.
Кликнете върху Вашите приложения бутон. На страницата, която се показва, щракнете върху Създаване на ново приложение бутон.
Изберете опцията за създаване на приложението от нулата. След това наименувайте приложението си и изберете работното пространство, в което искате да го инсталирате.
Кликнете върху Създаване на приложение бутон. Това действие ще създаде вашето ново приложение Slack и ще ви пренасочи към неговото табло.
Стъпка 2: Настройте Slack Incoming Webhook
Slack Incoming Webhook ви позволява да изпращате съобщения от външни източници във вашето работно пространство Slack. За да настроите webhook, изберете Входящи уебкукички особеност. Уверете се, че сте включили Активиране на входящи уебкукички бутон.
Превъртете надолу до URL адреси на Webhook за вашето работно пространство раздел. Кликнете върху Добавете нова уебкукичка към работното пространство бутон.
Slack ще поиска да изберете канала, в който приложението ви ще публикува съобщения. Изберете канала и щракнете върху Позволява бутон.
Това ще добави вашето приложение към избрания канал. Върнете се към URL адреси на Webhook за вашето работно пространство раздел. Копирайте генерираното URL адрес на уеб кукичка. Това е URL адресът, до който GitHub ще изпраща известията за събития в хранилището.
Вече сте готови с конфигурирането на Slack страна.
Стъпка 3: Конфигурирайте GitHub Repo
Навигирайте до Уебсайт GitHub и влезте в акаунта си. Отидете до хранилището, от което искате да получавате известия за събития. Можете също създайте ново хранилище. Кликнете върху Действия раздел под името на хранилището.
След това щракнете върху настройте сами работен процес връзка. Следващата страница, която се появява, изисква да създадете YAML файл в директорията с работни потоци на GitHub. Този файл дефинира работния поток GitHub Actions, отговорен за изпращане на известия до вашето работно пространство Slack.
Ще напишете YAML кода в интегрирания редактор. Този код ще интегрира GitHub със Slack чрез изпращане на известия до Slack канал, когато възникнат конкретни събития в хранилището.
Пълният изходен код, използван в тази статия, е достъпен в a GitHub хранилище.
Стъпка 4: Напишете YAML кода за интегриране на GitHub със Slack
Наименувайте своя работен процес. Чувствайте се свободни да изберете името по ваш вкус.
име:Отпуснатостуведомление
Посочете събитията, които ще задействат работния процес. Тук избирате събитията, за които искате вашият екип да бъде уведомен. Добавете или премахнете събитията, за да отговарят на вашите изисквания.
На:
натиснете:
pull_request:
въпроси:
видове:
-отвори
-затворен
-отворен отново
-редактиран
-изтрити
-закрепен
-откачен
-възложено
-неназначени
-етикетирани
-без етикет
-крайъгълен камък
-демилестонен
проблем_коментар:
видове:[създадено,редактиран,изтрит]
създавам:
Изтрий:
Конфигурирайте работата си и изберете виртуалната среда, в която ще работи. notify_slack е името на длъжността. Можете да го промените по ваш вкус.
работни места:
notify_slack:
работи на:ubuntu-най-нов
Настройте стъпка, която ще отговаря за изпращането на известие до Slack.
стъпки:
-име:ИзпратетеОтпуснатостуведомление
Дефинирайте променлива на средата с име SLACK_WEBHOOK_URL. Той ще съхранява URL адреса на Slack webhook. По-късно ще добавите URL адреса към тайните на хранилището на GitHub.
околна среда:
SLACK_WEBHOOK_URL:${{тайни. SLACK_WEBHOOK_URL}}
Конфигурирайте действие-отпуснатост GitHub действие. Което е действие на трета страна, което обработва основната логика на взаимодействие със Slack API. Тя ви позволява да се съсредоточите върху конфигурирането на съобщенията и събитията, които задействат известията. Това прави процеса на изпращане на известия до Slack много по-лесен.
използва:8398a7/action-slack@v3
Този код използва 8398a7/action-slack@v3действие.
Конфигурирайте 8398a7/action-slack@v3 действие с персонализирани параметри. The състояние параметър задава състоянието на съобщението на персонализиран. Това ще ви позволи да дефинирате съдържанието на съобщението Slack, като използвате персонализиран полезен товар. The полета параметърът изброява полетата за включване в съобщението Slack.
с:
състояние:персонализиран
полета:репо, ангажиране, събитие, действие, работен поток, препратка, URL
Създавам custom_payload който ще персонализира външния вид на съобщението Slack, за да отговаря на вашите предпочитания.
custom_payload:|
{
"прикачени файлове":[
{
"цвят":"${{ job.status }}",
"заглавие":>-
${{github.actor}}${{github.event.pull_request&&github.event.pull_request.merged==вярно&&'сля заявка за изтегляне'||github.event.pull_request&&'отвори заявка за изтегляне'||github.име_на_събитие=="бутам"&&"избута нови промени"||github.име_на_събитие=="създаване"&&'създаде нов клон или етикет'||github.име_на_събитие=='Изтрий'&&'изтрих клон или етикет'||github.име_на_събитие=="проблеми"&&github.event.action||"задейства събитие"}},
"текст":>-
:тада:Подробности за събитието:
-Хранилище:${{github.repository}}
-Клон:${{github.ref}}
-съобщение:${{github.име_на_събитие=="бутам"&&github.event.head_commit.message||github.име_на_събитие=="проблеми"&&github.event.issue.title||github.име_на_събитие=='pull_request'&&github.event.pull_request.title||''}}
-:globe_with_meridians:връзка:${{github.event.pull_request.html_url||github.event.issue.html_url||github.event.repository.html_url}}
}
]
}
Можете да се обърнете към 8398a7/action-slack@v3 потребителски случай на използване за да намерите всички поддържани персонализации. Задайте YAML файла, за да създадете новия работен процес.
Последната стъпка от интегрирането на GitHub със Slack е добавянето на нова тайна на хранилището. Тайната в случая е URL адрес на Slack Webhook копирал си от Slack. Пазете този URL адрес в тайна, тъй като всеки, който има достъп до него, може да изпраща съобщения до вашето работно пространство.
Отидете до настройките на вашето хранилище. Кликнете върху тайни и променливи под сигурност особеност. Изберете Действия опция.
Кликнете върху Нова тайна на хранилището. Добавете името на тайната като SLACK_WEBHOOK_URL. След това поставете Slack URL в Тайното поле. Накрая щракнете върху Добавете тайна бутон за запазване на новата тайна.
Вече завършихте интегрирането на GitHub със Slack. Всеки път, когато се случи събитие във вашето хранилище, във вашия канал ще се покаже съобщение. Опитвам създаване на нова заявка за изтегляне. Това ще задейства натискащо събитие.
Екранната снимка по-долу показва примерни съобщения в Slack, показващи събития, случили се в хранилище.
Можете да персонализирате полезния товар на съобщението, за да включите други полета, които може да намерите за необходими.
Подобрете производителността си със Slack интеграции
GitHub не е единствената интеграция на Slack, която можете да добавите към работното си пространство. Има множество интеграции, които можете да използвате, за да подобрите производителността на вашия екип и да подобрите комуникацията им. Запознаването с тези интеграции ще ви помогне да рационализирате работния процес на вашия екип и да държите всички на една и съща страница.