OpenShift - Jenkins
Reading time: 2 minutes
Mwandishi wa awali wa ukurasa huu ni Fares
Ukurasa huu unatoa vidokezo kuhusu jinsi unavyoweza kushambulia mfano wa Jenkins unaotembea katika klasta ya Openshift (au Kubernetes)
Kanusho
Mfano wa Jenkins unaweza kuwekwa katika klasta ya Openshift au Kubernetes. Kulingana na muktadha wako, unaweza kuhitaji kubadilisha payload, yaml au mbinu yoyote iliyonyeshwa. Kwa maelezo zaidi kuhusu kushambulia Jenkins unaweza kuangalia ukurasa huu
Masharti
1a. Ufikiaji wa mtumiaji katika mfano wa Jenkins AU 1b. Ufikiaji wa mtumiaji wenye ruhusa ya kuandika kwenye hifadhi ya SCM ambapo ujenzi wa kiotomatiki unazinduliwa baada ya push/merge
Inavyofanya kazi
Kimsingi, karibu kila kitu nyuma ya pazia kinafanya kazi sawa na mfano wa kawaida wa Jenkins unaotembea katika VM. Tofauti kuu ni usanifu wa jumla na jinsi ujenzi unavyosimamiwa ndani ya klasta ya openshift (au kubernetes).
Ujenzi
Wakati ujenzi unazinduliwa, kwanza unasimamiwa/kuandaliwa na node ya Jenkins master kisha kuhamishiwa kwa wakala/slave/mfanyakazi. Katika muktadha huu, node ya master ni pod ya kawaida inayotembea katika namespace (ambayo inaweza kuwa tofauti na ile ambapo wafanyakazi wanatembea). Hali kadhalika inatumika kwa wafanyakazi/slaves, hata hivyo wanaharibiwa mara tu ujenzi unamalizika wakati node ya master kila wakati inabaki juu. Ujenzi wako kwa kawaida unafanywa ndani ya pod, ukitumia kiolezo cha pod cha kawaida kilichofafanuliwa na wasimamizi wa Jenkins.
Kuzindua ujenzi
Una njia nyingi kuu za kuzindua ujenzi kama vile:
- Una ufikiaji wa UI kwa Jenkins
Njia rahisi na ya kufaa ni kutumia kazi ya Replay ya ujenzi uliopo. Inakuruhusu kurudia ujenzi uliofanywa hapo awali huku ukikuruhusu kuboresha script ya groovy. Hii inahitaji ruhusa kwenye folda ya Jenkins na pipeline iliyowekwa awali. Ikiwa unahitaji kuwa na siri, unaweza kufuta ujenzi wako uliozinduliwa ikiwa una ruhusa ya kutosha.
- Una ufikiaji wa kuandika kwenye SCM na ujenzi wa kiotomatiki umewekwa kupitia webhook
Unaweza tu kuhariri script ya ujenzi (kama Jenkinsfile), kujitolea na kusukuma (hatimaye kuunda PR ikiwa ujenzi unazinduliwa tu kwenye muunganiko wa PR). Kumbuka kwamba njia hii ni kelele sana na inahitaji ruhusa za juu ili kusafisha nyayo zako.