Bu API'yi kullanarak GitHub veri havuzu etkinliğini gerçek zamanlı olarak Slack'te izleyin.

GitHub'ı Slack ile entegre etmek, ekibinizi gerçek zamanlı depo olayları hakkında bilgilendirerek iletişimini kolaylaştırmanıza yardımcı olacaktır. Bu entegrasyon, daha verimli işbirliğine, kod tabanı bağlamındaki değişiklikleri tartışmaya ve geliştirme sırasında ortaya çıkabilecek endişeleri hızla gidermeye yardımcı olur.

Ayrıca GitHub'ı Slack ile entegre etmek, bildirimleri ekibinizin benzersiz iş akışına uyacak şekilde özelleştirmenizi sağlar. Bu, dikkat dağıtıcı unsurları en aza indirir ve gerçekten önemli olan şeylere odaklanır. İletişime yönelik bu özel yaklaşım, ekibinizin bilinçli kararlar almasına ve zamanında harekete geçmesine olanak tanıyarak en yüksek kalitede çıktı elde etmenizi sağlar.

1. Adım: Yeni Bir Slack Uygulaması Oluşturun

Devam etmek için rahat olmalısın Slack platformunu kullanma. GitHub'a da aşina olmalısınız.

Entegrasyonun ilk adımı, yeni bir Slack uygulaması oluşturmaktır. Bu uygulama, bir havuz olayı meydana geldiğinde seçilen Slack kanalında mesaj yayınlamaktan sorumlu olacaktır. Yeni bir uygulama oluşturmak için şuraya gidin:

instagram viewer
gevşek web sitesi ve hesabınıza giriş yapın. Ardından, yeni bir çalışma alanı oluşturun. Uygulamanızı ekibinizin çalışma alanına yüklemeden önce test etmek için bu çalışma alanını kullanacaksınız.

Şuraya git: Slack API web sitesi yeni bir tarayıcı sekmesinde.

Tıklamak Uygulamalarınız düğme. Açılan sayfada üzerine tıklayın Yeni Uygulama Oluştur düğme.

Uygulamayı sıfırdan oluşturma seçeneğini belirleyin. Ardından uygulamanızı adlandırın ve yüklemek istediğiniz çalışma alanını seçin.

Tıkla Uygulama Oluştur düğme. Bu eylem, yeni Slack uygulamanızı oluşturacak ve sizi onun kontrol paneline yönlendirecektir.

2. Adım: Gevşek Gelen Web Kancası Kurun

Slack Incoming Webhook, harici kaynaklardan gelen mesajları Slack çalışma alanınıza göndermenizi sağlar. Webhook'u ayarlamak için Gelen Web Kancaları özellik. açtığınızdan emin olun. Gelen Web Kancalarını Etkinleştir düğme.

aşağı kaydır Çalışma Alanınız için Webhook URL'leri bölüm. Tıkla Çalışma Alanına Yeni Web Kancası Ekleme düğme.

Slack, uygulamanızın mesaj göndereceği kanalı seçmenizi isteyecektir. Kanalı seçin ve tıklayın İzin vermek düğme.

Bu, uygulamanızı seçilen kanala ekleyecektir. geri dön Çalışma Alanınız için Webhook URL'leri bölüm. Oluşturulan kopyala Web kancası URL'si. Bu, GitHub'ın depo olay bildirimlerini göndereceği URL'dir.

Artık Slack tarafını yapılandırmayı bitirdiniz.

3. Adım: GitHub Deposunu Yapılandırın

Şuraya git: GitHub web sitesi ve hesabınıza giriş yapın. Etkinlik bildirimlerini almak istediğiniz depoya gidin. ayrıca yapabilirsin yeni bir depo oluştur. Tıkla Hareketler depo adının altındaki sekme.

Ardından üzerine tıklayın kendinize bir iş akışı ayarlayın bağlantı. Görünen sonraki sayfa, GitHub iş akışları dizininde bir YAML dosyası oluşturmanızı gerektirir. Bu dosya, Slack çalışma alanınıza bildirim göndermekten sorumlu GitHub Eylemleri iş akışını tanımlar.

YAML kodunu entegre düzenleyicide yazacaksınız. Bu kod, havuzda belirli olaylar meydana geldiğinde bir Slack kanalına bildirim göndererek GitHub'ı Slack ile entegre edecektir.

Bu makalede kullanılan tam kaynak kodu bir GitHub deposu.

Adım 4: GitHub'ı Slack ile Entegre Etmek İçin YAML Kodunu Yazın

İş akışınızı adlandırın. Beğendiğiniz adı seçmekten çekinmeyin.

isim:GevşekBildiri

İş akışını tetikleyecek olayları belirtin. Burası, ekibinizin bilgilendirilmesini istediğiniz olayları seçtiğiniz yerdir. Gereksinimlerinize uyacak etkinlikleri ekleyin veya kaldırın.

Açık:
itmek:
çekme_isteği:
sorunlar:
türleri:
-açıldı
-kapalı
-yeniden açıldı
-düzenlendi
-silindi
-sabitlenmiş
-sabitlenmemiş
-atanmış
-atanmamış
-etiketli
-etiketlenmemiş
-dönüm noktası
-kilometre taşı
sayı_yorumu:
türleri:[yaratıldı,düzenlenmiş,silindi]
yaratmak:
silmek:

