OpenShift - Tekton
Last updated
Last updated
Die oorspronklike skrywer van hierdie bladsy is Haroun
Volgens die dokument: Tekton is 'n kragtige en buigsame oopbronraamwerk vir die skep van CI/CD stelsels, wat ontwikkelaars in staat stel om te bou, te toets en te ontplooi oor wolkverskaffers en op-premise stelsels. Beide Jenkins en Tekton kan gebruik word om toepassings te toets, te bou en te ontplooi, maar Tekton is Cloud Native.
Met Tekton word alles verteenwoordig deur YAML-lêers. Ontwikkelaars kan Aangepaste Hulpbronne (CR) van tipe Pipelines
skep en verskeie Tasks
daarin spesifiseer wat hulle wil uitvoer. Om 'n Pipeline te laat loop, moet hulpbronne van tipe PipelineRun
geskep word.
Wanneer tekton geïnstalleer word, word 'n diensrekening (sa) genaamd pipeline in elke naamruimte geskep. Wanneer 'n Pipeline uitgevoer word, sal 'n pod geskep word wat hierdie sa genaamd pipeline
gebruik om die take wat in die YAML-lêer gedefinieer is, uit te voer.
Standaard kan die pipeline-diensrekening die pipelines-scc
vermoë gebruik. Dit is te danke aan die globale standaardkonfigurasie van tekton. Trouens, die globale konfigurasie van tekton is ook 'n YAML in 'n openshift-objek genaamd TektonConfig
wat gesien kan word as jy 'n paar leserrolle in die kluster het.
In enige naamruimte, as jy die pipeline diensrekening token kan kry, sal jy in staat wees om pipelines-scc
te gebruik.
Die probleem is dat die standaard scc wat die pipeline sa kan gebruik, gebruikersbeheerbaar is. Dit kan gedoen word deur 'n etiket in die naamruimte definisie. Byvoorbeeld, as ek 'n naamruimte kan skep met die volgende yaml definisie:
Die tekton-operateur sal aan die pyplyn-diensrekening in test-namespace
die vermoë gee om die scc privileged te gebruik. Dit sal die montering van die node toelaat.
Tekton dokumente oor hoe om die oortreding van scc te beperk deur 'n etiket in die TektonConfig
-objek by te voeg.
Hierdie etiket word max-allowed
genoem.