Introduction
Di artikel saya sebelumnya saya sudah membahas tentang membuat Pipeline menggunakan Gitlab CI, nah sekarang saya akan mencoba membahas tentang bagaimana cara kita membuat pipeline menggunakan Jenkinsfile
Hal hal yang perlu disiapkan :
- Container registry
- Server jenkins
- Cluster kube
- SCM (github, gitlab, Bitbucket)
NB : disini saya menggunakan Google Container registry, server jenkins, GCK, SCM menggunakan bitbucket, dan sebelumnya sudah di setup sdk google dan juga pointing webhook ke bitbucket.
Topology
Langkah-langkah membuat pipeline saya bagi menjadi 4 stage sebagai berikut :
Untuk konsep pipeline sendiri sudah pernah saya share di artikel berikut ini https://igunawan.com/gitlab-cicd-untuk-deploy-aplikasi/
Step 1 – Clone & pull Code
Pertama adalah kita buat script clone dan juga pull jika ada update/trigerred commit ke repository.
Step 2 – Build image
Build image dari Dockerfile dengan nama image dan taging contoh seperti berikut.
Step 3 – Retage & Push image
Retage image kemudian push image kedalam container registry private kita, dengan catatan di server jenkins sudah di setup untuk auth ke container registrynya.
Step 4 – Restart Deployment
Dan yang terakhir adalah restart deployment yang dimana bertugas sebagai manifests dari suatu aplikasi/pod yang ita deploy didalam kubernetes, yang berfungsi ketika ada image baru deployment tersebut akan restart dan mengambil updatean image tersebut.
NB : untuk tutorial deploy app ke kubernetes silahkan kalian lihat di artikel sebelumnya berikut ini https://igunawan.com/deploy-nodejs-app-ke-kubernetes-docker/
Outpul / hasil dari success pipeline di Jenkins yang sudah kita buat tadi
Full script Jenkinsfile
Selamat mencoba, Terima kasih
0 Comments