İşinizi yapılandırın ve çalışacağı sanal ortamı seçin. bildir_slack işin adıdır. Siz beğeninize göre değiştirebilirsiniz.

Meslekler:
bildirim_slack:
çalışma:ubuntu-en son

Slack'e bildirim göndermekten sorumlu olacak bir adım ayarlayın.

adımlar:
-isim:GöndermekGevşekbildiri

adlı bir ortam değişkeni tanımlayın. SLACK_WEBHOOK_URL. Slack webhook URL'sini saklayacaktır. Daha sonra URL'yi GitHub'ın depo sırlarına ekleyeceksiniz.

ortam:
SLACK_WEBHOOK_URL:${{sırlar. SLACK_WEBHOOK_URL}}

yapılandırın aksiyon gevşekliği GitHub Eylemi. Bu, Slack API ile etkileşimin altında yatan mantığı işleyen bir üçüncü taraf eylemidir. Bildirimleri tetikleyen mesajları ve olayları yapılandırmaya odaklanmanızı sağlar. Bu, Slack'e bildirim gönderme sürecini çok daha kolaylaştırır.

kullanır:8398a7/action-slack@v3

Bu kod kullanır 8398a7/action-slack@v3aksiyon.

yapılandırın 8398a7/action-slack@v3 özel parametrelerle eylem. bu durum parametre mesaj durumunu şu şekilde ayarlar: gelenek. Slack mesajının içeriğini özel bir yük kullanarak tanımlamanıza izin verecektir. bu alanlar parametresi, Slack mesajına dahil edilecek alanları listeler.

ile:
durum:gelenek
alanlar:repo, taahhüt, olay, eylem, iş akışı, ref, URL

Oluşturmak custom_payload bu, Slack mesajının görünümünü tercihlerinize göre özelleştirecektir.

custom_payload:|
{
"ekler":[
{
"renk":"${{ iş durumu }}",
"başlık":>-
${{github.aktör}}${{github.event.pull_request&&github.event.pull_request.merged==doğru&&"çekme isteği birleştirildi"||github.event.pull_request&&'bir çekme isteği açtı'||github.event_name=='itmek'&&'yeni değişiklikleri zorladı'||github.event_name=='yaratmak'&&'yeni bir dal veya etiket oluşturdu'||github.event_name=='silmek'&&'bir dal veya etiket silindi'||github.event_name=='sorunlar'&&github.event.action||'Bir olayı tetikledi'}},
"metin":>-
:tada:Etkinlik detayları:

-Depo:${{github.repository}}
-Dal:${{github.ref}}
-İleti:${{github.event_name=='itmek'&&github.event.head_commit.mesaj||github.event_name=='sorunlar'&&github.event.issue.title||github.event_name=="çekme_isteği"&&github.event.pull_request.title||''}}
-:globe_with_meridians:Bağlantı:${{github.event.pull_request.html_url||github.event.issue.html_url||github.event.repository.html_url}}
}

]
}

başvurabilirsiniz 8398a7/action-slack@v3 özel kullanım durumu desteklenen tüm özelleştirmeleri bulmak için. Yeni iş akışını oluşturmak için YAML dosyasını kaydedin.

GitHub'ı Slack ile entegre etmenin son adımı, yeni bir depo sırrı eklemektir. Bu durumda işin sırrı, Gevşek Webhook URL'si Slack'ten kopyaladın. Erişimi olan herkes çalışma alanınıza mesaj gönderebileceğinden, bu URL'yi gizli tutun.

Depo ayarlarınıza gidin. Tıkla sırlar ve değişkenler altında güvenlik özellik. seçin Hareketler seçenek.

Tıklamak Yeni depo sırrı. Sırrın adını şu şekilde ekleyin: SLACK_WEBHOOK_URL. Sonra yapıştırın gevşek URL Gizli alana. Son olarak, tıklayın Sır Ekle Yeni sırrı kaydetmek için düğmesine basın.

Artık GitHub'ı Slack ile entegre etmeyi bitirdiniz. Deponuzda her olay gerçekleştiğinde, kanalınızda bir mesaj görüntülenecektir. Denemek yeni bir çekme isteği oluşturma. Bu, bir push olayını tetikleyecektir.

Aşağıdaki ekran görüntüsü, Slack'te bir depoda gerçekleşen olayları gösteren örnek mesajları göstermektedir.

Gerekli bulabileceğiniz diğer alanları dahil etmek için mesaj yükünü özelleştirebilirsiniz.

Slack Entegrasyonları ile Verimliliğinizi Artırın

GitHub, çalışma alanınıza ekleyebileceğiniz tek Slack entegrasyonu değildir. Ekibinizin üretkenliğini artırmak ve iletişimlerini geliştirmek için kullanabileceğiniz çok sayıda entegrasyon vardır. Bu entegrasyonlara aşina olmak, ekibinizin iş akışını düzene koymanıza ve herkesi aynı sayfada tutmanıza yardımcı olacaktır.