GitLab CI
Mengenal GitLab CI untuk otomatisasi build dan deploy
Apa itu GitLab CI
- Layanan CI/CD yang terintegrasi dengan GitLab
- Menggunakan runner untuk menjalankan pipeline
- Konfigurasi disimpan dalam file
.gitlab-ci.yml
Konsep Dasar
Pipeline
- Kumpulan stage dan job yang dijalankan secara berurutan
- Setiap stage berisi satu atau lebih job
Stage
- Fase dalam pipeline seperti build, test, deploy
- Job dalam stage yang sama dijalankan secara paralel
- Stage dijalankan secara berurutan dari atas ke bawah
Job
- Tugas yang dijalankan oleh runner
- Terdiri dari script yang akan dieksekusi
- Dapat memiliki kondisi untuk dijalankan
Runner
- Agen yang menjalankan job dari pipeline
- Dapat menggunakan runner yang di-host GitLab atau runner sendiri
Contoh Konfigurasi Dasar
stages:
- build
- test
- deploy
build-job:
stage: build
script:
- npm install
- npm run build
test-job:
stage: test
script:
- npm test
deploy-job:
stage: deploy
script:
- npm run deploy
only:
- mainKeunggulan GitLab CI
- Terintegrasi penuh dengan GitLab
- Mendukung runner self-hosted untuk kebutuhan khusus
- Visualisasi pipeline yang jelas
- Mendukung deployment ke berbagai platform