GitHub Actions
Apa itu ini
Bayangkan sebuah daftar periksa (checklist) yang berjalan sendiri setiap kali kamu menyimpan pekerjaanmu — "jalankan tes, build, taruh online" — tanpa kamu perlu mengangkat satu jari pun. Itulah /CD (Continuous Integration / Continuous Delivery): otomatisasi yang memeriksa kodemu dan mengirimkannya (ship) untukmu. GitHub Actions adalah sistem CI/CD bawaan GitHub. Kamu menambahkan file YAML (file pengaturan berbasis teks biasa yang mudah dibaca manusia) ke repositorimu yang mendeskripsikan workflow — sekumpulan langkah yang berjalan otomatis saat ada event seperti push, , atau jadwal tertentu. Setiap workflow berjalan di mesin yang dihosting GitHub (disebut "runner," komputer baru yang disewakan GitHub untuk pekerjaan itu), jadi kamu bisa menguji, membangun (build), dan men-deploy kodemu tanpa perlu mengelola server sendiri. Ini adalah cara paling umum untuk mengotomatiskan alur dari "kode di-push" sampai "aplikasi live."
Kelebihan
- Sudah terpasang langsung di GitHub — tidak perlu menyiapkan layanan CI terpisah.
- Dipicu oleh event repo: jalankan tes di setiap PR (pull request, sebuah perubahan yang diajukan), di setiap push ke main.
- Marketplace besar berisi action siap pakai untuk tugas-tugas umum (setup, deploy, lint).
- Runner yang dihosting untuk Linux, macOS, dan Windows; menit gratis yang cukup banyak untuk repo publik.
- Manajemen secrets dan proteksi environment untuk deploy yang aman.
Trade-off
- Workflow YAML cepat menjadi rumit; men-debug pipeline (rangkaian langkah otomatis) yang gagal bisa melelahkan.
- Menit pada repo privat dibatasi (metered), dan pemakaian berat berarti biaya.
- Mereproduksi kegagalan secara lokal terasa canggung karena semuanya berjalan di runner jarak jauh.
- Action pihak ketiga memang praktis, tapi merupakan ketergantungan rantai pasok (supply-chain) yang perlu diperiksa dulu.
Paling cocok untuk
Mengotomatiskan tes, build, dan deployment langsung dari repositorimu — menjalankan test suite-mu di setiap pull request, dan mengirim ke hosting-mu (seperti Cloudflare Pages) setiap kali main diperbarui.
Kecocokan dengan vibe coding
GitHub Actions cocok sekali dengan vibe coding karena sebuah bisa menuliskan seluruh pipeline untukmu. Minta agent untuk menambahkan workflow yang menginstal , menjalankan tesmu, dan men-deploy saat ada push ke main — agent tahu nama-nama action yang umum dan bentuk YAML-nya. Nilai sesungguhnya di sini adalah jaring pengaman: begitu tes berjalan otomatis di setiap perubahan, AI tidak bisa diam-diam menggabungkan (merge) sesuatu yang merusak build. Tip: beri tahu agent hosting dan manager yang kamu pakai supaya ia memilih action deploy dan pengaturan yang tepat, dan simpan secrets di pengaturan repo, jangan pernah di dalam YAML.
# .github/workflows/ci.yml
name: CI
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with: { node-version: 20 }
- run: npm ci
- run: npm test