Pipeline Dasar
Memahami konsep pipeline dalam CI/CD
Apa itu Pipeline
- Rangkaian langkah yang dijalankan secara berurutan untuk mem-build, test, dan deploy kode
- Setiap langkah bergantung pada langkah sebelumnya
- Jika satu langkah gagal, pipeline akan berhenti
Tahapan Umum Pipeline
Build
- Menggabungkan kode dari repository
- Menginstal dependensi yang dibutuhkan
- Mengompilasi atau mempersiapkan aplikasi
Test
- Menjalankan unit test untuk memeriksa logika kode
- Menjalankan integration test untuk memeriksa interaksi antar komponen
- Menjalankan linting untuk memeriksa gaya penulisan kode
Deploy
- Menyiapkan artefak hasil build
- Mengirim aplikasi ke server staging atau produksi
- Melakukan verifikasi setelah deployment
Konfigurasi Pipeline
- Pipeline diatur dalam file konfigurasi seperti YAML
- File ini disimpan dalam repository bersama kode
- Contoh nama file:
.github/workflows/main.ymluntuk GitHub Actions
Lingkungan Deployment
Development
- Lingkungan untuk developer mengembangkan fitur
- Biasanya di lokal machine developer
Staging
- Lingkungan yang menyerupai produksi untuk testing
- Digunakan untuk uji coba sebelum dirilis ke pengguna
Production
- Lingkungan tempat aplikasi diakses oleh pengguna nyata
- Memerlukan stabilitas dan keamanan tertinggi