0Pricing
CI/CD with GitHub Actions & DevOps Pipelines · Pelajaran

Menyiapkan Notifikasi dan Peringatan

Konfigurasikan notifikasi dan peringatan otomatis untuk kegagalan, keberhasilan, atau peristiwa kritis pipeline menggunakan berbagai kanal komunikasi.

Menyiapkan Notifikasi dan Peringatan adalah pelajaran CI/CD with GitHub Actions & DevOps Pipelines gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar CI/CD with GitHub Actions & DevOps Pipelines, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus CI/CD with GitHub Actions & DevOps Pipelines mencakup 4 pelajaran total.

Mengapa Notifikasi Alur CI/CD?

Dalam pengembangan yang serba cepat, mengetahui kondisi alur CI/CD Anda sangat penting. Notifikasi otomatis membuat tim Anda tetap mendapat informasi tentang peristiwa penting.

Pelajaran ini membahas cara menyiapkan peringatan untuk keberhasilan, kegagalan, dan tonggak penting alur lainnya menggunakan GitHub Actions.

Notifikasi GitHub Bawaan

GitHub menyediakan notifikasi dasar secara langsung. Jika Anda "mengikuti" repositori, Anda akan menerima notifikasi melalui email atau web untuk eksekusi alur kerja.

  • Berhasil: Alur kerja selesai.
  • Gagal: Alur kerja gagal.
  • Netral: Alur kerja dibatalkan.

Namun, notifikasi ini sering kali bersifat pribadi dan tidak menyediakan komunikasi waktu nyata untuk seluruh tim yang diperlukan bagi CI/CD yang efektif.

Saluran Notifikasi Populer

Untuk mengatasi kesenjangan ini, GitHub Actions terintegrasi dengan berbagai layanan eksternal. Saluran umum untuk peringatan tim meliputi:

  • Slack: Platform komunikasi tim yang populer.
  • Microsoft Teams: Alat kolaborasi lain yang banyak digunakan.
  • Surel: Untuk peringatan yang lebih formal atau tidak mendesak.
  • Kait Web Kustom: Untuk integrasi dengan hampir semua layanan.

Saluran-saluran ini memungkinkan pembaruan terpusat secara waktu nyata.

Integrasi Slack dengan Aksi

Mengintegrasikan Slack adalah cara umum untuk mendapatkan pembaruan alur secara langsung. Anda dapat menggunakan aksi dari GitHub Marketplace atau mengirim data secara langsung ke kait web Slack.

Aksi dari Marketplace menyederhanakan proses dengan menyembunyikan kerumitan permintaan HTTP.

Alur Kerja Notifikasi Slack Sederhana

Berikut alur kerja dasar yang mengirim notifikasi Slack setiap kali ada perubahan yang didorong ke cabang main. Perhatikan penggunaan Rahasia GitHub untuk URL kait web.

name: Notify on Push

on: 
  push:
    branches: [ main ]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Send Slack Notification
        uses: rtCamp/action-slack-notify@v2
        env:
          SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
          SLACK_MESSAGE: "New push to main branch!"
          SLACK_COLOR: "good"

Notifikasi Bersyarat (Saat Gagal)

Sering kali, Anda hanya ingin menerima notifikasi jika terjadi kesalahan. GitHub Actions memungkinkan Anda menambahkan kondisi ke langkah menggunakan ekspresi if:.

Ekspresi failure() memeriksa apakah langkah sebelumnya dalam tugas mengalami kegagalan. Dengan demikian, saluran komunikasi Anda tidak terlalu ramai.

name: Notify on Failure

on: [push]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: This step will fail
        run: exit 1 # Simulate a failure

      - name: Send Failure Notification to Slack
        if: failure()
        uses: rtCamp/action-slack-notify@v2
        env:
          SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
          SLACK_MESSAGE: "Workflow failed on ${{ github.ref }}!"
          SLACK_COLOR: "danger"

Peringatan melalui Kait Web Kustom

Untuk layanan yang tidak memiliki aksi GitHub khusus, Anda dapat menggunakan kait web umum. Caranya adalah membuat permintaan HTTP POST, sering kali dengan curl, ke URL tertentu.

