OpenShift - Jenkins
Reading time: 2 minutes
Originalni autor ove stranice je Fares
Ova stranica daje nekoliko smernica o tome kako možete napasti Jenkins instancu koja radi u Openshift (ili Kubernetes) klasteru.
Odricanje od odgovornosti
Jenkins instanca može biti postavljena u Openshift ili Kubernetes klasteru. U zavisnosti od vašeg konteksta, možda ćete morati da prilagodite bilo koji prikazani payload, yaml ili tehniku. Za više informacija o napadu na Jenkins možete pogledati ovu stranicu.
Preduslovi
1a. Korisnički pristup u Jenkins instanci ILI 1b. Korisnički pristup sa pravima pisanja na SCM repozitorijumu gde se automatska izgradnja pokreće nakon push/merge.
Kako to funkcioniše
Fundamentalno, gotovo sve iza scene funkcioniše isto kao i redovna Jenkins instanca koja radi u VM-u. Glavna razlika je u ukupnoj arhitekturi i načinu na koji se izgradnje upravljaju unutar Openshift (ili Kubernetes) klastera.
Izgradnje
Kada se izgradnja pokrene, prvo njome upravlja/orchestrira Jenkins master čvor, a zatim se delegira agentu/slavi/radniku. U ovom kontekstu, master čvor je samo redovan pod koji radi u namespace-u (koji može biti različit od onog gde radnici rade). Isto važi i za radnike/slave, međutim oni se uništavaju kada se izgradnja završi, dok master uvek ostaje aktivan. Vaša izgradnja se obično pokreće unutar poda, koristeći pod šablon koji su definisali Jenkins administratori.
Pokretanje izgradnje
Imate više glavnih načina za pokretanje izgradnje, kao što su:
- Imate UI pristup Jenkins-u
Veoma lak i praktičan način je korišćenje Replay funkcionalnosti postojeće izgradnje. Omogućava vam da ponovo pokrenete prethodno izvršenu izgradnju dok vam omogućava da ažurirate groovy skriptu. Ovo zahteva privilegije na Jenkins folderu i unapred definisanu pipeline. Ako trebate biti diskretni, možete obrisati svoje pokrenute izgradnje ako imate dovoljno prava.
- Imate pristup za pisanje na SCM i automatske izgradnje su konfigurirane putem webhook-a
Možete jednostavno urediti skriptu za izgradnju (kao što je Jenkinsfile), commit-ovati i push-ovati (eventualno kreirati PR ako se izgradnje pokreću samo na PR merge-ima). Imajte na umu da je ovaj put veoma bučan i zahteva povišene privilegije da biste očistili svoje tragove.