Tuesday, March 13, 2018

Trigger Jenkins Build via Slack Command

       Helloo sobat nostra, untuk postingan kali ini, kita akan membahas gimana cara trigger build suatu job pada jenkins dengan menggunakan slack command (interesting right? :D). Jadi, di chat platform slack terdapat custom apps yang bernama "Slash Command" yang dapat kita add kedalam workspace kita. Slash command memungkinkan kita untuk membuat custom command yang dapat meng "hit" suatu url/rest-api dengan method GET/POST. Nah, dengan fitur ini kita dapat membuat suatu /command yang akan mengakses url job jenkins kita dan akan menjalankan build pada job tersebut. Tapi sebelumnya, pada sisi jenkins, kita harus install Build Authorization Token Root Plugin yang tersedia di menu manage plugin pada jenkins. Plugin ini akan generate sebuah url (rest) beserta token yang menjadi access key untuk url job kita. Oke, untuk lebih jelas nya kita lanjut ke konfigurasi berikut :
  • Build Authorization Token Root Plugin installed.
  • Pada job yang akan di trigger tambahkan konfigurasi berikut dan masukkan token (terserah) lalu save konfigurasi job tersebut.
  • Nah, plugin tersebut akan menyediakan url (rest) yang akan di hit oleh slack command.
  • Next, kita beralih ke slack.
  • Login ke slack, lalu masuk ke menu apps > manage apps > search "slash command" dan klik add.
  • Setelah itu add configuration.
  • Akan ada beberapa field yang akan kita isi.
  • Command : custom command yang kita inginkan, sebagai contoh saya menggunakan /build_dk-web yang akan trigger build untuk job dengan nama dk-web
  • URL : url jenkins beserta token yang telah di set pada step sebelumnya, pattern : jenkinsurl/job/namajob/build?token=token
  • Token : ini merupakan token untuk verifikasi dari slack, jadi bukan token yang kita set pada jenkins.
  • Next, save configuration.
Oke, kita telah memiliki custom command yang akan trigger build untuk job dk-web pada jenkins. mari kita test konfigurasi tersebut. Buka salah satu slack channel dan ketik /build_dk-web dan klik pada command tersebut.


  •  Viola, trigger masuk dan build pada job dk-web running.


Referensi :

No comments:

Post a Comment