Halooo, kembali lagi bersama Bthari! :)
Setelah saya menjelaskan tentang CI/CD pada post-post sebelumnya, di sini saya akan menjelaskan secara garis besar bagaimana pipelines pada setiap environment dapat berbeda-beda. Pertama-tama, mari kita lihat terlebih dahulu bagaimana pipeline-nya:
Setelah saya menjelaskan tentang CI/CD pada post-post sebelumnya, di sini saya akan menjelaskan secara garis besar bagaimana pipelines pada setiap environment dapat berbeda-beda. Pertama-tama, mari kita lihat terlebih dahulu bagaimana pipeline-nya:
coba_coba (dulu)
sit_uat & master & coba_coba (sekarang)
other branch
Bagaimana hal seperti ini bisa terjadi? Pada setiap branch akan memiliki .gitlab-ci.yml yang akan mengatur stages CI pada branch tersebut.
Terdapat beberapa cara, misal pada setiap branch akan memiliki definisi stages apa saja yang perlu dilewati. Pada coba-coba yang dulu stages yang perlu dilewati diatur seperti
stages:
- release
- deploy
Sehingga branch coba_coba tidak akan melewati testing terlebih dahulu untuk di-deploy ke server.
Sementara untuk setiap branch lain maka ada tiga tahapan pada kode .yml, seperti:
Dan, pada tahapan release dan deploy akan ditambahkan variable only yang mana menunjukkan nama-nama branch yang akan melewati tahapan release dan deploy, sehingga branch lain (working branch) tidak akan melalui tahapan tersebut.
Sekian post saya, semoga bermanfaat! :)
Sementara untuk setiap branch lain maka ada tiga tahapan pada kode .yml, seperti:
stages:
- test
- release
- deploy
Dan, pada tahapan release dan deploy akan ditambahkan variable only yang mana menunjukkan nama-nama branch yang akan melewati tahapan release dan deploy, sehingga branch lain (working branch) tidak akan melalui tahapan tersebut.
release:
stage: release
image: docker:latest
services:
- docker:dind
before_script:
...
script:
...
only:
refs:
- master
- sit_uat
- coba_coba
Sekian post saya, semoga bermanfaat! :)
0 komentar:
Post a Comment