gotk-components.yaml 368 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976
  1. ---
  2. # This manifest was generated by flux. DO NOT EDIT.
  3. # Flux Version: v2.0.1
  4. # Components: source-controller,kustomize-controller,helm-controller,notification-controller
  5. apiVersion: v1
  6. kind: Namespace
  7. metadata:
  8. labels:
  9. app.kubernetes.io/instance: flux-system
  10. app.kubernetes.io/part-of: flux
  11. app.kubernetes.io/version: v2.0.1
  12. pod-security.kubernetes.io/warn: restricted
  13. pod-security.kubernetes.io/warn-version: latest
  14. name: flux-system
  15. ---
  16. apiVersion: networking.k8s.io/v1
  17. kind: NetworkPolicy
  18. metadata:
  19. labels:
  20. app.kubernetes.io/instance: flux-system
  21. app.kubernetes.io/part-of: flux
  22. app.kubernetes.io/version: v2.0.1
  23. name: allow-egress
  24. namespace: flux-system
  25. spec:
  26. egress:
  27. - {}
  28. ingress:
  29. - from:
  30. - podSelector: {}
  31. podSelector: {}
  32. policyTypes:
  33. - Ingress
  34. - Egress
  35. ---
  36. apiVersion: networking.k8s.io/v1
  37. kind: NetworkPolicy
  38. metadata:
  39. labels:
  40. app.kubernetes.io/instance: flux-system
  41. app.kubernetes.io/part-of: flux
  42. app.kubernetes.io/version: v2.0.1
  43. name: allow-scraping
  44. namespace: flux-system
  45. spec:
  46. ingress:
  47. - from:
  48. - namespaceSelector: {}
  49. ports:
  50. - port: 8080
  51. protocol: TCP
  52. podSelector: {}
  53. policyTypes:
  54. - Ingress
  55. ---
  56. apiVersion: networking.k8s.io/v1
  57. kind: NetworkPolicy
  58. metadata:
  59. labels:
  60. app.kubernetes.io/instance: flux-system
  61. app.kubernetes.io/part-of: flux
  62. app.kubernetes.io/version: v2.0.1
  63. name: allow-webhooks
  64. namespace: flux-system
  65. spec:
  66. ingress:
  67. - from:
  68. - namespaceSelector: {}
  69. podSelector:
  70. matchLabels:
  71. app: notification-controller
  72. policyTypes:
  73. - Ingress
  74. ---
  75. apiVersion: v1
  76. kind: ResourceQuota
  77. metadata:
  78. labels:
  79. app.kubernetes.io/instance: flux-system
  80. app.kubernetes.io/part-of: flux
  81. app.kubernetes.io/version: v2.0.1
  82. name: critical-pods-flux-system
  83. namespace: flux-system
  84. spec:
  85. hard:
  86. pods: "1000"
  87. scopeSelector:
  88. matchExpressions:
  89. - operator: In
  90. scopeName: PriorityClass
  91. values:
  92. - system-node-critical
  93. - system-cluster-critical
  94. ---
  95. apiVersion: rbac.authorization.k8s.io/v1
  96. kind: ClusterRole
  97. metadata:
  98. labels:
  99. app.kubernetes.io/instance: flux-system
  100. app.kubernetes.io/part-of: flux
  101. app.kubernetes.io/version: v2.0.1
  102. name: crd-controller-flux-system
  103. rules:
  104. - apiGroups:
  105. - source.toolkit.fluxcd.io
  106. resources:
  107. - '*'
  108. verbs:
  109. - '*'
  110. - apiGroups:
  111. - kustomize.toolkit.fluxcd.io
  112. resources:
  113. - '*'
  114. verbs:
  115. - '*'
  116. - apiGroups:
  117. - helm.toolkit.fluxcd.io
  118. resources:
  119. - '*'
  120. verbs:
  121. - '*'
  122. - apiGroups:
  123. - notification.toolkit.fluxcd.io
  124. resources:
  125. - '*'
  126. verbs:
  127. - '*'
  128. - apiGroups:
  129. - image.toolkit.fluxcd.io
  130. resources:
  131. - '*'
  132. verbs:
  133. - '*'
  134. - apiGroups:
  135. - ""
  136. resources:
  137. - namespaces
  138. - secrets
  139. - configmaps
  140. - serviceaccounts
  141. verbs:
  142. - get
  143. - list
  144. - watch
  145. - apiGroups:
  146. - ""
  147. resources:
  148. - events
  149. verbs:
  150. - create
  151. - patch
  152. - apiGroups:
  153. - ""
  154. resources:
  155. - configmaps
  156. verbs:
  157. - get
  158. - list
  159. - watch
  160. - create
  161. - update
  162. - patch
  163. - delete
  164. - apiGroups:
  165. - ""
  166. resources:
  167. - configmaps/status
  168. verbs:
  169. - get
  170. - update
  171. - patch
  172. - apiGroups:
  173. - coordination.k8s.io
  174. resources:
  175. - leases
  176. verbs:
  177. - get
  178. - list
  179. - watch
  180. - create
  181. - update
  182. - patch
  183. - delete
  184. ---
  185. apiVersion: rbac.authorization.k8s.io/v1
  186. kind: ClusterRole
  187. metadata:
  188. labels:
  189. app.kubernetes.io/instance: flux-system
  190. app.kubernetes.io/part-of: flux
  191. app.kubernetes.io/version: v2.0.1
  192. rbac.authorization.k8s.io/aggregate-to-admin: "true"
  193. rbac.authorization.k8s.io/aggregate-to-edit: "true"
  194. name: flux-edit-flux-system
  195. rules:
  196. - apiGroups:
  197. - notification.toolkit.fluxcd.io
  198. - source.toolkit.fluxcd.io
  199. - helm.toolkit.fluxcd.io
  200. - image.toolkit.fluxcd.io
  201. - kustomize.toolkit.fluxcd.io
  202. resources:
  203. - '*'
  204. verbs:
  205. - create
  206. - delete
  207. - deletecollection
  208. - patch
  209. - update
  210. ---
  211. apiVersion: rbac.authorization.k8s.io/v1
  212. kind: ClusterRole
  213. metadata:
  214. labels:
  215. app.kubernetes.io/instance: flux-system
  216. app.kubernetes.io/part-of: flux
  217. app.kubernetes.io/version: v2.0.1
  218. rbac.authorization.k8s.io/aggregate-to-admin: "true"
  219. rbac.authorization.k8s.io/aggregate-to-edit: "true"
  220. rbac.authorization.k8s.io/aggregate-to-view: "true"
  221. name: flux-view-flux-system
  222. rules:
  223. - apiGroups:
  224. - notification.toolkit.fluxcd.io
  225. - source.toolkit.fluxcd.io
  226. - helm.toolkit.fluxcd.io
  227. - image.toolkit.fluxcd.io
  228. - kustomize.toolkit.fluxcd.io
  229. resources:
  230. - '*'
  231. verbs:
  232. - get
  233. - list
  234. - watch
  235. ---
  236. apiVersion: rbac.authorization.k8s.io/v1
  237. kind: ClusterRoleBinding
  238. metadata:
  239. labels:
  240. app.kubernetes.io/instance: flux-system
  241. app.kubernetes.io/part-of: flux
  242. app.kubernetes.io/version: v2.0.1
  243. name: cluster-reconciler-flux-system
  244. roleRef:
  245. apiGroup: rbac.authorization.k8s.io
  246. kind: ClusterRole
  247. name: cluster-admin
  248. subjects:
  249. - kind: ServiceAccount
  250. name: kustomize-controller
  251. namespace: flux-system
  252. - kind: ServiceAccount
  253. name: helm-controller
  254. namespace: flux-system
  255. ---
  256. apiVersion: rbac.authorization.k8s.io/v1
  257. kind: ClusterRoleBinding
  258. metadata:
  259. labels:
  260. app.kubernetes.io/instance: flux-system
  261. app.kubernetes.io/part-of: flux
  262. app.kubernetes.io/version: v2.0.1
  263. name: crd-controller-flux-system
  264. roleRef:
  265. apiGroup: rbac.authorization.k8s.io
  266. kind: ClusterRole
  267. name: crd-controller-flux-system
  268. subjects:
  269. - kind: ServiceAccount
  270. name: kustomize-controller
  271. namespace: flux-system
  272. - kind: ServiceAccount
  273. name: helm-controller
  274. namespace: flux-system
  275. - kind: ServiceAccount
  276. name: source-controller
  277. namespace: flux-system
  278. - kind: ServiceAccount
  279. name: notification-controller
  280. namespace: flux-system
  281. - kind: ServiceAccount
  282. name: image-reflector-controller
  283. namespace: flux-system
  284. - kind: ServiceAccount
  285. name: image-automation-controller
  286. namespace: flux-system
  287. ---
  288. apiVersion: apiextensions.k8s.io/v1
  289. kind: CustomResourceDefinition
  290. metadata:
  291. annotations:
  292. controller-gen.kubebuilder.io/version: v0.12.0
  293. labels:
  294. app.kubernetes.io/component: source-controller
  295. app.kubernetes.io/instance: flux-system
  296. app.kubernetes.io/part-of: flux
  297. app.kubernetes.io/version: v2.0.1
  298. name: buckets.source.toolkit.fluxcd.io
  299. spec:
  300. group: source.toolkit.fluxcd.io
  301. names:
  302. kind: Bucket
  303. listKind: BucketList
  304. plural: buckets
  305. singular: bucket
  306. scope: Namespaced
  307. versions:
  308. - additionalPrinterColumns:
  309. - jsonPath: .spec.endpoint
  310. name: Endpoint
  311. type: string
  312. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  313. name: Ready
  314. type: string
  315. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  316. name: Status
  317. type: string
  318. - jsonPath: .metadata.creationTimestamp
  319. name: Age
  320. type: date
  321. name: v1beta1
  322. schema:
  323. openAPIV3Schema:
  324. description: Bucket is the Schema for the buckets API
  325. properties:
  326. apiVersion:
  327. description: 'APIVersion defines the versioned schema of this representation
  328. of an object. Servers should convert recognized schemas to the latest
  329. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  330. type: string
  331. kind:
  332. description: 'Kind is a string value representing the REST resource this
  333. object represents. Servers may infer this from the endpoint the client
  334. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  335. type: string
  336. metadata:
  337. type: object
  338. spec:
  339. description: BucketSpec defines the desired state of an S3 compatible
  340. bucket
  341. properties:
  342. accessFrom:
  343. description: AccessFrom defines an Access Control List for allowing
  344. cross-namespace references to this object.
  345. properties:
  346. namespaceSelectors:
  347. description: NamespaceSelectors is the list of namespace selectors
  348. to which this ACL applies. Items in this list are evaluated
  349. using a logical OR operation.
  350. items:
  351. description: NamespaceSelector selects the namespaces to which
  352. this ACL applies. An empty map of MatchLabels matches all
  353. namespaces in a cluster.
  354. properties:
  355. matchLabels:
  356. additionalProperties:
  357. type: string
  358. description: MatchLabels is a map of {key,value} pairs.
  359. A single {key,value} in the matchLabels map is equivalent
  360. to an element of matchExpressions, whose key field is
  361. "key", the operator is "In", and the values array contains
  362. only "value". The requirements are ANDed.
  363. type: object
  364. type: object
  365. type: array
  366. required:
  367. - namespaceSelectors
  368. type: object
  369. bucketName:
  370. description: The bucket name.
  371. type: string
  372. endpoint:
  373. description: The bucket endpoint address.
  374. type: string
  375. ignore:
  376. description: Ignore overrides the set of excluded patterns in the
  377. .sourceignore format (which is the same as .gitignore). If not provided,
  378. a default will be used, consult the documentation for your version
  379. to find out what those are.
  380. type: string
  381. insecure:
  382. description: Insecure allows connecting to a non-TLS S3 HTTP endpoint.
  383. type: boolean
  384. interval:
  385. description: The interval at which to check for bucket updates.
  386. type: string
  387. provider:
  388. default: generic
  389. description: The S3 compatible storage provider name, default ('generic').
  390. enum:
  391. - generic
  392. - aws
  393. - gcp
  394. type: string
  395. region:
  396. description: The bucket region.
  397. type: string
  398. secretRef:
  399. description: The name of the secret containing authentication credentials
  400. for the Bucket.
  401. properties:
  402. name:
  403. description: Name of the referent.
  404. type: string
  405. required:
  406. - name
  407. type: object
  408. suspend:
  409. description: This flag tells the controller to suspend the reconciliation
  410. of this source.
  411. type: boolean
  412. timeout:
  413. default: 60s
  414. description: The timeout for download operations, defaults to 60s.
  415. type: string
  416. required:
  417. - bucketName
  418. - endpoint
  419. - interval
  420. type: object
  421. status:
  422. default:
  423. observedGeneration: -1
  424. description: BucketStatus defines the observed state of a bucket
  425. properties:
  426. artifact:
  427. description: Artifact represents the output of the last successful
  428. Bucket sync.
  429. properties:
  430. checksum:
  431. description: Checksum is the SHA256 checksum of the artifact.
  432. type: string
  433. lastUpdateTime:
  434. description: LastUpdateTime is the timestamp corresponding to
  435. the last update of this artifact.
  436. format: date-time
  437. type: string
  438. path:
  439. description: Path is the relative file path of this artifact.
  440. type: string
  441. revision:
  442. description: Revision is a human readable identifier traceable
  443. in the origin source system. It can be a Git commit SHA, Git
  444. tag, a Helm index timestamp, a Helm chart version, etc.
  445. type: string
  446. url:
  447. description: URL is the HTTP address of this artifact.
  448. type: string
  449. required:
  450. - path
  451. - url
  452. type: object
  453. conditions:
  454. description: Conditions holds the conditions for the Bucket.
  455. items:
  456. description: "Condition contains details for one aspect of the current
  457. state of this API Resource. --- This struct is intended for direct
  458. use as an array at the field path .status.conditions. For example,
  459. \n type FooStatus struct{ // Represents the observations of a
  460. foo's current state. // Known .status.conditions.type are: \"Available\",
  461. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  462. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  463. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  464. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  465. properties:
  466. lastTransitionTime:
  467. description: lastTransitionTime is the last time the condition
  468. transitioned from one status to another. This should be when
  469. the underlying condition changed. If that is not known, then
  470. using the time when the API field changed is acceptable.
  471. format: date-time
  472. type: string
  473. message:
  474. description: message is a human readable message indicating
  475. details about the transition. This may be an empty string.
  476. maxLength: 32768
  477. type: string
  478. observedGeneration:
  479. description: observedGeneration represents the .metadata.generation
  480. that the condition was set based upon. For instance, if .metadata.generation
  481. is currently 12, but the .status.conditions[x].observedGeneration
  482. is 9, the condition is out of date with respect to the current
  483. state of the instance.
  484. format: int64
  485. minimum: 0
  486. type: integer
  487. reason:
  488. description: reason contains a programmatic identifier indicating
  489. the reason for the condition's last transition. Producers
  490. of specific condition types may define expected values and
  491. meanings for this field, and whether the values are considered
  492. a guaranteed API. The value should be a CamelCase string.
  493. This field may not be empty.
  494. maxLength: 1024
  495. minLength: 1
  496. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  497. type: string
  498. status:
  499. description: status of the condition, one of True, False, Unknown.
  500. enum:
  501. - "True"
  502. - "False"
  503. - Unknown
  504. type: string
  505. type:
  506. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  507. --- Many .condition.type values are consistent across resources
  508. like Available, but because arbitrary conditions can be useful
  509. (see .node.status.conditions), the ability to deconflict is
  510. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  511. maxLength: 316
  512. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  513. type: string
  514. required:
  515. - lastTransitionTime
  516. - message
  517. - reason
  518. - status
  519. - type
  520. type: object
  521. type: array
  522. lastHandledReconcileAt:
  523. description: LastHandledReconcileAt holds the value of the most recent
  524. reconcile request value, so a change of the annotation value can
  525. be detected.
  526. type: string
  527. observedGeneration:
  528. description: ObservedGeneration is the last observed generation.
  529. format: int64
  530. type: integer
  531. url:
  532. description: URL is the download link for the artifact output of the
  533. last Bucket sync.
  534. type: string
  535. type: object
  536. type: object
  537. served: true
  538. storage: false
  539. subresources:
  540. status: {}
  541. - additionalPrinterColumns:
  542. - jsonPath: .spec.endpoint
  543. name: Endpoint
  544. type: string
  545. - jsonPath: .metadata.creationTimestamp
  546. name: Age
  547. type: date
  548. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  549. name: Ready
  550. type: string
  551. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  552. name: Status
  553. type: string
  554. name: v1beta2
  555. schema:
  556. openAPIV3Schema:
  557. description: Bucket is the Schema for the buckets API.
  558. properties:
  559. apiVersion:
  560. description: 'APIVersion defines the versioned schema of this representation
  561. of an object. Servers should convert recognized schemas to the latest
  562. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  563. type: string
  564. kind:
  565. description: 'Kind is a string value representing the REST resource this
  566. object represents. Servers may infer this from the endpoint the client
  567. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  568. type: string
  569. metadata:
  570. type: object
  571. spec:
  572. description: BucketSpec specifies the required configuration to produce
  573. an Artifact for an object storage bucket.
  574. properties:
  575. accessFrom:
  576. description: 'AccessFrom specifies an Access Control List for allowing
  577. cross-namespace references to this object. NOTE: Not implemented,
  578. provisional as of https://github.com/fluxcd/flux2/pull/2092'
  579. properties:
  580. namespaceSelectors:
  581. description: NamespaceSelectors is the list of namespace selectors
  582. to which this ACL applies. Items in this list are evaluated
  583. using a logical OR operation.
  584. items:
  585. description: NamespaceSelector selects the namespaces to which
  586. this ACL applies. An empty map of MatchLabels matches all
  587. namespaces in a cluster.
  588. properties:
  589. matchLabels:
  590. additionalProperties:
  591. type: string
  592. description: MatchLabels is a map of {key,value} pairs.
  593. A single {key,value} in the matchLabels map is equivalent
  594. to an element of matchExpressions, whose key field is
  595. "key", the operator is "In", and the values array contains
  596. only "value". The requirements are ANDed.
  597. type: object
  598. type: object
  599. type: array
  600. required:
  601. - namespaceSelectors
  602. type: object
  603. bucketName:
  604. description: BucketName is the name of the object storage bucket.
  605. type: string
  606. endpoint:
  607. description: Endpoint is the object storage address the BucketName
  608. is located at.
  609. type: string
  610. ignore:
  611. description: Ignore overrides the set of excluded patterns in the
  612. .sourceignore format (which is the same as .gitignore). If not provided,
  613. a default will be used, consult the documentation for your version
  614. to find out what those are.
  615. type: string
  616. insecure:
  617. description: Insecure allows connecting to a non-TLS HTTP Endpoint.
  618. type: boolean
  619. interval:
  620. description: Interval at which to check the Endpoint for updates.
  621. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  622. type: string
  623. provider:
  624. default: generic
  625. description: Provider of the object storage bucket. Defaults to 'generic',
  626. which expects an S3 (API) compatible object storage.
  627. enum:
  628. - generic
  629. - aws
  630. - gcp
  631. - azure
  632. type: string
  633. region:
  634. description: Region of the Endpoint where the BucketName is located
  635. in.
  636. type: string
  637. secretRef:
  638. description: SecretRef specifies the Secret containing authentication
  639. credentials for the Bucket.
  640. properties:
  641. name:
  642. description: Name of the referent.
  643. type: string
  644. required:
  645. - name
  646. type: object
  647. suspend:
  648. description: Suspend tells the controller to suspend the reconciliation
  649. of this Bucket.
  650. type: boolean
  651. timeout:
  652. default: 60s
  653. description: Timeout for fetch operations, defaults to 60s.
  654. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
  655. type: string
  656. required:
  657. - bucketName
  658. - endpoint
  659. - interval
  660. type: object
  661. status:
  662. default:
  663. observedGeneration: -1
  664. description: BucketStatus records the observed state of a Bucket.
  665. properties:
  666. artifact:
  667. description: Artifact represents the last successful Bucket reconciliation.
  668. properties:
  669. digest:
  670. description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
  671. pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
  672. type: string
  673. lastUpdateTime:
  674. description: LastUpdateTime is the timestamp corresponding to
  675. the last update of the Artifact.
  676. format: date-time
  677. type: string
  678. metadata:
  679. additionalProperties:
  680. type: string
  681. description: Metadata holds upstream information such as OCI annotations.
  682. type: object
  683. path:
  684. description: Path is the relative file path of the Artifact. It
  685. can be used to locate the file in the root of the Artifact storage
  686. on the local file system of the controller managing the Source.
  687. type: string
  688. revision:
  689. description: Revision is a human-readable identifier traceable
  690. in the origin source system. It can be a Git commit SHA, Git
  691. tag, a Helm chart version, etc.
  692. type: string
  693. size:
  694. description: Size is the number of bytes in the file.
  695. format: int64
  696. type: integer
  697. url:
  698. description: URL is the HTTP address of the Artifact as exposed
  699. by the controller managing the Source. It can be used to retrieve
  700. the Artifact for consumption, e.g. by another controller applying
  701. the Artifact contents.
  702. type: string
  703. required:
  704. - lastUpdateTime
  705. - path
  706. - revision
  707. - url
  708. type: object
  709. conditions:
  710. description: Conditions holds the conditions for the Bucket.
  711. items:
  712. description: "Condition contains details for one aspect of the current
  713. state of this API Resource. --- This struct is intended for direct
  714. use as an array at the field path .status.conditions. For example,
  715. \n type FooStatus struct{ // Represents the observations of a
  716. foo's current state. // Known .status.conditions.type are: \"Available\",
  717. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  718. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  719. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  720. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  721. properties:
  722. lastTransitionTime:
  723. description: lastTransitionTime is the last time the condition
  724. transitioned from one status to another. This should be when
  725. the underlying condition changed. If that is not known, then
  726. using the time when the API field changed is acceptable.
  727. format: date-time
  728. type: string
  729. message:
  730. description: message is a human readable message indicating
  731. details about the transition. This may be an empty string.
  732. maxLength: 32768
  733. type: string
  734. observedGeneration:
  735. description: observedGeneration represents the .metadata.generation
  736. that the condition was set based upon. For instance, if .metadata.generation
  737. is currently 12, but the .status.conditions[x].observedGeneration
  738. is 9, the condition is out of date with respect to the current
  739. state of the instance.
  740. format: int64
  741. minimum: 0
  742. type: integer
  743. reason:
  744. description: reason contains a programmatic identifier indicating
  745. the reason for the condition's last transition. Producers
  746. of specific condition types may define expected values and
  747. meanings for this field, and whether the values are considered
  748. a guaranteed API. The value should be a CamelCase string.
  749. This field may not be empty.
  750. maxLength: 1024
  751. minLength: 1
  752. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  753. type: string
  754. status:
  755. description: status of the condition, one of True, False, Unknown.
  756. enum:
  757. - "True"
  758. - "False"
  759. - Unknown
  760. type: string
  761. type:
  762. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  763. --- Many .condition.type values are consistent across resources
  764. like Available, but because arbitrary conditions can be useful
  765. (see .node.status.conditions), the ability to deconflict is
  766. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  767. maxLength: 316
  768. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  769. type: string
  770. required:
  771. - lastTransitionTime
  772. - message
  773. - reason
  774. - status
  775. - type
  776. type: object
  777. type: array
  778. lastHandledReconcileAt:
  779. description: LastHandledReconcileAt holds the value of the most recent
  780. reconcile request value, so a change of the annotation value can
  781. be detected.
  782. type: string
  783. observedGeneration:
  784. description: ObservedGeneration is the last observed generation of
  785. the Bucket object.
  786. format: int64
  787. type: integer
  788. observedIgnore:
  789. description: ObservedIgnore is the observed exclusion patterns used
  790. for constructing the source artifact.
  791. type: string
  792. url:
  793. description: URL is the dynamic fetch link for the latest Artifact.
  794. It is provided on a "best effort" basis, and using the precise BucketStatus.Artifact
  795. data is recommended.
  796. type: string
  797. type: object
  798. type: object
  799. served: true
  800. storage: true
  801. subresources:
  802. status: {}
  803. ---
  804. apiVersion: apiextensions.k8s.io/v1
  805. kind: CustomResourceDefinition
  806. metadata:
  807. annotations:
  808. controller-gen.kubebuilder.io/version: v0.12.0
  809. labels:
  810. app.kubernetes.io/component: source-controller
  811. app.kubernetes.io/instance: flux-system
  812. app.kubernetes.io/part-of: flux
  813. app.kubernetes.io/version: v2.0.1
  814. name: gitrepositories.source.toolkit.fluxcd.io
  815. spec:
  816. group: source.toolkit.fluxcd.io
  817. names:
  818. kind: GitRepository
  819. listKind: GitRepositoryList
  820. plural: gitrepositories
  821. shortNames:
  822. - gitrepo
  823. singular: gitrepository
  824. scope: Namespaced
  825. versions:
  826. - additionalPrinterColumns:
  827. - jsonPath: .spec.url
  828. name: URL
  829. type: string
  830. - jsonPath: .metadata.creationTimestamp
  831. name: Age
  832. type: date
  833. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  834. name: Ready
  835. type: string
  836. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  837. name: Status
  838. type: string
  839. name: v1
  840. schema:
  841. openAPIV3Schema:
  842. description: GitRepository is the Schema for the gitrepositories API.
  843. properties:
  844. apiVersion:
  845. description: 'APIVersion defines the versioned schema of this representation
  846. of an object. Servers should convert recognized schemas to the latest
  847. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  848. type: string
  849. kind:
  850. description: 'Kind is a string value representing the REST resource this
  851. object represents. Servers may infer this from the endpoint the client
  852. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  853. type: string
  854. metadata:
  855. type: object
  856. spec:
  857. description: GitRepositorySpec specifies the required configuration to
  858. produce an Artifact for a Git repository.
  859. properties:
  860. ignore:
  861. description: Ignore overrides the set of excluded patterns in the
  862. .sourceignore format (which is the same as .gitignore). If not provided,
  863. a default will be used, consult the documentation for your version
  864. to find out what those are.
  865. type: string
  866. include:
  867. description: Include specifies a list of GitRepository resources which
  868. Artifacts should be included in the Artifact produced for this GitRepository.
  869. items:
  870. description: GitRepositoryInclude specifies a local reference to
  871. a GitRepository which Artifact (sub-)contents must be included,
  872. and where they should be placed.
  873. properties:
  874. fromPath:
  875. description: FromPath specifies the path to copy contents from,
  876. defaults to the root of the Artifact.
  877. type: string
  878. repository:
  879. description: GitRepositoryRef specifies the GitRepository which
  880. Artifact contents must be included.
  881. properties:
  882. name:
  883. description: Name of the referent.
  884. type: string
  885. required:
  886. - name
  887. type: object
  888. toPath:
  889. description: ToPath specifies the path to copy contents to,
  890. defaults to the name of the GitRepositoryRef.
  891. type: string
  892. required:
  893. - repository
  894. type: object
  895. type: array
  896. interval:
  897. description: Interval at which to check the GitRepository for updates.
  898. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  899. type: string
  900. recurseSubmodules:
  901. description: RecurseSubmodules enables the initialization of all submodules
  902. within the GitRepository as cloned from the URL, using their default
  903. settings.
  904. type: boolean
  905. ref:
  906. description: Reference specifies the Git reference to resolve and
  907. monitor for changes, defaults to the 'master' branch.
  908. properties:
  909. branch:
  910. description: Branch to check out, defaults to 'master' if no other
  911. field is defined.
  912. type: string
  913. commit:
  914. description: "Commit SHA to check out, takes precedence over all
  915. reference fields. \n This can be combined with Branch to shallow
  916. clone the branch, in which the commit is expected to exist."
  917. type: string
  918. name:
  919. description: "Name of the reference to check out; takes precedence
  920. over Branch, Tag and SemVer. \n It must be a valid Git reference:
  921. https://git-scm.com/docs/git-check-ref-format#_description Examples:
  922. \"refs/heads/main\", \"refs/tags/v0.1.0\", \"refs/pull/420/head\",
  923. \"refs/merge-requests/1/head\""
  924. type: string
  925. semver:
  926. description: SemVer tag expression to check out, takes precedence
  927. over Tag.
  928. type: string
  929. tag:
  930. description: Tag to check out, takes precedence over Branch.
  931. type: string
  932. type: object
  933. secretRef:
  934. description: SecretRef specifies the Secret containing authentication
  935. credentials for the GitRepository. For HTTPS repositories the Secret
  936. must contain 'username' and 'password' fields for basic auth or
  937. 'bearerToken' field for token auth. For SSH repositories the Secret
  938. must contain 'identity' and 'known_hosts' fields.
  939. properties:
  940. name:
  941. description: Name of the referent.
  942. type: string
  943. required:
  944. - name
  945. type: object
  946. suspend:
  947. description: Suspend tells the controller to suspend the reconciliation
  948. of this GitRepository.
  949. type: boolean
  950. timeout:
  951. default: 60s
  952. description: Timeout for Git operations like cloning, defaults to
  953. 60s.
  954. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
  955. type: string
  956. url:
  957. description: URL specifies the Git repository URL, it can be an HTTP/S
  958. or SSH address.
  959. pattern: ^(http|https|ssh)://.*$
  960. type: string
  961. verify:
  962. description: Verification specifies the configuration to verify the
  963. Git commit signature(s).
  964. properties:
  965. mode:
  966. description: Mode specifies what Git object should be verified,
  967. currently ('head').
  968. enum:
  969. - head
  970. type: string
  971. secretRef:
  972. description: SecretRef specifies the Secret containing the public
  973. keys of trusted Git authors.
  974. properties:
  975. name:
  976. description: Name of the referent.
  977. type: string
  978. required:
  979. - name
  980. type: object
  981. required:
  982. - mode
  983. - secretRef
  984. type: object
  985. required:
  986. - interval
  987. - url
  988. type: object
  989. status:
  990. default:
  991. observedGeneration: -1
  992. description: GitRepositoryStatus records the observed state of a Git repository.
  993. properties:
  994. artifact:
  995. description: Artifact represents the last successful GitRepository
  996. reconciliation.
  997. properties:
  998. digest:
  999. description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
  1000. pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
  1001. type: string
  1002. lastUpdateTime:
  1003. description: LastUpdateTime is the timestamp corresponding to
  1004. the last update of the Artifact.
  1005. format: date-time
  1006. type: string
  1007. metadata:
  1008. additionalProperties:
  1009. type: string
  1010. description: Metadata holds upstream information such as OCI annotations.
  1011. type: object
  1012. path:
  1013. description: Path is the relative file path of the Artifact. It
  1014. can be used to locate the file in the root of the Artifact storage
  1015. on the local file system of the controller managing the Source.
  1016. type: string
  1017. revision:
  1018. description: Revision is a human-readable identifier traceable
  1019. in the origin source system. It can be a Git commit SHA, Git
  1020. tag, a Helm chart version, etc.
  1021. type: string
  1022. size:
  1023. description: Size is the number of bytes in the file.
  1024. format: int64
  1025. type: integer
  1026. url:
  1027. description: URL is the HTTP address of the Artifact as exposed
  1028. by the controller managing the Source. It can be used to retrieve
  1029. the Artifact for consumption, e.g. by another controller applying
  1030. the Artifact contents.
  1031. type: string
  1032. required:
  1033. - lastUpdateTime
  1034. - path
  1035. - revision
  1036. - url
  1037. type: object
  1038. conditions:
  1039. description: Conditions holds the conditions for the GitRepository.
  1040. items:
  1041. description: "Condition contains details for one aspect of the current
  1042. state of this API Resource. --- This struct is intended for direct
  1043. use as an array at the field path .status.conditions. For example,
  1044. \n type FooStatus struct{ // Represents the observations of a
  1045. foo's current state. // Known .status.conditions.type are: \"Available\",
  1046. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  1047. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  1048. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  1049. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  1050. properties:
  1051. lastTransitionTime:
  1052. description: lastTransitionTime is the last time the condition
  1053. transitioned from one status to another. This should be when
  1054. the underlying condition changed. If that is not known, then
  1055. using the time when the API field changed is acceptable.
  1056. format: date-time
  1057. type: string
  1058. message:
  1059. description: message is a human readable message indicating
  1060. details about the transition. This may be an empty string.
  1061. maxLength: 32768
  1062. type: string
  1063. observedGeneration:
  1064. description: observedGeneration represents the .metadata.generation
  1065. that the condition was set based upon. For instance, if .metadata.generation
  1066. is currently 12, but the .status.conditions[x].observedGeneration
  1067. is 9, the condition is out of date with respect to the current
  1068. state of the instance.
  1069. format: int64
  1070. minimum: 0
  1071. type: integer
  1072. reason:
  1073. description: reason contains a programmatic identifier indicating
  1074. the reason for the condition's last transition. Producers
  1075. of specific condition types may define expected values and
  1076. meanings for this field, and whether the values are considered
  1077. a guaranteed API. The value should be a CamelCase string.
  1078. This field may not be empty.
  1079. maxLength: 1024
  1080. minLength: 1
  1081. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  1082. type: string
  1083. status:
  1084. description: status of the condition, one of True, False, Unknown.
  1085. enum:
  1086. - "True"
  1087. - "False"
  1088. - Unknown
  1089. type: string
  1090. type:
  1091. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  1092. --- Many .condition.type values are consistent across resources
  1093. like Available, but because arbitrary conditions can be useful
  1094. (see .node.status.conditions), the ability to deconflict is
  1095. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  1096. maxLength: 316
  1097. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  1098. type: string
  1099. required:
  1100. - lastTransitionTime
  1101. - message
  1102. - reason
  1103. - status
  1104. - type
  1105. type: object
  1106. type: array
  1107. includedArtifacts:
  1108. description: IncludedArtifacts contains a list of the last successfully
  1109. included Artifacts as instructed by GitRepositorySpec.Include.
  1110. items:
  1111. description: Artifact represents the output of a Source reconciliation.
  1112. properties:
  1113. digest:
  1114. description: Digest is the digest of the file in the form of
  1115. '<algorithm>:<checksum>'.
  1116. pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
  1117. type: string
  1118. lastUpdateTime:
  1119. description: LastUpdateTime is the timestamp corresponding to
  1120. the last update of the Artifact.
  1121. format: date-time
  1122. type: string
  1123. metadata:
  1124. additionalProperties:
  1125. type: string
  1126. description: Metadata holds upstream information such as OCI
  1127. annotations.
  1128. type: object
  1129. path:
  1130. description: Path is the relative file path of the Artifact.
  1131. It can be used to locate the file in the root of the Artifact
  1132. storage on the local file system of the controller managing
  1133. the Source.
  1134. type: string
  1135. revision:
  1136. description: Revision is a human-readable identifier traceable
  1137. in the origin source system. It can be a Git commit SHA, Git
  1138. tag, a Helm chart version, etc.
  1139. type: string
  1140. size:
  1141. description: Size is the number of bytes in the file.
  1142. format: int64
  1143. type: integer
  1144. url:
  1145. description: URL is the HTTP address of the Artifact as exposed
  1146. by the controller managing the Source. It can be used to retrieve
  1147. the Artifact for consumption, e.g. by another controller applying
  1148. the Artifact contents.
  1149. type: string
  1150. required:
  1151. - lastUpdateTime
  1152. - path
  1153. - revision
  1154. - url
  1155. type: object
  1156. type: array
  1157. lastHandledReconcileAt:
  1158. description: LastHandledReconcileAt holds the value of the most recent
  1159. reconcile request value, so a change of the annotation value can
  1160. be detected.
  1161. type: string
  1162. observedGeneration:
  1163. description: ObservedGeneration is the last observed generation of
  1164. the GitRepository object.
  1165. format: int64
  1166. type: integer
  1167. observedIgnore:
  1168. description: ObservedIgnore is the observed exclusion patterns used
  1169. for constructing the source artifact.
  1170. type: string
  1171. observedInclude:
  1172. description: ObservedInclude is the observed list of GitRepository
  1173. resources used to produce the current Artifact.
  1174. items:
  1175. description: GitRepositoryInclude specifies a local reference to
  1176. a GitRepository which Artifact (sub-)contents must be included,
  1177. and where they should be placed.
  1178. properties:
  1179. fromPath:
  1180. description: FromPath specifies the path to copy contents from,
  1181. defaults to the root of the Artifact.
  1182. type: string
  1183. repository:
  1184. description: GitRepositoryRef specifies the GitRepository which
  1185. Artifact contents must be included.
  1186. properties:
  1187. name:
  1188. description: Name of the referent.
  1189. type: string
  1190. required:
  1191. - name
  1192. type: object
  1193. toPath:
  1194. description: ToPath specifies the path to copy contents to,
  1195. defaults to the name of the GitRepositoryRef.
  1196. type: string
  1197. required:
  1198. - repository
  1199. type: object
  1200. type: array
  1201. observedRecurseSubmodules:
  1202. description: ObservedRecurseSubmodules is the observed resource submodules
  1203. configuration used to produce the current Artifact.
  1204. type: boolean
  1205. type: object
  1206. type: object
  1207. served: true
  1208. storage: true
  1209. subresources:
  1210. status: {}
  1211. - additionalPrinterColumns:
  1212. - jsonPath: .spec.url
  1213. name: URL
  1214. type: string
  1215. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1216. name: Ready
  1217. type: string
  1218. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  1219. name: Status
  1220. type: string
  1221. - jsonPath: .metadata.creationTimestamp
  1222. name: Age
  1223. type: date
  1224. deprecated: true
  1225. deprecationWarning: v1beta1 GitRepository is deprecated, upgrade to v1
  1226. name: v1beta1
  1227. schema:
  1228. openAPIV3Schema:
  1229. description: GitRepository is the Schema for the gitrepositories API
  1230. properties:
  1231. apiVersion:
  1232. description: 'APIVersion defines the versioned schema of this representation
  1233. of an object. Servers should convert recognized schemas to the latest
  1234. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1235. type: string
  1236. kind:
  1237. description: 'Kind is a string value representing the REST resource this
  1238. object represents. Servers may infer this from the endpoint the client
  1239. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1240. type: string
  1241. metadata:
  1242. type: object
  1243. spec:
  1244. description: GitRepositorySpec defines the desired state of a Git repository.
  1245. properties:
  1246. accessFrom:
  1247. description: AccessFrom defines an Access Control List for allowing
  1248. cross-namespace references to this object.
  1249. properties:
  1250. namespaceSelectors:
  1251. description: NamespaceSelectors is the list of namespace selectors
  1252. to which this ACL applies. Items in this list are evaluated
  1253. using a logical OR operation.
  1254. items:
  1255. description: NamespaceSelector selects the namespaces to which
  1256. this ACL applies. An empty map of MatchLabels matches all
  1257. namespaces in a cluster.
  1258. properties:
  1259. matchLabels:
  1260. additionalProperties:
  1261. type: string
  1262. description: MatchLabels is a map of {key,value} pairs.
  1263. A single {key,value} in the matchLabels map is equivalent
  1264. to an element of matchExpressions, whose key field is
  1265. "key", the operator is "In", and the values array contains
  1266. only "value". The requirements are ANDed.
  1267. type: object
  1268. type: object
  1269. type: array
  1270. required:
  1271. - namespaceSelectors
  1272. type: object
  1273. gitImplementation:
  1274. default: go-git
  1275. description: Determines which git client library to use. Defaults
  1276. to go-git, valid values are ('go-git', 'libgit2').
  1277. enum:
  1278. - go-git
  1279. - libgit2
  1280. type: string
  1281. ignore:
  1282. description: Ignore overrides the set of excluded patterns in the
  1283. .sourceignore format (which is the same as .gitignore). If not provided,
  1284. a default will be used, consult the documentation for your version
  1285. to find out what those are.
  1286. type: string
  1287. include:
  1288. description: Extra git repositories to map into the repository
  1289. items:
  1290. description: GitRepositoryInclude defines a source with a from and
  1291. to path.
  1292. properties:
  1293. fromPath:
  1294. description: The path to copy contents from, defaults to the
  1295. root directory.
  1296. type: string
  1297. repository:
  1298. description: Reference to a GitRepository to include.
  1299. properties:
  1300. name:
  1301. description: Name of the referent.
  1302. type: string
  1303. required:
  1304. - name
  1305. type: object
  1306. toPath:
  1307. description: The path to copy contents to, defaults to the name
  1308. of the source ref.
  1309. type: string
  1310. required:
  1311. - repository
  1312. type: object
  1313. type: array
  1314. interval:
  1315. description: The interval at which to check for repository updates.
  1316. type: string
  1317. recurseSubmodules:
  1318. description: When enabled, after the clone is created, initializes
  1319. all submodules within, using their default settings. This option
  1320. is available only when using the 'go-git' GitImplementation.
  1321. type: boolean
  1322. ref:
  1323. description: The Git reference to checkout and monitor for changes,
  1324. defaults to master branch.
  1325. properties:
  1326. branch:
  1327. description: The Git branch to checkout, defaults to master.
  1328. type: string
  1329. commit:
  1330. description: The Git commit SHA to checkout, if specified Tag
  1331. filters will be ignored.
  1332. type: string
  1333. semver:
  1334. description: The Git tag semver expression, takes precedence over
  1335. Tag.
  1336. type: string
  1337. tag:
  1338. description: The Git tag to checkout, takes precedence over Branch.
  1339. type: string
  1340. type: object
  1341. secretRef:
  1342. description: The secret name containing the Git credentials. For HTTPS
  1343. repositories the secret must contain username and password fields.
  1344. For SSH repositories the secret must contain identity and known_hosts
  1345. fields.
  1346. properties:
  1347. name:
  1348. description: Name of the referent.
  1349. type: string
  1350. required:
  1351. - name
  1352. type: object
  1353. suspend:
  1354. description: This flag tells the controller to suspend the reconciliation
  1355. of this source.
  1356. type: boolean
  1357. timeout:
  1358. default: 60s
  1359. description: The timeout for remote Git operations like cloning, defaults
  1360. to 60s.
  1361. type: string
  1362. url:
  1363. description: The repository URL, can be a HTTP/S or SSH address.
  1364. pattern: ^(http|https|ssh)://.*$
  1365. type: string
  1366. verify:
  1367. description: Verify OpenPGP signature for the Git commit HEAD points
  1368. to.
  1369. properties:
  1370. mode:
  1371. description: Mode describes what git object should be verified,
  1372. currently ('head').
  1373. enum:
  1374. - head
  1375. type: string
  1376. secretRef:
  1377. description: The secret name containing the public keys of all
  1378. trusted Git authors.
  1379. properties:
  1380. name:
  1381. description: Name of the referent.
  1382. type: string
  1383. required:
  1384. - name
  1385. type: object
  1386. required:
  1387. - mode
  1388. type: object
  1389. required:
  1390. - interval
  1391. - url
  1392. type: object
  1393. status:
  1394. default:
  1395. observedGeneration: -1
  1396. description: GitRepositoryStatus defines the observed state of a Git repository.
  1397. properties:
  1398. artifact:
  1399. description: Artifact represents the output of the last successful
  1400. repository sync.
  1401. properties:
  1402. checksum:
  1403. description: Checksum is the SHA256 checksum of the artifact.
  1404. type: string
  1405. lastUpdateTime:
  1406. description: LastUpdateTime is the timestamp corresponding to
  1407. the last update of this artifact.
  1408. format: date-time
  1409. type: string
  1410. path:
  1411. description: Path is the relative file path of this artifact.
  1412. type: string
  1413. revision:
  1414. description: Revision is a human readable identifier traceable
  1415. in the origin source system. It can be a Git commit SHA, Git
  1416. tag, a Helm index timestamp, a Helm chart version, etc.
  1417. type: string
  1418. url:
  1419. description: URL is the HTTP address of this artifact.
  1420. type: string
  1421. required:
  1422. - path
  1423. - url
  1424. type: object
  1425. conditions:
  1426. description: Conditions holds the conditions for the GitRepository.
  1427. items:
  1428. description: "Condition contains details for one aspect of the current
  1429. state of this API Resource. --- This struct is intended for direct
  1430. use as an array at the field path .status.conditions. For example,
  1431. \n type FooStatus struct{ // Represents the observations of a
  1432. foo's current state. // Known .status.conditions.type are: \"Available\",
  1433. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  1434. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  1435. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  1436. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  1437. properties:
  1438. lastTransitionTime:
  1439. description: lastTransitionTime is the last time the condition
  1440. transitioned from one status to another. This should be when
  1441. the underlying condition changed. If that is not known, then
  1442. using the time when the API field changed is acceptable.
  1443. format: date-time
  1444. type: string
  1445. message:
  1446. description: message is a human readable message indicating
  1447. details about the transition. This may be an empty string.
  1448. maxLength: 32768
  1449. type: string
  1450. observedGeneration:
  1451. description: observedGeneration represents the .metadata.generation
  1452. that the condition was set based upon. For instance, if .metadata.generation
  1453. is currently 12, but the .status.conditions[x].observedGeneration
  1454. is 9, the condition is out of date with respect to the current
  1455. state of the instance.
  1456. format: int64
  1457. minimum: 0
  1458. type: integer
  1459. reason:
  1460. description: reason contains a programmatic identifier indicating
  1461. the reason for the condition's last transition. Producers
  1462. of specific condition types may define expected values and
  1463. meanings for this field, and whether the values are considered
  1464. a guaranteed API. The value should be a CamelCase string.
  1465. This field may not be empty.
  1466. maxLength: 1024
  1467. minLength: 1
  1468. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  1469. type: string
  1470. status:
  1471. description: status of the condition, one of True, False, Unknown.
  1472. enum:
  1473. - "True"
  1474. - "False"
  1475. - Unknown
  1476. type: string
  1477. type:
  1478. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  1479. --- Many .condition.type values are consistent across resources
  1480. like Available, but because arbitrary conditions can be useful
  1481. (see .node.status.conditions), the ability to deconflict is
  1482. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  1483. maxLength: 316
  1484. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  1485. type: string
  1486. required:
  1487. - lastTransitionTime
  1488. - message
  1489. - reason
  1490. - status
  1491. - type
  1492. type: object
  1493. type: array
  1494. includedArtifacts:
  1495. description: IncludedArtifacts represents the included artifacts from
  1496. the last successful repository sync.
  1497. items:
  1498. description: Artifact represents the output of a source synchronisation.
  1499. properties:
  1500. checksum:
  1501. description: Checksum is the SHA256 checksum of the artifact.
  1502. type: string
  1503. lastUpdateTime:
  1504. description: LastUpdateTime is the timestamp corresponding to
  1505. the last update of this artifact.
  1506. format: date-time
  1507. type: string
  1508. path:
  1509. description: Path is the relative file path of this artifact.
  1510. type: string
  1511. revision:
  1512. description: Revision is a human readable identifier traceable
  1513. in the origin source system. It can be a Git commit SHA, Git
  1514. tag, a Helm index timestamp, a Helm chart version, etc.
  1515. type: string
  1516. url:
  1517. description: URL is the HTTP address of this artifact.
  1518. type: string
  1519. required:
  1520. - path
  1521. - url
  1522. type: object
  1523. type: array
  1524. lastHandledReconcileAt:
  1525. description: LastHandledReconcileAt holds the value of the most recent
  1526. reconcile request value, so a change of the annotation value can
  1527. be detected.
  1528. type: string
  1529. observedGeneration:
  1530. description: ObservedGeneration is the last observed generation.
  1531. format: int64
  1532. type: integer
  1533. url:
  1534. description: URL is the download link for the artifact output of the
  1535. last repository sync.
  1536. type: string
  1537. type: object
  1538. type: object
  1539. served: true
  1540. storage: false
  1541. subresources:
  1542. status: {}
  1543. - additionalPrinterColumns:
  1544. - jsonPath: .spec.url
  1545. name: URL
  1546. type: string
  1547. - jsonPath: .metadata.creationTimestamp
  1548. name: Age
  1549. type: date
  1550. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1551. name: Ready
  1552. type: string
  1553. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  1554. name: Status
  1555. type: string
  1556. deprecated: true
  1557. deprecationWarning: v1beta2 GitRepository is deprecated, upgrade to v1
  1558. name: v1beta2
  1559. schema:
  1560. openAPIV3Schema:
  1561. description: GitRepository is the Schema for the gitrepositories API.
  1562. properties:
  1563. apiVersion:
  1564. description: 'APIVersion defines the versioned schema of this representation
  1565. of an object. Servers should convert recognized schemas to the latest
  1566. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1567. type: string
  1568. kind:
  1569. description: 'Kind is a string value representing the REST resource this
  1570. object represents. Servers may infer this from the endpoint the client
  1571. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1572. type: string
  1573. metadata:
  1574. type: object
  1575. spec:
  1576. description: GitRepositorySpec specifies the required configuration to
  1577. produce an Artifact for a Git repository.
  1578. properties:
  1579. accessFrom:
  1580. description: 'AccessFrom specifies an Access Control List for allowing
  1581. cross-namespace references to this object. NOTE: Not implemented,
  1582. provisional as of https://github.com/fluxcd/flux2/pull/2092'
  1583. properties:
  1584. namespaceSelectors:
  1585. description: NamespaceSelectors is the list of namespace selectors
  1586. to which this ACL applies. Items in this list are evaluated
  1587. using a logical OR operation.
  1588. items:
  1589. description: NamespaceSelector selects the namespaces to which
  1590. this ACL applies. An empty map of MatchLabels matches all
  1591. namespaces in a cluster.
  1592. properties:
  1593. matchLabels:
  1594. additionalProperties:
  1595. type: string
  1596. description: MatchLabels is a map of {key,value} pairs.
  1597. A single {key,value} in the matchLabels map is equivalent
  1598. to an element of matchExpressions, whose key field is
  1599. "key", the operator is "In", and the values array contains
  1600. only "value". The requirements are ANDed.
  1601. type: object
  1602. type: object
  1603. type: array
  1604. required:
  1605. - namespaceSelectors
  1606. type: object
  1607. gitImplementation:
  1608. default: go-git
  1609. description: 'GitImplementation specifies which Git client library
  1610. implementation to use. Defaults to ''go-git'', valid values are
  1611. (''go-git'', ''libgit2''). Deprecated: gitImplementation is deprecated
  1612. now that ''go-git'' is the only supported implementation.'
  1613. enum:
  1614. - go-git
  1615. - libgit2
  1616. type: string
  1617. ignore:
  1618. description: Ignore overrides the set of excluded patterns in the
  1619. .sourceignore format (which is the same as .gitignore). If not provided,
  1620. a default will be used, consult the documentation for your version
  1621. to find out what those are.
  1622. type: string
  1623. include:
  1624. description: Include specifies a list of GitRepository resources which
  1625. Artifacts should be included in the Artifact produced for this GitRepository.
  1626. items:
  1627. description: GitRepositoryInclude specifies a local reference to
  1628. a GitRepository which Artifact (sub-)contents must be included,
  1629. and where they should be placed.
  1630. properties:
  1631. fromPath:
  1632. description: FromPath specifies the path to copy contents from,
  1633. defaults to the root of the Artifact.
  1634. type: string
  1635. repository:
  1636. description: GitRepositoryRef specifies the GitRepository which
  1637. Artifact contents must be included.
  1638. properties:
  1639. name:
  1640. description: Name of the referent.
  1641. type: string
  1642. required:
  1643. - name
  1644. type: object
  1645. toPath:
  1646. description: ToPath specifies the path to copy contents to,
  1647. defaults to the name of the GitRepositoryRef.
  1648. type: string
  1649. required:
  1650. - repository
  1651. type: object
  1652. type: array
  1653. interval:
  1654. description: Interval at which to check the GitRepository for updates.
  1655. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  1656. type: string
  1657. recurseSubmodules:
  1658. description: RecurseSubmodules enables the initialization of all submodules
  1659. within the GitRepository as cloned from the URL, using their default
  1660. settings.
  1661. type: boolean
  1662. ref:
  1663. description: Reference specifies the Git reference to resolve and
  1664. monitor for changes, defaults to the 'master' branch.
  1665. properties:
  1666. branch:
  1667. description: Branch to check out, defaults to 'master' if no other
  1668. field is defined.
  1669. type: string
  1670. commit:
  1671. description: "Commit SHA to check out, takes precedence over all
  1672. reference fields. \n This can be combined with Branch to shallow
  1673. clone the branch, in which the commit is expected to exist."
  1674. type: string
  1675. name:
  1676. description: "Name of the reference to check out; takes precedence
  1677. over Branch, Tag and SemVer. \n It must be a valid Git reference:
  1678. https://git-scm.com/docs/git-check-ref-format#_description Examples:
  1679. \"refs/heads/main\", \"refs/tags/v0.1.0\", \"refs/pull/420/head\",
  1680. \"refs/merge-requests/1/head\""
  1681. type: string
  1682. semver:
  1683. description: SemVer tag expression to check out, takes precedence
  1684. over Tag.
  1685. type: string
  1686. tag:
  1687. description: Tag to check out, takes precedence over Branch.
  1688. type: string
  1689. type: object
  1690. secretRef:
  1691. description: SecretRef specifies the Secret containing authentication
  1692. credentials for the GitRepository. For HTTPS repositories the Secret
  1693. must contain 'username' and 'password' fields for basic auth or
  1694. 'bearerToken' field for token auth. For SSH repositories the Secret
  1695. must contain 'identity' and 'known_hosts' fields.
  1696. properties:
  1697. name:
  1698. description: Name of the referent.
  1699. type: string
  1700. required:
  1701. - name
  1702. type: object
  1703. suspend:
  1704. description: Suspend tells the controller to suspend the reconciliation
  1705. of this GitRepository.
  1706. type: boolean
  1707. timeout:
  1708. default: 60s
  1709. description: Timeout for Git operations like cloning, defaults to
  1710. 60s.
  1711. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
  1712. type: string
  1713. url:
  1714. description: URL specifies the Git repository URL, it can be an HTTP/S
  1715. or SSH address.
  1716. pattern: ^(http|https|ssh)://.*$
  1717. type: string
  1718. verify:
  1719. description: Verification specifies the configuration to verify the
  1720. Git commit signature(s).
  1721. properties:
  1722. mode:
  1723. description: Mode specifies what Git object should be verified,
  1724. currently ('head').
  1725. enum:
  1726. - head
  1727. type: string
  1728. secretRef:
  1729. description: SecretRef specifies the Secret containing the public
  1730. keys of trusted Git authors.
  1731. properties:
  1732. name:
  1733. description: Name of the referent.
  1734. type: string
  1735. required:
  1736. - name
  1737. type: object
  1738. required:
  1739. - mode
  1740. - secretRef
  1741. type: object
  1742. required:
  1743. - interval
  1744. - url
  1745. type: object
  1746. status:
  1747. default:
  1748. observedGeneration: -1
  1749. description: GitRepositoryStatus records the observed state of a Git repository.
  1750. properties:
  1751. artifact:
  1752. description: Artifact represents the last successful GitRepository
  1753. reconciliation.
  1754. properties:
  1755. digest:
  1756. description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
  1757. pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
  1758. type: string
  1759. lastUpdateTime:
  1760. description: LastUpdateTime is the timestamp corresponding to
  1761. the last update of the Artifact.
  1762. format: date-time
  1763. type: string
  1764. metadata:
  1765. additionalProperties:
  1766. type: string
  1767. description: Metadata holds upstream information such as OCI annotations.
  1768. type: object
  1769. path:
  1770. description: Path is the relative file path of the Artifact. It
  1771. can be used to locate the file in the root of the Artifact storage
  1772. on the local file system of the controller managing the Source.
  1773. type: string
  1774. revision:
  1775. description: Revision is a human-readable identifier traceable
  1776. in the origin source system. It can be a Git commit SHA, Git
  1777. tag, a Helm chart version, etc.
  1778. type: string
  1779. size:
  1780. description: Size is the number of bytes in the file.
  1781. format: int64
  1782. type: integer
  1783. url:
  1784. description: URL is the HTTP address of the Artifact as exposed
  1785. by the controller managing the Source. It can be used to retrieve
  1786. the Artifact for consumption, e.g. by another controller applying
  1787. the Artifact contents.
  1788. type: string
  1789. required:
  1790. - lastUpdateTime
  1791. - path
  1792. - revision
  1793. - url
  1794. type: object
  1795. conditions:
  1796. description: Conditions holds the conditions for the GitRepository.
  1797. items:
  1798. description: "Condition contains details for one aspect of the current
  1799. state of this API Resource. --- This struct is intended for direct
  1800. use as an array at the field path .status.conditions. For example,
  1801. \n type FooStatus struct{ // Represents the observations of a
  1802. foo's current state. // Known .status.conditions.type are: \"Available\",
  1803. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  1804. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  1805. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  1806. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  1807. properties:
  1808. lastTransitionTime:
  1809. description: lastTransitionTime is the last time the condition
  1810. transitioned from one status to another. This should be when
  1811. the underlying condition changed. If that is not known, then
  1812. using the time when the API field changed is acceptable.
  1813. format: date-time
  1814. type: string
  1815. message:
  1816. description: message is a human readable message indicating
  1817. details about the transition. This may be an empty string.
  1818. maxLength: 32768
  1819. type: string
  1820. observedGeneration:
  1821. description: observedGeneration represents the .metadata.generation
  1822. that the condition was set based upon. For instance, if .metadata.generation
  1823. is currently 12, but the .status.conditions[x].observedGeneration
  1824. is 9, the condition is out of date with respect to the current
  1825. state of the instance.
  1826. format: int64
  1827. minimum: 0
  1828. type: integer
  1829. reason:
  1830. description: reason contains a programmatic identifier indicating
  1831. the reason for the condition's last transition. Producers
  1832. of specific condition types may define expected values and
  1833. meanings for this field, and whether the values are considered
  1834. a guaranteed API. The value should be a CamelCase string.
  1835. This field may not be empty.
  1836. maxLength: 1024
  1837. minLength: 1
  1838. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  1839. type: string
  1840. status:
  1841. description: status of the condition, one of True, False, Unknown.
  1842. enum:
  1843. - "True"
  1844. - "False"
  1845. - Unknown
  1846. type: string
  1847. type:
  1848. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  1849. --- Many .condition.type values are consistent across resources
  1850. like Available, but because arbitrary conditions can be useful
  1851. (see .node.status.conditions), the ability to deconflict is
  1852. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  1853. maxLength: 316
  1854. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  1855. type: string
  1856. required:
  1857. - lastTransitionTime
  1858. - message
  1859. - reason
  1860. - status
  1861. - type
  1862. type: object
  1863. type: array
  1864. contentConfigChecksum:
  1865. description: "ContentConfigChecksum is a checksum of all the configurations
  1866. related to the content of the source artifact: - .spec.ignore -
  1867. .spec.recurseSubmodules - .spec.included and the checksum of the
  1868. included artifacts observed in .status.observedGeneration version
  1869. of the object. This can be used to determine if the content of the
  1870. included repository has changed. It has the format of `<algo>:<checksum>`,
  1871. for example: `sha256:<checksum>`. \n Deprecated: Replaced with explicit
  1872. fields for observed artifact content config in the status."
  1873. type: string
  1874. includedArtifacts:
  1875. description: IncludedArtifacts contains a list of the last successfully
  1876. included Artifacts as instructed by GitRepositorySpec.Include.
  1877. items:
  1878. description: Artifact represents the output of a Source reconciliation.
  1879. properties:
  1880. digest:
  1881. description: Digest is the digest of the file in the form of
  1882. '<algorithm>:<checksum>'.
  1883. pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
  1884. type: string
  1885. lastUpdateTime:
  1886. description: LastUpdateTime is the timestamp corresponding to
  1887. the last update of the Artifact.
  1888. format: date-time
  1889. type: string
  1890. metadata:
  1891. additionalProperties:
  1892. type: string
  1893. description: Metadata holds upstream information such as OCI
  1894. annotations.
  1895. type: object
  1896. path:
  1897. description: Path is the relative file path of the Artifact.
  1898. It can be used to locate the file in the root of the Artifact
  1899. storage on the local file system of the controller managing
  1900. the Source.
  1901. type: string
  1902. revision:
  1903. description: Revision is a human-readable identifier traceable
  1904. in the origin source system. It can be a Git commit SHA, Git
  1905. tag, a Helm chart version, etc.
  1906. type: string
  1907. size:
  1908. description: Size is the number of bytes in the file.
  1909. format: int64
  1910. type: integer
  1911. url:
  1912. description: URL is the HTTP address of the Artifact as exposed
  1913. by the controller managing the Source. It can be used to retrieve
  1914. the Artifact for consumption, e.g. by another controller applying
  1915. the Artifact contents.
  1916. type: string
  1917. required:
  1918. - lastUpdateTime
  1919. - path
  1920. - revision
  1921. - url
  1922. type: object
  1923. type: array
  1924. lastHandledReconcileAt:
  1925. description: LastHandledReconcileAt holds the value of the most recent
  1926. reconcile request value, so a change of the annotation value can
  1927. be detected.
  1928. type: string
  1929. observedGeneration:
  1930. description: ObservedGeneration is the last observed generation of
  1931. the GitRepository object.
  1932. format: int64
  1933. type: integer
  1934. observedIgnore:
  1935. description: ObservedIgnore is the observed exclusion patterns used
  1936. for constructing the source artifact.
  1937. type: string
  1938. observedInclude:
  1939. description: ObservedInclude is the observed list of GitRepository
  1940. resources used to to produce the current Artifact.
  1941. items:
  1942. description: GitRepositoryInclude specifies a local reference to
  1943. a GitRepository which Artifact (sub-)contents must be included,
  1944. and where they should be placed.
  1945. properties:
  1946. fromPath:
  1947. description: FromPath specifies the path to copy contents from,
  1948. defaults to the root of the Artifact.
  1949. type: string
  1950. repository:
  1951. description: GitRepositoryRef specifies the GitRepository which
  1952. Artifact contents must be included.
  1953. properties:
  1954. name:
  1955. description: Name of the referent.
  1956. type: string
  1957. required:
  1958. - name
  1959. type: object
  1960. toPath:
  1961. description: ToPath specifies the path to copy contents to,
  1962. defaults to the name of the GitRepositoryRef.
  1963. type: string
  1964. required:
  1965. - repository
  1966. type: object
  1967. type: array
  1968. observedRecurseSubmodules:
  1969. description: ObservedRecurseSubmodules is the observed resource submodules
  1970. configuration used to produce the current Artifact.
  1971. type: boolean
  1972. url:
  1973. description: URL is the dynamic fetch link for the latest Artifact.
  1974. It is provided on a "best effort" basis, and using the precise GitRepositoryStatus.Artifact
  1975. data is recommended.
  1976. type: string
  1977. type: object
  1978. type: object
  1979. served: true
  1980. storage: false
  1981. subresources:
  1982. status: {}
  1983. ---
  1984. apiVersion: apiextensions.k8s.io/v1
  1985. kind: CustomResourceDefinition
  1986. metadata:
  1987. annotations:
  1988. controller-gen.kubebuilder.io/version: v0.12.0
  1989. labels:
  1990. app.kubernetes.io/component: source-controller
  1991. app.kubernetes.io/instance: flux-system
  1992. app.kubernetes.io/part-of: flux
  1993. app.kubernetes.io/version: v2.0.1
  1994. name: helmcharts.source.toolkit.fluxcd.io
  1995. spec:
  1996. group: source.toolkit.fluxcd.io
  1997. names:
  1998. kind: HelmChart
  1999. listKind: HelmChartList
  2000. plural: helmcharts
  2001. shortNames:
  2002. - hc
  2003. singular: helmchart
  2004. scope: Namespaced
  2005. versions:
  2006. - additionalPrinterColumns:
  2007. - jsonPath: .spec.chart
  2008. name: Chart
  2009. type: string
  2010. - jsonPath: .spec.version
  2011. name: Version
  2012. type: string
  2013. - jsonPath: .spec.sourceRef.kind
  2014. name: Source Kind
  2015. type: string
  2016. - jsonPath: .spec.sourceRef.name
  2017. name: Source Name
  2018. type: string
  2019. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2020. name: Ready
  2021. type: string
  2022. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  2023. name: Status
  2024. type: string
  2025. - jsonPath: .metadata.creationTimestamp
  2026. name: Age
  2027. type: date
  2028. name: v1beta1
  2029. schema:
  2030. openAPIV3Schema:
  2031. description: HelmChart is the Schema for the helmcharts API
  2032. properties:
  2033. apiVersion:
  2034. description: 'APIVersion defines the versioned schema of this representation
  2035. of an object. Servers should convert recognized schemas to the latest
  2036. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2037. type: string
  2038. kind:
  2039. description: 'Kind is a string value representing the REST resource this
  2040. object represents. Servers may infer this from the endpoint the client
  2041. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2042. type: string
  2043. metadata:
  2044. type: object
  2045. spec:
  2046. description: HelmChartSpec defines the desired state of a Helm chart.
  2047. properties:
  2048. accessFrom:
  2049. description: AccessFrom defines an Access Control List for allowing
  2050. cross-namespace references to this object.
  2051. properties:
  2052. namespaceSelectors:
  2053. description: NamespaceSelectors is the list of namespace selectors
  2054. to which this ACL applies. Items in this list are evaluated
  2055. using a logical OR operation.
  2056. items:
  2057. description: NamespaceSelector selects the namespaces to which
  2058. this ACL applies. An empty map of MatchLabels matches all
  2059. namespaces in a cluster.
  2060. properties:
  2061. matchLabels:
  2062. additionalProperties:
  2063. type: string
  2064. description: MatchLabels is a map of {key,value} pairs.
  2065. A single {key,value} in the matchLabels map is equivalent
  2066. to an element of matchExpressions, whose key field is
  2067. "key", the operator is "In", and the values array contains
  2068. only "value". The requirements are ANDed.
  2069. type: object
  2070. type: object
  2071. type: array
  2072. required:
  2073. - namespaceSelectors
  2074. type: object
  2075. chart:
  2076. description: The name or path the Helm chart is available at in the
  2077. SourceRef.
  2078. type: string
  2079. interval:
  2080. description: The interval at which to check the Source for updates.
  2081. type: string
  2082. reconcileStrategy:
  2083. default: ChartVersion
  2084. description: Determines what enables the creation of a new artifact.
  2085. Valid values are ('ChartVersion', 'Revision'). See the documentation
  2086. of the values for an explanation on their behavior. Defaults to
  2087. ChartVersion when omitted.
  2088. enum:
  2089. - ChartVersion
  2090. - Revision
  2091. type: string
  2092. sourceRef:
  2093. description: The reference to the Source the chart is available at.
  2094. properties:
  2095. apiVersion:
  2096. description: APIVersion of the referent.
  2097. type: string
  2098. kind:
  2099. description: Kind of the referent, valid values are ('HelmRepository',
  2100. 'GitRepository', 'Bucket').
  2101. enum:
  2102. - HelmRepository
  2103. - GitRepository
  2104. - Bucket
  2105. type: string
  2106. name:
  2107. description: Name of the referent.
  2108. type: string
  2109. required:
  2110. - kind
  2111. - name
  2112. type: object
  2113. suspend:
  2114. description: This flag tells the controller to suspend the reconciliation
  2115. of this source.
  2116. type: boolean
  2117. valuesFile:
  2118. description: Alternative values file to use as the default chart values,
  2119. expected to be a relative path in the SourceRef. Deprecated in favor
  2120. of ValuesFiles, for backwards compatibility the file defined here
  2121. is merged before the ValuesFiles items. Ignored when omitted.
  2122. type: string
  2123. valuesFiles:
  2124. description: Alternative list of values files to use as the chart
  2125. values (values.yaml is not included by default), expected to be
  2126. a relative path in the SourceRef. Values files are merged in the
  2127. order of this list with the last file overriding the first. Ignored
  2128. when omitted.
  2129. items:
  2130. type: string
  2131. type: array
  2132. version:
  2133. default: '*'
  2134. description: The chart version semver expression, ignored for charts
  2135. from GitRepository and Bucket sources. Defaults to latest when omitted.
  2136. type: string
  2137. required:
  2138. - chart
  2139. - interval
  2140. - sourceRef
  2141. type: object
  2142. status:
  2143. default:
  2144. observedGeneration: -1
  2145. description: HelmChartStatus defines the observed state of the HelmChart.
  2146. properties:
  2147. artifact:
  2148. description: Artifact represents the output of the last successful
  2149. chart sync.
  2150. properties:
  2151. checksum:
  2152. description: Checksum is the SHA256 checksum of the artifact.
  2153. type: string
  2154. lastUpdateTime:
  2155. description: LastUpdateTime is the timestamp corresponding to
  2156. the last update of this artifact.
  2157. format: date-time
  2158. type: string
  2159. path:
  2160. description: Path is the relative file path of this artifact.
  2161. type: string
  2162. revision:
  2163. description: Revision is a human readable identifier traceable
  2164. in the origin source system. It can be a Git commit SHA, Git
  2165. tag, a Helm index timestamp, a Helm chart version, etc.
  2166. type: string
  2167. url:
  2168. description: URL is the HTTP address of this artifact.
  2169. type: string
  2170. required:
  2171. - path
  2172. - url
  2173. type: object
  2174. conditions:
  2175. description: Conditions holds the conditions for the HelmChart.
  2176. items:
  2177. description: "Condition contains details for one aspect of the current
  2178. state of this API Resource. --- This struct is intended for direct
  2179. use as an array at the field path .status.conditions. For example,
  2180. \n type FooStatus struct{ // Represents the observations of a
  2181. foo's current state. // Known .status.conditions.type are: \"Available\",
  2182. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  2183. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  2184. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  2185. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  2186. properties:
  2187. lastTransitionTime:
  2188. description: lastTransitionTime is the last time the condition
  2189. transitioned from one status to another. This should be when
  2190. the underlying condition changed. If that is not known, then
  2191. using the time when the API field changed is acceptable.
  2192. format: date-time
  2193. type: string
  2194. message:
  2195. description: message is a human readable message indicating
  2196. details about the transition. This may be an empty string.
  2197. maxLength: 32768
  2198. type: string
  2199. observedGeneration:
  2200. description: observedGeneration represents the .metadata.generation
  2201. that the condition was set based upon. For instance, if .metadata.generation
  2202. is currently 12, but the .status.conditions[x].observedGeneration
  2203. is 9, the condition is out of date with respect to the current
  2204. state of the instance.
  2205. format: int64
  2206. minimum: 0
  2207. type: integer
  2208. reason:
  2209. description: reason contains a programmatic identifier indicating
  2210. the reason for the condition's last transition. Producers
  2211. of specific condition types may define expected values and
  2212. meanings for this field, and whether the values are considered
  2213. a guaranteed API. The value should be a CamelCase string.
  2214. This field may not be empty.
  2215. maxLength: 1024
  2216. minLength: 1
  2217. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  2218. type: string
  2219. status:
  2220. description: status of the condition, one of True, False, Unknown.
  2221. enum:
  2222. - "True"
  2223. - "False"
  2224. - Unknown
  2225. type: string
  2226. type:
  2227. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  2228. --- Many .condition.type values are consistent across resources
  2229. like Available, but because arbitrary conditions can be useful
  2230. (see .node.status.conditions), the ability to deconflict is
  2231. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  2232. maxLength: 316
  2233. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  2234. type: string
  2235. required:
  2236. - lastTransitionTime
  2237. - message
  2238. - reason
  2239. - status
  2240. - type
  2241. type: object
  2242. type: array
  2243. lastHandledReconcileAt:
  2244. description: LastHandledReconcileAt holds the value of the most recent
  2245. reconcile request value, so a change of the annotation value can
  2246. be detected.
  2247. type: string
  2248. observedGeneration:
  2249. description: ObservedGeneration is the last observed generation.
  2250. format: int64
  2251. type: integer
  2252. url:
  2253. description: URL is the download link for the last chart pulled.
  2254. type: string
  2255. type: object
  2256. type: object
  2257. served: true
  2258. storage: false
  2259. subresources:
  2260. status: {}
  2261. - additionalPrinterColumns:
  2262. - jsonPath: .spec.chart
  2263. name: Chart
  2264. type: string
  2265. - jsonPath: .spec.version
  2266. name: Version
  2267. type: string
  2268. - jsonPath: .spec.sourceRef.kind
  2269. name: Source Kind
  2270. type: string
  2271. - jsonPath: .spec.sourceRef.name
  2272. name: Source Name
  2273. type: string
  2274. - jsonPath: .metadata.creationTimestamp
  2275. name: Age
  2276. type: date
  2277. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2278. name: Ready
  2279. type: string
  2280. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  2281. name: Status
  2282. type: string
  2283. name: v1beta2
  2284. schema:
  2285. openAPIV3Schema:
  2286. description: HelmChart is the Schema for the helmcharts API.
  2287. properties:
  2288. apiVersion:
  2289. description: 'APIVersion defines the versioned schema of this representation
  2290. of an object. Servers should convert recognized schemas to the latest
  2291. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2292. type: string
  2293. kind:
  2294. description: 'Kind is a string value representing the REST resource this
  2295. object represents. Servers may infer this from the endpoint the client
  2296. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2297. type: string
  2298. metadata:
  2299. type: object
  2300. spec:
  2301. description: HelmChartSpec specifies the desired state of a Helm chart.
  2302. properties:
  2303. accessFrom:
  2304. description: 'AccessFrom specifies an Access Control List for allowing
  2305. cross-namespace references to this object. NOTE: Not implemented,
  2306. provisional as of https://github.com/fluxcd/flux2/pull/2092'
  2307. properties:
  2308. namespaceSelectors:
  2309. description: NamespaceSelectors is the list of namespace selectors
  2310. to which this ACL applies. Items in this list are evaluated
  2311. using a logical OR operation.
  2312. items:
  2313. description: NamespaceSelector selects the namespaces to which
  2314. this ACL applies. An empty map of MatchLabels matches all
  2315. namespaces in a cluster.
  2316. properties:
  2317. matchLabels:
  2318. additionalProperties:
  2319. type: string
  2320. description: MatchLabels is a map of {key,value} pairs.
  2321. A single {key,value} in the matchLabels map is equivalent
  2322. to an element of matchExpressions, whose key field is
  2323. "key", the operator is "In", and the values array contains
  2324. only "value". The requirements are ANDed.
  2325. type: object
  2326. type: object
  2327. type: array
  2328. required:
  2329. - namespaceSelectors
  2330. type: object
  2331. chart:
  2332. description: Chart is the name or path the Helm chart is available
  2333. at in the SourceRef.
  2334. type: string
  2335. interval:
  2336. description: Interval is the interval at which to check the Source
  2337. for updates.
  2338. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  2339. type: string
  2340. reconcileStrategy:
  2341. default: ChartVersion
  2342. description: ReconcileStrategy determines what enables the creation
  2343. of a new artifact. Valid values are ('ChartVersion', 'Revision').
  2344. See the documentation of the values for an explanation on their
  2345. behavior. Defaults to ChartVersion when omitted.
  2346. enum:
  2347. - ChartVersion
  2348. - Revision
  2349. type: string
  2350. sourceRef:
  2351. description: SourceRef is the reference to the Source the chart is
  2352. available at.
  2353. properties:
  2354. apiVersion:
  2355. description: APIVersion of the referent.
  2356. type: string
  2357. kind:
  2358. description: Kind of the referent, valid values are ('HelmRepository',
  2359. 'GitRepository', 'Bucket').
  2360. enum:
  2361. - HelmRepository
  2362. - GitRepository
  2363. - Bucket
  2364. type: string
  2365. name:
  2366. description: Name of the referent.
  2367. type: string
  2368. required:
  2369. - kind
  2370. - name
  2371. type: object
  2372. suspend:
  2373. description: Suspend tells the controller to suspend the reconciliation
  2374. of this source.
  2375. type: boolean
  2376. valuesFile:
  2377. description: ValuesFile is an alternative values file to use as the
  2378. default chart values, expected to be a relative path in the SourceRef.
  2379. Deprecated in favor of ValuesFiles, for backwards compatibility
  2380. the file specified here is merged before the ValuesFiles items.
  2381. Ignored when omitted.
  2382. type: string
  2383. valuesFiles:
  2384. description: ValuesFiles is an alternative list of values files to
  2385. use as the chart values (values.yaml is not included by default),
  2386. expected to be a relative path in the SourceRef. Values files are
  2387. merged in the order of this list with the last file overriding the
  2388. first. Ignored when omitted.
  2389. items:
  2390. type: string
  2391. type: array
  2392. verify:
  2393. description: Verify contains the secret name containing the trusted
  2394. public keys used to verify the signature and specifies which provider
  2395. to use to check whether OCI image is authentic. This field is only
  2396. supported when using HelmRepository source with spec.type 'oci'.
  2397. Chart dependencies, which are not bundled in the umbrella chart
  2398. artifact, are not verified.
  2399. properties:
  2400. provider:
  2401. default: cosign
  2402. description: Provider specifies the technology used to sign the
  2403. OCI Artifact.
  2404. enum:
  2405. - cosign
  2406. type: string
  2407. secretRef:
  2408. description: SecretRef specifies the Kubernetes Secret containing
  2409. the trusted public keys.
  2410. properties:
  2411. name:
  2412. description: Name of the referent.
  2413. type: string
  2414. required:
  2415. - name
  2416. type: object
  2417. required:
  2418. - provider
  2419. type: object
  2420. version:
  2421. default: '*'
  2422. description: Version is the chart version semver expression, ignored
  2423. for charts from GitRepository and Bucket sources. Defaults to latest
  2424. when omitted.
  2425. type: string
  2426. required:
  2427. - chart
  2428. - interval
  2429. - sourceRef
  2430. type: object
  2431. status:
  2432. default:
  2433. observedGeneration: -1
  2434. description: HelmChartStatus records the observed state of the HelmChart.
  2435. properties:
  2436. artifact:
  2437. description: Artifact represents the output of the last successful
  2438. reconciliation.
  2439. properties:
  2440. digest:
  2441. description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
  2442. pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
  2443. type: string
  2444. lastUpdateTime:
  2445. description: LastUpdateTime is the timestamp corresponding to
  2446. the last update of the Artifact.
  2447. format: date-time
  2448. type: string
  2449. metadata:
  2450. additionalProperties:
  2451. type: string
  2452. description: Metadata holds upstream information such as OCI annotations.
  2453. type: object
  2454. path:
  2455. description: Path is the relative file path of the Artifact. It
  2456. can be used to locate the file in the root of the Artifact storage
  2457. on the local file system of the controller managing the Source.
  2458. type: string
  2459. revision:
  2460. description: Revision is a human-readable identifier traceable
  2461. in the origin source system. It can be a Git commit SHA, Git
  2462. tag, a Helm chart version, etc.
  2463. type: string
  2464. size:
  2465. description: Size is the number of bytes in the file.
  2466. format: int64
  2467. type: integer
  2468. url:
  2469. description: URL is the HTTP address of the Artifact as exposed
  2470. by the controller managing the Source. It can be used to retrieve
  2471. the Artifact for consumption, e.g. by another controller applying
  2472. the Artifact contents.
  2473. type: string
  2474. required:
  2475. - lastUpdateTime
  2476. - path
  2477. - revision
  2478. - url
  2479. type: object
  2480. conditions:
  2481. description: Conditions holds the conditions for the HelmChart.
  2482. items:
  2483. description: "Condition contains details for one aspect of the current
  2484. state of this API Resource. --- This struct is intended for direct
  2485. use as an array at the field path .status.conditions. For example,
  2486. \n type FooStatus struct{ // Represents the observations of a
  2487. foo's current state. // Known .status.conditions.type are: \"Available\",
  2488. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  2489. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  2490. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  2491. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  2492. properties:
  2493. lastTransitionTime:
  2494. description: lastTransitionTime is the last time the condition
  2495. transitioned from one status to another. This should be when
  2496. the underlying condition changed. If that is not known, then
  2497. using the time when the API field changed is acceptable.
  2498. format: date-time
  2499. type: string
  2500. message:
  2501. description: message is a human readable message indicating
  2502. details about the transition. This may be an empty string.
  2503. maxLength: 32768
  2504. type: string
  2505. observedGeneration:
  2506. description: observedGeneration represents the .metadata.generation
  2507. that the condition was set based upon. For instance, if .metadata.generation
  2508. is currently 12, but the .status.conditions[x].observedGeneration
  2509. is 9, the condition is out of date with respect to the current
  2510. state of the instance.
  2511. format: int64
  2512. minimum: 0
  2513. type: integer
  2514. reason:
  2515. description: reason contains a programmatic identifier indicating
  2516. the reason for the condition's last transition. Producers
  2517. of specific condition types may define expected values and
  2518. meanings for this field, and whether the values are considered
  2519. a guaranteed API. The value should be a CamelCase string.
  2520. This field may not be empty.
  2521. maxLength: 1024
  2522. minLength: 1
  2523. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  2524. type: string
  2525. status:
  2526. description: status of the condition, one of True, False, Unknown.
  2527. enum:
  2528. - "True"
  2529. - "False"
  2530. - Unknown
  2531. type: string
  2532. type:
  2533. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  2534. --- Many .condition.type values are consistent across resources
  2535. like Available, but because arbitrary conditions can be useful
  2536. (see .node.status.conditions), the ability to deconflict is
  2537. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  2538. maxLength: 316
  2539. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  2540. type: string
  2541. required:
  2542. - lastTransitionTime
  2543. - message
  2544. - reason
  2545. - status
  2546. - type
  2547. type: object
  2548. type: array
  2549. lastHandledReconcileAt:
  2550. description: LastHandledReconcileAt holds the value of the most recent
  2551. reconcile request value, so a change of the annotation value can
  2552. be detected.
  2553. type: string
  2554. observedChartName:
  2555. description: ObservedChartName is the last observed chart name as
  2556. specified by the resolved chart reference.
  2557. type: string
  2558. observedGeneration:
  2559. description: ObservedGeneration is the last observed generation of
  2560. the HelmChart object.
  2561. format: int64
  2562. type: integer
  2563. observedSourceArtifactRevision:
  2564. description: ObservedSourceArtifactRevision is the last observed Artifact.Revision
  2565. of the HelmChartSpec.SourceRef.
  2566. type: string
  2567. url:
  2568. description: URL is the dynamic fetch link for the latest Artifact.
  2569. It is provided on a "best effort" basis, and using the precise BucketStatus.Artifact
  2570. data is recommended.
  2571. type: string
  2572. type: object
  2573. type: object
  2574. served: true
  2575. storage: true
  2576. subresources:
  2577. status: {}
  2578. ---
  2579. apiVersion: apiextensions.k8s.io/v1
  2580. kind: CustomResourceDefinition
  2581. metadata:
  2582. annotations:
  2583. controller-gen.kubebuilder.io/version: v0.12.0
  2584. labels:
  2585. app.kubernetes.io/component: source-controller
  2586. app.kubernetes.io/instance: flux-system
  2587. app.kubernetes.io/part-of: flux
  2588. app.kubernetes.io/version: v2.0.1
  2589. name: helmrepositories.source.toolkit.fluxcd.io
  2590. spec:
  2591. group: source.toolkit.fluxcd.io
  2592. names:
  2593. kind: HelmRepository
  2594. listKind: HelmRepositoryList
  2595. plural: helmrepositories
  2596. shortNames:
  2597. - helmrepo
  2598. singular: helmrepository
  2599. scope: Namespaced
  2600. versions:
  2601. - additionalPrinterColumns:
  2602. - jsonPath: .spec.url
  2603. name: URL
  2604. type: string
  2605. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2606. name: Ready
  2607. type: string
  2608. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  2609. name: Status
  2610. type: string
  2611. - jsonPath: .metadata.creationTimestamp
  2612. name: Age
  2613. type: date
  2614. name: v1beta1
  2615. schema:
  2616. openAPIV3Schema:
  2617. description: HelmRepository is the Schema for the helmrepositories API
  2618. properties:
  2619. apiVersion:
  2620. description: 'APIVersion defines the versioned schema of this representation
  2621. of an object. Servers should convert recognized schemas to the latest
  2622. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2623. type: string
  2624. kind:
  2625. description: 'Kind is a string value representing the REST resource this
  2626. object represents. Servers may infer this from the endpoint the client
  2627. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2628. type: string
  2629. metadata:
  2630. type: object
  2631. spec:
  2632. description: HelmRepositorySpec defines the reference to a Helm repository.
  2633. properties:
  2634. accessFrom:
  2635. description: AccessFrom defines an Access Control List for allowing
  2636. cross-namespace references to this object.
  2637. properties:
  2638. namespaceSelectors:
  2639. description: NamespaceSelectors is the list of namespace selectors
  2640. to which this ACL applies. Items in this list are evaluated
  2641. using a logical OR operation.
  2642. items:
  2643. description: NamespaceSelector selects the namespaces to which
  2644. this ACL applies. An empty map of MatchLabels matches all
  2645. namespaces in a cluster.
  2646. properties:
  2647. matchLabels:
  2648. additionalProperties:
  2649. type: string
  2650. description: MatchLabels is a map of {key,value} pairs.
  2651. A single {key,value} in the matchLabels map is equivalent
  2652. to an element of matchExpressions, whose key field is
  2653. "key", the operator is "In", and the values array contains
  2654. only "value". The requirements are ANDed.
  2655. type: object
  2656. type: object
  2657. type: array
  2658. required:
  2659. - namespaceSelectors
  2660. type: object
  2661. interval:
  2662. description: The interval at which to check the upstream for updates.
  2663. type: string
  2664. passCredentials:
  2665. description: PassCredentials allows the credentials from the SecretRef
  2666. to be passed on to a host that does not match the host as defined
  2667. in URL. This may be required if the host of the advertised chart
  2668. URLs in the index differ from the defined URL. Enabling this should
  2669. be done with caution, as it can potentially result in credentials
  2670. getting stolen in a MITM-attack.
  2671. type: boolean
  2672. secretRef:
  2673. description: The name of the secret containing authentication credentials
  2674. for the Helm repository. For HTTP/S basic auth the secret must contain
  2675. username and password fields. For TLS the secret must contain a
  2676. certFile and keyFile, and/or caFile fields.
  2677. properties:
  2678. name:
  2679. description: Name of the referent.
  2680. type: string
  2681. required:
  2682. - name
  2683. type: object
  2684. suspend:
  2685. description: This flag tells the controller to suspend the reconciliation
  2686. of this source.
  2687. type: boolean
  2688. timeout:
  2689. default: 60s
  2690. description: The timeout of index downloading, defaults to 60s.
  2691. type: string
  2692. url:
  2693. description: The Helm repository URL, a valid URL contains at least
  2694. a protocol and host.
  2695. type: string
  2696. required:
  2697. - interval
  2698. - url
  2699. type: object
  2700. status:
  2701. default:
  2702. observedGeneration: -1
  2703. description: HelmRepositoryStatus defines the observed state of the HelmRepository.
  2704. properties:
  2705. artifact:
  2706. description: Artifact represents the output of the last successful
  2707. repository sync.
  2708. properties:
  2709. checksum:
  2710. description: Checksum is the SHA256 checksum of the artifact.
  2711. type: string
  2712. lastUpdateTime:
  2713. description: LastUpdateTime is the timestamp corresponding to
  2714. the last update of this artifact.
  2715. format: date-time
  2716. type: string
  2717. path:
  2718. description: Path is the relative file path of this artifact.
  2719. type: string
  2720. revision:
  2721. description: Revision is a human readable identifier traceable
  2722. in the origin source system. It can be a Git commit SHA, Git
  2723. tag, a Helm index timestamp, a Helm chart version, etc.
  2724. type: string
  2725. url:
  2726. description: URL is the HTTP address of this artifact.
  2727. type: string
  2728. required:
  2729. - path
  2730. - url
  2731. type: object
  2732. conditions:
  2733. description: Conditions holds the conditions for the HelmRepository.
  2734. items:
  2735. description: "Condition contains details for one aspect of the current
  2736. state of this API Resource. --- This struct is intended for direct
  2737. use as an array at the field path .status.conditions. For example,
  2738. \n type FooStatus struct{ // Represents the observations of a
  2739. foo's current state. // Known .status.conditions.type are: \"Available\",
  2740. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  2741. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  2742. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  2743. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  2744. properties:
  2745. lastTransitionTime:
  2746. description: lastTransitionTime is the last time the condition
  2747. transitioned from one status to another. This should be when
  2748. the underlying condition changed. If that is not known, then
  2749. using the time when the API field changed is acceptable.
  2750. format: date-time
  2751. type: string
  2752. message:
  2753. description: message is a human readable message indicating
  2754. details about the transition. This may be an empty string.
  2755. maxLength: 32768
  2756. type: string
  2757. observedGeneration:
  2758. description: observedGeneration represents the .metadata.generation
  2759. that the condition was set based upon. For instance, if .metadata.generation
  2760. is currently 12, but the .status.conditions[x].observedGeneration
  2761. is 9, the condition is out of date with respect to the current
  2762. state of the instance.
  2763. format: int64
  2764. minimum: 0
  2765. type: integer
  2766. reason:
  2767. description: reason contains a programmatic identifier indicating
  2768. the reason for the condition's last transition. Producers
  2769. of specific condition types may define expected values and
  2770. meanings for this field, and whether the values are considered
  2771. a guaranteed API. The value should be a CamelCase string.
  2772. This field may not be empty.
  2773. maxLength: 1024
  2774. minLength: 1
  2775. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  2776. type: string
  2777. status:
  2778. description: status of the condition, one of True, False, Unknown.
  2779. enum:
  2780. - "True"
  2781. - "False"
  2782. - Unknown
  2783. type: string
  2784. type:
  2785. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  2786. --- Many .condition.type values are consistent across resources
  2787. like Available, but because arbitrary conditions can be useful
  2788. (see .node.status.conditions), the ability to deconflict is
  2789. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  2790. maxLength: 316
  2791. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  2792. type: string
  2793. required:
  2794. - lastTransitionTime
  2795. - message
  2796. - reason
  2797. - status
  2798. - type
  2799. type: object
  2800. type: array
  2801. lastHandledReconcileAt:
  2802. description: LastHandledReconcileAt holds the value of the most recent
  2803. reconcile request value, so a change of the annotation value can
  2804. be detected.
  2805. type: string
  2806. observedGeneration:
  2807. description: ObservedGeneration is the last observed generation.
  2808. format: int64
  2809. type: integer
  2810. url:
  2811. description: URL is the download link for the last index fetched.
  2812. type: string
  2813. type: object
  2814. type: object
  2815. served: true
  2816. storage: false
  2817. subresources:
  2818. status: {}
  2819. - additionalPrinterColumns:
  2820. - jsonPath: .spec.url
  2821. name: URL
  2822. type: string
  2823. - jsonPath: .metadata.creationTimestamp
  2824. name: Age
  2825. type: date
  2826. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2827. name: Ready
  2828. type: string
  2829. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  2830. name: Status
  2831. type: string
  2832. name: v1beta2
  2833. schema:
  2834. openAPIV3Schema:
  2835. description: HelmRepository is the Schema for the helmrepositories API.
  2836. properties:
  2837. apiVersion:
  2838. description: 'APIVersion defines the versioned schema of this representation
  2839. of an object. Servers should convert recognized schemas to the latest
  2840. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2841. type: string
  2842. kind:
  2843. description: 'Kind is a string value representing the REST resource this
  2844. object represents. Servers may infer this from the endpoint the client
  2845. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2846. type: string
  2847. metadata:
  2848. type: object
  2849. spec:
  2850. description: HelmRepositorySpec specifies the required configuration to
  2851. produce an Artifact for a Helm repository index YAML.
  2852. properties:
  2853. accessFrom:
  2854. description: 'AccessFrom specifies an Access Control List for allowing
  2855. cross-namespace references to this object. NOTE: Not implemented,
  2856. provisional as of https://github.com/fluxcd/flux2/pull/2092'
  2857. properties:
  2858. namespaceSelectors:
  2859. description: NamespaceSelectors is the list of namespace selectors
  2860. to which this ACL applies. Items in this list are evaluated
  2861. using a logical OR operation.
  2862. items:
  2863. description: NamespaceSelector selects the namespaces to which
  2864. this ACL applies. An empty map of MatchLabels matches all
  2865. namespaces in a cluster.
  2866. properties:
  2867. matchLabels:
  2868. additionalProperties:
  2869. type: string
  2870. description: MatchLabels is a map of {key,value} pairs.
  2871. A single {key,value} in the matchLabels map is equivalent
  2872. to an element of matchExpressions, whose key field is
  2873. "key", the operator is "In", and the values array contains
  2874. only "value". The requirements are ANDed.
  2875. type: object
  2876. type: object
  2877. type: array
  2878. required:
  2879. - namespaceSelectors
  2880. type: object
  2881. interval:
  2882. description: Interval at which to check the URL for updates.
  2883. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  2884. type: string
  2885. passCredentials:
  2886. description: PassCredentials allows the credentials from the SecretRef
  2887. to be passed on to a host that does not match the host as defined
  2888. in URL. This may be required if the host of the advertised chart
  2889. URLs in the index differ from the defined URL. Enabling this should
  2890. be done with caution, as it can potentially result in credentials
  2891. getting stolen in a MITM-attack.
  2892. type: boolean
  2893. provider:
  2894. default: generic
  2895. description: Provider used for authentication, can be 'aws', 'azure',
  2896. 'gcp' or 'generic'. This field is optional, and only taken into
  2897. account if the .spec.type field is set to 'oci'. When not specified,
  2898. defaults to 'generic'.
  2899. enum:
  2900. - generic
  2901. - aws
  2902. - azure
  2903. - gcp
  2904. type: string
  2905. secretRef:
  2906. description: SecretRef specifies the Secret containing authentication
  2907. credentials for the HelmRepository. For HTTP/S basic auth the secret
  2908. must contain 'username' and 'password' fields. For TLS the secret
  2909. must contain a 'certFile' and 'keyFile', and/or 'caFile' fields.
  2910. properties:
  2911. name:
  2912. description: Name of the referent.
  2913. type: string
  2914. required:
  2915. - name
  2916. type: object
  2917. suspend:
  2918. description: Suspend tells the controller to suspend the reconciliation
  2919. of this HelmRepository.
  2920. type: boolean
  2921. timeout:
  2922. default: 60s
  2923. description: Timeout is used for the index fetch operation for an
  2924. HTTPS helm repository, and for remote OCI Repository operations
  2925. like pulling for an OCI helm repository. Its default value is 60s.
  2926. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
  2927. type: string
  2928. type:
  2929. description: Type of the HelmRepository. When this field is set to "oci",
  2930. the URL field value must be prefixed with "oci://".
  2931. enum:
  2932. - default
  2933. - oci
  2934. type: string
  2935. url:
  2936. description: URL of the Helm repository, a valid URL contains at least
  2937. a protocol and host.
  2938. type: string
  2939. required:
  2940. - interval
  2941. - url
  2942. type: object
  2943. status:
  2944. default:
  2945. observedGeneration: -1
  2946. description: HelmRepositoryStatus records the observed state of the HelmRepository.
  2947. properties:
  2948. artifact:
  2949. description: Artifact represents the last successful HelmRepository
  2950. reconciliation.
  2951. properties:
  2952. digest:
  2953. description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
  2954. pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
  2955. type: string
  2956. lastUpdateTime:
  2957. description: LastUpdateTime is the timestamp corresponding to
  2958. the last update of the Artifact.
  2959. format: date-time
  2960. type: string
  2961. metadata:
  2962. additionalProperties:
  2963. type: string
  2964. description: Metadata holds upstream information such as OCI annotations.
  2965. type: object
  2966. path:
  2967. description: Path is the relative file path of the Artifact. It
  2968. can be used to locate the file in the root of the Artifact storage
  2969. on the local file system of the controller managing the Source.
  2970. type: string
  2971. revision:
  2972. description: Revision is a human-readable identifier traceable
  2973. in the origin source system. It can be a Git commit SHA, Git
  2974. tag, a Helm chart version, etc.
  2975. type: string
  2976. size:
  2977. description: Size is the number of bytes in the file.
  2978. format: int64
  2979. type: integer
  2980. url:
  2981. description: URL is the HTTP address of the Artifact as exposed
  2982. by the controller managing the Source. It can be used to retrieve
  2983. the Artifact for consumption, e.g. by another controller applying
  2984. the Artifact contents.
  2985. type: string
  2986. required:
  2987. - lastUpdateTime
  2988. - path
  2989. - revision
  2990. - url
  2991. type: object
  2992. conditions:
  2993. description: Conditions holds the conditions for the HelmRepository.
  2994. items:
  2995. description: "Condition contains details for one aspect of the current
  2996. state of this API Resource. --- This struct is intended for direct
  2997. use as an array at the field path .status.conditions. For example,
  2998. \n type FooStatus struct{ // Represents the observations of a
  2999. foo's current state. // Known .status.conditions.type are: \"Available\",
  3000. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  3001. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  3002. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  3003. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  3004. properties:
  3005. lastTransitionTime:
  3006. description: lastTransitionTime is the last time the condition
  3007. transitioned from one status to another. This should be when
  3008. the underlying condition changed. If that is not known, then
  3009. using the time when the API field changed is acceptable.
  3010. format: date-time
  3011. type: string
  3012. message:
  3013. description: message is a human readable message indicating
  3014. details about the transition. This may be an empty string.
  3015. maxLength: 32768
  3016. type: string
  3017. observedGeneration:
  3018. description: observedGeneration represents the .metadata.generation
  3019. that the condition was set based upon. For instance, if .metadata.generation
  3020. is currently 12, but the .status.conditions[x].observedGeneration
  3021. is 9, the condition is out of date with respect to the current
  3022. state of the instance.
  3023. format: int64
  3024. minimum: 0
  3025. type: integer
  3026. reason:
  3027. description: reason contains a programmatic identifier indicating
  3028. the reason for the condition's last transition. Producers
  3029. of specific condition types may define expected values and
  3030. meanings for this field, and whether the values are considered
  3031. a guaranteed API. The value should be a CamelCase string.
  3032. This field may not be empty.
  3033. maxLength: 1024
  3034. minLength: 1
  3035. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  3036. type: string
  3037. status:
  3038. description: status of the condition, one of True, False, Unknown.
  3039. enum:
  3040. - "True"
  3041. - "False"
  3042. - Unknown
  3043. type: string
  3044. type:
  3045. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  3046. --- Many .condition.type values are consistent across resources
  3047. like Available, but because arbitrary conditions can be useful
  3048. (see .node.status.conditions), the ability to deconflict is
  3049. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  3050. maxLength: 316
  3051. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  3052. type: string
  3053. required:
  3054. - lastTransitionTime
  3055. - message
  3056. - reason
  3057. - status
  3058. - type
  3059. type: object
  3060. type: array
  3061. lastHandledReconcileAt:
  3062. description: LastHandledReconcileAt holds the value of the most recent
  3063. reconcile request value, so a change of the annotation value can
  3064. be detected.
  3065. type: string
  3066. observedGeneration:
  3067. description: ObservedGeneration is the last observed generation of
  3068. the HelmRepository object.
  3069. format: int64
  3070. type: integer
  3071. url:
  3072. description: URL is the dynamic fetch link for the latest Artifact.
  3073. It is provided on a "best effort" basis, and using the precise HelmRepositoryStatus.Artifact
  3074. data is recommended.
  3075. type: string
  3076. type: object
  3077. type: object
  3078. served: true
  3079. storage: true
  3080. subresources:
  3081. status: {}
  3082. ---
  3083. apiVersion: apiextensions.k8s.io/v1
  3084. kind: CustomResourceDefinition
  3085. metadata:
  3086. annotations:
  3087. controller-gen.kubebuilder.io/version: v0.12.0
  3088. labels:
  3089. app.kubernetes.io/component: source-controller
  3090. app.kubernetes.io/instance: flux-system
  3091. app.kubernetes.io/part-of: flux
  3092. app.kubernetes.io/version: v2.0.1
  3093. name: ocirepositories.source.toolkit.fluxcd.io
  3094. spec:
  3095. group: source.toolkit.fluxcd.io
  3096. names:
  3097. kind: OCIRepository
  3098. listKind: OCIRepositoryList
  3099. plural: ocirepositories
  3100. shortNames:
  3101. - ocirepo
  3102. singular: ocirepository
  3103. scope: Namespaced
  3104. versions:
  3105. - additionalPrinterColumns:
  3106. - jsonPath: .spec.url
  3107. name: URL
  3108. type: string
  3109. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  3110. name: Ready
  3111. type: string
  3112. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  3113. name: Status
  3114. type: string
  3115. - jsonPath: .metadata.creationTimestamp
  3116. name: Age
  3117. type: date
  3118. name: v1beta2
  3119. schema:
  3120. openAPIV3Schema:
  3121. description: OCIRepository is the Schema for the ocirepositories API
  3122. properties:
  3123. apiVersion:
  3124. description: 'APIVersion defines the versioned schema of this representation
  3125. of an object. Servers should convert recognized schemas to the latest
  3126. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  3127. type: string
  3128. kind:
  3129. description: 'Kind is a string value representing the REST resource this
  3130. object represents. Servers may infer this from the endpoint the client
  3131. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  3132. type: string
  3133. metadata:
  3134. type: object
  3135. spec:
  3136. description: OCIRepositorySpec defines the desired state of OCIRepository
  3137. properties:
  3138. certSecretRef:
  3139. description: "CertSecretRef can be given the name of a secret containing
  3140. either or both of \n - a PEM-encoded client certificate (`certFile`)
  3141. and private key (`keyFile`); - a PEM-encoded CA certificate (`caFile`)
  3142. \n and whichever are supplied, will be used for connecting to the
  3143. registry. The client cert and key are useful if you are authenticating
  3144. with a certificate; the CA cert is useful if you are using a self-signed
  3145. server certificate."
  3146. properties:
  3147. name:
  3148. description: Name of the referent.
  3149. type: string
  3150. required:
  3151. - name
  3152. type: object
  3153. ignore:
  3154. description: Ignore overrides the set of excluded patterns in the
  3155. .sourceignore format (which is the same as .gitignore). If not provided,
  3156. a default will be used, consult the documentation for your version
  3157. to find out what those are.
  3158. type: string
  3159. insecure:
  3160. description: Insecure allows connecting to a non-TLS HTTP container
  3161. registry.
  3162. type: boolean
  3163. interval:
  3164. description: The interval at which to check for image updates.
  3165. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  3166. type: string
  3167. layerSelector:
  3168. description: LayerSelector specifies which layer should be extracted
  3169. from the OCI artifact. When not specified, the first layer found
  3170. in the artifact is selected.
  3171. properties:
  3172. mediaType:
  3173. description: MediaType specifies the OCI media type of the layer
  3174. which should be extracted from the OCI Artifact. The first layer
  3175. matching this type is selected.
  3176. type: string
  3177. operation:
  3178. description: Operation specifies how the selected layer should
  3179. be processed. By default, the layer compressed content is extracted
  3180. to storage. When the operation is set to 'copy', the layer compressed
  3181. content is persisted to storage as it is.
  3182. enum:
  3183. - extract
  3184. - copy
  3185. type: string
  3186. type: object
  3187. provider:
  3188. default: generic
  3189. description: The provider used for authentication, can be 'aws', 'azure',
  3190. 'gcp' or 'generic'. When not specified, defaults to 'generic'.
  3191. enum:
  3192. - generic
  3193. - aws
  3194. - azure
  3195. - gcp
  3196. type: string
  3197. ref:
  3198. description: The OCI reference to pull and monitor for changes, defaults
  3199. to the latest tag.
  3200. properties:
  3201. digest:
  3202. description: Digest is the image digest to pull, takes precedence
  3203. over SemVer. The value should be in the format 'sha256:<HASH>'.
  3204. type: string
  3205. semver:
  3206. description: SemVer is the range of tags to pull selecting the
  3207. latest within the range, takes precedence over Tag.
  3208. type: string
  3209. tag:
  3210. description: Tag is the image tag to pull, defaults to latest.
  3211. type: string
  3212. type: object
  3213. secretRef:
  3214. description: SecretRef contains the secret name containing the registry
  3215. login credentials to resolve image metadata. The secret must be
  3216. of type kubernetes.io/dockerconfigjson.
  3217. properties:
  3218. name:
  3219. description: Name of the referent.
  3220. type: string
  3221. required:
  3222. - name
  3223. type: object
  3224. serviceAccountName:
  3225. description: 'ServiceAccountName is the name of the Kubernetes ServiceAccount
  3226. used to authenticate the image pull if the service account has attached
  3227. pull secrets. For more information: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#add-imagepullsecrets-to-a-service-account'
  3228. type: string
  3229. suspend:
  3230. description: This flag tells the controller to suspend the reconciliation
  3231. of this source.
  3232. type: boolean
  3233. timeout:
  3234. default: 60s
  3235. description: The timeout for remote OCI Repository operations like
  3236. pulling, defaults to 60s.
  3237. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
  3238. type: string
  3239. url:
  3240. description: URL is a reference to an OCI artifact repository hosted
  3241. on a remote container registry.
  3242. pattern: ^oci://.*$
  3243. type: string
  3244. verify:
  3245. description: Verify contains the secret name containing the trusted
  3246. public keys used to verify the signature and specifies which provider
  3247. to use to check whether OCI image is authentic.
  3248. properties:
  3249. provider:
  3250. default: cosign
  3251. description: Provider specifies the technology used to sign the
  3252. OCI Artifact.
  3253. enum:
  3254. - cosign
  3255. type: string
  3256. secretRef:
  3257. description: SecretRef specifies the Kubernetes Secret containing
  3258. the trusted public keys.
  3259. properties:
  3260. name:
  3261. description: Name of the referent.
  3262. type: string
  3263. required:
  3264. - name
  3265. type: object
  3266. required:
  3267. - provider
  3268. type: object
  3269. required:
  3270. - interval
  3271. - url
  3272. type: object
  3273. status:
  3274. default:
  3275. observedGeneration: -1
  3276. description: OCIRepositoryStatus defines the observed state of OCIRepository
  3277. properties:
  3278. artifact:
  3279. description: Artifact represents the output of the last successful
  3280. OCI Repository sync.
  3281. properties:
  3282. digest:
  3283. description: Digest is the digest of the file in the form of '<algorithm>:<checksum>'.
  3284. pattern: ^[a-z0-9]+(?:[.+_-][a-z0-9]+)*:[a-zA-Z0-9=_-]+$
  3285. type: string
  3286. lastUpdateTime:
  3287. description: LastUpdateTime is the timestamp corresponding to
  3288. the last update of the Artifact.
  3289. format: date-time
  3290. type: string
  3291. metadata:
  3292. additionalProperties:
  3293. type: string
  3294. description: Metadata holds upstream information such as OCI annotations.
  3295. type: object
  3296. path:
  3297. description: Path is the relative file path of the Artifact. It
  3298. can be used to locate the file in the root of the Artifact storage
  3299. on the local file system of the controller managing the Source.
  3300. type: string
  3301. revision:
  3302. description: Revision is a human-readable identifier traceable
  3303. in the origin source system. It can be a Git commit SHA, Git
  3304. tag, a Helm chart version, etc.
  3305. type: string
  3306. size:
  3307. description: Size is the number of bytes in the file.
  3308. format: int64
  3309. type: integer
  3310. url:
  3311. description: URL is the HTTP address of the Artifact as exposed
  3312. by the controller managing the Source. It can be used to retrieve
  3313. the Artifact for consumption, e.g. by another controller applying
  3314. the Artifact contents.
  3315. type: string
  3316. required:
  3317. - lastUpdateTime
  3318. - path
  3319. - revision
  3320. - url
  3321. type: object
  3322. conditions:
  3323. description: Conditions holds the conditions for the OCIRepository.
  3324. items:
  3325. description: "Condition contains details for one aspect of the current
  3326. state of this API Resource. --- This struct is intended for direct
  3327. use as an array at the field path .status.conditions. For example,
  3328. \n type FooStatus struct{ // Represents the observations of a
  3329. foo's current state. // Known .status.conditions.type are: \"Available\",
  3330. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  3331. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  3332. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  3333. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  3334. properties:
  3335. lastTransitionTime:
  3336. description: lastTransitionTime is the last time the condition
  3337. transitioned from one status to another. This should be when
  3338. the underlying condition changed. If that is not known, then
  3339. using the time when the API field changed is acceptable.
  3340. format: date-time
  3341. type: string
  3342. message:
  3343. description: message is a human readable message indicating
  3344. details about the transition. This may be an empty string.
  3345. maxLength: 32768
  3346. type: string
  3347. observedGeneration:
  3348. description: observedGeneration represents the .metadata.generation
  3349. that the condition was set based upon. For instance, if .metadata.generation
  3350. is currently 12, but the .status.conditions[x].observedGeneration
  3351. is 9, the condition is out of date with respect to the current
  3352. state of the instance.
  3353. format: int64
  3354. minimum: 0
  3355. type: integer
  3356. reason:
  3357. description: reason contains a programmatic identifier indicating
  3358. the reason for the condition's last transition. Producers
  3359. of specific condition types may define expected values and
  3360. meanings for this field, and whether the values are considered
  3361. a guaranteed API. The value should be a CamelCase string.
  3362. This field may not be empty.
  3363. maxLength: 1024
  3364. minLength: 1
  3365. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  3366. type: string
  3367. status:
  3368. description: status of the condition, one of True, False, Unknown.
  3369. enum:
  3370. - "True"
  3371. - "False"
  3372. - Unknown
  3373. type: string
  3374. type:
  3375. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  3376. --- Many .condition.type values are consistent across resources
  3377. like Available, but because arbitrary conditions can be useful
  3378. (see .node.status.conditions), the ability to deconflict is
  3379. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  3380. maxLength: 316
  3381. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  3382. type: string
  3383. required:
  3384. - lastTransitionTime
  3385. - message
  3386. - reason
  3387. - status
  3388. - type
  3389. type: object
  3390. type: array
  3391. contentConfigChecksum:
  3392. description: "ContentConfigChecksum is a checksum of all the configurations
  3393. related to the content of the source artifact: - .spec.ignore -
  3394. .spec.layerSelector observed in .status.observedGeneration version
  3395. of the object. This can be used to determine if the content configuration
  3396. has changed and the artifact needs to be rebuilt. It has the format
  3397. of `<algo>:<checksum>`, for example: `sha256:<checksum>`. \n Deprecated:
  3398. Replaced with explicit fields for observed artifact content config
  3399. in the status."
  3400. type: string
  3401. lastHandledReconcileAt:
  3402. description: LastHandledReconcileAt holds the value of the most recent
  3403. reconcile request value, so a change of the annotation value can
  3404. be detected.
  3405. type: string
  3406. observedGeneration:
  3407. description: ObservedGeneration is the last observed generation.
  3408. format: int64
  3409. type: integer
  3410. observedIgnore:
  3411. description: ObservedIgnore is the observed exclusion patterns used
  3412. for constructing the source artifact.
  3413. type: string
  3414. observedLayerSelector:
  3415. description: ObservedLayerSelector is the observed layer selector
  3416. used for constructing the source artifact.
  3417. properties:
  3418. mediaType:
  3419. description: MediaType specifies the OCI media type of the layer
  3420. which should be extracted from the OCI Artifact. The first layer
  3421. matching this type is selected.
  3422. type: string
  3423. operation:
  3424. description: Operation specifies how the selected layer should
  3425. be processed. By default, the layer compressed content is extracted
  3426. to storage. When the operation is set to 'copy', the layer compressed
  3427. content is persisted to storage as it is.
  3428. enum:
  3429. - extract
  3430. - copy
  3431. type: string
  3432. type: object
  3433. url:
  3434. description: URL is the download link for the artifact output of the
  3435. last OCI Repository sync.
  3436. type: string
  3437. type: object
  3438. type: object
  3439. served: true
  3440. storage: true
  3441. subresources:
  3442. status: {}
  3443. ---
  3444. apiVersion: v1
  3445. kind: ServiceAccount
  3446. metadata:
  3447. labels:
  3448. app.kubernetes.io/component: source-controller
  3449. app.kubernetes.io/instance: flux-system
  3450. app.kubernetes.io/part-of: flux
  3451. app.kubernetes.io/version: v2.0.1
  3452. name: source-controller
  3453. namespace: flux-system
  3454. ---
  3455. apiVersion: v1
  3456. kind: Service
  3457. metadata:
  3458. labels:
  3459. app.kubernetes.io/component: source-controller
  3460. app.kubernetes.io/instance: flux-system
  3461. app.kubernetes.io/part-of: flux
  3462. app.kubernetes.io/version: v2.0.1
  3463. control-plane: controller
  3464. name: source-controller
  3465. namespace: flux-system
  3466. spec:
  3467. ports:
  3468. - name: http
  3469. port: 80
  3470. protocol: TCP
  3471. targetPort: http
  3472. selector:
  3473. app: source-controller
  3474. type: ClusterIP
  3475. ---
  3476. apiVersion: apps/v1
  3477. kind: Deployment
  3478. metadata:
  3479. labels:
  3480. app.kubernetes.io/component: source-controller
  3481. app.kubernetes.io/instance: flux-system
  3482. app.kubernetes.io/part-of: flux
  3483. app.kubernetes.io/version: v2.0.1
  3484. control-plane: controller
  3485. name: source-controller
  3486. namespace: flux-system
  3487. spec:
  3488. replicas: 1
  3489. selector:
  3490. matchLabels:
  3491. app: source-controller
  3492. strategy:
  3493. type: Recreate
  3494. template:
  3495. metadata:
  3496. annotations:
  3497. prometheus.io/port: "8080"
  3498. prometheus.io/scrape: "true"
  3499. labels:
  3500. app: source-controller
  3501. spec:
  3502. containers:
  3503. - args:
  3504. - --events-addr=http://notification-controller.flux-system.svc.cluster.local./
  3505. - --watch-all-namespaces=true
  3506. - --log-level=info
  3507. - --log-encoding=json
  3508. - --enable-leader-election
  3509. - --storage-path=/data
  3510. - --storage-adv-addr=source-controller.$(RUNTIME_NAMESPACE).svc.cluster.local.
  3511. env:
  3512. - name: RUNTIME_NAMESPACE
  3513. valueFrom:
  3514. fieldRef:
  3515. fieldPath: metadata.namespace
  3516. - name: TUF_ROOT
  3517. value: /tmp/.sigstore
  3518. image: ghcr.io/fluxcd/source-controller:v1.0.1
  3519. imagePullPolicy: IfNotPresent
  3520. livenessProbe:
  3521. httpGet:
  3522. path: /healthz
  3523. port: healthz
  3524. name: manager
  3525. ports:
  3526. - containerPort: 9090
  3527. name: http
  3528. protocol: TCP
  3529. - containerPort: 8080
  3530. name: http-prom
  3531. protocol: TCP
  3532. - containerPort: 9440
  3533. name: healthz
  3534. protocol: TCP
  3535. readinessProbe:
  3536. httpGet:
  3537. path: /
  3538. port: http
  3539. resources:
  3540. limits:
  3541. cpu: 1000m
  3542. memory: 1Gi
  3543. requests:
  3544. cpu: 50m
  3545. memory: 64Mi
  3546. securityContext:
  3547. allowPrivilegeEscalation: false
  3548. capabilities:
  3549. drop:
  3550. - ALL
  3551. readOnlyRootFilesystem: true
  3552. runAsNonRoot: true
  3553. seccompProfile:
  3554. type: RuntimeDefault
  3555. volumeMounts:
  3556. - mountPath: /data
  3557. name: data
  3558. - mountPath: /tmp
  3559. name: tmp
  3560. nodeSelector:
  3561. kubernetes.io/os: linux
  3562. priorityClassName: system-cluster-critical
  3563. securityContext:
  3564. fsGroup: 1337
  3565. serviceAccountName: source-controller
  3566. terminationGracePeriodSeconds: 10
  3567. volumes:
  3568. - emptyDir: {}
  3569. name: data
  3570. - emptyDir: {}
  3571. name: tmp
  3572. ---
  3573. apiVersion: apiextensions.k8s.io/v1
  3574. kind: CustomResourceDefinition
  3575. metadata:
  3576. annotations:
  3577. controller-gen.kubebuilder.io/version: v0.12.0
  3578. labels:
  3579. app.kubernetes.io/component: kustomize-controller
  3580. app.kubernetes.io/instance: flux-system
  3581. app.kubernetes.io/part-of: flux
  3582. app.kubernetes.io/version: v2.0.1
  3583. name: kustomizations.kustomize.toolkit.fluxcd.io
  3584. spec:
  3585. group: kustomize.toolkit.fluxcd.io
  3586. names:
  3587. kind: Kustomization
  3588. listKind: KustomizationList
  3589. plural: kustomizations
  3590. shortNames:
  3591. - ks
  3592. singular: kustomization
  3593. scope: Namespaced
  3594. versions:
  3595. - additionalPrinterColumns:
  3596. - jsonPath: .metadata.creationTimestamp
  3597. name: Age
  3598. type: date
  3599. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  3600. name: Ready
  3601. type: string
  3602. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  3603. name: Status
  3604. type: string
  3605. name: v1
  3606. schema:
  3607. openAPIV3Schema:
  3608. description: Kustomization is the Schema for the kustomizations API.
  3609. properties:
  3610. apiVersion:
  3611. description: 'APIVersion defines the versioned schema of this representation
  3612. of an object. Servers should convert recognized schemas to the latest
  3613. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  3614. type: string
  3615. kind:
  3616. description: 'Kind is a string value representing the REST resource this
  3617. object represents. Servers may infer this from the endpoint the client
  3618. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  3619. type: string
  3620. metadata:
  3621. type: object
  3622. spec:
  3623. description: KustomizationSpec defines the configuration to calculate
  3624. the desired state from a Source using Kustomize.
  3625. properties:
  3626. commonMetadata:
  3627. description: CommonMetadata specifies the common labels and annotations
  3628. that are applied to all resources. Any existing label or annotation
  3629. will be overridden if its key matches a common one.
  3630. properties:
  3631. annotations:
  3632. additionalProperties:
  3633. type: string
  3634. description: Annotations to be added to the object's metadata.
  3635. type: object
  3636. labels:
  3637. additionalProperties:
  3638. type: string
  3639. description: Labels to be added to the object's metadata.
  3640. type: object
  3641. type: object
  3642. components:
  3643. description: Components specifies relative paths to specifications
  3644. of other Components.
  3645. items:
  3646. type: string
  3647. type: array
  3648. decryption:
  3649. description: Decrypt Kubernetes secrets before applying them on the
  3650. cluster.
  3651. properties:
  3652. provider:
  3653. description: Provider is the name of the decryption engine.
  3654. enum:
  3655. - sops
  3656. type: string
  3657. secretRef:
  3658. description: The secret name containing the private OpenPGP keys
  3659. used for decryption.
  3660. properties:
  3661. name:
  3662. description: Name of the referent.
  3663. type: string
  3664. required:
  3665. - name
  3666. type: object
  3667. required:
  3668. - provider
  3669. type: object
  3670. dependsOn:
  3671. description: DependsOn may contain a meta.NamespacedObjectReference
  3672. slice with references to Kustomization resources that must be ready
  3673. before this Kustomization can be reconciled.
  3674. items:
  3675. description: NamespacedObjectReference contains enough information
  3676. to locate the referenced Kubernetes resource object in any namespace.
  3677. properties:
  3678. name:
  3679. description: Name of the referent.
  3680. type: string
  3681. namespace:
  3682. description: Namespace of the referent, when not specified it
  3683. acts as LocalObjectReference.
  3684. type: string
  3685. required:
  3686. - name
  3687. type: object
  3688. type: array
  3689. force:
  3690. default: false
  3691. description: Force instructs the controller to recreate resources
  3692. when patching fails due to an immutable field change.
  3693. type: boolean
  3694. healthChecks:
  3695. description: A list of resources to be included in the health assessment.
  3696. items:
  3697. description: NamespacedObjectKindReference contains enough information
  3698. to locate the typed referenced Kubernetes resource object in any
  3699. namespace.
  3700. properties:
  3701. apiVersion:
  3702. description: API version of the referent, if not specified the
  3703. Kubernetes preferred version will be used.
  3704. type: string
  3705. kind:
  3706. description: Kind of the referent.
  3707. type: string
  3708. name:
  3709. description: Name of the referent.
  3710. type: string
  3711. namespace:
  3712. description: Namespace of the referent, when not specified it
  3713. acts as LocalObjectReference.
  3714. type: string
  3715. required:
  3716. - kind
  3717. - name
  3718. type: object
  3719. type: array
  3720. images:
  3721. description: Images is a list of (image name, new name, new tag or
  3722. digest) for changing image names, tags or digests. This can also
  3723. be achieved with a patch, but this operator is simpler to specify.
  3724. items:
  3725. description: Image contains an image name, a new name, a new tag
  3726. or digest, which will replace the original name and tag.
  3727. properties:
  3728. digest:
  3729. description: Digest is the value used to replace the original
  3730. image tag. If digest is present NewTag value is ignored.
  3731. type: string
  3732. name:
  3733. description: Name is a tag-less image name.
  3734. type: string
  3735. newName:
  3736. description: NewName is the value used to replace the original
  3737. name.
  3738. type: string
  3739. newTag:
  3740. description: NewTag is the value used to replace the original
  3741. tag.
  3742. type: string
  3743. required:
  3744. - name
  3745. type: object
  3746. type: array
  3747. interval:
  3748. description: The interval at which to reconcile the Kustomization.
  3749. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  3750. type: string
  3751. kubeConfig:
  3752. description: The KubeConfig for reconciling the Kustomization on a
  3753. remote cluster. When used in combination with KustomizationSpec.ServiceAccountName,
  3754. forces the controller to act on behalf of that Service Account at
  3755. the target cluster. If the --default-service-account flag is set,
  3756. its value will be used as a controller level fallback for when KustomizationSpec.ServiceAccountName
  3757. is empty.
  3758. properties:
  3759. secretRef:
  3760. description: SecretRef holds the name of a secret that contains
  3761. a key with the kubeconfig file as the value. If no key is set,
  3762. the key will default to 'value'. It is recommended that the
  3763. kubeconfig is self-contained, and the secret is regularly updated
  3764. if credentials such as a cloud-access-token expire. Cloud specific
  3765. `cmd-path` auth helpers will not function without adding binaries
  3766. and credentials to the Pod that is responsible for reconciling
  3767. Kubernetes resources.
  3768. properties:
  3769. key:
  3770. description: Key in the Secret, when not specified an implementation-specific
  3771. default key is used.
  3772. type: string
  3773. name:
  3774. description: Name of the Secret.
  3775. type: string
  3776. required:
  3777. - name
  3778. type: object
  3779. required:
  3780. - secretRef
  3781. type: object
  3782. patches:
  3783. description: Strategic merge and JSON patches, defined as inline YAML
  3784. objects, capable of targeting objects based on kind, label and annotation
  3785. selectors.
  3786. items:
  3787. description: Patch contains an inline StrategicMerge or JSON6902
  3788. patch, and the target the patch should be applied to.
  3789. properties:
  3790. patch:
  3791. description: Patch contains an inline StrategicMerge patch or
  3792. an inline JSON6902 patch with an array of operation objects.
  3793. type: string
  3794. target:
  3795. description: Target points to the resources that the patch document
  3796. should be applied to.
  3797. properties:
  3798. annotationSelector:
  3799. description: AnnotationSelector is a string that follows
  3800. the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  3801. It matches with the resource annotations.
  3802. type: string
  3803. group:
  3804. description: Group is the API group to select resources
  3805. from. Together with Version and Kind it is capable of
  3806. unambiguously identifying and/or selecting resources.
  3807. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  3808. type: string
  3809. kind:
  3810. description: Kind of the API Group to select resources from.
  3811. Together with Group and Version it is capable of unambiguously
  3812. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  3813. type: string
  3814. labelSelector:
  3815. description: LabelSelector is a string that follows the
  3816. label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  3817. It matches with the resource labels.
  3818. type: string
  3819. name:
  3820. description: Name to match resources with.
  3821. type: string
  3822. namespace:
  3823. description: Namespace to select resources from.
  3824. type: string
  3825. version:
  3826. description: Version of the API Group to select resources
  3827. from. Together with Group and Kind it is capable of unambiguously
  3828. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  3829. type: string
  3830. type: object
  3831. required:
  3832. - patch
  3833. type: object
  3834. type: array
  3835. path:
  3836. description: Path to the directory containing the kustomization.yaml
  3837. file, or the set of plain YAMLs a kustomization.yaml should be generated
  3838. for. Defaults to 'None', which translates to the root path of the
  3839. SourceRef.
  3840. type: string
  3841. postBuild:
  3842. description: PostBuild describes which actions to perform on the YAML
  3843. manifest generated by building the kustomize overlay.
  3844. properties:
  3845. substitute:
  3846. additionalProperties:
  3847. type: string
  3848. description: Substitute holds a map of key/value pairs. The variables
  3849. defined in your YAML manifests that match any of the keys defined
  3850. in the map will be substituted with the set value. Includes
  3851. support for bash string replacement functions e.g. ${var:=default},
  3852. ${var:position} and ${var/substring/replacement}.
  3853. type: object
  3854. substituteFrom:
  3855. description: SubstituteFrom holds references to ConfigMaps and
  3856. Secrets containing the variables and their values to be substituted
  3857. in the YAML manifests. The ConfigMap and the Secret data keys
  3858. represent the var names, and they must match the vars declared
  3859. in the manifests for the substitution to happen.
  3860. items:
  3861. description: SubstituteReference contains a reference to a resource
  3862. containing the variables name and value.
  3863. properties:
  3864. kind:
  3865. description: Kind of the values referent, valid values are
  3866. ('Secret', 'ConfigMap').
  3867. enum:
  3868. - Secret
  3869. - ConfigMap
  3870. type: string
  3871. name:
  3872. description: Name of the values referent. Should reside
  3873. in the same namespace as the referring resource.
  3874. maxLength: 253
  3875. minLength: 1
  3876. type: string
  3877. optional:
  3878. default: false
  3879. description: Optional indicates whether the referenced resource
  3880. must exist, or whether to tolerate its absence. If true
  3881. and the referenced resource is absent, proceed as if the
  3882. resource was present but empty, without any variables
  3883. defined.
  3884. type: boolean
  3885. required:
  3886. - kind
  3887. - name
  3888. type: object
  3889. type: array
  3890. type: object
  3891. prune:
  3892. description: Prune enables garbage collection.
  3893. type: boolean
  3894. retryInterval:
  3895. description: The interval at which to retry a previously failed reconciliation.
  3896. When not specified, the controller uses the KustomizationSpec.Interval
  3897. value to retry failures.
  3898. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  3899. type: string
  3900. serviceAccountName:
  3901. description: The name of the Kubernetes service account to impersonate
  3902. when reconciling this Kustomization.
  3903. type: string
  3904. sourceRef:
  3905. description: Reference of the source where the kustomization file
  3906. is.
  3907. properties:
  3908. apiVersion:
  3909. description: API version of the referent.
  3910. type: string
  3911. kind:
  3912. description: Kind of the referent.
  3913. enum:
  3914. - OCIRepository
  3915. - GitRepository
  3916. - Bucket
  3917. type: string
  3918. name:
  3919. description: Name of the referent.
  3920. type: string
  3921. namespace:
  3922. description: Namespace of the referent, defaults to the namespace
  3923. of the Kubernetes resource object that contains the reference.
  3924. type: string
  3925. required:
  3926. - kind
  3927. - name
  3928. type: object
  3929. suspend:
  3930. description: This flag tells the controller to suspend subsequent
  3931. kustomize executions, it does not apply to already started executions.
  3932. Defaults to false.
  3933. type: boolean
  3934. targetNamespace:
  3935. description: TargetNamespace sets or overrides the namespace in the
  3936. kustomization.yaml file.
  3937. maxLength: 63
  3938. minLength: 1
  3939. type: string
  3940. timeout:
  3941. description: Timeout for validation, apply and health checking operations.
  3942. Defaults to 'Interval' duration.
  3943. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  3944. type: string
  3945. wait:
  3946. description: Wait instructs the controller to check the health of
  3947. all the reconciled resources. When enabled, the HealthChecks are
  3948. ignored. Defaults to false.
  3949. type: boolean
  3950. required:
  3951. - interval
  3952. - prune
  3953. - sourceRef
  3954. type: object
  3955. status:
  3956. default:
  3957. observedGeneration: -1
  3958. description: KustomizationStatus defines the observed state of a kustomization.
  3959. properties:
  3960. conditions:
  3961. items:
  3962. description: "Condition contains details for one aspect of the current
  3963. state of this API Resource. --- This struct is intended for direct
  3964. use as an array at the field path .status.conditions. For example,
  3965. \n type FooStatus struct{ // Represents the observations of a
  3966. foo's current state. // Known .status.conditions.type are: \"Available\",
  3967. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  3968. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  3969. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  3970. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  3971. properties:
  3972. lastTransitionTime:
  3973. description: lastTransitionTime is the last time the condition
  3974. transitioned from one status to another. This should be when
  3975. the underlying condition changed. If that is not known, then
  3976. using the time when the API field changed is acceptable.
  3977. format: date-time
  3978. type: string
  3979. message:
  3980. description: message is a human readable message indicating
  3981. details about the transition. This may be an empty string.
  3982. maxLength: 32768
  3983. type: string
  3984. observedGeneration:
  3985. description: observedGeneration represents the .metadata.generation
  3986. that the condition was set based upon. For instance, if .metadata.generation
  3987. is currently 12, but the .status.conditions[x].observedGeneration
  3988. is 9, the condition is out of date with respect to the current
  3989. state of the instance.
  3990. format: int64
  3991. minimum: 0
  3992. type: integer
  3993. reason:
  3994. description: reason contains a programmatic identifier indicating
  3995. the reason for the condition's last transition. Producers
  3996. of specific condition types may define expected values and
  3997. meanings for this field, and whether the values are considered
  3998. a guaranteed API. The value should be a CamelCase string.
  3999. This field may not be empty.
  4000. maxLength: 1024
  4001. minLength: 1
  4002. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  4003. type: string
  4004. status:
  4005. description: status of the condition, one of True, False, Unknown.
  4006. enum:
  4007. - "True"
  4008. - "False"
  4009. - Unknown
  4010. type: string
  4011. type:
  4012. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  4013. --- Many .condition.type values are consistent across resources
  4014. like Available, but because arbitrary conditions can be useful
  4015. (see .node.status.conditions), the ability to deconflict is
  4016. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  4017. maxLength: 316
  4018. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  4019. type: string
  4020. required:
  4021. - lastTransitionTime
  4022. - message
  4023. - reason
  4024. - status
  4025. - type
  4026. type: object
  4027. type: array
  4028. inventory:
  4029. description: Inventory contains the list of Kubernetes resource object
  4030. references that have been successfully applied.
  4031. properties:
  4032. entries:
  4033. description: Entries of Kubernetes resource object references.
  4034. items:
  4035. description: ResourceRef contains the information necessary
  4036. to locate a resource within a cluster.
  4037. properties:
  4038. id:
  4039. description: ID is the string representation of the Kubernetes
  4040. resource object's metadata, in the format '<namespace>_<name>_<group>_<kind>'.
  4041. type: string
  4042. v:
  4043. description: Version is the API version of the Kubernetes
  4044. resource object's kind.
  4045. type: string
  4046. required:
  4047. - id
  4048. - v
  4049. type: object
  4050. type: array
  4051. required:
  4052. - entries
  4053. type: object
  4054. lastAppliedRevision:
  4055. description: The last successfully applied revision. Equals the Revision
  4056. of the applied Artifact from the referenced Source.
  4057. type: string
  4058. lastAttemptedRevision:
  4059. description: LastAttemptedRevision is the revision of the last reconciliation
  4060. attempt.
  4061. type: string
  4062. lastHandledReconcileAt:
  4063. description: LastHandledReconcileAt holds the value of the most recent
  4064. reconcile request value, so a change of the annotation value can
  4065. be detected.
  4066. type: string
  4067. observedGeneration:
  4068. description: ObservedGeneration is the last reconciled generation.
  4069. format: int64
  4070. type: integer
  4071. type: object
  4072. type: object
  4073. served: true
  4074. storage: true
  4075. subresources:
  4076. status: {}
  4077. - additionalPrinterColumns:
  4078. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  4079. name: Ready
  4080. type: string
  4081. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  4082. name: Status
  4083. type: string
  4084. - jsonPath: .metadata.creationTimestamp
  4085. name: Age
  4086. type: date
  4087. deprecated: true
  4088. deprecationWarning: v1beta1 Kustomization is deprecated, upgrade to v1
  4089. name: v1beta1
  4090. schema:
  4091. openAPIV3Schema:
  4092. description: Kustomization is the Schema for the kustomizations API.
  4093. properties:
  4094. apiVersion:
  4095. description: 'APIVersion defines the versioned schema of this representation
  4096. of an object. Servers should convert recognized schemas to the latest
  4097. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  4098. type: string
  4099. kind:
  4100. description: 'Kind is a string value representing the REST resource this
  4101. object represents. Servers may infer this from the endpoint the client
  4102. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  4103. type: string
  4104. metadata:
  4105. type: object
  4106. spec:
  4107. description: KustomizationSpec defines the desired state of a kustomization.
  4108. properties:
  4109. decryption:
  4110. description: Decrypt Kubernetes secrets before applying them on the
  4111. cluster.
  4112. properties:
  4113. provider:
  4114. description: Provider is the name of the decryption engine.
  4115. enum:
  4116. - sops
  4117. type: string
  4118. secretRef:
  4119. description: The secret name containing the private OpenPGP keys
  4120. used for decryption.
  4121. properties:
  4122. name:
  4123. description: Name of the referent.
  4124. type: string
  4125. required:
  4126. - name
  4127. type: object
  4128. required:
  4129. - provider
  4130. type: object
  4131. dependsOn:
  4132. description: DependsOn may contain a meta.NamespacedObjectReference
  4133. slice with references to Kustomization resources that must be ready
  4134. before this Kustomization can be reconciled.
  4135. items:
  4136. description: NamespacedObjectReference contains enough information
  4137. to locate the referenced Kubernetes resource object in any namespace.
  4138. properties:
  4139. name:
  4140. description: Name of the referent.
  4141. type: string
  4142. namespace:
  4143. description: Namespace of the referent, when not specified it
  4144. acts as LocalObjectReference.
  4145. type: string
  4146. required:
  4147. - name
  4148. type: object
  4149. type: array
  4150. force:
  4151. default: false
  4152. description: Force instructs the controller to recreate resources
  4153. when patching fails due to an immutable field change.
  4154. type: boolean
  4155. healthChecks:
  4156. description: A list of resources to be included in the health assessment.
  4157. items:
  4158. description: NamespacedObjectKindReference contains enough information
  4159. to locate the typed referenced Kubernetes resource object in any
  4160. namespace.
  4161. properties:
  4162. apiVersion:
  4163. description: API version of the referent, if not specified the
  4164. Kubernetes preferred version will be used.
  4165. type: string
  4166. kind:
  4167. description: Kind of the referent.
  4168. type: string
  4169. name:
  4170. description: Name of the referent.
  4171. type: string
  4172. namespace:
  4173. description: Namespace of the referent, when not specified it
  4174. acts as LocalObjectReference.
  4175. type: string
  4176. required:
  4177. - kind
  4178. - name
  4179. type: object
  4180. type: array
  4181. images:
  4182. description: Images is a list of (image name, new name, new tag or
  4183. digest) for changing image names, tags or digests. This can also
  4184. be achieved with a patch, but this operator is simpler to specify.
  4185. items:
  4186. description: Image contains an image name, a new name, a new tag
  4187. or digest, which will replace the original name and tag.
  4188. properties:
  4189. digest:
  4190. description: Digest is the value used to replace the original
  4191. image tag. If digest is present NewTag value is ignored.
  4192. type: string
  4193. name:
  4194. description: Name is a tag-less image name.
  4195. type: string
  4196. newName:
  4197. description: NewName is the value used to replace the original
  4198. name.
  4199. type: string
  4200. newTag:
  4201. description: NewTag is the value used to replace the original
  4202. tag.
  4203. type: string
  4204. required:
  4205. - name
  4206. type: object
  4207. type: array
  4208. interval:
  4209. description: The interval at which to reconcile the Kustomization.
  4210. type: string
  4211. kubeConfig:
  4212. description: The KubeConfig for reconciling the Kustomization on a
  4213. remote cluster. When specified, KubeConfig takes precedence over
  4214. ServiceAccountName.
  4215. properties:
  4216. secretRef:
  4217. description: SecretRef holds the name to a secret that contains
  4218. a 'value' key with the kubeconfig file as the value. It must
  4219. be in the same namespace as the Kustomization. It is recommended
  4220. that the kubeconfig is self-contained, and the secret is regularly
  4221. updated if credentials such as a cloud-access-token expire.
  4222. Cloud specific `cmd-path` auth helpers will not function without
  4223. adding binaries and credentials to the Pod that is responsible
  4224. for reconciling the Kustomization.
  4225. properties:
  4226. name:
  4227. description: Name of the referent.
  4228. type: string
  4229. required:
  4230. - name
  4231. type: object
  4232. type: object
  4233. patches:
  4234. description: Strategic merge and JSON patches, defined as inline YAML
  4235. objects, capable of targeting objects based on kind, label and annotation
  4236. selectors.
  4237. items:
  4238. description: Patch contains an inline StrategicMerge or JSON6902
  4239. patch, and the target the patch should be applied to.
  4240. properties:
  4241. patch:
  4242. description: Patch contains an inline StrategicMerge patch or
  4243. an inline JSON6902 patch with an array of operation objects.
  4244. type: string
  4245. target:
  4246. description: Target points to the resources that the patch document
  4247. should be applied to.
  4248. properties:
  4249. annotationSelector:
  4250. description: AnnotationSelector is a string that follows
  4251. the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  4252. It matches with the resource annotations.
  4253. type: string
  4254. group:
  4255. description: Group is the API group to select resources
  4256. from. Together with Version and Kind it is capable of
  4257. unambiguously identifying and/or selecting resources.
  4258. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4259. type: string
  4260. kind:
  4261. description: Kind of the API Group to select resources from.
  4262. Together with Group and Version it is capable of unambiguously
  4263. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4264. type: string
  4265. labelSelector:
  4266. description: LabelSelector is a string that follows the
  4267. label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  4268. It matches with the resource labels.
  4269. type: string
  4270. name:
  4271. description: Name to match resources with.
  4272. type: string
  4273. namespace:
  4274. description: Namespace to select resources from.
  4275. type: string
  4276. version:
  4277. description: Version of the API Group to select resources
  4278. from. Together with Group and Kind it is capable of unambiguously
  4279. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4280. type: string
  4281. type: object
  4282. required:
  4283. - patch
  4284. type: object
  4285. type: array
  4286. patchesJson6902:
  4287. description: JSON 6902 patches, defined as inline YAML objects.
  4288. items:
  4289. description: JSON6902Patch contains a JSON6902 patch and the target
  4290. the patch should be applied to.
  4291. properties:
  4292. patch:
  4293. description: Patch contains the JSON6902 patch document with
  4294. an array of operation objects.
  4295. items:
  4296. description: JSON6902 is a JSON6902 operation object. https://datatracker.ietf.org/doc/html/rfc6902#section-4
  4297. properties:
  4298. from:
  4299. description: From contains a JSON-pointer value that references
  4300. a location within the target document where the operation
  4301. is performed. The meaning of the value depends on the
  4302. value of Op, and is NOT taken into account by all operations.
  4303. type: string
  4304. op:
  4305. description: Op indicates the operation to perform. Its
  4306. value MUST be one of "add", "remove", "replace", "move",
  4307. "copy", or "test". https://datatracker.ietf.org/doc/html/rfc6902#section-4
  4308. enum:
  4309. - test
  4310. - remove
  4311. - add
  4312. - replace
  4313. - move
  4314. - copy
  4315. type: string
  4316. path:
  4317. description: Path contains the JSON-pointer value that
  4318. references a location within the target document where
  4319. the operation is performed. The meaning of the value
  4320. depends on the value of Op.
  4321. type: string
  4322. value:
  4323. description: Value contains a valid JSON structure. The
  4324. meaning of the value depends on the value of Op, and
  4325. is NOT taken into account by all operations.
  4326. x-kubernetes-preserve-unknown-fields: true
  4327. required:
  4328. - op
  4329. - path
  4330. type: object
  4331. type: array
  4332. target:
  4333. description: Target points to the resources that the patch document
  4334. should be applied to.
  4335. properties:
  4336. annotationSelector:
  4337. description: AnnotationSelector is a string that follows
  4338. the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  4339. It matches with the resource annotations.
  4340. type: string
  4341. group:
  4342. description: Group is the API group to select resources
  4343. from. Together with Version and Kind it is capable of
  4344. unambiguously identifying and/or selecting resources.
  4345. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4346. type: string
  4347. kind:
  4348. description: Kind of the API Group to select resources from.
  4349. Together with Group and Version it is capable of unambiguously
  4350. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4351. type: string
  4352. labelSelector:
  4353. description: LabelSelector is a string that follows the
  4354. label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  4355. It matches with the resource labels.
  4356. type: string
  4357. name:
  4358. description: Name to match resources with.
  4359. type: string
  4360. namespace:
  4361. description: Namespace to select resources from.
  4362. type: string
  4363. version:
  4364. description: Version of the API Group to select resources
  4365. from. Together with Group and Kind it is capable of unambiguously
  4366. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4367. type: string
  4368. type: object
  4369. required:
  4370. - patch
  4371. - target
  4372. type: object
  4373. type: array
  4374. patchesStrategicMerge:
  4375. description: Strategic merge patches, defined as inline YAML objects.
  4376. items:
  4377. x-kubernetes-preserve-unknown-fields: true
  4378. type: array
  4379. path:
  4380. description: Path to the directory containing the kustomization.yaml
  4381. file, or the set of plain YAMLs a kustomization.yaml should be generated
  4382. for. Defaults to 'None', which translates to the root path of the
  4383. SourceRef.
  4384. type: string
  4385. postBuild:
  4386. description: PostBuild describes which actions to perform on the YAML
  4387. manifest generated by building the kustomize overlay.
  4388. properties:
  4389. substitute:
  4390. additionalProperties:
  4391. type: string
  4392. description: Substitute holds a map of key/value pairs. The variables
  4393. defined in your YAML manifests that match any of the keys defined
  4394. in the map will be substituted with the set value. Includes
  4395. support for bash string replacement functions e.g. ${var:=default},
  4396. ${var:position} and ${var/substring/replacement}.
  4397. type: object
  4398. substituteFrom:
  4399. description: SubstituteFrom holds references to ConfigMaps and
  4400. Secrets containing the variables and their values to be substituted
  4401. in the YAML manifests. The ConfigMap and the Secret data keys
  4402. represent the var names and they must match the vars declared
  4403. in the manifests for the substitution to happen.
  4404. items:
  4405. description: SubstituteReference contains a reference to a resource
  4406. containing the variables name and value.
  4407. properties:
  4408. kind:
  4409. description: Kind of the values referent, valid values are
  4410. ('Secret', 'ConfigMap').
  4411. enum:
  4412. - Secret
  4413. - ConfigMap
  4414. type: string
  4415. name:
  4416. description: Name of the values referent. Should reside
  4417. in the same namespace as the referring resource.
  4418. maxLength: 253
  4419. minLength: 1
  4420. type: string
  4421. required:
  4422. - kind
  4423. - name
  4424. type: object
  4425. type: array
  4426. type: object
  4427. prune:
  4428. description: Prune enables garbage collection.
  4429. type: boolean
  4430. retryInterval:
  4431. description: The interval at which to retry a previously failed reconciliation.
  4432. When not specified, the controller uses the KustomizationSpec.Interval
  4433. value to retry failures.
  4434. type: string
  4435. serviceAccountName:
  4436. description: The name of the Kubernetes service account to impersonate
  4437. when reconciling this Kustomization.
  4438. type: string
  4439. sourceRef:
  4440. description: Reference of the source where the kustomization file
  4441. is.
  4442. properties:
  4443. apiVersion:
  4444. description: API version of the referent
  4445. type: string
  4446. kind:
  4447. description: Kind of the referent
  4448. enum:
  4449. - GitRepository
  4450. - Bucket
  4451. type: string
  4452. name:
  4453. description: Name of the referent
  4454. type: string
  4455. namespace:
  4456. description: Namespace of the referent, defaults to the Kustomization
  4457. namespace
  4458. type: string
  4459. required:
  4460. - kind
  4461. - name
  4462. type: object
  4463. suspend:
  4464. description: This flag tells the controller to suspend subsequent
  4465. kustomize executions, it does not apply to already started executions.
  4466. Defaults to false.
  4467. type: boolean
  4468. targetNamespace:
  4469. description: TargetNamespace sets or overrides the namespace in the
  4470. kustomization.yaml file.
  4471. maxLength: 63
  4472. minLength: 1
  4473. type: string
  4474. timeout:
  4475. description: Timeout for validation, apply and health checking operations.
  4476. Defaults to 'Interval' duration.
  4477. type: string
  4478. validation:
  4479. description: Validate the Kubernetes objects before applying them
  4480. on the cluster. The validation strategy can be 'client' (local dry-run),
  4481. 'server' (APIServer dry-run) or 'none'. When 'Force' is 'true',
  4482. validation will fallback to 'client' if set to 'server' because
  4483. server-side validation is not supported in this scenario.
  4484. enum:
  4485. - none
  4486. - client
  4487. - server
  4488. type: string
  4489. required:
  4490. - interval
  4491. - prune
  4492. - sourceRef
  4493. type: object
  4494. status:
  4495. default:
  4496. observedGeneration: -1
  4497. description: KustomizationStatus defines the observed state of a kustomization.
  4498. properties:
  4499. conditions:
  4500. items:
  4501. description: "Condition contains details for one aspect of the current
  4502. state of this API Resource. --- This struct is intended for direct
  4503. use as an array at the field path .status.conditions. For example,
  4504. \n type FooStatus struct{ // Represents the observations of a
  4505. foo's current state. // Known .status.conditions.type are: \"Available\",
  4506. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  4507. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  4508. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  4509. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  4510. properties:
  4511. lastTransitionTime:
  4512. description: lastTransitionTime is the last time the condition
  4513. transitioned from one status to another. This should be when
  4514. the underlying condition changed. If that is not known, then
  4515. using the time when the API field changed is acceptable.
  4516. format: date-time
  4517. type: string
  4518. message:
  4519. description: message is a human readable message indicating
  4520. details about the transition. This may be an empty string.
  4521. maxLength: 32768
  4522. type: string
  4523. observedGeneration:
  4524. description: observedGeneration represents the .metadata.generation
  4525. that the condition was set based upon. For instance, if .metadata.generation
  4526. is currently 12, but the .status.conditions[x].observedGeneration
  4527. is 9, the condition is out of date with respect to the current
  4528. state of the instance.
  4529. format: int64
  4530. minimum: 0
  4531. type: integer
  4532. reason:
  4533. description: reason contains a programmatic identifier indicating
  4534. the reason for the condition's last transition. Producers
  4535. of specific condition types may define expected values and
  4536. meanings for this field, and whether the values are considered
  4537. a guaranteed API. The value should be a CamelCase string.
  4538. This field may not be empty.
  4539. maxLength: 1024
  4540. minLength: 1
  4541. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  4542. type: string
  4543. status:
  4544. description: status of the condition, one of True, False, Unknown.
  4545. enum:
  4546. - "True"
  4547. - "False"
  4548. - Unknown
  4549. type: string
  4550. type:
  4551. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  4552. --- Many .condition.type values are consistent across resources
  4553. like Available, but because arbitrary conditions can be useful
  4554. (see .node.status.conditions), the ability to deconflict is
  4555. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  4556. maxLength: 316
  4557. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  4558. type: string
  4559. required:
  4560. - lastTransitionTime
  4561. - message
  4562. - reason
  4563. - status
  4564. - type
  4565. type: object
  4566. type: array
  4567. lastAppliedRevision:
  4568. description: The last successfully applied revision. The revision
  4569. format for Git sources is <branch|tag>/<commit-sha>.
  4570. type: string
  4571. lastAttemptedRevision:
  4572. description: LastAttemptedRevision is the revision of the last reconciliation
  4573. attempt.
  4574. type: string
  4575. lastHandledReconcileAt:
  4576. description: LastHandledReconcileAt holds the value of the most recent
  4577. reconcile request value, so a change of the annotation value can
  4578. be detected.
  4579. type: string
  4580. observedGeneration:
  4581. description: ObservedGeneration is the last reconciled generation.
  4582. format: int64
  4583. type: integer
  4584. snapshot:
  4585. description: The last successfully applied revision metadata.
  4586. properties:
  4587. checksum:
  4588. description: The manifests sha1 checksum.
  4589. type: string
  4590. entries:
  4591. description: A list of Kubernetes kinds grouped by namespace.
  4592. items:
  4593. description: Snapshot holds the metadata of namespaced Kubernetes
  4594. objects
  4595. properties:
  4596. kinds:
  4597. additionalProperties:
  4598. type: string
  4599. description: The list of Kubernetes kinds.
  4600. type: object
  4601. namespace:
  4602. description: The namespace of this entry.
  4603. type: string
  4604. required:
  4605. - kinds
  4606. type: object
  4607. type: array
  4608. required:
  4609. - checksum
  4610. - entries
  4611. type: object
  4612. type: object
  4613. type: object
  4614. served: true
  4615. storage: false
  4616. subresources:
  4617. status: {}
  4618. - additionalPrinterColumns:
  4619. - jsonPath: .metadata.creationTimestamp
  4620. name: Age
  4621. type: date
  4622. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  4623. name: Ready
  4624. type: string
  4625. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  4626. name: Status
  4627. type: string
  4628. deprecated: true
  4629. deprecationWarning: v1beta2 Kustomization is deprecated, upgrade to v1
  4630. name: v1beta2
  4631. schema:
  4632. openAPIV3Schema:
  4633. description: Kustomization is the Schema for the kustomizations API.
  4634. properties:
  4635. apiVersion:
  4636. description: 'APIVersion defines the versioned schema of this representation
  4637. of an object. Servers should convert recognized schemas to the latest
  4638. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  4639. type: string
  4640. kind:
  4641. description: 'Kind is a string value representing the REST resource this
  4642. object represents. Servers may infer this from the endpoint the client
  4643. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  4644. type: string
  4645. metadata:
  4646. type: object
  4647. spec:
  4648. description: KustomizationSpec defines the configuration to calculate
  4649. the desired state from a Source using Kustomize.
  4650. properties:
  4651. commonMetadata:
  4652. description: CommonMetadata specifies the common labels and annotations
  4653. that are applied to all resources. Any existing label or annotation
  4654. will be overridden if its key matches a common one.
  4655. properties:
  4656. annotations:
  4657. additionalProperties:
  4658. type: string
  4659. description: Annotations to be added to the object's metadata.
  4660. type: object
  4661. labels:
  4662. additionalProperties:
  4663. type: string
  4664. description: Labels to be added to the object's metadata.
  4665. type: object
  4666. type: object
  4667. components:
  4668. description: Components specifies relative paths to specifications
  4669. of other Components.
  4670. items:
  4671. type: string
  4672. type: array
  4673. decryption:
  4674. description: Decrypt Kubernetes secrets before applying them on the
  4675. cluster.
  4676. properties:
  4677. provider:
  4678. description: Provider is the name of the decryption engine.
  4679. enum:
  4680. - sops
  4681. type: string
  4682. secretRef:
  4683. description: The secret name containing the private OpenPGP keys
  4684. used for decryption.
  4685. properties:
  4686. name:
  4687. description: Name of the referent.
  4688. type: string
  4689. required:
  4690. - name
  4691. type: object
  4692. required:
  4693. - provider
  4694. type: object
  4695. dependsOn:
  4696. description: DependsOn may contain a meta.NamespacedObjectReference
  4697. slice with references to Kustomization resources that must be ready
  4698. before this Kustomization can be reconciled.
  4699. items:
  4700. description: NamespacedObjectReference contains enough information
  4701. to locate the referenced Kubernetes resource object in any namespace.
  4702. properties:
  4703. name:
  4704. description: Name of the referent.
  4705. type: string
  4706. namespace:
  4707. description: Namespace of the referent, when not specified it
  4708. acts as LocalObjectReference.
  4709. type: string
  4710. required:
  4711. - name
  4712. type: object
  4713. type: array
  4714. force:
  4715. default: false
  4716. description: Force instructs the controller to recreate resources
  4717. when patching fails due to an immutable field change.
  4718. type: boolean
  4719. healthChecks:
  4720. description: A list of resources to be included in the health assessment.
  4721. items:
  4722. description: NamespacedObjectKindReference contains enough information
  4723. to locate the typed referenced Kubernetes resource object in any
  4724. namespace.
  4725. properties:
  4726. apiVersion:
  4727. description: API version of the referent, if not specified the
  4728. Kubernetes preferred version will be used.
  4729. type: string
  4730. kind:
  4731. description: Kind of the referent.
  4732. type: string
  4733. name:
  4734. description: Name of the referent.
  4735. type: string
  4736. namespace:
  4737. description: Namespace of the referent, when not specified it
  4738. acts as LocalObjectReference.
  4739. type: string
  4740. required:
  4741. - kind
  4742. - name
  4743. type: object
  4744. type: array
  4745. images:
  4746. description: Images is a list of (image name, new name, new tag or
  4747. digest) for changing image names, tags or digests. This can also
  4748. be achieved with a patch, but this operator is simpler to specify.
  4749. items:
  4750. description: Image contains an image name, a new name, a new tag
  4751. or digest, which will replace the original name and tag.
  4752. properties:
  4753. digest:
  4754. description: Digest is the value used to replace the original
  4755. image tag. If digest is present NewTag value is ignored.
  4756. type: string
  4757. name:
  4758. description: Name is a tag-less image name.
  4759. type: string
  4760. newName:
  4761. description: NewName is the value used to replace the original
  4762. name.
  4763. type: string
  4764. newTag:
  4765. description: NewTag is the value used to replace the original
  4766. tag.
  4767. type: string
  4768. required:
  4769. - name
  4770. type: object
  4771. type: array
  4772. interval:
  4773. description: The interval at which to reconcile the Kustomization.
  4774. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  4775. type: string
  4776. kubeConfig:
  4777. description: The KubeConfig for reconciling the Kustomization on a
  4778. remote cluster. When used in combination with KustomizationSpec.ServiceAccountName,
  4779. forces the controller to act on behalf of that Service Account at
  4780. the target cluster. If the --default-service-account flag is set,
  4781. its value will be used as a controller level fallback for when KustomizationSpec.ServiceAccountName
  4782. is empty.
  4783. properties:
  4784. secretRef:
  4785. description: SecretRef holds the name of a secret that contains
  4786. a key with the kubeconfig file as the value. If no key is set,
  4787. the key will default to 'value'. It is recommended that the
  4788. kubeconfig is self-contained, and the secret is regularly updated
  4789. if credentials such as a cloud-access-token expire. Cloud specific
  4790. `cmd-path` auth helpers will not function without adding binaries
  4791. and credentials to the Pod that is responsible for reconciling
  4792. Kubernetes resources.
  4793. properties:
  4794. key:
  4795. description: Key in the Secret, when not specified an implementation-specific
  4796. default key is used.
  4797. type: string
  4798. name:
  4799. description: Name of the Secret.
  4800. type: string
  4801. required:
  4802. - name
  4803. type: object
  4804. required:
  4805. - secretRef
  4806. type: object
  4807. patches:
  4808. description: Strategic merge and JSON patches, defined as inline YAML
  4809. objects, capable of targeting objects based on kind, label and annotation
  4810. selectors.
  4811. items:
  4812. description: Patch contains an inline StrategicMerge or JSON6902
  4813. patch, and the target the patch should be applied to.
  4814. properties:
  4815. patch:
  4816. description: Patch contains an inline StrategicMerge patch or
  4817. an inline JSON6902 patch with an array of operation objects.
  4818. type: string
  4819. target:
  4820. description: Target points to the resources that the patch document
  4821. should be applied to.
  4822. properties:
  4823. annotationSelector:
  4824. description: AnnotationSelector is a string that follows
  4825. the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  4826. It matches with the resource annotations.
  4827. type: string
  4828. group:
  4829. description: Group is the API group to select resources
  4830. from. Together with Version and Kind it is capable of
  4831. unambiguously identifying and/or selecting resources.
  4832. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4833. type: string
  4834. kind:
  4835. description: Kind of the API Group to select resources from.
  4836. Together with Group and Version it is capable of unambiguously
  4837. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4838. type: string
  4839. labelSelector:
  4840. description: LabelSelector is a string that follows the
  4841. label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  4842. It matches with the resource labels.
  4843. type: string
  4844. name:
  4845. description: Name to match resources with.
  4846. type: string
  4847. namespace:
  4848. description: Namespace to select resources from.
  4849. type: string
  4850. version:
  4851. description: Version of the API Group to select resources
  4852. from. Together with Group and Kind it is capable of unambiguously
  4853. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4854. type: string
  4855. type: object
  4856. required:
  4857. - patch
  4858. type: object
  4859. type: array
  4860. patchesJson6902:
  4861. description: 'JSON 6902 patches, defined as inline YAML objects. Deprecated:
  4862. Use Patches instead.'
  4863. items:
  4864. description: JSON6902Patch contains a JSON6902 patch and the target
  4865. the patch should be applied to.
  4866. properties:
  4867. patch:
  4868. description: Patch contains the JSON6902 patch document with
  4869. an array of operation objects.
  4870. items:
  4871. description: JSON6902 is a JSON6902 operation object. https://datatracker.ietf.org/doc/html/rfc6902#section-4
  4872. properties:
  4873. from:
  4874. description: From contains a JSON-pointer value that references
  4875. a location within the target document where the operation
  4876. is performed. The meaning of the value depends on the
  4877. value of Op, and is NOT taken into account by all operations.
  4878. type: string
  4879. op:
  4880. description: Op indicates the operation to perform. Its
  4881. value MUST be one of "add", "remove", "replace", "move",
  4882. "copy", or "test". https://datatracker.ietf.org/doc/html/rfc6902#section-4
  4883. enum:
  4884. - test
  4885. - remove
  4886. - add
  4887. - replace
  4888. - move
  4889. - copy
  4890. type: string
  4891. path:
  4892. description: Path contains the JSON-pointer value that
  4893. references a location within the target document where
  4894. the operation is performed. The meaning of the value
  4895. depends on the value of Op.
  4896. type: string
  4897. value:
  4898. description: Value contains a valid JSON structure. The
  4899. meaning of the value depends on the value of Op, and
  4900. is NOT taken into account by all operations.
  4901. x-kubernetes-preserve-unknown-fields: true
  4902. required:
  4903. - op
  4904. - path
  4905. type: object
  4906. type: array
  4907. target:
  4908. description: Target points to the resources that the patch document
  4909. should be applied to.
  4910. properties:
  4911. annotationSelector:
  4912. description: AnnotationSelector is a string that follows
  4913. the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  4914. It matches with the resource annotations.
  4915. type: string
  4916. group:
  4917. description: Group is the API group to select resources
  4918. from. Together with Version and Kind it is capable of
  4919. unambiguously identifying and/or selecting resources.
  4920. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4921. type: string
  4922. kind:
  4923. description: Kind of the API Group to select resources from.
  4924. Together with Group and Version it is capable of unambiguously
  4925. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4926. type: string
  4927. labelSelector:
  4928. description: LabelSelector is a string that follows the
  4929. label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  4930. It matches with the resource labels.
  4931. type: string
  4932. name:
  4933. description: Name to match resources with.
  4934. type: string
  4935. namespace:
  4936. description: Namespace to select resources from.
  4937. type: string
  4938. version:
  4939. description: Version of the API Group to select resources
  4940. from. Together with Group and Kind it is capable of unambiguously
  4941. identifying and/or selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  4942. type: string
  4943. type: object
  4944. required:
  4945. - patch
  4946. - target
  4947. type: object
  4948. type: array
  4949. patchesStrategicMerge:
  4950. description: 'Strategic merge patches, defined as inline YAML objects.
  4951. Deprecated: Use Patches instead.'
  4952. items:
  4953. x-kubernetes-preserve-unknown-fields: true
  4954. type: array
  4955. path:
  4956. description: Path to the directory containing the kustomization.yaml
  4957. file, or the set of plain YAMLs a kustomization.yaml should be generated
  4958. for. Defaults to 'None', which translates to the root path of the
  4959. SourceRef.
  4960. type: string
  4961. postBuild:
  4962. description: PostBuild describes which actions to perform on the YAML
  4963. manifest generated by building the kustomize overlay.
  4964. properties:
  4965. substitute:
  4966. additionalProperties:
  4967. type: string
  4968. description: Substitute holds a map of key/value pairs. The variables
  4969. defined in your YAML manifests that match any of the keys defined
  4970. in the map will be substituted with the set value. Includes
  4971. support for bash string replacement functions e.g. ${var:=default},
  4972. ${var:position} and ${var/substring/replacement}.
  4973. type: object
  4974. substituteFrom:
  4975. description: SubstituteFrom holds references to ConfigMaps and
  4976. Secrets containing the variables and their values to be substituted
  4977. in the YAML manifests. The ConfigMap and the Secret data keys
  4978. represent the var names and they must match the vars declared
  4979. in the manifests for the substitution to happen.
  4980. items:
  4981. description: SubstituteReference contains a reference to a resource
  4982. containing the variables name and value.
  4983. properties:
  4984. kind:
  4985. description: Kind of the values referent, valid values are
  4986. ('Secret', 'ConfigMap').
  4987. enum:
  4988. - Secret
  4989. - ConfigMap
  4990. type: string
  4991. name:
  4992. description: Name of the values referent. Should reside
  4993. in the same namespace as the referring resource.
  4994. maxLength: 253
  4995. minLength: 1
  4996. type: string
  4997. optional:
  4998. default: false
  4999. description: Optional indicates whether the referenced resource
  5000. must exist, or whether to tolerate its absence. If true
  5001. and the referenced resource is absent, proceed as if the
  5002. resource was present but empty, without any variables
  5003. defined.
  5004. type: boolean
  5005. required:
  5006. - kind
  5007. - name
  5008. type: object
  5009. type: array
  5010. type: object
  5011. prune:
  5012. description: Prune enables garbage collection.
  5013. type: boolean
  5014. retryInterval:
  5015. description: The interval at which to retry a previously failed reconciliation.
  5016. When not specified, the controller uses the KustomizationSpec.Interval
  5017. value to retry failures.
  5018. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  5019. type: string
  5020. serviceAccountName:
  5021. description: The name of the Kubernetes service account to impersonate
  5022. when reconciling this Kustomization.
  5023. type: string
  5024. sourceRef:
  5025. description: Reference of the source where the kustomization file
  5026. is.
  5027. properties:
  5028. apiVersion:
  5029. description: API version of the referent.
  5030. type: string
  5031. kind:
  5032. description: Kind of the referent.
  5033. enum:
  5034. - OCIRepository
  5035. - GitRepository
  5036. - Bucket
  5037. type: string
  5038. name:
  5039. description: Name of the referent.
  5040. type: string
  5041. namespace:
  5042. description: Namespace of the referent, defaults to the namespace
  5043. of the Kubernetes resource object that contains the reference.
  5044. type: string
  5045. required:
  5046. - kind
  5047. - name
  5048. type: object
  5049. suspend:
  5050. description: This flag tells the controller to suspend subsequent
  5051. kustomize executions, it does not apply to already started executions.
  5052. Defaults to false.
  5053. type: boolean
  5054. targetNamespace:
  5055. description: TargetNamespace sets or overrides the namespace in the
  5056. kustomization.yaml file.
  5057. maxLength: 63
  5058. minLength: 1
  5059. type: string
  5060. timeout:
  5061. description: Timeout for validation, apply and health checking operations.
  5062. Defaults to 'Interval' duration.
  5063. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  5064. type: string
  5065. validation:
  5066. description: 'Deprecated: Not used in v1beta2.'
  5067. enum:
  5068. - none
  5069. - client
  5070. - server
  5071. type: string
  5072. wait:
  5073. description: Wait instructs the controller to check the health of
  5074. all the reconciled resources. When enabled, the HealthChecks are
  5075. ignored. Defaults to false.
  5076. type: boolean
  5077. required:
  5078. - interval
  5079. - prune
  5080. - sourceRef
  5081. type: object
  5082. status:
  5083. default:
  5084. observedGeneration: -1
  5085. description: KustomizationStatus defines the observed state of a kustomization.
  5086. properties:
  5087. conditions:
  5088. items:
  5089. description: "Condition contains details for one aspect of the current
  5090. state of this API Resource. --- This struct is intended for direct
  5091. use as an array at the field path .status.conditions. For example,
  5092. \n type FooStatus struct{ // Represents the observations of a
  5093. foo's current state. // Known .status.conditions.type are: \"Available\",
  5094. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  5095. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  5096. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  5097. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  5098. properties:
  5099. lastTransitionTime:
  5100. description: lastTransitionTime is the last time the condition
  5101. transitioned from one status to another. This should be when
  5102. the underlying condition changed. If that is not known, then
  5103. using the time when the API field changed is acceptable.
  5104. format: date-time
  5105. type: string
  5106. message:
  5107. description: message is a human readable message indicating
  5108. details about the transition. This may be an empty string.
  5109. maxLength: 32768
  5110. type: string
  5111. observedGeneration:
  5112. description: observedGeneration represents the .metadata.generation
  5113. that the condition was set based upon. For instance, if .metadata.generation
  5114. is currently 12, but the .status.conditions[x].observedGeneration
  5115. is 9, the condition is out of date with respect to the current
  5116. state of the instance.
  5117. format: int64
  5118. minimum: 0
  5119. type: integer
  5120. reason:
  5121. description: reason contains a programmatic identifier indicating
  5122. the reason for the condition's last transition. Producers
  5123. of specific condition types may define expected values and
  5124. meanings for this field, and whether the values are considered
  5125. a guaranteed API. The value should be a CamelCase string.
  5126. This field may not be empty.
  5127. maxLength: 1024
  5128. minLength: 1
  5129. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  5130. type: string
  5131. status:
  5132. description: status of the condition, one of True, False, Unknown.
  5133. enum:
  5134. - "True"
  5135. - "False"
  5136. - Unknown
  5137. type: string
  5138. type:
  5139. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  5140. --- Many .condition.type values are consistent across resources
  5141. like Available, but because arbitrary conditions can be useful
  5142. (see .node.status.conditions), the ability to deconflict is
  5143. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  5144. maxLength: 316
  5145. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  5146. type: string
  5147. required:
  5148. - lastTransitionTime
  5149. - message
  5150. - reason
  5151. - status
  5152. - type
  5153. type: object
  5154. type: array
  5155. inventory:
  5156. description: Inventory contains the list of Kubernetes resource object
  5157. references that have been successfully applied.
  5158. properties:
  5159. entries:
  5160. description: Entries of Kubernetes resource object references.
  5161. items:
  5162. description: ResourceRef contains the information necessary
  5163. to locate a resource within a cluster.
  5164. properties:
  5165. id:
  5166. description: ID is the string representation of the Kubernetes
  5167. resource object's metadata, in the format '<namespace>_<name>_<group>_<kind>'.
  5168. type: string
  5169. v:
  5170. description: Version is the API version of the Kubernetes
  5171. resource object's kind.
  5172. type: string
  5173. required:
  5174. - id
  5175. - v
  5176. type: object
  5177. type: array
  5178. required:
  5179. - entries
  5180. type: object
  5181. lastAppliedRevision:
  5182. description: The last successfully applied revision. Equals the Revision
  5183. of the applied Artifact from the referenced Source.
  5184. type: string
  5185. lastAttemptedRevision:
  5186. description: LastAttemptedRevision is the revision of the last reconciliation
  5187. attempt.
  5188. type: string
  5189. lastHandledReconcileAt:
  5190. description: LastHandledReconcileAt holds the value of the most recent
  5191. reconcile request value, so a change of the annotation value can
  5192. be detected.
  5193. type: string
  5194. observedGeneration:
  5195. description: ObservedGeneration is the last reconciled generation.
  5196. format: int64
  5197. type: integer
  5198. type: object
  5199. type: object
  5200. served: true
  5201. storage: false
  5202. subresources:
  5203. status: {}
  5204. ---
  5205. apiVersion: v1
  5206. kind: ServiceAccount
  5207. metadata:
  5208. labels:
  5209. app.kubernetes.io/component: kustomize-controller
  5210. app.kubernetes.io/instance: flux-system
  5211. app.kubernetes.io/part-of: flux
  5212. app.kubernetes.io/version: v2.0.1
  5213. name: kustomize-controller
  5214. namespace: flux-system
  5215. ---
  5216. apiVersion: apps/v1
  5217. kind: Deployment
  5218. metadata:
  5219. labels:
  5220. app.kubernetes.io/component: kustomize-controller
  5221. app.kubernetes.io/instance: flux-system
  5222. app.kubernetes.io/part-of: flux
  5223. app.kubernetes.io/version: v2.0.1
  5224. control-plane: controller
  5225. name: kustomize-controller
  5226. namespace: flux-system
  5227. spec:
  5228. replicas: 1
  5229. selector:
  5230. matchLabels:
  5231. app: kustomize-controller
  5232. template:
  5233. metadata:
  5234. annotations:
  5235. prometheus.io/port: "8080"
  5236. prometheus.io/scrape: "true"
  5237. labels:
  5238. app: kustomize-controller
  5239. spec:
  5240. containers:
  5241. - args:
  5242. - --events-addr=http://notification-controller.flux-system.svc.cluster.local./
  5243. - --watch-all-namespaces=true
  5244. - --log-level=info
  5245. - --log-encoding=json
  5246. - --enable-leader-election
  5247. env:
  5248. - name: RUNTIME_NAMESPACE
  5249. valueFrom:
  5250. fieldRef:
  5251. fieldPath: metadata.namespace
  5252. image: ghcr.io/fluxcd/kustomize-controller:v1.0.1
  5253. imagePullPolicy: IfNotPresent
  5254. livenessProbe:
  5255. httpGet:
  5256. path: /healthz
  5257. port: healthz
  5258. name: manager
  5259. ports:
  5260. - containerPort: 8080
  5261. name: http-prom
  5262. protocol: TCP
  5263. - containerPort: 9440
  5264. name: healthz
  5265. protocol: TCP
  5266. readinessProbe:
  5267. httpGet:
  5268. path: /readyz
  5269. port: healthz
  5270. resources:
  5271. limits:
  5272. cpu: 1000m
  5273. memory: 1Gi
  5274. requests:
  5275. cpu: 100m
  5276. memory: 64Mi
  5277. securityContext:
  5278. allowPrivilegeEscalation: false
  5279. capabilities:
  5280. drop:
  5281. - ALL
  5282. readOnlyRootFilesystem: true
  5283. runAsNonRoot: true
  5284. seccompProfile:
  5285. type: RuntimeDefault
  5286. volumeMounts:
  5287. - mountPath: /tmp
  5288. name: temp
  5289. nodeSelector:
  5290. kubernetes.io/os: linux
  5291. priorityClassName: system-cluster-critical
  5292. securityContext:
  5293. fsGroup: 1337
  5294. serviceAccountName: kustomize-controller
  5295. terminationGracePeriodSeconds: 60
  5296. volumes:
  5297. - emptyDir: {}
  5298. name: temp
  5299. ---
  5300. apiVersion: apiextensions.k8s.io/v1
  5301. kind: CustomResourceDefinition
  5302. metadata:
  5303. annotations:
  5304. controller-gen.kubebuilder.io/version: v0.12.0
  5305. labels:
  5306. app.kubernetes.io/component: helm-controller
  5307. app.kubernetes.io/instance: flux-system
  5308. app.kubernetes.io/part-of: flux
  5309. app.kubernetes.io/version: v2.0.1
  5310. name: helmreleases.helm.toolkit.fluxcd.io
  5311. spec:
  5312. group: helm.toolkit.fluxcd.io
  5313. names:
  5314. kind: HelmRelease
  5315. listKind: HelmReleaseList
  5316. plural: helmreleases
  5317. shortNames:
  5318. - hr
  5319. singular: helmrelease
  5320. scope: Namespaced
  5321. versions:
  5322. - additionalPrinterColumns:
  5323. - jsonPath: .metadata.creationTimestamp
  5324. name: Age
  5325. type: date
  5326. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  5327. name: Ready
  5328. type: string
  5329. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  5330. name: Status
  5331. type: string
  5332. name: v2beta1
  5333. schema:
  5334. openAPIV3Schema:
  5335. description: HelmRelease is the Schema for the helmreleases API
  5336. properties:
  5337. apiVersion:
  5338. description: 'APIVersion defines the versioned schema of this representation
  5339. of an object. Servers should convert recognized schemas to the latest
  5340. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  5341. type: string
  5342. kind:
  5343. description: 'Kind is a string value representing the REST resource this
  5344. object represents. Servers may infer this from the endpoint the client
  5345. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  5346. type: string
  5347. metadata:
  5348. type: object
  5349. spec:
  5350. description: HelmReleaseSpec defines the desired state of a Helm release.
  5351. properties:
  5352. chart:
  5353. description: Chart defines the template of the v1beta2.HelmChart that
  5354. should be created for this HelmRelease.
  5355. properties:
  5356. metadata:
  5357. description: ObjectMeta holds the template for metadata like labels
  5358. and annotations.
  5359. properties:
  5360. annotations:
  5361. additionalProperties:
  5362. type: string
  5363. description: 'Annotations is an unstructured key value map
  5364. stored with a resource that may be set by external tools
  5365. to store and retrieve arbitrary metadata. They are not queryable
  5366. and should be preserved when modifying objects. More info:
  5367. https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/'
  5368. type: object
  5369. labels:
  5370. additionalProperties:
  5371. type: string
  5372. description: 'Map of string keys and values that can be used
  5373. to organize and categorize (scope and select) objects. More
  5374. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/'
  5375. type: object
  5376. type: object
  5377. spec:
  5378. description: Spec holds the template for the v1beta2.HelmChartSpec
  5379. for this HelmRelease.
  5380. properties:
  5381. chart:
  5382. description: The name or path the Helm chart is available
  5383. at in the SourceRef.
  5384. type: string
  5385. interval:
  5386. description: Interval at which to check the v1beta2.Source
  5387. for updates. Defaults to 'HelmReleaseSpec.Interval'.
  5388. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  5389. type: string
  5390. reconcileStrategy:
  5391. default: ChartVersion
  5392. description: Determines what enables the creation of a new
  5393. artifact. Valid values are ('ChartVersion', 'Revision').
  5394. See the documentation of the values for an explanation on
  5395. their behavior. Defaults to ChartVersion when omitted.
  5396. enum:
  5397. - ChartVersion
  5398. - Revision
  5399. type: string
  5400. sourceRef:
  5401. description: The name and namespace of the v1beta2.Source
  5402. the chart is available at.
  5403. properties:
  5404. apiVersion:
  5405. description: APIVersion of the referent.
  5406. type: string
  5407. kind:
  5408. description: Kind of the referent.
  5409. enum:
  5410. - HelmRepository
  5411. - GitRepository
  5412. - Bucket
  5413. type: string
  5414. name:
  5415. description: Name of the referent.
  5416. maxLength: 253
  5417. minLength: 1
  5418. type: string
  5419. namespace:
  5420. description: Namespace of the referent.
  5421. maxLength: 63
  5422. minLength: 1
  5423. type: string
  5424. required:
  5425. - name
  5426. type: object
  5427. valuesFile:
  5428. description: Alternative values file to use as the default
  5429. chart values, expected to be a relative path in the SourceRef.
  5430. Deprecated in favor of ValuesFiles, for backwards compatibility
  5431. the file defined here is merged before the ValuesFiles items.
  5432. Ignored when omitted.
  5433. type: string
  5434. valuesFiles:
  5435. description: Alternative list of values files to use as the
  5436. chart values (values.yaml is not included by default), expected
  5437. to be a relative path in the SourceRef. Values files are
  5438. merged in the order of this list with the last file overriding
  5439. the first. Ignored when omitted.
  5440. items:
  5441. type: string
  5442. type: array
  5443. verify:
  5444. description: Verify contains the secret name containing the
  5445. trusted public keys used to verify the signature and specifies
  5446. which provider to use to check whether OCI image is authentic.
  5447. This field is only supported for OCI sources. Chart dependencies,
  5448. which are not bundled in the umbrella chart artifact, are
  5449. not verified.
  5450. properties:
  5451. provider:
  5452. default: cosign
  5453. description: Provider specifies the technology used to
  5454. sign the OCI Helm chart.
  5455. enum:
  5456. - cosign
  5457. type: string
  5458. secretRef:
  5459. description: SecretRef specifies the Kubernetes Secret
  5460. containing the trusted public keys.
  5461. properties:
  5462. name:
  5463. description: Name of the referent.
  5464. type: string
  5465. required:
  5466. - name
  5467. type: object
  5468. required:
  5469. - provider
  5470. type: object
  5471. version:
  5472. default: '*'
  5473. description: Version semver expression, ignored for charts
  5474. from v1beta2.GitRepository and v1beta2.Bucket sources. Defaults
  5475. to latest when omitted.
  5476. type: string
  5477. required:
  5478. - chart
  5479. - sourceRef
  5480. type: object
  5481. required:
  5482. - spec
  5483. type: object
  5484. dependsOn:
  5485. description: DependsOn may contain a meta.NamespacedObjectReference
  5486. slice with references to HelmRelease resources that must be ready
  5487. before this HelmRelease can be reconciled.
  5488. items:
  5489. description: NamespacedObjectReference contains enough information
  5490. to locate the referenced Kubernetes resource object in any namespace.
  5491. properties:
  5492. name:
  5493. description: Name of the referent.
  5494. type: string
  5495. namespace:
  5496. description: Namespace of the referent, when not specified it
  5497. acts as LocalObjectReference.
  5498. type: string
  5499. required:
  5500. - name
  5501. type: object
  5502. type: array
  5503. install:
  5504. description: Install holds the configuration for Helm install actions
  5505. for this HelmRelease.
  5506. properties:
  5507. crds:
  5508. description: "CRDs upgrade CRDs from the Helm Chart's crds directory
  5509. according to the CRD upgrade policy provided here. Valid values
  5510. are `Skip`, `Create` or `CreateReplace`. Default is `Create`
  5511. and if omitted CRDs are installed but not updated. \n Skip:
  5512. do neither install nor replace (update) any CRDs. \n Create:
  5513. new CRDs are created, existing CRDs are neither updated nor
  5514. deleted. \n CreateReplace: new CRDs are created, existing CRDs
  5515. are updated (replaced) but not deleted. \n By default, CRDs
  5516. are applied (installed) during Helm install action. With this
  5517. option users can opt-in to CRD replace existing CRDs on Helm
  5518. install actions, which is not (yet) natively supported by Helm.
  5519. https://helm.sh/docs/chart_best_practices/custom_resource_definitions."
  5520. enum:
  5521. - Skip
  5522. - Create
  5523. - CreateReplace
  5524. type: string
  5525. createNamespace:
  5526. description: CreateNamespace tells the Helm install action to
  5527. create the HelmReleaseSpec.TargetNamespace if it does not exist
  5528. yet. On uninstall, the namespace will not be garbage collected.
  5529. type: boolean
  5530. disableHooks:
  5531. description: DisableHooks prevents hooks from running during the
  5532. Helm install action.
  5533. type: boolean
  5534. disableOpenAPIValidation:
  5535. description: DisableOpenAPIValidation prevents the Helm install
  5536. action from validating rendered templates against the Kubernetes
  5537. OpenAPI Schema.
  5538. type: boolean
  5539. disableWait:
  5540. description: DisableWait disables the waiting for resources to
  5541. be ready after a Helm install has been performed.
  5542. type: boolean
  5543. disableWaitForJobs:
  5544. description: DisableWaitForJobs disables waiting for jobs to complete
  5545. after a Helm install has been performed.
  5546. type: boolean
  5547. remediation:
  5548. description: Remediation holds the remediation configuration for
  5549. when the Helm install action for the HelmRelease fails. The
  5550. default is to not perform any action.
  5551. properties:
  5552. ignoreTestFailures:
  5553. description: IgnoreTestFailures tells the controller to skip
  5554. remediation when the Helm tests are run after an install
  5555. action but fail. Defaults to 'Test.IgnoreFailures'.
  5556. type: boolean
  5557. remediateLastFailure:
  5558. description: RemediateLastFailure tells the controller to
  5559. remediate the last failure, when no retries remain. Defaults
  5560. to 'false'.
  5561. type: boolean
  5562. retries:
  5563. description: Retries is the number of retries that should
  5564. be attempted on failures before bailing. Remediation, using
  5565. an uninstall, is performed between each attempt. Defaults
  5566. to '0', a negative integer equals to unlimited retries.
  5567. type: integer
  5568. type: object
  5569. replace:
  5570. description: Replace tells the Helm install action to re-use the
  5571. 'ReleaseName', but only if that name is a deleted release which
  5572. remains in the history.
  5573. type: boolean
  5574. skipCRDs:
  5575. description: "SkipCRDs tells the Helm install action to not install
  5576. any CRDs. By default, CRDs are installed if not already present.
  5577. \n Deprecated use CRD policy (`crds`) attribute with value `Skip`
  5578. instead."
  5579. type: boolean
  5580. timeout:
  5581. description: Timeout is the time to wait for any individual Kubernetes
  5582. operation (like Jobs for hooks) during the performance of a
  5583. Helm install action. Defaults to 'HelmReleaseSpec.Timeout'.
  5584. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  5585. type: string
  5586. type: object
  5587. interval:
  5588. description: Interval at which to reconcile the Helm release.
  5589. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  5590. type: string
  5591. kubeConfig:
  5592. description: KubeConfig for reconciling the HelmRelease on a remote
  5593. cluster. When used in combination with HelmReleaseSpec.ServiceAccountName,
  5594. forces the controller to act on behalf of that Service Account at
  5595. the target cluster. If the --default-service-account flag is set,
  5596. its value will be used as a controller level fallback for when HelmReleaseSpec.ServiceAccountName
  5597. is empty.
  5598. properties:
  5599. secretRef:
  5600. description: SecretRef holds the name of a secret that contains
  5601. a key with the kubeconfig file as the value. If no key is set,
  5602. the key will default to 'value'. It is recommended that the
  5603. kubeconfig is self-contained, and the secret is regularly updated
  5604. if credentials such as a cloud-access-token expire. Cloud specific
  5605. `cmd-path` auth helpers will not function without adding binaries
  5606. and credentials to the Pod that is responsible for reconciling
  5607. Kubernetes resources.
  5608. properties:
  5609. key:
  5610. description: Key in the Secret, when not specified an implementation-specific
  5611. default key is used.
  5612. type: string
  5613. name:
  5614. description: Name of the Secret.
  5615. type: string
  5616. required:
  5617. - name
  5618. type: object
  5619. required:
  5620. - secretRef
  5621. type: object
  5622. maxHistory:
  5623. description: MaxHistory is the number of revisions saved by Helm for
  5624. this HelmRelease. Use '0' for an unlimited number of revisions;
  5625. defaults to '10'.
  5626. type: integer
  5627. persistentClient:
  5628. description: "PersistentClient tells the controller to use a persistent
  5629. Kubernetes client for this release. When enabled, the client will
  5630. be reused for the duration of the reconciliation, instead of being
  5631. created and destroyed for each (step of a) Helm action. \n This
  5632. can improve performance, but may cause issues with some Helm charts
  5633. that for example do create Custom Resource Definitions during installation
  5634. outside Helm's CRD lifecycle hooks, which are then not observed
  5635. to be available by e.g. post-install hooks. \n If not set, it defaults
  5636. to true."
  5637. type: boolean
  5638. postRenderers:
  5639. description: PostRenderers holds an array of Helm PostRenderers, which
  5640. will be applied in order of their definition.
  5641. items:
  5642. description: PostRenderer contains a Helm PostRenderer specification.
  5643. properties:
  5644. kustomize:
  5645. description: Kustomization to apply as PostRenderer.
  5646. properties:
  5647. images:
  5648. description: Images is a list of (image name, new name,
  5649. new tag or digest) for changing image names, tags or digests.
  5650. This can also be achieved with a patch, but this operator
  5651. is simpler to specify.
  5652. items:
  5653. description: Image contains an image name, a new name,
  5654. a new tag or digest, which will replace the original
  5655. name and tag.
  5656. properties:
  5657. digest:
  5658. description: Digest is the value used to replace the
  5659. original image tag. If digest is present NewTag
  5660. value is ignored.
  5661. type: string
  5662. name:
  5663. description: Name is a tag-less image name.
  5664. type: string
  5665. newName:
  5666. description: NewName is the value used to replace
  5667. the original name.
  5668. type: string
  5669. newTag:
  5670. description: NewTag is the value used to replace the
  5671. original tag.
  5672. type: string
  5673. required:
  5674. - name
  5675. type: object
  5676. type: array
  5677. patches:
  5678. description: Strategic merge and JSON patches, defined as
  5679. inline YAML objects, capable of targeting objects based
  5680. on kind, label and annotation selectors.
  5681. items:
  5682. description: Patch contains an inline StrategicMerge or
  5683. JSON6902 patch, and the target the patch should be applied
  5684. to.
  5685. properties:
  5686. patch:
  5687. description: Patch contains an inline StrategicMerge
  5688. patch or an inline JSON6902 patch with an array
  5689. of operation objects.
  5690. type: string
  5691. target:
  5692. description: Target points to the resources that the
  5693. patch document should be applied to.
  5694. properties:
  5695. annotationSelector:
  5696. description: AnnotationSelector is a string that
  5697. follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  5698. It matches with the resource annotations.
  5699. type: string
  5700. group:
  5701. description: Group is the API group to select
  5702. resources from. Together with Version and Kind
  5703. it is capable of unambiguously identifying and/or
  5704. selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  5705. type: string
  5706. kind:
  5707. description: Kind of the API Group to select resources
  5708. from. Together with Group and Version it is
  5709. capable of unambiguously identifying and/or
  5710. selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  5711. type: string
  5712. labelSelector:
  5713. description: LabelSelector is a string that follows
  5714. the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  5715. It matches with the resource labels.
  5716. type: string
  5717. name:
  5718. description: Name to match resources with.
  5719. type: string
  5720. namespace:
  5721. description: Namespace to select resources from.
  5722. type: string
  5723. version:
  5724. description: Version of the API Group to select
  5725. resources from. Together with Group and Kind
  5726. it is capable of unambiguously identifying and/or
  5727. selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  5728. type: string
  5729. type: object
  5730. required:
  5731. - patch
  5732. type: object
  5733. type: array
  5734. patchesJson6902:
  5735. description: JSON 6902 patches, defined as inline YAML objects.
  5736. items:
  5737. description: JSON6902Patch contains a JSON6902 patch and
  5738. the target the patch should be applied to.
  5739. properties:
  5740. patch:
  5741. description: Patch contains the JSON6902 patch document
  5742. with an array of operation objects.
  5743. items:
  5744. description: JSON6902 is a JSON6902 operation object.
  5745. https://datatracker.ietf.org/doc/html/rfc6902#section-4
  5746. properties:
  5747. from:
  5748. description: From contains a JSON-pointer value
  5749. that references a location within the target
  5750. document where the operation is performed.
  5751. The meaning of the value depends on the value
  5752. of Op, and is NOT taken into account by all
  5753. operations.
  5754. type: string
  5755. op:
  5756. description: Op indicates the operation to perform.
  5757. Its value MUST be one of "add", "remove",
  5758. "replace", "move", "copy", or "test". https://datatracker.ietf.org/doc/html/rfc6902#section-4
  5759. enum:
  5760. - test
  5761. - remove
  5762. - add
  5763. - replace
  5764. - move
  5765. - copy
  5766. type: string
  5767. path:
  5768. description: Path contains the JSON-pointer
  5769. value that references a location within the
  5770. target document where the operation is performed.
  5771. The meaning of the value depends on the value
  5772. of Op.
  5773. type: string
  5774. value:
  5775. description: Value contains a valid JSON structure.
  5776. The meaning of the value depends on the value
  5777. of Op, and is NOT taken into account by all
  5778. operations.
  5779. x-kubernetes-preserve-unknown-fields: true
  5780. required:
  5781. - op
  5782. - path
  5783. type: object
  5784. type: array
  5785. target:
  5786. description: Target points to the resources that the
  5787. patch document should be applied to.
  5788. properties:
  5789. annotationSelector:
  5790. description: AnnotationSelector is a string that
  5791. follows the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  5792. It matches with the resource annotations.
  5793. type: string
  5794. group:
  5795. description: Group is the API group to select
  5796. resources from. Together with Version and Kind
  5797. it is capable of unambiguously identifying and/or
  5798. selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  5799. type: string
  5800. kind:
  5801. description: Kind of the API Group to select resources
  5802. from. Together with Group and Version it is
  5803. capable of unambiguously identifying and/or
  5804. selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  5805. type: string
  5806. labelSelector:
  5807. description: LabelSelector is a string that follows
  5808. the label selection expression https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
  5809. It matches with the resource labels.
  5810. type: string
  5811. name:
  5812. description: Name to match resources with.
  5813. type: string
  5814. namespace:
  5815. description: Namespace to select resources from.
  5816. type: string
  5817. version:
  5818. description: Version of the API Group to select
  5819. resources from. Together with Group and Kind
  5820. it is capable of unambiguously identifying and/or
  5821. selecting resources. https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
  5822. type: string
  5823. type: object
  5824. required:
  5825. - patch
  5826. - target
  5827. type: object
  5828. type: array
  5829. patchesStrategicMerge:
  5830. description: Strategic merge patches, defined as inline
  5831. YAML objects.
  5832. items:
  5833. x-kubernetes-preserve-unknown-fields: true
  5834. type: array
  5835. type: object
  5836. type: object
  5837. type: array
  5838. releaseName:
  5839. description: ReleaseName used for the Helm release. Defaults to a
  5840. composition of '[TargetNamespace-]Name'.
  5841. maxLength: 53
  5842. minLength: 1
  5843. type: string
  5844. rollback:
  5845. description: Rollback holds the configuration for Helm rollback actions
  5846. for this HelmRelease.
  5847. properties:
  5848. cleanupOnFail:
  5849. description: CleanupOnFail allows deletion of new resources created
  5850. during the Helm rollback action when it fails.
  5851. type: boolean
  5852. disableHooks:
  5853. description: DisableHooks prevents hooks from running during the
  5854. Helm rollback action.
  5855. type: boolean
  5856. disableWait:
  5857. description: DisableWait disables the waiting for resources to
  5858. be ready after a Helm rollback has been performed.
  5859. type: boolean
  5860. disableWaitForJobs:
  5861. description: DisableWaitForJobs disables waiting for jobs to complete
  5862. after a Helm rollback has been performed.
  5863. type: boolean
  5864. force:
  5865. description: Force forces resource updates through a replacement
  5866. strategy.
  5867. type: boolean
  5868. recreate:
  5869. description: Recreate performs pod restarts for the resource if
  5870. applicable.
  5871. type: boolean
  5872. timeout:
  5873. description: Timeout is the time to wait for any individual Kubernetes
  5874. operation (like Jobs for hooks) during the performance of a
  5875. Helm rollback action. Defaults to 'HelmReleaseSpec.Timeout'.
  5876. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  5877. type: string
  5878. type: object
  5879. serviceAccountName:
  5880. description: The name of the Kubernetes service account to impersonate
  5881. when reconciling this HelmRelease.
  5882. type: string
  5883. storageNamespace:
  5884. description: StorageNamespace used for the Helm storage. Defaults
  5885. to the namespace of the HelmRelease.
  5886. maxLength: 63
  5887. minLength: 1
  5888. type: string
  5889. suspend:
  5890. description: Suspend tells the controller to suspend reconciliation
  5891. for this HelmRelease, it does not apply to already started reconciliations.
  5892. Defaults to false.
  5893. type: boolean
  5894. targetNamespace:
  5895. description: TargetNamespace to target when performing operations
  5896. for the HelmRelease. Defaults to the namespace of the HelmRelease.
  5897. maxLength: 63
  5898. minLength: 1
  5899. type: string
  5900. test:
  5901. description: Test holds the configuration for Helm test actions for
  5902. this HelmRelease.
  5903. properties:
  5904. enable:
  5905. description: Enable enables Helm test actions for this HelmRelease
  5906. after an Helm install or upgrade action has been performed.
  5907. type: boolean
  5908. ignoreFailures:
  5909. description: IgnoreFailures tells the controller to skip remediation
  5910. when the Helm tests are run but fail. Can be overwritten for
  5911. tests run after install or upgrade actions in 'Install.IgnoreTestFailures'
  5912. and 'Upgrade.IgnoreTestFailures'.
  5913. type: boolean
  5914. timeout:
  5915. description: Timeout is the time to wait for any individual Kubernetes
  5916. operation during the performance of a Helm test action. Defaults
  5917. to 'HelmReleaseSpec.Timeout'.
  5918. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  5919. type: string
  5920. type: object
  5921. timeout:
  5922. description: Timeout is the time to wait for any individual Kubernetes
  5923. operation (like Jobs for hooks) during the performance of a Helm
  5924. action. Defaults to '5m0s'.
  5925. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  5926. type: string
  5927. uninstall:
  5928. description: Uninstall holds the configuration for Helm uninstall
  5929. actions for this HelmRelease.
  5930. properties:
  5931. deletionPropagation:
  5932. default: background
  5933. description: DeletionPropagation specifies the deletion propagation
  5934. policy when a Helm uninstall is performed.
  5935. enum:
  5936. - background
  5937. - foreground
  5938. - orphan
  5939. type: string
  5940. disableHooks:
  5941. description: DisableHooks prevents hooks from running during the
  5942. Helm rollback action.
  5943. type: boolean
  5944. disableWait:
  5945. description: DisableWait disables waiting for all the resources
  5946. to be deleted after a Helm uninstall is performed.
  5947. type: boolean
  5948. keepHistory:
  5949. description: KeepHistory tells Helm to remove all associated resources
  5950. and mark the release as deleted, but retain the release history.
  5951. type: boolean
  5952. timeout:
  5953. description: Timeout is the time to wait for any individual Kubernetes
  5954. operation (like Jobs for hooks) during the performance of a
  5955. Helm uninstall action. Defaults to 'HelmReleaseSpec.Timeout'.
  5956. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  5957. type: string
  5958. type: object
  5959. upgrade:
  5960. description: Upgrade holds the configuration for Helm upgrade actions
  5961. for this HelmRelease.
  5962. properties:
  5963. cleanupOnFail:
  5964. description: CleanupOnFail allows deletion of new resources created
  5965. during the Helm upgrade action when it fails.
  5966. type: boolean
  5967. crds:
  5968. description: "CRDs upgrade CRDs from the Helm Chart's crds directory
  5969. according to the CRD upgrade policy provided here. Valid values
  5970. are `Skip`, `Create` or `CreateReplace`. Default is `Skip` and
  5971. if omitted CRDs are neither installed nor upgraded. \n Skip:
  5972. do neither install nor replace (update) any CRDs. \n Create:
  5973. new CRDs are created, existing CRDs are neither updated nor
  5974. deleted. \n CreateReplace: new CRDs are created, existing CRDs
  5975. are updated (replaced) but not deleted. \n By default, CRDs
  5976. are not applied during Helm upgrade action. With this option
  5977. users can opt-in to CRD upgrade, which is not (yet) natively
  5978. supported by Helm. https://helm.sh/docs/chart_best_practices/custom_resource_definitions."
  5979. enum:
  5980. - Skip
  5981. - Create
  5982. - CreateReplace
  5983. type: string
  5984. disableHooks:
  5985. description: DisableHooks prevents hooks from running during the
  5986. Helm upgrade action.
  5987. type: boolean
  5988. disableOpenAPIValidation:
  5989. description: DisableOpenAPIValidation prevents the Helm upgrade
  5990. action from validating rendered templates against the Kubernetes
  5991. OpenAPI Schema.
  5992. type: boolean
  5993. disableWait:
  5994. description: DisableWait disables the waiting for resources to
  5995. be ready after a Helm upgrade has been performed.
  5996. type: boolean
  5997. disableWaitForJobs:
  5998. description: DisableWaitForJobs disables waiting for jobs to complete
  5999. after a Helm upgrade has been performed.
  6000. type: boolean
  6001. force:
  6002. description: Force forces resource updates through a replacement
  6003. strategy.
  6004. type: boolean
  6005. preserveValues:
  6006. description: PreserveValues will make Helm reuse the last release's
  6007. values and merge in overrides from 'Values'. Setting this flag
  6008. makes the HelmRelease non-declarative.
  6009. type: boolean
  6010. remediation:
  6011. description: Remediation holds the remediation configuration for
  6012. when the Helm upgrade action for the HelmRelease fails. The
  6013. default is to not perform any action.
  6014. properties:
  6015. ignoreTestFailures:
  6016. description: IgnoreTestFailures tells the controller to skip
  6017. remediation when the Helm tests are run after an upgrade
  6018. action but fail. Defaults to 'Test.IgnoreFailures'.
  6019. type: boolean
  6020. remediateLastFailure:
  6021. description: RemediateLastFailure tells the controller to
  6022. remediate the last failure, when no retries remain. Defaults
  6023. to 'false' unless 'Retries' is greater than 0.
  6024. type: boolean
  6025. retries:
  6026. description: Retries is the number of retries that should
  6027. be attempted on failures before bailing. Remediation, using
  6028. 'Strategy', is performed between each attempt. Defaults
  6029. to '0', a negative integer equals to unlimited retries.
  6030. type: integer
  6031. strategy:
  6032. description: Strategy to use for failure remediation. Defaults
  6033. to 'rollback'.
  6034. enum:
  6035. - rollback
  6036. - uninstall
  6037. type: string
  6038. type: object
  6039. timeout:
  6040. description: Timeout is the time to wait for any individual Kubernetes
  6041. operation (like Jobs for hooks) during the performance of a
  6042. Helm upgrade action. Defaults to 'HelmReleaseSpec.Timeout'.
  6043. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  6044. type: string
  6045. type: object
  6046. values:
  6047. description: Values holds the values for this Helm release.
  6048. x-kubernetes-preserve-unknown-fields: true
  6049. valuesFrom:
  6050. description: ValuesFrom holds references to resources containing Helm
  6051. values for this HelmRelease, and information about how they should
  6052. be merged.
  6053. items:
  6054. description: ValuesReference contains a reference to a resource
  6055. containing Helm values, and optionally the key they can be found
  6056. at.
  6057. properties:
  6058. kind:
  6059. description: Kind of the values referent, valid values are ('Secret',
  6060. 'ConfigMap').
  6061. enum:
  6062. - Secret
  6063. - ConfigMap
  6064. type: string
  6065. name:
  6066. description: Name of the values referent. Should reside in the
  6067. same namespace as the referring resource.
  6068. maxLength: 253
  6069. minLength: 1
  6070. type: string
  6071. optional:
  6072. description: Optional marks this ValuesReference as optional.
  6073. When set, a not found error for the values reference is ignored,
  6074. but any ValuesKey, TargetPath or transient error will still
  6075. result in a reconciliation failure.
  6076. type: boolean
  6077. targetPath:
  6078. description: TargetPath is the YAML dot notation path the value
  6079. should be merged at. When set, the ValuesKey is expected to
  6080. be a single flat value. Defaults to 'None', which results
  6081. in the values getting merged at the root.
  6082. maxLength: 250
  6083. pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$
  6084. type: string
  6085. valuesKey:
  6086. description: ValuesKey is the data key where the values.yaml
  6087. or a specific value can be found at. Defaults to 'values.yaml'.
  6088. When set, must be a valid Data Key, consisting of alphanumeric
  6089. characters, '-', '_' or '.'.
  6090. maxLength: 253
  6091. pattern: ^[\-._a-zA-Z0-9]+$
  6092. type: string
  6093. required:
  6094. - kind
  6095. - name
  6096. type: object
  6097. type: array
  6098. required:
  6099. - chart
  6100. - interval
  6101. type: object
  6102. status:
  6103. default:
  6104. observedGeneration: -1
  6105. description: HelmReleaseStatus defines the observed state of a HelmRelease.
  6106. properties:
  6107. conditions:
  6108. description: Conditions holds the conditions for the HelmRelease.
  6109. items:
  6110. description: "Condition contains details for one aspect of the current
  6111. state of this API Resource. --- This struct is intended for direct
  6112. use as an array at the field path .status.conditions. For example,
  6113. \n type FooStatus struct{ // Represents the observations of a
  6114. foo's current state. // Known .status.conditions.type are: \"Available\",
  6115. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  6116. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  6117. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  6118. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  6119. properties:
  6120. lastTransitionTime:
  6121. description: lastTransitionTime is the last time the condition
  6122. transitioned from one status to another. This should be when
  6123. the underlying condition changed. If that is not known, then
  6124. using the time when the API field changed is acceptable.
  6125. format: date-time
  6126. type: string
  6127. message:
  6128. description: message is a human readable message indicating
  6129. details about the transition. This may be an empty string.
  6130. maxLength: 32768
  6131. type: string
  6132. observedGeneration:
  6133. description: observedGeneration represents the .metadata.generation
  6134. that the condition was set based upon. For instance, if .metadata.generation
  6135. is currently 12, but the .status.conditions[x].observedGeneration
  6136. is 9, the condition is out of date with respect to the current
  6137. state of the instance.
  6138. format: int64
  6139. minimum: 0
  6140. type: integer
  6141. reason:
  6142. description: reason contains a programmatic identifier indicating
  6143. the reason for the condition's last transition. Producers
  6144. of specific condition types may define expected values and
  6145. meanings for this field, and whether the values are considered
  6146. a guaranteed API. The value should be a CamelCase string.
  6147. This field may not be empty.
  6148. maxLength: 1024
  6149. minLength: 1
  6150. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  6151. type: string
  6152. status:
  6153. description: status of the condition, one of True, False, Unknown.
  6154. enum:
  6155. - "True"
  6156. - "False"
  6157. - Unknown
  6158. type: string
  6159. type:
  6160. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  6161. --- Many .condition.type values are consistent across resources
  6162. like Available, but because arbitrary conditions can be useful
  6163. (see .node.status.conditions), the ability to deconflict is
  6164. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  6165. maxLength: 316
  6166. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  6167. type: string
  6168. required:
  6169. - lastTransitionTime
  6170. - message
  6171. - reason
  6172. - status
  6173. - type
  6174. type: object
  6175. type: array
  6176. failures:
  6177. description: Failures is the reconciliation failure count against
  6178. the latest desired state. It is reset after a successful reconciliation.
  6179. format: int64
  6180. type: integer
  6181. helmChart:
  6182. description: HelmChart is the namespaced name of the HelmChart resource
  6183. created by the controller for the HelmRelease.
  6184. type: string
  6185. installFailures:
  6186. description: InstallFailures is the install failure count against
  6187. the latest desired state. It is reset after a successful reconciliation.
  6188. format: int64
  6189. type: integer
  6190. lastAppliedRevision:
  6191. description: LastAppliedRevision is the revision of the last successfully
  6192. applied source.
  6193. type: string
  6194. lastAttemptedRevision:
  6195. description: LastAttemptedRevision is the revision of the last reconciliation
  6196. attempt.
  6197. type: string
  6198. lastAttemptedValuesChecksum:
  6199. description: LastAttemptedValuesChecksum is the SHA1 checksum of the
  6200. values of the last reconciliation attempt.
  6201. type: string
  6202. lastHandledReconcileAt:
  6203. description: LastHandledReconcileAt holds the value of the most recent
  6204. reconcile request value, so a change of the annotation value can
  6205. be detected.
  6206. type: string
  6207. lastReleaseRevision:
  6208. description: LastReleaseRevision is the revision of the last successful
  6209. Helm release.
  6210. type: integer
  6211. observedGeneration:
  6212. description: ObservedGeneration is the last observed generation.
  6213. format: int64
  6214. type: integer
  6215. upgradeFailures:
  6216. description: UpgradeFailures is the upgrade failure count against
  6217. the latest desired state. It is reset after a successful reconciliation.
  6218. format: int64
  6219. type: integer
  6220. type: object
  6221. type: object
  6222. served: true
  6223. storage: true
  6224. subresources:
  6225. status: {}
  6226. ---
  6227. apiVersion: v1
  6228. kind: ServiceAccount
  6229. metadata:
  6230. labels:
  6231. app.kubernetes.io/component: helm-controller
  6232. app.kubernetes.io/instance: flux-system
  6233. app.kubernetes.io/part-of: flux
  6234. app.kubernetes.io/version: v2.0.1
  6235. name: helm-controller
  6236. namespace: flux-system
  6237. ---
  6238. apiVersion: apps/v1
  6239. kind: Deployment
  6240. metadata:
  6241. labels:
  6242. app.kubernetes.io/component: helm-controller
  6243. app.kubernetes.io/instance: flux-system
  6244. app.kubernetes.io/part-of: flux
  6245. app.kubernetes.io/version: v2.0.1
  6246. control-plane: controller
  6247. name: helm-controller
  6248. namespace: flux-system
  6249. spec:
  6250. replicas: 1
  6251. selector:
  6252. matchLabels:
  6253. app: helm-controller
  6254. template:
  6255. metadata:
  6256. annotations:
  6257. prometheus.io/port: "8080"
  6258. prometheus.io/scrape: "true"
  6259. labels:
  6260. app: helm-controller
  6261. spec:
  6262. containers:
  6263. - args:
  6264. - --events-addr=http://notification-controller.flux-system.svc.cluster.local./
  6265. - --watch-all-namespaces=true
  6266. - --log-level=info
  6267. - --log-encoding=json
  6268. - --enable-leader-election
  6269. env:
  6270. - name: RUNTIME_NAMESPACE
  6271. valueFrom:
  6272. fieldRef:
  6273. fieldPath: metadata.namespace
  6274. image: ghcr.io/fluxcd/helm-controller:v0.35.0
  6275. imagePullPolicy: IfNotPresent
  6276. livenessProbe:
  6277. httpGet:
  6278. path: /healthz
  6279. port: healthz
  6280. name: manager
  6281. ports:
  6282. - containerPort: 8080
  6283. name: http-prom
  6284. protocol: TCP
  6285. - containerPort: 9440
  6286. name: healthz
  6287. protocol: TCP
  6288. readinessProbe:
  6289. httpGet:
  6290. path: /readyz
  6291. port: healthz
  6292. resources:
  6293. limits:
  6294. cpu: 1000m
  6295. memory: 1Gi
  6296. requests:
  6297. cpu: 100m
  6298. memory: 64Mi
  6299. securityContext:
  6300. allowPrivilegeEscalation: false
  6301. capabilities:
  6302. drop:
  6303. - ALL
  6304. readOnlyRootFilesystem: true
  6305. runAsNonRoot: true
  6306. seccompProfile:
  6307. type: RuntimeDefault
  6308. volumeMounts:
  6309. - mountPath: /tmp
  6310. name: temp
  6311. nodeSelector:
  6312. kubernetes.io/os: linux
  6313. priorityClassName: system-cluster-critical
  6314. securityContext:
  6315. fsGroup: 1337
  6316. serviceAccountName: helm-controller
  6317. terminationGracePeriodSeconds: 600
  6318. volumes:
  6319. - emptyDir: {}
  6320. name: temp
  6321. ---
  6322. apiVersion: apiextensions.k8s.io/v1
  6323. kind: CustomResourceDefinition
  6324. metadata:
  6325. annotations:
  6326. controller-gen.kubebuilder.io/version: v0.12.0
  6327. labels:
  6328. app.kubernetes.io/component: notification-controller
  6329. app.kubernetes.io/instance: flux-system
  6330. app.kubernetes.io/part-of: flux
  6331. app.kubernetes.io/version: v2.0.1
  6332. name: alerts.notification.toolkit.fluxcd.io
  6333. spec:
  6334. group: notification.toolkit.fluxcd.io
  6335. names:
  6336. kind: Alert
  6337. listKind: AlertList
  6338. plural: alerts
  6339. singular: alert
  6340. scope: Namespaced
  6341. versions:
  6342. - additionalPrinterColumns:
  6343. - jsonPath: .metadata.creationTimestamp
  6344. name: Age
  6345. type: date
  6346. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  6347. name: Ready
  6348. type: string
  6349. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  6350. name: Status
  6351. type: string
  6352. name: v1beta1
  6353. schema:
  6354. openAPIV3Schema:
  6355. description: Alert is the Schema for the alerts API
  6356. properties:
  6357. apiVersion:
  6358. description: 'APIVersion defines the versioned schema of this representation
  6359. of an object. Servers should convert recognized schemas to the latest
  6360. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  6361. type: string
  6362. kind:
  6363. description: 'Kind is a string value representing the REST resource this
  6364. object represents. Servers may infer this from the endpoint the client
  6365. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  6366. type: string
  6367. metadata:
  6368. type: object
  6369. spec:
  6370. description: AlertSpec defines an alerting rule for events involving a
  6371. list of objects
  6372. properties:
  6373. eventSeverity:
  6374. default: info
  6375. description: Filter events based on severity, defaults to ('info').
  6376. If set to 'info' no events will be filtered.
  6377. enum:
  6378. - info
  6379. - error
  6380. type: string
  6381. eventSources:
  6382. description: Filter events based on the involved objects.
  6383. items:
  6384. description: CrossNamespaceObjectReference contains enough information
  6385. to let you locate the typed referenced object at cluster level
  6386. properties:
  6387. apiVersion:
  6388. description: API version of the referent
  6389. type: string
  6390. kind:
  6391. description: Kind of the referent
  6392. enum:
  6393. - Bucket
  6394. - GitRepository
  6395. - Kustomization
  6396. - HelmRelease
  6397. - HelmChart
  6398. - HelmRepository
  6399. - ImageRepository
  6400. - ImagePolicy
  6401. - ImageUpdateAutomation
  6402. - OCIRepository
  6403. type: string
  6404. matchLabels:
  6405. additionalProperties:
  6406. type: string
  6407. description: MatchLabels is a map of {key,value} pairs. A single
  6408. {key,value} in the matchLabels map is equivalent to an element
  6409. of matchExpressions, whose key field is "key", the operator
  6410. is "In", and the values array contains only "value". The requirements
  6411. are ANDed.
  6412. type: object
  6413. name:
  6414. description: Name of the referent
  6415. maxLength: 53
  6416. minLength: 1
  6417. type: string
  6418. namespace:
  6419. description: Namespace of the referent
  6420. maxLength: 53
  6421. minLength: 1
  6422. type: string
  6423. required:
  6424. - name
  6425. type: object
  6426. type: array
  6427. exclusionList:
  6428. description: A list of Golang regular expressions to be used for excluding
  6429. messages.
  6430. items:
  6431. type: string
  6432. type: array
  6433. providerRef:
  6434. description: Send events using this provider.
  6435. properties:
  6436. name:
  6437. description: Name of the referent.
  6438. type: string
  6439. required:
  6440. - name
  6441. type: object
  6442. summary:
  6443. description: Short description of the impact and affected cluster.
  6444. type: string
  6445. suspend:
  6446. description: This flag tells the controller to suspend subsequent
  6447. events dispatching. Defaults to false.
  6448. type: boolean
  6449. required:
  6450. - eventSources
  6451. - providerRef
  6452. type: object
  6453. status:
  6454. default:
  6455. observedGeneration: -1
  6456. description: AlertStatus defines the observed state of Alert
  6457. properties:
  6458. conditions:
  6459. items:
  6460. description: "Condition contains details for one aspect of the current
  6461. state of this API Resource. --- This struct is intended for direct
  6462. use as an array at the field path .status.conditions. For example,
  6463. \n type FooStatus struct{ // Represents the observations of a
  6464. foo's current state. // Known .status.conditions.type are: \"Available\",
  6465. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  6466. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  6467. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  6468. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  6469. properties:
  6470. lastTransitionTime:
  6471. description: lastTransitionTime is the last time the condition
  6472. transitioned from one status to another. This should be when
  6473. the underlying condition changed. If that is not known, then
  6474. using the time when the API field changed is acceptable.
  6475. format: date-time
  6476. type: string
  6477. message:
  6478. description: message is a human readable message indicating
  6479. details about the transition. This may be an empty string.
  6480. maxLength: 32768
  6481. type: string
  6482. observedGeneration:
  6483. description: observedGeneration represents the .metadata.generation
  6484. that the condition was set based upon. For instance, if .metadata.generation
  6485. is currently 12, but the .status.conditions[x].observedGeneration
  6486. is 9, the condition is out of date with respect to the current
  6487. state of the instance.
  6488. format: int64
  6489. minimum: 0
  6490. type: integer
  6491. reason:
  6492. description: reason contains a programmatic identifier indicating
  6493. the reason for the condition's last transition. Producers
  6494. of specific condition types may define expected values and
  6495. meanings for this field, and whether the values are considered
  6496. a guaranteed API. The value should be a CamelCase string.
  6497. This field may not be empty.
  6498. maxLength: 1024
  6499. minLength: 1
  6500. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  6501. type: string
  6502. status:
  6503. description: status of the condition, one of True, False, Unknown.
  6504. enum:
  6505. - "True"
  6506. - "False"
  6507. - Unknown
  6508. type: string
  6509. type:
  6510. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  6511. --- Many .condition.type values are consistent across resources
  6512. like Available, but because arbitrary conditions can be useful
  6513. (see .node.status.conditions), the ability to deconflict is
  6514. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  6515. maxLength: 316
  6516. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  6517. type: string
  6518. required:
  6519. - lastTransitionTime
  6520. - message
  6521. - reason
  6522. - status
  6523. - type
  6524. type: object
  6525. type: array
  6526. observedGeneration:
  6527. description: ObservedGeneration is the last observed generation.
  6528. format: int64
  6529. type: integer
  6530. type: object
  6531. type: object
  6532. served: true
  6533. storage: false
  6534. subresources:
  6535. status: {}
  6536. - additionalPrinterColumns:
  6537. - jsonPath: .metadata.creationTimestamp
  6538. name: Age
  6539. type: date
  6540. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  6541. name: Ready
  6542. type: string
  6543. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  6544. name: Status
  6545. type: string
  6546. name: v1beta2
  6547. schema:
  6548. openAPIV3Schema:
  6549. description: Alert is the Schema for the alerts API
  6550. properties:
  6551. apiVersion:
  6552. description: 'APIVersion defines the versioned schema of this representation
  6553. of an object. Servers should convert recognized schemas to the latest
  6554. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  6555. type: string
  6556. kind:
  6557. description: 'Kind is a string value representing the REST resource this
  6558. object represents. Servers may infer this from the endpoint the client
  6559. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  6560. type: string
  6561. metadata:
  6562. type: object
  6563. spec:
  6564. description: AlertSpec defines an alerting rule for events involving a
  6565. list of objects.
  6566. properties:
  6567. eventMetadata:
  6568. additionalProperties:
  6569. type: string
  6570. description: EventMetadata is an optional field for adding metadata
  6571. to events dispatched by the controller. This can be used for enhancing
  6572. the context of the event. If a field would override one already
  6573. present on the original event as generated by the emitter, then
  6574. the override doesn't happen, i.e. the original value is preserved,
  6575. and an info log is printed.
  6576. type: object
  6577. eventSeverity:
  6578. default: info
  6579. description: EventSeverity specifies how to filter events based on
  6580. severity. If set to 'info' no events will be filtered.
  6581. enum:
  6582. - info
  6583. - error
  6584. type: string
  6585. eventSources:
  6586. description: EventSources specifies how to filter events based on
  6587. the involved object kind, name and namespace.
  6588. items:
  6589. description: CrossNamespaceObjectReference contains enough information
  6590. to let you locate the typed referenced object at cluster level
  6591. properties:
  6592. apiVersion:
  6593. description: API version of the referent
  6594. type: string
  6595. kind:
  6596. description: Kind of the referent
  6597. enum:
  6598. - Bucket
  6599. - GitRepository
  6600. - Kustomization
  6601. - HelmRelease
  6602. - HelmChart
  6603. - HelmRepository
  6604. - ImageRepository
  6605. - ImagePolicy
  6606. - ImageUpdateAutomation
  6607. - OCIRepository
  6608. type: string
  6609. matchLabels:
  6610. additionalProperties:
  6611. type: string
  6612. description: MatchLabels is a map of {key,value} pairs. A single
  6613. {key,value} in the matchLabels map is equivalent to an element
  6614. of matchExpressions, whose key field is "key", the operator
  6615. is "In", and the values array contains only "value". The requirements
  6616. are ANDed. MatchLabels requires the name to be set to `*`.
  6617. type: object
  6618. name:
  6619. description: Name of the referent If multiple resources are
  6620. targeted `*` may be set.
  6621. maxLength: 53
  6622. minLength: 1
  6623. type: string
  6624. namespace:
  6625. description: Namespace of the referent
  6626. maxLength: 53
  6627. minLength: 1
  6628. type: string
  6629. required:
  6630. - kind
  6631. - name
  6632. type: object
  6633. type: array
  6634. exclusionList:
  6635. description: ExclusionList specifies a list of Golang regular expressions
  6636. to be used for excluding messages.
  6637. items:
  6638. type: string
  6639. type: array
  6640. inclusionList:
  6641. description: InclusionList specifies a list of Golang regular expressions
  6642. to be used for including messages.
  6643. items:
  6644. type: string
  6645. type: array
  6646. providerRef:
  6647. description: ProviderRef specifies which Provider this Alert should
  6648. use.
  6649. properties:
  6650. name:
  6651. description: Name of the referent.
  6652. type: string
  6653. required:
  6654. - name
  6655. type: object
  6656. summary:
  6657. description: Summary holds a short description of the impact and affected
  6658. cluster.
  6659. maxLength: 255
  6660. type: string
  6661. suspend:
  6662. description: Suspend tells the controller to suspend subsequent events
  6663. handling for this Alert.
  6664. type: boolean
  6665. required:
  6666. - eventSources
  6667. - providerRef
  6668. type: object
  6669. status:
  6670. default:
  6671. observedGeneration: -1
  6672. description: AlertStatus defines the observed state of the Alert.
  6673. properties:
  6674. conditions:
  6675. description: Conditions holds the conditions for the Alert.
  6676. items:
  6677. description: "Condition contains details for one aspect of the current
  6678. state of this API Resource. --- This struct is intended for direct
  6679. use as an array at the field path .status.conditions. For example,
  6680. \n type FooStatus struct{ // Represents the observations of a
  6681. foo's current state. // Known .status.conditions.type are: \"Available\",
  6682. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  6683. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  6684. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  6685. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  6686. properties:
  6687. lastTransitionTime:
  6688. description: lastTransitionTime is the last time the condition
  6689. transitioned from one status to another. This should be when
  6690. the underlying condition changed. If that is not known, then
  6691. using the time when the API field changed is acceptable.
  6692. format: date-time
  6693. type: string
  6694. message:
  6695. description: message is a human readable message indicating
  6696. details about the transition. This may be an empty string.
  6697. maxLength: 32768
  6698. type: string
  6699. observedGeneration:
  6700. description: observedGeneration represents the .metadata.generation
  6701. that the condition was set based upon. For instance, if .metadata.generation
  6702. is currently 12, but the .status.conditions[x].observedGeneration
  6703. is 9, the condition is out of date with respect to the current
  6704. state of the instance.
  6705. format: int64
  6706. minimum: 0
  6707. type: integer
  6708. reason:
  6709. description: reason contains a programmatic identifier indicating
  6710. the reason for the condition's last transition. Producers
  6711. of specific condition types may define expected values and
  6712. meanings for this field, and whether the values are considered
  6713. a guaranteed API. The value should be a CamelCase string.
  6714. This field may not be empty.
  6715. maxLength: 1024
  6716. minLength: 1
  6717. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  6718. type: string
  6719. status:
  6720. description: status of the condition, one of True, False, Unknown.
  6721. enum:
  6722. - "True"
  6723. - "False"
  6724. - Unknown
  6725. type: string
  6726. type:
  6727. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  6728. --- Many .condition.type values are consistent across resources
  6729. like Available, but because arbitrary conditions can be useful
  6730. (see .node.status.conditions), the ability to deconflict is
  6731. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  6732. maxLength: 316
  6733. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  6734. type: string
  6735. required:
  6736. - lastTransitionTime
  6737. - message
  6738. - reason
  6739. - status
  6740. - type
  6741. type: object
  6742. type: array
  6743. lastHandledReconcileAt:
  6744. description: LastHandledReconcileAt holds the value of the most recent
  6745. reconcile request value, so a change of the annotation value can
  6746. be detected.
  6747. type: string
  6748. observedGeneration:
  6749. description: ObservedGeneration is the last observed generation.
  6750. format: int64
  6751. type: integer
  6752. type: object
  6753. type: object
  6754. served: true
  6755. storage: true
  6756. subresources:
  6757. status: {}
  6758. ---
  6759. apiVersion: apiextensions.k8s.io/v1
  6760. kind: CustomResourceDefinition
  6761. metadata:
  6762. annotations:
  6763. controller-gen.kubebuilder.io/version: v0.12.0
  6764. labels:
  6765. app.kubernetes.io/component: notification-controller
  6766. app.kubernetes.io/instance: flux-system
  6767. app.kubernetes.io/part-of: flux
  6768. app.kubernetes.io/version: v2.0.1
  6769. name: providers.notification.toolkit.fluxcd.io
  6770. spec:
  6771. group: notification.toolkit.fluxcd.io
  6772. names:
  6773. kind: Provider
  6774. listKind: ProviderList
  6775. plural: providers
  6776. singular: provider
  6777. scope: Namespaced
  6778. versions:
  6779. - additionalPrinterColumns:
  6780. - jsonPath: .metadata.creationTimestamp
  6781. name: Age
  6782. type: date
  6783. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  6784. name: Ready
  6785. type: string
  6786. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  6787. name: Status
  6788. type: string
  6789. name: v1beta1
  6790. schema:
  6791. openAPIV3Schema:
  6792. description: Provider is the Schema for the providers API
  6793. properties:
  6794. apiVersion:
  6795. description: 'APIVersion defines the versioned schema of this representation
  6796. of an object. Servers should convert recognized schemas to the latest
  6797. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  6798. type: string
  6799. kind:
  6800. description: 'Kind is a string value representing the REST resource this
  6801. object represents. Servers may infer this from the endpoint the client
  6802. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  6803. type: string
  6804. metadata:
  6805. type: object
  6806. spec:
  6807. description: ProviderSpec defines the desired state of Provider
  6808. properties:
  6809. address:
  6810. description: HTTP/S webhook address of this provider
  6811. pattern: ^(http|https)://
  6812. type: string
  6813. certSecretRef:
  6814. description: CertSecretRef can be given the name of a secret containing
  6815. a PEM-encoded CA certificate (`caFile`)
  6816. properties:
  6817. name:
  6818. description: Name of the referent.
  6819. type: string
  6820. required:
  6821. - name
  6822. type: object
  6823. channel:
  6824. description: Alert channel for this provider
  6825. type: string
  6826. proxy:
  6827. description: HTTP/S address of the proxy
  6828. pattern: ^(http|https)://
  6829. type: string
  6830. secretRef:
  6831. description: Secret reference containing the provider webhook URL
  6832. using "address" as data key
  6833. properties:
  6834. name:
  6835. description: Name of the referent.
  6836. type: string
  6837. required:
  6838. - name
  6839. type: object
  6840. suspend:
  6841. description: This flag tells the controller to suspend subsequent
  6842. events handling. Defaults to false.
  6843. type: boolean
  6844. timeout:
  6845. description: Timeout for sending alerts to the provider.
  6846. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
  6847. type: string
  6848. type:
  6849. description: Type of provider
  6850. enum:
  6851. - slack
  6852. - discord
  6853. - msteams
  6854. - rocket
  6855. - generic
  6856. - generic-hmac
  6857. - github
  6858. - gitlab
  6859. - bitbucket
  6860. - azuredevops
  6861. - googlechat
  6862. - webex
  6863. - sentry
  6864. - azureeventhub
  6865. - telegram
  6866. - lark
  6867. - matrix
  6868. - opsgenie
  6869. - alertmanager
  6870. - grafana
  6871. - githubdispatch
  6872. type: string
  6873. username:
  6874. description: Bot username for this provider
  6875. type: string
  6876. required:
  6877. - type
  6878. type: object
  6879. status:
  6880. default:
  6881. observedGeneration: -1
  6882. description: ProviderStatus defines the observed state of Provider
  6883. properties:
  6884. conditions:
  6885. items:
  6886. description: "Condition contains details for one aspect of the current
  6887. state of this API Resource. --- This struct is intended for direct
  6888. use as an array at the field path .status.conditions. For example,
  6889. \n type FooStatus struct{ // Represents the observations of a
  6890. foo's current state. // Known .status.conditions.type are: \"Available\",
  6891. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  6892. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  6893. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  6894. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  6895. properties:
  6896. lastTransitionTime:
  6897. description: lastTransitionTime is the last time the condition
  6898. transitioned from one status to another. This should be when
  6899. the underlying condition changed. If that is not known, then
  6900. using the time when the API field changed is acceptable.
  6901. format: date-time
  6902. type: string
  6903. message:
  6904. description: message is a human readable message indicating
  6905. details about the transition. This may be an empty string.
  6906. maxLength: 32768
  6907. type: string
  6908. observedGeneration:
  6909. description: observedGeneration represents the .metadata.generation
  6910. that the condition was set based upon. For instance, if .metadata.generation
  6911. is currently 12, but the .status.conditions[x].observedGeneration
  6912. is 9, the condition is out of date with respect to the current
  6913. state of the instance.
  6914. format: int64
  6915. minimum: 0
  6916. type: integer
  6917. reason:
  6918. description: reason contains a programmatic identifier indicating
  6919. the reason for the condition's last transition. Producers
  6920. of specific condition types may define expected values and
  6921. meanings for this field, and whether the values are considered
  6922. a guaranteed API. The value should be a CamelCase string.
  6923. This field may not be empty.
  6924. maxLength: 1024
  6925. minLength: 1
  6926. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  6927. type: string
  6928. status:
  6929. description: status of the condition, one of True, False, Unknown.
  6930. enum:
  6931. - "True"
  6932. - "False"
  6933. - Unknown
  6934. type: string
  6935. type:
  6936. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  6937. --- Many .condition.type values are consistent across resources
  6938. like Available, but because arbitrary conditions can be useful
  6939. (see .node.status.conditions), the ability to deconflict is
  6940. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  6941. maxLength: 316
  6942. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  6943. type: string
  6944. required:
  6945. - lastTransitionTime
  6946. - message
  6947. - reason
  6948. - status
  6949. - type
  6950. type: object
  6951. type: array
  6952. observedGeneration:
  6953. description: ObservedGeneration is the last reconciled generation.
  6954. format: int64
  6955. type: integer
  6956. type: object
  6957. type: object
  6958. served: true
  6959. storage: false
  6960. subresources:
  6961. status: {}
  6962. - additionalPrinterColumns:
  6963. - jsonPath: .metadata.creationTimestamp
  6964. name: Age
  6965. type: date
  6966. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  6967. name: Ready
  6968. type: string
  6969. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  6970. name: Status
  6971. type: string
  6972. name: v1beta2
  6973. schema:
  6974. openAPIV3Schema:
  6975. description: Provider is the Schema for the providers API.
  6976. properties:
  6977. apiVersion:
  6978. description: 'APIVersion defines the versioned schema of this representation
  6979. of an object. Servers should convert recognized schemas to the latest
  6980. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  6981. type: string
  6982. kind:
  6983. description: 'Kind is a string value representing the REST resource this
  6984. object represents. Servers may infer this from the endpoint the client
  6985. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  6986. type: string
  6987. metadata:
  6988. type: object
  6989. spec:
  6990. description: ProviderSpec defines the desired state of the Provider.
  6991. properties:
  6992. address:
  6993. description: Address specifies the endpoint, in a generic sense, to
  6994. where alerts are sent. What kind of endpoint depends on the specific
  6995. Provider type being used. For the generic Provider, for example,
  6996. this is an HTTP/S address. For other Provider types this could be
  6997. a project ID or a namespace.
  6998. maxLength: 2048
  6999. type: string
  7000. certSecretRef:
  7001. description: CertSecretRef specifies the Secret containing a PEM-encoded
  7002. CA certificate (`caFile`).
  7003. properties:
  7004. name:
  7005. description: Name of the referent.
  7006. type: string
  7007. required:
  7008. - name
  7009. type: object
  7010. channel:
  7011. description: Channel specifies the destination channel where events
  7012. should be posted.
  7013. maxLength: 2048
  7014. type: string
  7015. interval:
  7016. description: Interval at which to reconcile the Provider with its
  7017. Secret references.
  7018. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  7019. type: string
  7020. proxy:
  7021. description: Proxy the HTTP/S address of the proxy server.
  7022. maxLength: 2048
  7023. pattern: ^(http|https)://.*$
  7024. type: string
  7025. secretRef:
  7026. description: SecretRef specifies the Secret containing the authentication
  7027. credentials for this Provider.
  7028. properties:
  7029. name:
  7030. description: Name of the referent.
  7031. type: string
  7032. required:
  7033. - name
  7034. type: object
  7035. suspend:
  7036. description: Suspend tells the controller to suspend subsequent events
  7037. handling for this Provider.
  7038. type: boolean
  7039. timeout:
  7040. description: Timeout for sending alerts to the Provider.
  7041. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m))+$
  7042. type: string
  7043. type:
  7044. description: Type specifies which Provider implementation to use.
  7045. enum:
  7046. - slack
  7047. - discord
  7048. - msteams
  7049. - rocket
  7050. - generic
  7051. - generic-hmac
  7052. - github
  7053. - gitlab
  7054. - gitea
  7055. - bitbucket
  7056. - azuredevops
  7057. - googlechat
  7058. - googlepubsub
  7059. - webex
  7060. - sentry
  7061. - azureeventhub
  7062. - telegram
  7063. - lark
  7064. - matrix
  7065. - opsgenie
  7066. - alertmanager
  7067. - grafana
  7068. - githubdispatch
  7069. - pagerduty
  7070. type: string
  7071. username:
  7072. description: Username specifies the name under which events are posted.
  7073. maxLength: 2048
  7074. type: string
  7075. required:
  7076. - type
  7077. type: object
  7078. status:
  7079. default:
  7080. observedGeneration: -1
  7081. description: ProviderStatus defines the observed state of the Provider.
  7082. properties:
  7083. conditions:
  7084. description: Conditions holds the conditions for the Provider.
  7085. items:
  7086. description: "Condition contains details for one aspect of the current
  7087. state of this API Resource. --- This struct is intended for direct
  7088. use as an array at the field path .status.conditions. For example,
  7089. \n type FooStatus struct{ // Represents the observations of a
  7090. foo's current state. // Known .status.conditions.type are: \"Available\",
  7091. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  7092. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  7093. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  7094. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  7095. properties:
  7096. lastTransitionTime:
  7097. description: lastTransitionTime is the last time the condition
  7098. transitioned from one status to another. This should be when
  7099. the underlying condition changed. If that is not known, then
  7100. using the time when the API field changed is acceptable.
  7101. format: date-time
  7102. type: string
  7103. message:
  7104. description: message is a human readable message indicating
  7105. details about the transition. This may be an empty string.
  7106. maxLength: 32768
  7107. type: string
  7108. observedGeneration:
  7109. description: observedGeneration represents the .metadata.generation
  7110. that the condition was set based upon. For instance, if .metadata.generation
  7111. is currently 12, but the .status.conditions[x].observedGeneration
  7112. is 9, the condition is out of date with respect to the current
  7113. state of the instance.
  7114. format: int64
  7115. minimum: 0
  7116. type: integer
  7117. reason:
  7118. description: reason contains a programmatic identifier indicating
  7119. the reason for the condition's last transition. Producers
  7120. of specific condition types may define expected values and
  7121. meanings for this field, and whether the values are considered
  7122. a guaranteed API. The value should be a CamelCase string.
  7123. This field may not be empty.
  7124. maxLength: 1024
  7125. minLength: 1
  7126. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  7127. type: string
  7128. status:
  7129. description: status of the condition, one of True, False, Unknown.
  7130. enum:
  7131. - "True"
  7132. - "False"
  7133. - Unknown
  7134. type: string
  7135. type:
  7136. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  7137. --- Many .condition.type values are consistent across resources
  7138. like Available, but because arbitrary conditions can be useful
  7139. (see .node.status.conditions), the ability to deconflict is
  7140. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  7141. maxLength: 316
  7142. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  7143. type: string
  7144. required:
  7145. - lastTransitionTime
  7146. - message
  7147. - reason
  7148. - status
  7149. - type
  7150. type: object
  7151. type: array
  7152. lastHandledReconcileAt:
  7153. description: LastHandledReconcileAt holds the value of the most recent
  7154. reconcile request value, so a change of the annotation value can
  7155. be detected.
  7156. type: string
  7157. observedGeneration:
  7158. description: ObservedGeneration is the last reconciled generation.
  7159. format: int64
  7160. type: integer
  7161. type: object
  7162. type: object
  7163. served: true
  7164. storage: true
  7165. subresources:
  7166. status: {}
  7167. ---
  7168. apiVersion: apiextensions.k8s.io/v1
  7169. kind: CustomResourceDefinition
  7170. metadata:
  7171. annotations:
  7172. controller-gen.kubebuilder.io/version: v0.12.0
  7173. labels:
  7174. app.kubernetes.io/component: notification-controller
  7175. app.kubernetes.io/instance: flux-system
  7176. app.kubernetes.io/part-of: flux
  7177. app.kubernetes.io/version: v2.0.1
  7178. name: receivers.notification.toolkit.fluxcd.io
  7179. spec:
  7180. group: notification.toolkit.fluxcd.io
  7181. names:
  7182. kind: Receiver
  7183. listKind: ReceiverList
  7184. plural: receivers
  7185. singular: receiver
  7186. scope: Namespaced
  7187. versions:
  7188. - additionalPrinterColumns:
  7189. - jsonPath: .metadata.creationTimestamp
  7190. name: Age
  7191. type: date
  7192. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  7193. name: Ready
  7194. type: string
  7195. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  7196. name: Status
  7197. type: string
  7198. name: v1
  7199. schema:
  7200. openAPIV3Schema:
  7201. description: Receiver is the Schema for the receivers API.
  7202. properties:
  7203. apiVersion:
  7204. description: 'APIVersion defines the versioned schema of this representation
  7205. of an object. Servers should convert recognized schemas to the latest
  7206. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  7207. type: string
  7208. kind:
  7209. description: 'Kind is a string value representing the REST resource this
  7210. object represents. Servers may infer this from the endpoint the client
  7211. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  7212. type: string
  7213. metadata:
  7214. type: object
  7215. spec:
  7216. description: ReceiverSpec defines the desired state of the Receiver.
  7217. properties:
  7218. events:
  7219. description: Events specifies the list of event types to handle, e.g.
  7220. 'push' for GitHub or 'Push Hook' for GitLab.
  7221. items:
  7222. type: string
  7223. type: array
  7224. interval:
  7225. default: 10m
  7226. description: Interval at which to reconcile the Receiver with its
  7227. Secret references.
  7228. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  7229. type: string
  7230. resources:
  7231. description: A list of resources to be notified about changes.
  7232. items:
  7233. description: CrossNamespaceObjectReference contains enough information
  7234. to let you locate the typed referenced object at cluster level
  7235. properties:
  7236. apiVersion:
  7237. description: API version of the referent
  7238. type: string
  7239. kind:
  7240. description: Kind of the referent
  7241. enum:
  7242. - Bucket
  7243. - GitRepository
  7244. - Kustomization
  7245. - HelmRelease
  7246. - HelmChart
  7247. - HelmRepository
  7248. - ImageRepository
  7249. - ImagePolicy
  7250. - ImageUpdateAutomation
  7251. - OCIRepository
  7252. type: string
  7253. matchLabels:
  7254. additionalProperties:
  7255. type: string
  7256. description: MatchLabels is a map of {key,value} pairs. A single
  7257. {key,value} in the matchLabels map is equivalent to an element
  7258. of matchExpressions, whose key field is "key", the operator
  7259. is "In", and the values array contains only "value". The requirements
  7260. are ANDed. MatchLabels requires the name to be set to `*`.
  7261. type: object
  7262. name:
  7263. description: Name of the referent If multiple resources are
  7264. targeted `*` may be set.
  7265. maxLength: 53
  7266. minLength: 1
  7267. type: string
  7268. namespace:
  7269. description: Namespace of the referent
  7270. maxLength: 53
  7271. minLength: 1
  7272. type: string
  7273. required:
  7274. - kind
  7275. - name
  7276. type: object
  7277. type: array
  7278. secretRef:
  7279. description: SecretRef specifies the Secret containing the token used
  7280. to validate the payload authenticity.
  7281. properties:
  7282. name:
  7283. description: Name of the referent.
  7284. type: string
  7285. required:
  7286. - name
  7287. type: object
  7288. suspend:
  7289. description: Suspend tells the controller to suspend subsequent events
  7290. handling for this receiver.
  7291. type: boolean
  7292. type:
  7293. description: Type of webhook sender, used to determine the validation
  7294. procedure and payload deserialization.
  7295. enum:
  7296. - generic
  7297. - generic-hmac
  7298. - github
  7299. - gitlab
  7300. - bitbucket
  7301. - harbor
  7302. - dockerhub
  7303. - quay
  7304. - gcr
  7305. - nexus
  7306. - acr
  7307. type: string
  7308. required:
  7309. - resources
  7310. - secretRef
  7311. - type
  7312. type: object
  7313. status:
  7314. default:
  7315. observedGeneration: -1
  7316. description: ReceiverStatus defines the observed state of the Receiver.
  7317. properties:
  7318. conditions:
  7319. description: Conditions holds the conditions for the Receiver.
  7320. items:
  7321. description: "Condition contains details for one aspect of the current
  7322. state of this API Resource. --- This struct is intended for direct
  7323. use as an array at the field path .status.conditions. For example,
  7324. \n type FooStatus struct{ // Represents the observations of a
  7325. foo's current state. // Known .status.conditions.type are: \"Available\",
  7326. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  7327. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  7328. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  7329. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  7330. properties:
  7331. lastTransitionTime:
  7332. description: lastTransitionTime is the last time the condition
  7333. transitioned from one status to another. This should be when
  7334. the underlying condition changed. If that is not known, then
  7335. using the time when the API field changed is acceptable.
  7336. format: date-time
  7337. type: string
  7338. message:
  7339. description: message is a human readable message indicating
  7340. details about the transition. This may be an empty string.
  7341. maxLength: 32768
  7342. type: string
  7343. observedGeneration:
  7344. description: observedGeneration represents the .metadata.generation
  7345. that the condition was set based upon. For instance, if .metadata.generation
  7346. is currently 12, but the .status.conditions[x].observedGeneration
  7347. is 9, the condition is out of date with respect to the current
  7348. state of the instance.
  7349. format: int64
  7350. minimum: 0
  7351. type: integer
  7352. reason:
  7353. description: reason contains a programmatic identifier indicating
  7354. the reason for the condition's last transition. Producers
  7355. of specific condition types may define expected values and
  7356. meanings for this field, and whether the values are considered
  7357. a guaranteed API. The value should be a CamelCase string.
  7358. This field may not be empty.
  7359. maxLength: 1024
  7360. minLength: 1
  7361. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  7362. type: string
  7363. status:
  7364. description: status of the condition, one of True, False, Unknown.
  7365. enum:
  7366. - "True"
  7367. - "False"
  7368. - Unknown
  7369. type: string
  7370. type:
  7371. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  7372. --- Many .condition.type values are consistent across resources
  7373. like Available, but because arbitrary conditions can be useful
  7374. (see .node.status.conditions), the ability to deconflict is
  7375. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  7376. maxLength: 316
  7377. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  7378. type: string
  7379. required:
  7380. - lastTransitionTime
  7381. - message
  7382. - reason
  7383. - status
  7384. - type
  7385. type: object
  7386. type: array
  7387. lastHandledReconcileAt:
  7388. description: LastHandledReconcileAt holds the value of the most recent
  7389. reconcile request value, so a change of the annotation value can
  7390. be detected.
  7391. type: string
  7392. observedGeneration:
  7393. description: ObservedGeneration is the last observed generation of
  7394. the Receiver object.
  7395. format: int64
  7396. type: integer
  7397. webhookPath:
  7398. description: WebhookPath is the generated incoming webhook address
  7399. in the format of '/hook/sha256sum(token+name+namespace)'.
  7400. type: string
  7401. type: object
  7402. type: object
  7403. served: true
  7404. storage: true
  7405. subresources:
  7406. status: {}
  7407. - additionalPrinterColumns:
  7408. - jsonPath: .metadata.creationTimestamp
  7409. name: Age
  7410. type: date
  7411. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  7412. name: Ready
  7413. type: string
  7414. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  7415. name: Status
  7416. type: string
  7417. deprecated: true
  7418. deprecationWarning: v1beta1 Receiver is deprecated, upgrade to v1
  7419. name: v1beta1
  7420. schema:
  7421. openAPIV3Schema:
  7422. description: Receiver is the Schema for the receivers API
  7423. properties:
  7424. apiVersion:
  7425. description: 'APIVersion defines the versioned schema of this representation
  7426. of an object. Servers should convert recognized schemas to the latest
  7427. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  7428. type: string
  7429. kind:
  7430. description: 'Kind is a string value representing the REST resource this
  7431. object represents. Servers may infer this from the endpoint the client
  7432. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  7433. type: string
  7434. metadata:
  7435. type: object
  7436. spec:
  7437. description: ReceiverSpec defines the desired state of Receiver
  7438. properties:
  7439. events:
  7440. description: A list of events to handle, e.g. 'push' for GitHub or
  7441. 'Push Hook' for GitLab.
  7442. items:
  7443. type: string
  7444. type: array
  7445. resources:
  7446. description: A list of resources to be notified about changes.
  7447. items:
  7448. description: CrossNamespaceObjectReference contains enough information
  7449. to let you locate the typed referenced object at cluster level
  7450. properties:
  7451. apiVersion:
  7452. description: API version of the referent
  7453. type: string
  7454. kind:
  7455. description: Kind of the referent
  7456. enum:
  7457. - Bucket
  7458. - GitRepository
  7459. - Kustomization
  7460. - HelmRelease
  7461. - HelmChart
  7462. - HelmRepository
  7463. - ImageRepository
  7464. - ImagePolicy
  7465. - ImageUpdateAutomation
  7466. - OCIRepository
  7467. type: string
  7468. matchLabels:
  7469. additionalProperties:
  7470. type: string
  7471. description: MatchLabels is a map of {key,value} pairs. A single
  7472. {key,value} in the matchLabels map is equivalent to an element
  7473. of matchExpressions, whose key field is "key", the operator
  7474. is "In", and the values array contains only "value". The requirements
  7475. are ANDed.
  7476. type: object
  7477. name:
  7478. description: Name of the referent
  7479. maxLength: 53
  7480. minLength: 1
  7481. type: string
  7482. namespace:
  7483. description: Namespace of the referent
  7484. maxLength: 53
  7485. minLength: 1
  7486. type: string
  7487. required:
  7488. - name
  7489. type: object
  7490. type: array
  7491. secretRef:
  7492. description: Secret reference containing the token used to validate
  7493. the payload authenticity
  7494. properties:
  7495. name:
  7496. description: Name of the referent.
  7497. type: string
  7498. required:
  7499. - name
  7500. type: object
  7501. suspend:
  7502. description: This flag tells the controller to suspend subsequent
  7503. events handling. Defaults to false.
  7504. type: boolean
  7505. type:
  7506. description: Type of webhook sender, used to determine the validation
  7507. procedure and payload deserialization.
  7508. enum:
  7509. - generic
  7510. - generic-hmac
  7511. - github
  7512. - gitlab
  7513. - bitbucket
  7514. - harbor
  7515. - dockerhub
  7516. - quay
  7517. - gcr
  7518. - nexus
  7519. - acr
  7520. type: string
  7521. required:
  7522. - resources
  7523. - type
  7524. type: object
  7525. status:
  7526. default:
  7527. observedGeneration: -1
  7528. description: ReceiverStatus defines the observed state of Receiver
  7529. properties:
  7530. conditions:
  7531. items:
  7532. description: "Condition contains details for one aspect of the current
  7533. state of this API Resource. --- This struct is intended for direct
  7534. use as an array at the field path .status.conditions. For example,
  7535. \n type FooStatus struct{ // Represents the observations of a
  7536. foo's current state. // Known .status.conditions.type are: \"Available\",
  7537. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  7538. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  7539. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  7540. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  7541. properties:
  7542. lastTransitionTime:
  7543. description: lastTransitionTime is the last time the condition
  7544. transitioned from one status to another. This should be when
  7545. the underlying condition changed. If that is not known, then
  7546. using the time when the API field changed is acceptable.
  7547. format: date-time
  7548. type: string
  7549. message:
  7550. description: message is a human readable message indicating
  7551. details about the transition. This may be an empty string.
  7552. maxLength: 32768
  7553. type: string
  7554. observedGeneration:
  7555. description: observedGeneration represents the .metadata.generation
  7556. that the condition was set based upon. For instance, if .metadata.generation
  7557. is currently 12, but the .status.conditions[x].observedGeneration
  7558. is 9, the condition is out of date with respect to the current
  7559. state of the instance.
  7560. format: int64
  7561. minimum: 0
  7562. type: integer
  7563. reason:
  7564. description: reason contains a programmatic identifier indicating
  7565. the reason for the condition's last transition. Producers
  7566. of specific condition types may define expected values and
  7567. meanings for this field, and whether the values are considered
  7568. a guaranteed API. The value should be a CamelCase string.
  7569. This field may not be empty.
  7570. maxLength: 1024
  7571. minLength: 1
  7572. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  7573. type: string
  7574. status:
  7575. description: status of the condition, one of True, False, Unknown.
  7576. enum:
  7577. - "True"
  7578. - "False"
  7579. - Unknown
  7580. type: string
  7581. type:
  7582. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  7583. --- Many .condition.type values are consistent across resources
  7584. like Available, but because arbitrary conditions can be useful
  7585. (see .node.status.conditions), the ability to deconflict is
  7586. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  7587. maxLength: 316
  7588. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  7589. type: string
  7590. required:
  7591. - lastTransitionTime
  7592. - message
  7593. - reason
  7594. - status
  7595. - type
  7596. type: object
  7597. type: array
  7598. observedGeneration:
  7599. description: ObservedGeneration is the last observed generation.
  7600. format: int64
  7601. type: integer
  7602. url:
  7603. description: Generated webhook URL in the format of '/hook/sha256sum(token+name+namespace)'.
  7604. type: string
  7605. type: object
  7606. type: object
  7607. served: true
  7608. storage: false
  7609. subresources:
  7610. status: {}
  7611. - additionalPrinterColumns:
  7612. - jsonPath: .metadata.creationTimestamp
  7613. name: Age
  7614. type: date
  7615. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  7616. name: Ready
  7617. type: string
  7618. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  7619. name: Status
  7620. type: string
  7621. deprecated: true
  7622. deprecationWarning: v1beta2 Receiver is deprecated, upgrade to v1
  7623. name: v1beta2
  7624. schema:
  7625. openAPIV3Schema:
  7626. description: Receiver is the Schema for the receivers API.
  7627. properties:
  7628. apiVersion:
  7629. description: 'APIVersion defines the versioned schema of this representation
  7630. of an object. Servers should convert recognized schemas to the latest
  7631. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  7632. type: string
  7633. kind:
  7634. description: 'Kind is a string value representing the REST resource this
  7635. object represents. Servers may infer this from the endpoint the client
  7636. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  7637. type: string
  7638. metadata:
  7639. type: object
  7640. spec:
  7641. description: ReceiverSpec defines the desired state of the Receiver.
  7642. properties:
  7643. events:
  7644. description: Events specifies the list of event types to handle, e.g.
  7645. 'push' for GitHub or 'Push Hook' for GitLab.
  7646. items:
  7647. type: string
  7648. type: array
  7649. interval:
  7650. description: Interval at which to reconcile the Receiver with its
  7651. Secret references.
  7652. pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
  7653. type: string
  7654. resources:
  7655. description: A list of resources to be notified about changes.
  7656. items:
  7657. description: CrossNamespaceObjectReference contains enough information
  7658. to let you locate the typed referenced object at cluster level
  7659. properties:
  7660. apiVersion:
  7661. description: API version of the referent
  7662. type: string
  7663. kind:
  7664. description: Kind of the referent
  7665. enum:
  7666. - Bucket
  7667. - GitRepository
  7668. - Kustomization
  7669. - HelmRelease
  7670. - HelmChart
  7671. - HelmRepository
  7672. - ImageRepository
  7673. - ImagePolicy
  7674. - ImageUpdateAutomation
  7675. - OCIRepository
  7676. type: string
  7677. matchLabels:
  7678. additionalProperties:
  7679. type: string
  7680. description: MatchLabels is a map of {key,value} pairs. A single
  7681. {key,value} in the matchLabels map is equivalent to an element
  7682. of matchExpressions, whose key field is "key", the operator
  7683. is "In", and the values array contains only "value". The requirements
  7684. are ANDed. MatchLabels requires the name to be set to `*`.
  7685. type: object
  7686. name:
  7687. description: Name of the referent If multiple resources are
  7688. targeted `*` may be set.
  7689. maxLength: 53
  7690. minLength: 1
  7691. type: string
  7692. namespace:
  7693. description: Namespace of the referent
  7694. maxLength: 53
  7695. minLength: 1
  7696. type: string
  7697. required:
  7698. - kind
  7699. - name
  7700. type: object
  7701. type: array
  7702. secretRef:
  7703. description: SecretRef specifies the Secret containing the token used
  7704. to validate the payload authenticity.
  7705. properties:
  7706. name:
  7707. description: Name of the referent.
  7708. type: string
  7709. required:
  7710. - name
  7711. type: object
  7712. suspend:
  7713. description: Suspend tells the controller to suspend subsequent events
  7714. handling for this receiver.
  7715. type: boolean
  7716. type:
  7717. description: Type of webhook sender, used to determine the validation
  7718. procedure and payload deserialization.
  7719. enum:
  7720. - generic
  7721. - generic-hmac
  7722. - github
  7723. - gitlab
  7724. - bitbucket
  7725. - harbor
  7726. - dockerhub
  7727. - quay
  7728. - gcr
  7729. - nexus
  7730. - acr
  7731. type: string
  7732. required:
  7733. - resources
  7734. - type
  7735. type: object
  7736. status:
  7737. default:
  7738. observedGeneration: -1
  7739. description: ReceiverStatus defines the observed state of the Receiver.
  7740. properties:
  7741. conditions:
  7742. description: Conditions holds the conditions for the Receiver.
  7743. items:
  7744. description: "Condition contains details for one aspect of the current
  7745. state of this API Resource. --- This struct is intended for direct
  7746. use as an array at the field path .status.conditions. For example,
  7747. \n type FooStatus struct{ // Represents the observations of a
  7748. foo's current state. // Known .status.conditions.type are: \"Available\",
  7749. \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge
  7750. // +listType=map // +listMapKey=type Conditions []metav1.Condition
  7751. `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\"
  7752. protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }"
  7753. properties:
  7754. lastTransitionTime:
  7755. description: lastTransitionTime is the last time the condition
  7756. transitioned from one status to another. This should be when
  7757. the underlying condition changed. If that is not known, then
  7758. using the time when the API field changed is acceptable.
  7759. format: date-time
  7760. type: string
  7761. message:
  7762. description: message is a human readable message indicating
  7763. details about the transition. This may be an empty string.
  7764. maxLength: 32768
  7765. type: string
  7766. observedGeneration:
  7767. description: observedGeneration represents the .metadata.generation
  7768. that the condition was set based upon. For instance, if .metadata.generation
  7769. is currently 12, but the .status.conditions[x].observedGeneration
  7770. is 9, the condition is out of date with respect to the current
  7771. state of the instance.
  7772. format: int64
  7773. minimum: 0
  7774. type: integer
  7775. reason:
  7776. description: reason contains a programmatic identifier indicating
  7777. the reason for the condition's last transition. Producers
  7778. of specific condition types may define expected values and
  7779. meanings for this field, and whether the values are considered
  7780. a guaranteed API. The value should be a CamelCase string.
  7781. This field may not be empty.
  7782. maxLength: 1024
  7783. minLength: 1
  7784. pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
  7785. type: string
  7786. status:
  7787. description: status of the condition, one of True, False, Unknown.
  7788. enum:
  7789. - "True"
  7790. - "False"
  7791. - Unknown
  7792. type: string
  7793. type:
  7794. description: type of condition in CamelCase or in foo.example.com/CamelCase.
  7795. --- Many .condition.type values are consistent across resources
  7796. like Available, but because arbitrary conditions can be useful
  7797. (see .node.status.conditions), the ability to deconflict is
  7798. important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
  7799. maxLength: 316
  7800. pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
  7801. type: string
  7802. required:
  7803. - lastTransitionTime
  7804. - message
  7805. - reason
  7806. - status
  7807. - type
  7808. type: object
  7809. type: array
  7810. lastHandledReconcileAt:
  7811. description: LastHandledReconcileAt holds the value of the most recent
  7812. reconcile request value, so a change of the annotation value can
  7813. be detected.
  7814. type: string
  7815. observedGeneration:
  7816. description: ObservedGeneration is the last observed generation of
  7817. the Receiver object.
  7818. format: int64
  7819. type: integer
  7820. url:
  7821. description: 'URL is the generated incoming webhook address in the
  7822. format of ''/hook/sha256sum(token+name+namespace)''. Deprecated:
  7823. Replaced by WebhookPath.'
  7824. type: string
  7825. webhookPath:
  7826. description: WebhookPath is the generated incoming webhook address
  7827. in the format of '/hook/sha256sum(token+name+namespace)'.
  7828. type: string
  7829. type: object
  7830. type: object
  7831. served: true
  7832. storage: false
  7833. subresources:
  7834. status: {}
  7835. ---
  7836. apiVersion: v1
  7837. kind: ServiceAccount
  7838. metadata:
  7839. labels:
  7840. app.kubernetes.io/component: notification-controller
  7841. app.kubernetes.io/instance: flux-system
  7842. app.kubernetes.io/part-of: flux
  7843. app.kubernetes.io/version: v2.0.1
  7844. name: notification-controller
  7845. namespace: flux-system
  7846. ---
  7847. apiVersion: v1
  7848. kind: Service
  7849. metadata:
  7850. labels:
  7851. app.kubernetes.io/component: notification-controller
  7852. app.kubernetes.io/instance: flux-system
  7853. app.kubernetes.io/part-of: flux
  7854. app.kubernetes.io/version: v2.0.1
  7855. control-plane: controller
  7856. name: notification-controller
  7857. namespace: flux-system
  7858. spec:
  7859. ports:
  7860. - name: http
  7861. port: 80
  7862. protocol: TCP
  7863. targetPort: http
  7864. selector:
  7865. app: notification-controller
  7866. type: ClusterIP
  7867. ---
  7868. apiVersion: v1
  7869. kind: Service
  7870. metadata:
  7871. labels:
  7872. app.kubernetes.io/component: notification-controller
  7873. app.kubernetes.io/instance: flux-system
  7874. app.kubernetes.io/part-of: flux
  7875. app.kubernetes.io/version: v2.0.1
  7876. control-plane: controller
  7877. name: webhook-receiver
  7878. namespace: flux-system
  7879. spec:
  7880. ports:
  7881. - name: http
  7882. port: 80
  7883. protocol: TCP
  7884. targetPort: http-webhook
  7885. selector:
  7886. app: notification-controller
  7887. type: ClusterIP
  7888. ---
  7889. apiVersion: apps/v1
  7890. kind: Deployment
  7891. metadata:
  7892. labels:
  7893. app.kubernetes.io/component: notification-controller
  7894. app.kubernetes.io/instance: flux-system
  7895. app.kubernetes.io/part-of: flux
  7896. app.kubernetes.io/version: v2.0.1
  7897. control-plane: controller
  7898. name: notification-controller
  7899. namespace: flux-system
  7900. spec:
  7901. replicas: 1
  7902. selector:
  7903. matchLabels:
  7904. app: notification-controller
  7905. template:
  7906. metadata:
  7907. annotations:
  7908. prometheus.io/port: "8080"
  7909. prometheus.io/scrape: "true"
  7910. labels:
  7911. app: notification-controller
  7912. spec:
  7913. containers:
  7914. - args:
  7915. - --watch-all-namespaces=true
  7916. - --log-level=info
  7917. - --log-encoding=json
  7918. - --enable-leader-election
  7919. env:
  7920. - name: RUNTIME_NAMESPACE
  7921. valueFrom:
  7922. fieldRef:
  7923. fieldPath: metadata.namespace
  7924. image: ghcr.io/fluxcd/notification-controller:v1.0.0
  7925. imagePullPolicy: IfNotPresent
  7926. livenessProbe:
  7927. httpGet:
  7928. path: /healthz
  7929. port: healthz
  7930. name: manager
  7931. ports:
  7932. - containerPort: 9090
  7933. name: http
  7934. protocol: TCP
  7935. - containerPort: 9292
  7936. name: http-webhook
  7937. protocol: TCP
  7938. - containerPort: 8080
  7939. name: http-prom
  7940. protocol: TCP
  7941. - containerPort: 9440
  7942. name: healthz
  7943. protocol: TCP
  7944. readinessProbe:
  7945. httpGet:
  7946. path: /readyz
  7947. port: healthz
  7948. resources:
  7949. limits:
  7950. cpu: 1000m
  7951. memory: 1Gi
  7952. requests:
  7953. cpu: 100m
  7954. memory: 64Mi
  7955. securityContext:
  7956. allowPrivilegeEscalation: false
  7957. capabilities:
  7958. drop:
  7959. - ALL
  7960. readOnlyRootFilesystem: true
  7961. runAsNonRoot: true
  7962. seccompProfile:
  7963. type: RuntimeDefault
  7964. volumeMounts:
  7965. - mountPath: /tmp
  7966. name: temp
  7967. nodeSelector:
  7968. kubernetes.io/os: linux
  7969. securityContext:
  7970. fsGroup: 1337
  7971. serviceAccountName: notification-controller
  7972. terminationGracePeriodSeconds: 10
  7973. volumes:
  7974. - emptyDir: {}
  7975. name: temp