Hal ini memberikan fleksibilitas maksimum sehingga Anda dapat berintegrasi dengan dasbor kustom, sistem manajemen insiden, atau bahkan gerbang SMS.

name: Custom Webhook Alert

on: [workflow_dispatch]

jobs:
  alert:
    runs-on: ubuntu-latest
    steps:
      - name: Send Custom Alert
        run: |
          curl -X POST -H "Content-Type: application/json" \
          -d '{"text":"A custom alert from GitHub Actions!"}' \
          ${{ secrets.CUSTOM_WEBHOOK_URL }}
        env:
          CUSTOM_WEBHOOK_URL: ${{ secrets.CUSTOM_WEBHOOK_URL }}

Memfilter Cakupan Notifikasi

Anda mungkin ingin memberi tahu tim yang berbeda untuk bagian alur yang berbeda. Anda dapat menggunakan kondisi if: untuk memfilter notifikasi berdasarkan:

  • Cabang: github.ref == 'refs/heads/main'
  • Status tugas: always(), success(), failure(), cancelled()
  • Langkah tertentu: Periksa hasil dari langkah tertentu.

Hal ini memastikan hanya peringatan yang relevan yang sampai kepada orang yang tepat.

Melindungi Rahasia Notifikasi

URL kait web dan token API untuk layanan notifikasi bersifat sensitif. Keduanya tidak boleh pernah ditulis langsung ke dalam berkas alur kerja Anda.

Selalu simpan keduanya sebagai Rahasia GitHub. Rahasia ini dienkripsi dan hanya diberikan kepada pelaksana selama eksekusi alur kerja, sehingga kredensial Anda tetap aman.

Pemeriksaan Cepat Peringatan

Bayangkan alur kerja yang dirancang untuk membangun dan menguji kode. Kami ingin menerima notifikasi di Slack ONLY jika langkah pembangunan atau pengujian gagal.

Kondisi if: mana yang harus digunakan untuk langkah notifikasi Slack agar tujuan ini tercapai?

Ringkasan: Notifikasi & Peringatan

Anda telah mempelajari cara menyiapkan notifikasi dan peringatan otomatis untuk alur GitHub Actions Anda. Hal-hal utama:

  • Gunakan layanan eksternal seperti Slack atau kait web untuk peringatan bagi seluruh tim.
  • Aksi dari Marketplace menyederhanakan integrasi dengan layanan populer.
  • Terapkan kondisi if: (misalnya, failure()) untuk notifikasi yang terarah.
  • Selalu lindungi URL kait web dan token sensitif menggunakan Rahasia GitHub.

Pemberian peringatan yang efektif memastikan tim Anda tetap proaktif dalam menjaga kondisi alur!

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Menyiapkan Notifikasi dan Peringatan” gratis?

Ya — teks lengkap “Menyiapkan Notifikasi dan Peringatan” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus CI/CD with GitHub Actions & DevOps Pipelines, upgrade ke CoddyKit PRO. Kursus CI/CD with GitHub Actions & DevOps Pipelines mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Menyiapkan Notifikasi dan Peringatan”?

Konfigurasikan notifikasi dan peringatan otomatis untuk kegagalan, keberhasilan, atau peristiwa kritis pipeline menggunakan berbagai kanal komunikasi. Kamu berlatih CI/CD with GitHub Actions & DevOps Pipelines dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai CI/CD with GitHub Actions & DevOps Pipelines?

Tidak diperlukan pengalaman sebelumnya. CI/CD with GitHub Actions & DevOps Pipelines di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “Menyiapkan Notifikasi dan Peringatan” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran CI/CD with GitHub Actions & DevOps Pipelines ini?

Ya. Setiap pelajaran CI/CD with GitHub Actions & DevOps Pipelines menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Strategi Pemantauan Pipeline
  2. Mengintegrasikan Layanan Eksternal
  3. Menyiapkan Notifikasi dan Peringatan
  4. Pencatatan Terstruktur dan Pelacakan Terdistribusi
← Kembali ke CI/CD with GitHub Actions & DevOps Pipelines