cert-manager.yaml 1.6 MB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066110671106811069110701107111072110731107411075110761107711078110791108011081110821108311084110851108611087110881108911090110911109211093110941109511096110971109811099111001110111102111031110411105111061110711108111091111011111111121111311114111151111611117111181111911120111211112211123111241112511126111271112811129111301113111132111331113411135111361113711138111391114011141111421114311144111451114611147111481114911150111511115211153111541115511156111571115811159111601116111162111631116411165111661116711168111691117011171111721117311174111751117611177111781117911180111811118211183111841118511186111871118811189111901119111192111931119411195111961119711198111991120011201112021120311204112051120611207112081120911210112111121211213112141121511216112171121811219112201122111222112231122411225112261122711228112291123011231112321123311234112351123611237112381123911240112411124211243112441124511246112471124811249112501125111252112531125411255112561125711258112591126011261112621126311264112651126611267112681126911270112711127211273112741127511276112771127811279112801128111282112831128411285112861128711288112891129011291112921129311294112951129611297112981129911300113011130211303113041130511306113071130811309113101131111312113131131411315113161131711318113191132011321113221132311324113251132611327113281132911330113311133211333113341133511336113371133811339113401134111342113431134411345113461134711348113491135011351113521135311354113551135611357113581135911360113611136211363113641136511366113671136811369113701137111372113731137411375113761137711378113791138011381113821138311384113851138611387113881138911390113911139211393113941139511396113971139811399114001140111402114031140411405114061140711408114091141011411114121141311414114151141611417114181141911420114211142211423114241142511426114271142811429114301143111432114331143411435114361143711438114391144011441114421144311444114451144611447114481144911450114511145211453114541145511456114571145811459114601146111462114631146411465114661146711468114691147011471114721147311474114751147611477114781147911480114811148211483114841148511486114871148811489114901149111492114931149411495114961149711498114991150011501115021150311504115051150611507115081150911510115111151211513115141151511516115171151811519115201152111522115231152411525115261152711528115291153011531115321153311534115351153611537115381153911540115411154211543115441154511546115471154811549115501155111552115531155411555115561155711558115591156011561115621156311564115651156611567115681156911570115711157211573115741157511576115771157811579115801158111582115831158411585115861158711588115891159011591115921159311594115951159611597115981159911600116011160211603116041160511606116071160811609116101161111612116131161411615116161161711618116191162011621116221162311624116251162611627116281162911630116311163211633116341163511636116371163811639116401164111642116431164411645116461164711648116491165011651116521165311654116551165611657116581165911660116611166211663116641166511666116671166811669116701167111672116731167411675116761167711678116791168011681116821168311684116851168611687116881168911690116911169211693116941169511696116971169811699117001170111702117031170411705117061170711708117091171011711117121171311714117151171611717117181171911720117211172211723117241172511726117271172811729117301173111732117331173411735117361173711738117391174011741117421174311744117451174611747117481174911750117511175211753117541175511756117571175811759117601176111762117631176411765117661176711768117691177011771117721177311774117751177611777117781177911780117811178211783117841178511786117871178811789117901179111792117931179411795117961179711798117991180011801118021180311804118051180611807118081180911810118111181211813118141181511816118171181811819118201182111822118231182411825118261182711828118291183011831118321183311834118351183611837118381183911840118411184211843118441184511846118471184811849118501185111852118531185411855118561185711858118591186011861118621186311864118651186611867118681186911870118711187211873118741187511876118771187811879118801188111882118831188411885118861188711888118891189011891118921189311894118951189611897118981189911900119011190211903119041190511906119071190811909119101191111912119131191411915119161191711918119191192011921119221192311924119251192611927119281192911930119311193211933119341193511936119371193811939119401194111942119431194411945119461194711948119491195011951119521195311954119551195611957119581195911960119611196211963119641196511966119671196811969119701197111972119731197411975119761197711978119791198011981119821198311984119851198611987119881198911990119911199211993119941199511996119971199811999120001200112002120031200412005120061200712008120091201012011120121201312014120151201612017120181201912020120211202212023120241202512026120271202812029120301203112032120331203412035120361203712038120391204012041120421204312044120451204612047120481204912050120511205212053120541205512056120571205812059120601206112062120631206412065120661206712068120691207012071120721207312074120751207612077120781207912080120811208212083120841208512086120871208812089120901209112092120931209412095120961209712098120991210012101121021210312104121051210612107121081210912110121111211212113121141211512116121171211812119121201212112122121231212412125121261212712128121291213012131121321213312134121351213612137121381213912140121411214212143121441214512146121471214812149121501215112152121531215412155121561215712158121591216012161121621216312164121651216612167121681216912170121711217212173121741217512176121771217812179121801218112182121831218412185121861218712188121891219012191121921219312194121951219612197121981219912200122011220212203122041220512206122071220812209122101221112212122131221412215122161221712218122191222012221122221222312224122251222612227122281222912230122311223212233122341223512236122371223812239122401224112242122431224412245122461224712248122491225012251122521225312254122551225612257122581225912260122611226212263122641226512266122671226812269122701227112272122731227412275122761227712278122791228012281122821228312284122851228612287122881228912290122911229212293122941229512296122971229812299123001230112302123031230412305123061230712308123091231012311123121231312314123151231612317123181231912320123211232212323123241232512326123271232812329123301233112332123331233412335123361233712338123391234012341123421234312344123451234612347123481234912350123511235212353123541235512356123571235812359123601236112362123631236412365123661236712368123691237012371123721237312374123751237612377123781237912380123811238212383123841238512386123871238812389123901239112392123931239412395123961239712398123991240012401124021240312404124051240612407124081240912410124111241212413124141241512416124171241812419124201242112422124231242412425124261242712428124291243012431124321243312434124351243612437124381243912440124411244212443124441244512446124471244812449124501245112452124531245412455124561245712458124591246012461124621246312464124651246612467124681246912470124711247212473124741247512476124771247812479124801248112482124831248412485124861248712488124891249012491124921249312494124951249612497124981249912500125011250212503125041250512506125071250812509125101251112512125131251412515125161251712518125191252012521125221252312524125251252612527125281252912530125311253212533125341253512536125371253812539125401254112542125431254412545125461254712548125491255012551125521255312554125551255612557125581255912560125611256212563125641256512566125671256812569125701257112572125731257412575125761257712578125791258012581125821258312584125851258612587125881258912590125911259212593125941259512596125971259812599126001260112602126031260412605126061260712608126091261012611126121261312614126151261612617126181261912620126211262212623126241262512626126271262812629126301263112632126331263412635126361263712638126391264012641126421264312644126451264612647126481264912650126511265212653126541265512656126571265812659126601266112662126631266412665126661266712668126691267012671126721267312674126751267612677126781267912680126811268212683126841268512686126871268812689126901269112692126931269412695126961269712698126991270012701127021270312704127051270612707127081270912710127111271212713127141271512716127171271812719127201272112722127231272412725127261272712728127291273012731127321273312734127351273612737127381273912740127411274212743127441274512746127471274812749127501275112752127531275412755127561275712758127591276012761127621276312764127651276612767127681276912770127711277212773127741277512776127771277812779127801278112782127831278412785127861278712788127891279012791127921279312794127951279612797127981279912800128011280212803128041280512806128071280812809128101281112812128131281412815128161281712818128191282012821128221282312824128251282612827128281282912830128311283212833128341283512836128371283812839128401284112842128431284412845128461284712848128491285012851128521285312854128551285612857128581285912860128611286212863128641286512866128671286812869128701287112872128731287412875128761287712878128791288012881128821288312884128851288612887128881288912890128911289212893128941289512896128971289812899129001290112902129031290412905129061290712908129091291012911129121291312914129151291612917129181291912920129211292212923129241292512926129271292812929129301293112932129331293412935129361293712938129391294012941129421294312944129451294612947129481294912950129511295212953129541295512956129571295812959129601296112962129631296412965129661296712968129691297012971129721297312974129751297612977129781297912980129811298212983129841298512986129871298812989129901299112992129931299412995129961299712998129991300013001130021300313004130051300613007130081300913010130111301213013130141301513016130171301813019130201302113022130231302413025130261302713028130291303013031130321303313034130351303613037130381303913040130411304213043130441304513046130471304813049130501305113052130531305413055130561305713058130591306013061130621306313064130651306613067130681306913070130711307213073130741307513076130771307813079130801308113082130831308413085130861308713088130891309013091130921309313094130951309613097130981309913100131011310213103131041310513106131071310813109131101311113112131131311413115131161311713118131191312013121131221312313124131251312613127131281312913130131311313213133131341313513136131371313813139131401314113142131431314413145131461314713148131491315013151131521315313154131551315613157131581315913160131611316213163131641316513166131671316813169131701317113172131731317413175131761317713178131791318013181131821318313184131851318613187131881318913190131911319213193131941319513196131971319813199132001320113202132031320413205132061320713208132091321013211132121321313214132151321613217132181321913220132211322213223132241322513226132271322813229132301323113232132331323413235132361323713238132391324013241132421324313244132451324613247132481324913250132511325213253132541325513256132571325813259132601326113262132631326413265132661326713268132691327013271132721327313274132751327613277132781327913280132811328213283132841328513286132871328813289132901329113292132931329413295132961329713298132991330013301133021330313304133051330613307133081330913310133111331213313133141331513316133171331813319133201332113322133231332413325133261332713328133291333013331133321333313334133351333613337133381333913340133411334213343133441334513346133471334813349133501335113352133531335413355133561335713358133591336013361133621336313364133651336613367133681336913370133711337213373133741337513376133771337813379133801338113382133831338413385133861338713388133891339013391133921339313394133951339613397133981339913400134011340213403134041340513406134071340813409134101341113412134131341413415134161341713418134191342013421134221342313424134251342613427134281342913430134311343213433134341343513436134371343813439134401344113442134431344413445134461344713448134491345013451134521345313454134551345613457134581345913460134611346213463134641346513466134671346813469134701347113472134731347413475134761347713478134791348013481134821348313484134851348613487134881348913490134911349213493134941349513496134971349813499135001350113502135031350413505135061350713508135091351013511135121351313514135151351613517135181351913520135211352213523135241352513526135271352813529135301353113532135331353413535135361353713538135391354013541135421354313544135451354613547135481354913550135511355213553135541355513556135571355813559135601356113562135631356413565135661356713568135691357013571135721357313574135751357613577135781357913580135811358213583135841358513586135871358813589135901359113592135931359413595135961359713598135991360013601136021360313604136051360613607136081360913610136111361213613136141361513616136171361813619136201362113622136231362413625136261362713628136291363013631136321363313634136351363613637136381363913640136411364213643136441364513646136471364813649136501365113652136531365413655136561365713658136591366013661136621366313664136651366613667136681366913670136711367213673136741367513676136771367813679136801368113682136831368413685136861368713688136891369013691136921369313694136951369613697136981369913700137011370213703137041370513706137071370813709137101371113712137131371413715137161371713718137191372013721137221372313724137251372613727137281372913730137311373213733137341373513736137371373813739137401374113742137431374413745137461374713748137491375013751137521375313754137551375613757137581375913760137611376213763137641376513766137671376813769137701377113772137731377413775137761377713778137791378013781137821378313784137851378613787137881378913790137911379213793137941379513796137971379813799138001380113802138031380413805138061380713808138091381013811138121381313814138151381613817138181381913820138211382213823138241382513826138271382813829138301383113832138331383413835138361383713838138391384013841138421384313844138451384613847138481384913850138511385213853138541385513856138571385813859138601386113862138631386413865138661386713868138691387013871138721387313874138751387613877138781387913880138811388213883138841388513886138871388813889138901389113892138931389413895138961389713898138991390013901139021390313904139051390613907139081390913910139111391213913139141391513916139171391813919139201392113922139231392413925139261392713928139291393013931139321393313934139351393613937139381393913940139411394213943139441394513946139471394813949139501395113952139531395413955139561395713958139591396013961139621396313964139651396613967139681396913970139711397213973139741397513976139771397813979139801398113982139831398413985139861398713988139891399013991139921399313994139951399613997139981399914000140011400214003140041400514006140071400814009140101401114012140131401414015140161401714018140191402014021140221402314024140251402614027140281402914030140311403214033140341403514036140371403814039140401404114042140431404414045140461404714048140491405014051140521405314054140551405614057140581405914060140611406214063140641406514066140671406814069140701407114072140731407414075140761407714078140791408014081140821408314084140851408614087140881408914090140911409214093140941409514096140971409814099141001410114102141031410414105141061410714108141091411014111141121411314114141151411614117141181411914120141211412214123141241412514126141271412814129141301413114132141331413414135141361413714138141391414014141141421414314144141451414614147141481414914150141511415214153141541415514156141571415814159141601416114162141631416414165141661416714168141691417014171141721417314174141751417614177141781417914180141811418214183141841418514186141871418814189141901419114192141931419414195141961419714198141991420014201142021420314204142051420614207142081420914210142111421214213142141421514216142171421814219142201422114222142231422414225142261422714228142291423014231142321423314234142351423614237142381423914240142411424214243142441424514246142471424814249142501425114252142531425414255142561425714258142591426014261142621426314264142651426614267142681426914270142711427214273142741427514276142771427814279142801428114282142831428414285142861428714288142891429014291142921429314294142951429614297142981429914300143011430214303143041430514306143071430814309143101431114312143131431414315143161431714318143191432014321143221432314324143251432614327143281432914330143311433214333143341433514336143371433814339143401434114342143431434414345143461434714348143491435014351143521435314354143551435614357143581435914360143611436214363143641436514366143671436814369143701437114372143731437414375143761437714378143791438014381143821438314384143851438614387143881438914390143911439214393143941439514396143971439814399144001440114402144031440414405144061440714408144091441014411144121441314414144151441614417144181441914420144211442214423144241442514426144271442814429144301443114432144331443414435144361443714438144391444014441144421444314444144451444614447144481444914450144511445214453144541445514456144571445814459144601446114462144631446414465144661446714468144691447014471144721447314474144751447614477144781447914480144811448214483144841448514486144871448814489144901449114492144931449414495144961449714498144991450014501145021450314504145051450614507145081450914510145111451214513145141451514516145171451814519145201452114522145231452414525145261452714528145291453014531145321453314534145351453614537145381453914540145411454214543145441454514546145471454814549145501455114552145531455414555145561455714558145591456014561145621456314564145651456614567145681456914570145711457214573145741457514576145771457814579145801458114582145831458414585145861458714588145891459014591145921459314594145951459614597145981459914600146011460214603146041460514606146071460814609146101461114612146131461414615146161461714618146191462014621146221462314624146251462614627146281462914630146311463214633146341463514636146371463814639146401464114642146431464414645146461464714648146491465014651146521465314654146551465614657146581465914660146611466214663146641466514666146671466814669146701467114672146731467414675146761467714678146791468014681146821468314684146851468614687146881468914690146911469214693146941469514696146971469814699147001470114702147031470414705147061470714708147091471014711147121471314714147151471614717147181471914720147211472214723147241472514726147271472814729147301473114732147331473414735147361473714738147391474014741147421474314744147451474614747147481474914750147511475214753147541475514756147571475814759147601476114762147631476414765147661476714768147691477014771147721477314774147751477614777147781477914780147811478214783147841478514786147871478814789147901479114792147931479414795147961479714798147991480014801148021480314804148051480614807148081480914810148111481214813148141481514816148171481814819148201482114822148231482414825148261482714828148291483014831148321483314834148351483614837148381483914840148411484214843148441484514846148471484814849148501485114852148531485414855148561485714858148591486014861148621486314864148651486614867148681486914870148711487214873148741487514876148771487814879148801488114882148831488414885148861488714888148891489014891148921489314894148951489614897148981489914900149011490214903149041490514906149071490814909149101491114912149131491414915149161491714918149191492014921149221492314924149251492614927149281492914930149311493214933149341493514936149371493814939149401494114942149431494414945149461494714948149491495014951149521495314954149551495614957149581495914960149611496214963149641496514966149671496814969149701497114972149731497414975149761497714978149791498014981149821498314984149851498614987149881498914990149911499214993149941499514996149971499814999150001500115002150031500415005150061500715008150091501015011150121501315014150151501615017150181501915020150211502215023150241502515026150271502815029150301503115032150331503415035150361503715038150391504015041150421504315044150451504615047150481504915050150511505215053150541505515056150571505815059150601506115062150631506415065150661506715068150691507015071150721507315074150751507615077150781507915080150811508215083150841508515086150871508815089150901509115092150931509415095150961509715098150991510015101151021510315104151051510615107151081510915110151111511215113151141511515116151171511815119151201512115122151231512415125151261512715128151291513015131151321513315134151351513615137151381513915140151411514215143151441514515146151471514815149151501515115152151531515415155151561515715158151591516015161151621516315164151651516615167151681516915170151711517215173151741517515176151771517815179151801518115182151831518415185151861518715188151891519015191151921519315194151951519615197151981519915200152011520215203152041520515206152071520815209152101521115212152131521415215152161521715218152191522015221152221522315224152251522615227152281522915230152311523215233152341523515236152371523815239152401524115242152431524415245152461524715248152491525015251152521525315254152551525615257152581525915260152611526215263152641526515266152671526815269152701527115272152731527415275152761527715278152791528015281152821528315284152851528615287152881528915290152911529215293152941529515296152971529815299153001530115302153031530415305153061530715308153091531015311153121531315314153151531615317153181531915320153211532215323153241532515326153271532815329153301533115332153331533415335153361533715338153391534015341153421534315344153451534615347153481534915350153511535215353153541535515356153571535815359153601536115362153631536415365153661536715368153691537015371153721537315374153751537615377153781537915380153811538215383153841538515386153871538815389153901539115392153931539415395153961539715398153991540015401154021540315404154051540615407154081540915410154111541215413154141541515416154171541815419154201542115422154231542415425154261542715428154291543015431154321543315434154351543615437154381543915440154411544215443154441544515446154471544815449154501545115452154531545415455154561545715458154591546015461154621546315464154651546615467154681546915470154711547215473154741547515476154771547815479154801548115482154831548415485154861548715488154891549015491154921549315494154951549615497154981549915500155011550215503155041550515506155071550815509155101551115512155131551415515155161551715518155191552015521155221552315524155251552615527155281552915530155311553215533155341553515536155371553815539155401554115542155431554415545155461554715548155491555015551155521555315554155551555615557155581555915560155611556215563155641556515566155671556815569155701557115572155731557415575155761557715578155791558015581155821558315584155851558615587155881558915590155911559215593155941559515596155971559815599156001560115602156031560415605156061560715608156091561015611156121561315614156151561615617156181561915620156211562215623156241562515626156271562815629156301563115632156331563415635156361563715638156391564015641156421564315644156451564615647156481564915650156511565215653156541565515656156571565815659156601566115662156631566415665156661566715668156691567015671156721567315674156751567615677156781567915680156811568215683156841568515686156871568815689156901569115692156931569415695156961569715698156991570015701157021570315704157051570615707157081570915710157111571215713157141571515716157171571815719157201572115722157231572415725157261572715728157291573015731157321573315734157351573615737157381573915740157411574215743157441574515746157471574815749157501575115752157531575415755157561575715758157591576015761157621576315764157651576615767157681576915770157711577215773157741577515776157771577815779157801578115782157831578415785157861578715788157891579015791157921579315794157951579615797157981579915800158011580215803158041580515806158071580815809158101581115812158131581415815158161581715818158191582015821158221582315824158251582615827158281582915830158311583215833158341583515836158371583815839158401584115842158431584415845158461584715848158491585015851158521585315854158551585615857158581585915860158611586215863158641586515866158671586815869158701587115872158731587415875158761587715878158791588015881158821588315884158851588615887158881588915890158911589215893158941589515896158971589815899159001590115902159031590415905159061590715908159091591015911159121591315914159151591615917159181591915920159211592215923159241592515926159271592815929159301593115932159331593415935159361593715938159391594015941159421594315944159451594615947159481594915950159511595215953159541595515956159571595815959159601596115962159631596415965159661596715968159691597015971159721597315974159751597615977159781597915980159811598215983159841598515986159871598815989159901599115992159931599415995159961599715998159991600016001160021600316004160051600616007160081600916010160111601216013160141601516016160171601816019160201602116022160231602416025160261602716028160291603016031160321603316034160351603616037160381603916040160411604216043160441604516046160471604816049160501605116052160531605416055160561605716058160591606016061160621606316064160651606616067160681606916070160711607216073160741607516076160771607816079160801608116082160831608416085160861608716088160891609016091160921609316094160951609616097160981609916100161011610216103161041610516106161071610816109161101611116112161131611416115161161611716118161191612016121161221612316124161251612616127161281612916130161311613216133161341613516136161371613816139161401614116142161431614416145161461614716148161491615016151161521615316154161551615616157161581615916160161611616216163161641616516166161671616816169161701617116172161731617416175161761617716178161791618016181161821618316184161851618616187161881618916190161911619216193161941619516196161971619816199162001620116202162031620416205162061620716208162091621016211162121621316214162151621616217162181621916220162211622216223162241622516226162271622816229162301623116232162331623416235162361623716238162391624016241162421624316244162451624616247162481624916250162511625216253162541625516256162571625816259162601626116262162631626416265162661626716268162691627016271162721627316274162751627616277162781627916280162811628216283162841628516286162871628816289162901629116292162931629416295162961629716298162991630016301163021630316304163051630616307163081630916310163111631216313163141631516316163171631816319163201632116322163231632416325163261632716328163291633016331163321633316334163351633616337163381633916340163411634216343163441634516346163471634816349163501635116352163531635416355163561635716358163591636016361163621636316364163651636616367163681636916370163711637216373163741637516376163771637816379163801638116382163831638416385163861638716388163891639016391163921639316394163951639616397163981639916400164011640216403164041640516406164071640816409164101641116412164131641416415164161641716418164191642016421164221642316424164251642616427164281642916430164311643216433164341643516436164371643816439164401644116442164431644416445164461644716448164491645016451164521645316454164551645616457164581645916460164611646216463164641646516466164671646816469164701647116472164731647416475164761647716478164791648016481164821648316484164851648616487164881648916490164911649216493164941649516496164971649816499165001650116502165031650416505165061650716508165091651016511165121651316514165151651616517165181651916520165211652216523165241652516526165271652816529165301653116532165331653416535165361653716538165391654016541165421654316544165451654616547165481654916550165511655216553165541655516556165571655816559165601656116562165631656416565165661656716568165691657016571165721657316574165751657616577165781657916580165811658216583165841658516586165871658816589165901659116592165931659416595165961659716598165991660016601166021660316604166051660616607166081660916610166111661216613166141661516616166171661816619166201662116622166231662416625166261662716628166291663016631166321663316634166351663616637166381663916640166411664216643166441664516646166471664816649166501665116652166531665416655166561665716658166591666016661166621666316664166651666616667166681666916670166711667216673166741667516676166771667816679166801668116682166831668416685166861668716688166891669016691166921669316694166951669616697166981669916700167011670216703167041670516706167071670816709167101671116712167131671416715167161671716718167191672016721167221672316724167251672616727167281672916730167311673216733167341673516736167371673816739167401674116742167431674416745167461674716748167491675016751167521675316754167551675616757167581675916760167611676216763167641676516766167671676816769167701677116772167731677416775167761677716778167791678016781167821678316784167851678616787167881678916790167911679216793167941679516796167971679816799168001680116802168031680416805168061680716808168091681016811168121681316814168151681616817168181681916820168211682216823168241682516826168271682816829168301683116832168331683416835168361683716838168391684016841168421684316844168451684616847168481684916850168511685216853168541685516856168571685816859168601686116862168631686416865168661686716868168691687016871168721687316874168751687616877168781687916880168811688216883168841688516886168871688816889168901689116892168931689416895168961689716898168991690016901169021690316904169051690616907169081690916910169111691216913169141691516916169171691816919169201692116922169231692416925169261692716928169291693016931169321693316934169351693616937169381693916940169411694216943169441694516946169471694816949169501695116952169531695416955169561695716958169591696016961169621696316964169651696616967169681696916970169711697216973169741697516976169771697816979169801698116982169831698416985169861698716988169891699016991169921699316994169951699616997169981699917000170011700217003170041700517006170071700817009170101701117012170131701417015170161701717018170191702017021170221702317024170251702617027170281702917030170311703217033170341703517036170371703817039170401704117042170431704417045170461704717048170491705017051170521705317054170551705617057170581705917060170611706217063170641706517066170671706817069170701707117072170731707417075170761707717078170791708017081170821708317084170851708617087170881708917090170911709217093170941709517096170971709817099171001710117102171031710417105171061710717108171091711017111171121711317114171151711617117171181711917120171211712217123171241712517126171271712817129171301713117132171331713417135171361713717138171391714017141171421714317144171451714617147171481714917150171511715217153171541715517156171571715817159171601716117162171631716417165171661716717168171691717017171171721717317174171751717617177171781717917180171811718217183171841718517186171871718817189171901719117192171931719417195171961719717198171991720017201172021720317204172051720617207172081720917210172111721217213172141721517216172171721817219172201722117222172231722417225172261722717228172291723017231172321723317234172351723617237172381723917240172411724217243172441724517246172471724817249172501725117252172531725417255172561725717258172591726017261172621726317264172651726617267172681726917270172711727217273172741727517276172771727817279172801728117282172831728417285172861728717288172891729017291172921729317294172951729617297172981729917300173011730217303173041730517306173071730817309173101731117312173131731417315173161731717318173191732017321173221732317324173251732617327173281732917330173311733217333173341733517336173371733817339173401734117342173431734417345173461734717348173491735017351173521735317354173551735617357173581735917360173611736217363173641736517366173671736817369173701737117372173731737417375173761737717378173791738017381173821738317384173851738617387173881738917390173911739217393173941739517396173971739817399174001740117402174031740417405174061740717408174091741017411174121741317414174151741617417174181741917420174211742217423174241742517426174271742817429174301743117432174331743417435174361743717438174391744017441174421744317444174451744617447174481744917450174511745217453174541745517456174571745817459174601746117462174631746417465174661746717468174691747017471174721747317474174751747617477174781747917480174811748217483174841748517486174871748817489174901749117492174931749417495174961749717498174991750017501175021750317504175051750617507175081750917510175111751217513175141751517516175171751817519175201752117522175231752417525175261752717528175291753017531175321753317534175351753617537175381753917540175411754217543175441754517546175471754817549175501755117552175531755417555175561755717558175591756017561175621756317564175651756617567175681756917570175711757217573175741757517576175771757817579175801758117582175831758417585175861758717588175891759017591175921759317594175951759617597175981759917600176011760217603176041760517606176071760817609176101761117612176131761417615176161761717618176191762017621176221762317624176251762617627176281762917630176311763217633176341763517636176371763817639176401764117642176431764417645176461764717648176491765017651176521765317654176551765617657176581765917660176611766217663176641766517666176671766817669176701767117672176731767417675176761767717678176791768017681176821768317684176851768617687176881768917690176911769217693176941769517696176971769817699177001770117702177031770417705177061770717708177091771017711177121771317714177151771617717177181771917720177211772217723177241772517726177271772817729177301773117732177331773417735177361773717738177391774017741177421774317744177451774617747177481774917750177511775217753177541775517756177571775817759177601776117762177631776417765177661776717768177691777017771177721777317774177751777617777177781777917780177811778217783177841778517786177871778817789177901779117792177931779417795177961779717798177991780017801178021780317804178051780617807178081780917810178111781217813178141781517816178171781817819178201782117822178231782417825178261782717828178291783017831178321783317834178351783617837178381783917840178411784217843178441784517846178471784817849178501785117852178531785417855178561785717858178591786017861178621786317864178651786617867178681786917870178711787217873178741787517876178771787817879178801788117882178831788417885178861788717888178891789017891178921789317894178951789617897178981789917900179011790217903179041790517906179071790817909179101791117912179131791417915179161791717918179191792017921179221792317924179251792617927179281792917930179311793217933179341793517936179371793817939179401794117942179431794417945179461794717948179491795017951179521795317954179551795617957179581795917960179611796217963179641796517966179671796817969179701797117972179731797417975179761797717978179791798017981179821798317984179851798617987179881798917990179911799217993179941799517996179971799817999180001800118002180031800418005180061800718008180091801018011180121801318014180151801618017180181801918020180211802218023180241802518026180271802818029180301803118032180331803418035180361803718038180391804018041180421804318044180451804618047180481804918050180511805218053180541805518056180571805818059180601806118062180631806418065180661806718068180691807018071180721807318074180751807618077180781807918080180811808218083180841808518086180871808818089180901809118092180931809418095180961809718098180991810018101181021810318104181051810618107181081810918110181111811218113181141811518116181171811818119181201812118122181231812418125181261812718128181291813018131181321813318134181351813618137181381813918140181411814218143181441814518146181471814818149181501815118152181531815418155181561815718158181591816018161181621816318164181651816618167181681816918170181711817218173181741817518176181771817818179181801818118182181831818418185181861818718188181891819018191181921819318194181951819618197181981819918200182011820218203182041820518206182071820818209182101821118212182131821418215182161821718218182191822018221182221822318224182251822618227182281822918230182311823218233182341823518236182371823818239182401824118242182431824418245182461824718248182491825018251182521825318254182551825618257182581825918260182611826218263182641826518266182671826818269182701827118272182731827418275182761827718278182791828018281182821828318284182851828618287182881828918290182911829218293182941829518296182971829818299183001830118302183031830418305183061830718308183091831018311183121831318314183151831618317183181831918320183211832218323183241832518326183271832818329183301833118332183331833418335183361833718338183391834018341183421834318344183451834618347183481834918350183511835218353183541835518356183571835818359183601836118362183631836418365183661836718368183691837018371183721837318374183751837618377183781837918380183811838218383183841838518386183871838818389183901839118392183931839418395183961839718398183991840018401184021840318404184051840618407184081840918410184111841218413184141841518416184171841818419184201842118422184231842418425184261842718428184291843018431184321843318434184351843618437184381843918440184411844218443184441844518446184471844818449184501845118452184531845418455184561845718458184591846018461184621846318464184651846618467184681846918470184711847218473184741847518476184771847818479184801848118482184831848418485184861848718488184891849018491184921849318494184951849618497184981849918500185011850218503185041850518506185071850818509185101851118512185131851418515185161851718518185191852018521185221852318524185251852618527185281852918530185311853218533185341853518536185371853818539185401854118542185431854418545185461854718548185491855018551185521855318554185551855618557185581855918560185611856218563185641856518566185671856818569185701857118572185731857418575185761857718578185791858018581185821858318584185851858618587185881858918590185911859218593185941859518596185971859818599186001860118602186031860418605186061860718608186091861018611186121861318614186151861618617186181861918620186211862218623186241862518626186271862818629186301863118632186331863418635186361863718638186391864018641186421864318644186451864618647186481864918650186511865218653186541865518656186571865818659186601866118662186631866418665186661866718668186691867018671186721867318674186751867618677186781867918680186811868218683186841868518686186871868818689186901869118692186931869418695186961869718698186991870018701187021870318704187051870618707187081870918710187111871218713187141871518716187171871818719187201872118722187231872418725187261872718728187291873018731187321873318734187351873618737187381873918740187411874218743187441874518746187471874818749187501875118752187531875418755187561875718758187591876018761187621876318764187651876618767187681876918770187711877218773187741877518776187771877818779187801878118782187831878418785187861878718788187891879018791187921879318794187951879618797187981879918800188011880218803188041880518806188071880818809188101881118812188131881418815188161881718818188191882018821188221882318824188251882618827188281882918830188311883218833188341883518836188371883818839188401884118842188431884418845188461884718848188491885018851188521885318854188551885618857188581885918860188611886218863188641886518866188671886818869188701887118872188731887418875188761887718878188791888018881188821888318884188851888618887188881888918890188911889218893188941889518896188971889818899189001890118902189031890418905189061890718908189091891018911189121891318914189151891618917189181891918920189211892218923189241892518926189271892818929189301893118932189331893418935189361893718938189391894018941189421894318944189451894618947189481894918950189511895218953189541895518956189571895818959189601896118962189631896418965189661896718968189691897018971189721897318974189751897618977189781897918980189811898218983189841898518986189871898818989189901899118992189931899418995189961899718998189991900019001190021900319004190051900619007190081900919010190111901219013190141901519016190171901819019190201902119022190231902419025190261902719028190291903019031190321903319034190351903619037190381903919040190411904219043190441904519046190471904819049190501905119052190531905419055190561905719058190591906019061190621906319064190651906619067190681906919070190711907219073190741907519076190771907819079190801908119082190831908419085190861908719088190891909019091190921909319094190951909619097190981909919100191011910219103191041910519106191071910819109191101911119112191131911419115191161911719118191191912019121191221912319124191251912619127191281912919130191311913219133191341913519136191371913819139191401914119142191431914419145191461914719148191491915019151191521915319154191551915619157191581915919160191611916219163191641916519166191671916819169191701917119172191731917419175191761917719178191791918019181191821918319184191851918619187191881918919190191911919219193191941919519196191971919819199192001920119202192031920419205192061920719208192091921019211192121921319214192151921619217192181921919220192211922219223192241922519226192271922819229192301923119232192331923419235192361923719238192391924019241192421924319244192451924619247192481924919250192511925219253192541925519256192571925819259192601926119262192631926419265192661926719268192691927019271192721927319274192751927619277192781927919280192811928219283192841928519286192871928819289192901929119292192931929419295192961929719298192991930019301193021930319304193051930619307193081930919310193111931219313193141931519316193171931819319193201932119322193231932419325193261932719328193291933019331193321933319334193351933619337193381933919340193411934219343193441934519346193471934819349193501935119352193531935419355193561935719358193591936019361193621936319364193651936619367193681936919370193711937219373193741937519376193771937819379193801938119382193831938419385193861938719388193891939019391193921939319394193951939619397193981939919400194011940219403194041940519406194071940819409194101941119412194131941419415194161941719418194191942019421194221942319424194251942619427194281942919430194311943219433194341943519436194371943819439194401944119442194431944419445194461944719448194491945019451194521945319454194551945619457194581945919460194611946219463194641946519466194671946819469194701947119472194731947419475194761947719478194791948019481194821948319484194851948619487194881948919490194911949219493194941949519496194971949819499195001950119502195031950419505195061950719508195091951019511195121951319514195151951619517195181951919520195211952219523195241952519526195271952819529195301953119532195331953419535195361953719538195391954019541195421954319544195451954619547195481954919550195511955219553195541955519556195571955819559195601956119562195631956419565195661956719568195691957019571195721957319574195751957619577195781957919580195811958219583195841958519586195871958819589195901959119592195931959419595195961959719598195991960019601196021960319604196051960619607196081960919610196111961219613196141961519616196171961819619196201962119622196231962419625196261962719628196291963019631196321963319634196351963619637196381963919640196411964219643196441964519646196471964819649196501965119652196531965419655196561965719658196591966019661196621966319664196651966619667196681966919670196711967219673196741967519676196771967819679196801968119682196831968419685196861968719688196891969019691196921969319694196951969619697196981969919700197011970219703197041970519706197071970819709197101971119712197131971419715197161971719718197191972019721197221972319724197251972619727197281972919730197311973219733197341973519736197371973819739197401974119742197431974419745197461974719748197491975019751197521975319754197551975619757197581975919760197611976219763197641976519766197671976819769197701977119772197731977419775197761977719778197791978019781197821978319784197851978619787197881978919790197911979219793197941979519796197971979819799198001980119802198031980419805198061980719808198091981019811198121981319814198151981619817198181981919820198211982219823198241982519826198271982819829198301983119832198331983419835198361983719838198391984019841198421984319844198451984619847198481984919850198511985219853198541985519856198571985819859198601986119862198631986419865198661986719868198691987019871198721987319874198751987619877198781987919880198811988219883198841988519886198871988819889198901989119892198931989419895198961989719898198991990019901199021990319904199051990619907199081990919910199111991219913199141991519916199171991819919199201992119922199231992419925199261992719928199291993019931199321993319934199351993619937199381993919940199411994219943199441994519946199471994819949199501995119952199531995419955199561995719958199591996019961199621996319964199651996619967199681996919970199711997219973199741997519976199771997819979199801998119982199831998419985199861998719988199891999019991199921999319994199951999619997199981999920000200012000220003200042000520006200072000820009200102001120012200132001420015200162001720018200192002020021200222002320024200252002620027200282002920030200312003220033200342003520036200372003820039200402004120042200432004420045200462004720048200492005020051200522005320054200552005620057200582005920060200612006220063200642006520066200672006820069200702007120072200732007420075200762007720078200792008020081200822008320084200852008620087200882008920090200912009220093200942009520096200972009820099201002010120102201032010420105201062010720108201092011020111201122011320114201152011620117201182011920120201212012220123201242012520126201272012820129201302013120132201332013420135201362013720138201392014020141201422014320144201452014620147201482014920150201512015220153201542015520156201572015820159201602016120162201632016420165201662016720168201692017020171201722017320174201752017620177201782017920180201812018220183201842018520186201872018820189201902019120192201932019420195201962019720198201992020020201202022020320204202052020620207202082020920210202112021220213202142021520216202172021820219202202022120222202232022420225202262022720228202292023020231202322023320234202352023620237202382023920240202412024220243202442024520246202472024820249202502025120252202532025420255202562025720258202592026020261202622026320264202652026620267202682026920270202712027220273202742027520276202772027820279202802028120282202832028420285202862028720288202892029020291202922029320294202952029620297202982029920300203012030220303203042030520306203072030820309203102031120312203132031420315203162031720318203192032020321203222032320324203252032620327203282032920330203312033220333203342033520336203372033820339203402034120342203432034420345203462034720348203492035020351203522035320354203552035620357203582035920360203612036220363203642036520366203672036820369203702037120372203732037420375203762037720378203792038020381203822038320384203852038620387203882038920390203912039220393203942039520396203972039820399204002040120402204032040420405204062040720408204092041020411204122041320414204152041620417204182041920420204212042220423204242042520426204272042820429204302043120432204332043420435204362043720438204392044020441204422044320444204452044620447204482044920450204512045220453204542045520456204572045820459204602046120462204632046420465204662046720468204692047020471204722047320474204752047620477204782047920480204812048220483204842048520486204872048820489204902049120492204932049420495204962049720498204992050020501205022050320504205052050620507205082050920510205112051220513205142051520516205172051820519205202052120522205232052420525205262052720528205292053020531205322053320534205352053620537205382053920540205412054220543205442054520546205472054820549205502055120552205532055420555205562055720558205592056020561205622056320564205652056620567205682056920570205712057220573205742057520576205772057820579205802058120582205832058420585205862058720588205892059020591205922059320594205952059620597205982059920600206012060220603206042060520606206072060820609206102061120612206132061420615206162061720618206192062020621206222062320624206252062620627206282062920630206312063220633206342063520636206372063820639206402064120642206432064420645206462064720648206492065020651206522065320654206552065620657206582065920660206612066220663206642066520666206672066820669206702067120672206732067420675206762067720678206792068020681206822068320684206852068620687206882068920690206912069220693206942069520696206972069820699207002070120702207032070420705207062070720708207092071020711207122071320714207152071620717207182071920720207212072220723207242072520726207272072820729207302073120732207332073420735207362073720738207392074020741207422074320744207452074620747207482074920750207512075220753207542075520756207572075820759207602076120762207632076420765207662076720768207692077020771207722077320774207752077620777207782077920780207812078220783207842078520786207872078820789207902079120792207932079420795207962079720798207992080020801208022080320804208052080620807208082080920810208112081220813208142081520816208172081820819208202082120822208232082420825208262082720828208292083020831208322083320834208352083620837208382083920840208412084220843208442084520846208472084820849208502085120852208532085420855208562085720858208592086020861208622086320864208652086620867208682086920870208712087220873208742087520876208772087820879208802088120882208832088420885208862088720888208892089020891208922089320894208952089620897208982089920900209012090220903209042090520906209072090820909209102091120912209132091420915209162091720918209192092020921209222092320924209252092620927209282092920930209312093220933209342093520936209372093820939209402094120942209432094420945209462094720948209492095020951209522095320954209552095620957209582095920960209612096220963209642096520966209672096820969209702097120972209732097420975209762097720978209792098020981209822098320984209852098620987209882098920990209912099220993209942099520996209972099820999210002100121002210032100421005210062100721008210092101021011210122101321014210152101621017210182101921020210212102221023210242102521026210272102821029210302103121032210332103421035210362103721038210392104021041210422104321044210452104621047210482104921050210512105221053210542105521056210572105821059210602106121062210632106421065210662106721068210692107021071210722107321074210752107621077210782107921080210812108221083210842108521086210872108821089210902109121092210932109421095210962109721098210992110021101211022110321104211052110621107211082110921110211112111221113211142111521116211172111821119211202112121122211232112421125211262112721128211292113021131211322113321134211352113621137211382113921140211412114221143211442114521146211472114821149211502115121152211532115421155211562115721158211592116021161211622116321164211652116621167211682116921170211712117221173211742117521176211772117821179211802118121182211832118421185211862118721188211892119021191211922119321194211952119621197211982119921200212012120221203212042120521206212072120821209212102121121212212132121421215212162121721218212192122021221212222122321224212252122621227212282122921230212312123221233212342123521236212372123821239212402124121242212432124421245212462124721248212492125021251212522125321254212552125621257212582125921260212612126221263212642126521266212672126821269212702127121272212732127421275212762127721278212792128021281212822128321284212852128621287212882128921290212912129221293212942129521296212972129821299213002130121302213032130421305213062130721308213092131021311213122131321314213152131621317213182131921320213212132221323213242132521326213272132821329213302133121332213332133421335213362133721338213392134021341213422134321344213452134621347213482134921350213512135221353213542135521356213572135821359213602136121362213632136421365213662136721368213692137021371213722137321374213752137621377213782137921380213812138221383213842138521386213872138821389213902139121392213932139421395213962139721398213992140021401214022140321404214052140621407214082140921410214112141221413214142141521416214172141821419214202142121422214232142421425214262142721428214292143021431214322143321434214352143621437214382143921440214412144221443214442144521446214472144821449214502145121452214532145421455214562145721458214592146021461214622146321464214652146621467214682146921470214712147221473214742147521476214772147821479214802148121482214832148421485214862148721488214892149021491214922149321494214952149621497214982149921500215012150221503215042150521506215072150821509215102151121512215132151421515215162151721518215192152021521215222152321524215252152621527215282152921530215312153221533215342153521536215372153821539215402154121542215432154421545215462154721548215492155021551215522155321554215552155621557215582155921560215612156221563215642156521566215672156821569215702157121572215732157421575215762157721578215792158021581215822158321584215852158621587215882158921590215912159221593215942159521596215972159821599216002160121602216032160421605216062160721608216092161021611216122161321614216152161621617216182161921620216212162221623216242162521626216272162821629216302163121632216332163421635216362163721638216392164021641216422164321644216452164621647216482164921650216512165221653216542165521656216572165821659216602166121662216632166421665216662166721668216692167021671216722167321674216752167621677216782167921680216812168221683216842168521686216872168821689216902169121692216932169421695216962169721698216992170021701217022170321704217052170621707217082170921710217112171221713217142171521716217172171821719217202172121722217232172421725217262172721728217292173021731217322173321734217352173621737217382173921740217412174221743217442174521746217472174821749217502175121752217532175421755217562175721758217592176021761217622176321764217652176621767217682176921770217712177221773217742177521776217772177821779217802178121782217832178421785217862178721788217892179021791217922179321794217952179621797217982179921800218012180221803218042180521806218072180821809218102181121812218132181421815218162181721818218192182021821218222182321824218252182621827218282182921830218312183221833218342183521836218372183821839218402184121842218432184421845218462184721848218492185021851218522185321854218552185621857218582185921860218612186221863218642186521866218672186821869218702187121872218732187421875218762187721878218792188021881218822188321884218852188621887218882188921890218912189221893218942189521896218972189821899219002190121902219032190421905219062190721908219092191021911219122191321914219152191621917219182191921920219212192221923219242192521926219272192821929219302193121932219332193421935219362193721938219392194021941219422194321944219452194621947219482194921950219512195221953219542195521956219572195821959219602196121962219632196421965219662196721968219692197021971219722197321974219752197621977219782197921980219812198221983219842198521986219872198821989219902199121992219932199421995219962199721998219992200022001220022200322004220052200622007220082200922010220112201222013220142201522016220172201822019220202202122022220232202422025220262202722028220292203022031220322203322034220352203622037220382203922040220412204222043220442204522046220472204822049220502205122052220532205422055220562205722058220592206022061220622206322064220652206622067220682206922070220712207222073220742207522076220772207822079220802208122082220832208422085220862208722088220892209022091220922209322094220952209622097220982209922100221012210222103221042210522106221072210822109221102211122112221132211422115221162211722118221192212022121221222212322124221252212622127221282212922130221312213222133221342213522136221372213822139221402214122142221432214422145221462214722148221492215022151221522215322154221552215622157221582215922160221612216222163221642216522166221672216822169221702217122172221732217422175221762217722178221792218022181221822218322184221852218622187221882218922190221912219222193221942219522196221972219822199222002220122202222032220422205222062220722208222092221022211222122221322214222152221622217222182221922220222212222222223222242222522226222272222822229222302223122232222332223422235222362223722238222392224022241222422224322244222452224622247222482224922250222512225222253222542225522256222572225822259222602226122262222632226422265222662226722268222692227022271222722227322274222752227622277222782227922280222812228222283222842228522286222872228822289222902229122292222932229422295222962229722298222992230022301223022230322304223052230622307223082230922310223112231222313223142231522316223172231822319223202232122322223232232422325223262232722328223292233022331223322233322334223352233622337223382233922340223412234222343223442234522346223472234822349223502235122352223532235422355223562235722358223592236022361223622236322364223652236622367223682236922370223712237222373223742237522376223772237822379223802238122382223832238422385223862238722388223892239022391223922239322394223952239622397223982239922400224012240222403224042240522406224072240822409224102241122412224132241422415224162241722418224192242022421224222242322424224252242622427224282242922430224312243222433224342243522436224372243822439224402244122442224432244422445224462244722448224492245022451224522245322454224552245622457224582245922460224612246222463224642246522466224672246822469224702247122472224732247422475224762247722478224792248022481224822248322484224852248622487224882248922490224912249222493224942249522496224972249822499225002250122502225032250422505225062250722508225092251022511225122251322514225152251622517225182251922520225212252222523225242252522526225272252822529225302253122532225332253422535225362253722538225392254022541225422254322544225452254622547225482254922550225512255222553225542255522556225572255822559225602256122562225632256422565225662256722568225692257022571225722257322574225752257622577225782257922580225812258222583225842258522586225872258822589225902259122592225932259422595225962259722598225992260022601226022260322604226052260622607226082260922610226112261222613226142261522616226172261822619226202262122622226232262422625226262262722628226292263022631226322263322634226352263622637226382263922640226412264222643226442264522646226472264822649226502265122652226532265422655226562265722658226592266022661226622266322664226652266622667226682266922670226712267222673226742267522676226772267822679226802268122682226832268422685226862268722688226892269022691226922269322694226952269622697226982269922700227012270222703227042270522706227072270822709227102271122712227132271422715227162271722718227192272022721227222272322724227252272622727227282272922730227312273222733227342273522736227372273822739227402274122742227432274422745227462274722748227492275022751227522275322754227552275622757227582275922760227612276222763227642276522766227672276822769227702277122772227732277422775227762277722778227792278022781227822278322784227852278622787227882278922790227912279222793227942279522796227972279822799228002280122802228032280422805228062280722808228092281022811228122281322814228152281622817228182281922820228212282222823228242282522826228272282822829228302283122832228332283422835228362283722838228392284022841228422284322844228452284622847228482284922850228512285222853228542285522856228572285822859228602286122862228632286422865228662286722868228692287022871228722287322874228752287622877228782287922880228812288222883228842288522886228872288822889228902289122892228932289422895228962289722898228992290022901229022290322904229052290622907229082290922910229112291222913229142291522916229172291822919229202292122922229232292422925229262292722928229292293022931229322293322934229352293622937229382293922940229412294222943229442294522946229472294822949229502295122952229532295422955229562295722958229592296022961229622296322964229652296622967229682296922970229712297222973229742297522976229772297822979229802298122982229832298422985229862298722988229892299022991229922299322994229952299622997229982299923000230012300223003230042300523006230072300823009230102301123012230132301423015230162301723018230192302023021230222302323024230252302623027230282302923030230312303223033230342303523036230372303823039230402304123042230432304423045230462304723048230492305023051230522305323054230552305623057230582305923060230612306223063230642306523066230672306823069230702307123072230732307423075230762307723078230792308023081230822308323084230852308623087230882308923090230912309223093230942309523096230972309823099231002310123102231032310423105231062310723108231092311023111231122311323114231152311623117231182311923120231212312223123231242312523126231272312823129231302313123132231332313423135231362313723138231392314023141231422314323144231452314623147231482314923150231512315223153231542315523156231572315823159231602316123162231632316423165231662316723168231692317023171231722317323174231752317623177231782317923180231812318223183231842318523186231872318823189231902319123192231932319423195231962319723198231992320023201232022320323204232052320623207232082320923210232112321223213232142321523216232172321823219232202322123222232232322423225232262322723228232292323023231232322323323234232352323623237232382323923240232412324223243232442324523246232472324823249232502325123252232532325423255232562325723258232592326023261232622326323264232652326623267232682326923270232712327223273232742327523276232772327823279232802328123282232832328423285232862328723288232892329023291232922329323294232952329623297232982329923300233012330223303233042330523306233072330823309233102331123312233132331423315233162331723318233192332023321233222332323324233252332623327233282332923330233312333223333233342333523336233372333823339233402334123342233432334423345233462334723348233492335023351233522335323354233552335623357233582335923360233612336223363233642336523366233672336823369233702337123372233732337423375233762337723378233792338023381233822338323384233852338623387233882338923390233912339223393233942339523396233972339823399234002340123402234032340423405234062340723408234092341023411234122341323414234152341623417234182341923420234212342223423234242342523426234272342823429234302343123432234332343423435234362343723438234392344023441234422344323444234452344623447234482344923450234512345223453234542345523456234572345823459234602346123462234632346423465234662346723468234692347023471234722347323474234752347623477234782347923480234812348223483234842348523486234872348823489234902349123492234932349423495234962349723498234992350023501235022350323504235052350623507235082350923510235112351223513235142351523516235172351823519235202352123522235232352423525235262352723528235292353023531235322353323534235352353623537235382353923540235412354223543235442354523546235472354823549235502355123552235532355423555235562355723558235592356023561235622356323564235652356623567235682356923570235712357223573235742357523576235772357823579235802358123582235832358423585235862358723588235892359023591235922359323594235952359623597235982359923600236012360223603236042360523606236072360823609236102361123612236132361423615236162361723618236192362023621236222362323624236252362623627236282362923630236312363223633236342363523636236372363823639236402364123642236432364423645236462364723648236492365023651236522365323654236552365623657236582365923660236612366223663236642366523666236672366823669236702367123672236732367423675236762367723678236792368023681236822368323684236852368623687236882368923690236912369223693236942369523696236972369823699237002370123702237032370423705237062370723708237092371023711237122371323714237152371623717237182371923720237212372223723237242372523726237272372823729237302373123732237332373423735237362373723738237392374023741237422374323744237452374623747237482374923750237512375223753237542375523756237572375823759237602376123762237632376423765237662376723768237692377023771237722377323774237752377623777237782377923780237812378223783237842378523786237872378823789237902379123792237932379423795237962379723798237992380023801238022380323804238052380623807238082380923810238112381223813238142381523816238172381823819238202382123822238232382423825238262382723828238292383023831238322383323834238352383623837238382383923840238412384223843238442384523846238472384823849238502385123852238532385423855238562385723858238592386023861238622386323864238652386623867238682386923870238712387223873238742387523876238772387823879238802388123882238832388423885238862388723888238892389023891238922389323894238952389623897238982389923900239012390223903239042390523906239072390823909239102391123912239132391423915239162391723918239192392023921239222392323924239252392623927239282392923930239312393223933239342393523936239372393823939239402394123942239432394423945239462394723948239492395023951239522395323954239552395623957239582395923960239612396223963239642396523966239672396823969239702397123972239732397423975239762397723978239792398023981239822398323984239852398623987239882398923990239912399223993239942399523996239972399823999240002400124002240032400424005240062400724008240092401024011240122401324014240152401624017240182401924020240212402224023240242402524026240272402824029240302403124032240332403424035240362403724038240392404024041240422404324044240452404624047240482404924050240512405224053240542405524056240572405824059240602406124062240632406424065240662406724068240692407024071240722407324074240752407624077240782407924080240812408224083240842408524086240872408824089240902409124092240932409424095240962409724098240992410024101241022410324104241052410624107241082410924110241112411224113241142411524116241172411824119241202412124122241232412424125241262412724128241292413024131241322413324134241352413624137241382413924140241412414224143241442414524146241472414824149241502415124152241532415424155241562415724158241592416024161241622416324164241652416624167241682416924170241712417224173241742417524176241772417824179241802418124182241832418424185241862418724188241892419024191241922419324194241952419624197241982419924200242012420224203242042420524206242072420824209242102421124212242132421424215242162421724218242192422024221242222422324224242252422624227242282422924230242312423224233242342423524236242372423824239242402424124242242432424424245242462424724248242492425024251242522425324254242552425624257242582425924260242612426224263242642426524266242672426824269242702427124272242732427424275242762427724278242792428024281242822428324284242852428624287242882428924290242912429224293242942429524296242972429824299243002430124302243032430424305243062430724308243092431024311243122431324314243152431624317243182431924320243212432224323243242432524326243272432824329243302433124332243332433424335243362433724338243392434024341243422434324344243452434624347243482434924350243512435224353243542435524356243572435824359243602436124362243632436424365243662436724368243692437024371243722437324374243752437624377243782437924380243812438224383243842438524386243872438824389243902439124392243932439424395243962439724398243992440024401244022440324404244052440624407244082440924410244112441224413244142441524416244172441824419244202442124422244232442424425244262442724428244292443024431244322443324434244352443624437244382443924440244412444224443244442444524446244472444824449244502445124452244532445424455244562445724458244592446024461244622446324464244652446624467244682446924470244712447224473244742447524476244772447824479244802448124482244832448424485244862448724488244892449024491244922449324494244952449624497244982449924500245012450224503245042450524506245072450824509245102451124512245132451424515245162451724518245192452024521245222452324524245252452624527245282452924530245312453224533245342453524536245372453824539245402454124542245432454424545245462454724548245492455024551245522455324554245552455624557245582455924560245612456224563245642456524566245672456824569245702457124572245732457424575245762457724578245792458024581245822458324584245852458624587245882458924590245912459224593245942459524596245972459824599246002460124602246032460424605246062460724608246092461024611246122461324614246152461624617246182461924620246212462224623246242462524626246272462824629246302463124632246332463424635246362463724638246392464024641246422464324644246452464624647246482464924650246512465224653246542465524656246572465824659246602466124662246632466424665246662466724668246692467024671246722467324674246752467624677246782467924680246812468224683246842468524686246872468824689246902469124692246932469424695246962469724698246992470024701247022470324704247052470624707247082470924710247112471224713247142471524716247172471824719247202472124722247232472424725247262472724728247292473024731247322473324734247352473624737247382473924740247412474224743247442474524746247472474824749247502475124752247532475424755247562475724758247592476024761247622476324764247652476624767247682476924770247712477224773247742477524776247772477824779247802478124782247832478424785247862478724788247892479024791247922479324794247952479624797247982479924800248012480224803248042480524806248072480824809248102481124812248132481424815248162481724818248192482024821248222482324824248252482624827248282482924830248312483224833248342483524836248372483824839248402484124842248432484424845248462484724848248492485024851248522485324854248552485624857248582485924860248612486224863248642486524866248672486824869248702487124872248732487424875248762487724878248792488024881248822488324884248852488624887248882488924890248912489224893248942489524896248972489824899249002490124902249032490424905249062490724908249092491024911249122491324914249152491624917249182491924920249212492224923249242492524926249272492824929249302493124932249332493424935249362493724938249392494024941249422494324944249452494624947249482494924950249512495224953249542495524956249572495824959249602496124962249632496424965249662496724968249692497024971249722497324974249752497624977249782497924980249812498224983249842498524986249872498824989249902499124992249932499424995249962499724998249992500025001250022500325004250052500625007250082500925010250112501225013250142501525016250172501825019250202502125022250232502425025250262502725028250292503025031250322503325034250352503625037250382503925040250412504225043250442504525046250472504825049250502505125052250532505425055250562505725058250592506025061250622506325064250652506625067250682506925070250712507225073250742507525076250772507825079250802508125082250832508425085250862508725088250892509025091250922509325094250952509625097250982509925100251012510225103251042510525106251072510825109251102511125112251132511425115251162511725118251192512025121251222512325124251252512625127251282512925130251312513225133251342513525136251372513825139251402514125142251432514425145251462514725148251492515025151251522515325154251552515625157251582515925160251612516225163251642516525166251672516825169251702517125172251732517425175251762517725178251792518025181251822518325184251852518625187251882518925190251912519225193251942519525196251972519825199252002520125202252032520425205252062520725208252092521025211252122521325214252152521625217252182521925220252212522225223252242522525226252272522825229252302523125232252332523425235252362523725238252392524025241252422524325244252452524625247252482524925250252512525225253252542525525256252572525825259252602526125262252632526425265252662526725268252692527025271252722527325274252752527625277252782527925280252812528225283252842528525286252872528825289252902529125292252932529425295252962529725298252992530025301253022530325304253052530625307253082530925310253112531225313253142531525316253172531825319253202532125322253232532425325253262532725328253292533025331253322533325334253352533625337253382533925340253412534225343253442534525346253472534825349253502535125352253532535425355253562535725358253592536025361253622536325364253652536625367253682536925370253712537225373253742537525376253772537825379253802538125382253832538425385253862538725388253892539025391253922539325394253952539625397253982539925400254012540225403254042540525406254072540825409254102541125412254132541425415254162541725418254192542025421254222542325424254252542625427254282542925430254312543225433254342543525436254372543825439254402544125442254432544425445254462544725448254492545025451254522545325454254552545625457254582545925460254612546225463254642546525466254672546825469254702547125472254732547425475254762547725478254792548025481254822548325484254852548625487254882548925490254912549225493254942549525496254972549825499255002550125502255032550425505255062550725508255092551025511255122551325514255152551625517255182551925520255212552225523255242552525526255272552825529255302553125532255332553425535255362553725538255392554025541255422554325544255452554625547255482554925550255512555225553255542555525556255572555825559255602556125562255632556425565255662556725568255692557025571255722557325574255752557625577255782557925580255812558225583255842558525586255872558825589255902559125592255932559425595255962559725598255992560025601256022560325604256052560625607256082560925610256112561225613256142561525616256172561825619256202562125622256232562425625256262562725628256292563025631256322563325634256352563625637256382563925640256412564225643256442564525646256472564825649256502565125652256532565425655256562565725658256592566025661256622566325664256652566625667256682566925670256712567225673256742567525676256772567825679256802568125682256832568425685256862568725688256892569025691256922569325694256952569625697256982569925700257012570225703257042570525706257072570825709257102571125712257132571425715257162571725718257192572025721257222572325724257252572625727257282572925730257312573225733257342573525736257372573825739257402574125742257432574425745257462574725748257492575025751257522575325754257552575625757257582575925760257612576225763257642576525766257672576825769257702577125772257732577425775257762577725778257792578025781257822578325784257852578625787257882578925790257912579225793257942579525796257972579825799258002580125802258032580425805258062580725808258092581025811258122581325814258152581625817258182581925820258212582225823258242582525826258272582825829258302583125832258332583425835258362583725838258392584025841258422584325844258452584625847258482584925850258512585225853258542585525856258572585825859258602586125862258632586425865258662586725868258692587025871258722587325874258752587625877258782587925880258812588225883258842588525886258872588825889258902589125892258932589425895258962589725898258992590025901259022590325904259052590625907259082590925910259112591225913259142591525916259172591825919259202592125922259232592425925259262592725928259292593025931259322593325934259352593625937259382593925940259412594225943259442594525946259472594825949259502595125952259532595425955259562595725958259592596025961259622596325964259652596625967259682596925970259712597225973259742597525976259772597825979259802598125982259832598425985259862598725988259892599025991259922599325994259952599625997259982599926000260012600226003260042600526006260072600826009260102601126012260132601426015260162601726018260192602026021260222602326024260252602626027260282602926030260312603226033260342603526036260372603826039260402604126042260432604426045260462604726048260492605026051260522605326054260552605626057260582605926060260612606226063260642606526066260672606826069260702607126072260732607426075260762607726078260792608026081260822608326084260852608626087260882608926090260912609226093260942609526096260972609826099261002610126102261032610426105261062610726108261092611026111261122611326114261152611626117261182611926120261212612226123261242612526126261272612826129261302613126132261332613426135261362613726138261392614026141261422614326144261452614626147261482614926150261512615226153261542615526156261572615826159261602616126162261632616426165261662616726168261692617026171261722617326174261752617626177261782617926180261812618226183261842618526186261872618826189261902619126192261932619426195261962619726198261992620026201262022620326204262052620626207262082620926210262112621226213262142621526216262172621826219262202622126222262232622426225262262622726228262292623026231262322623326234262352623626237262382623926240262412624226243262442624526246262472624826249262502625126252262532625426255262562625726258262592626026261262622626326264262652626626267262682626926270262712627226273262742627526276262772627826279262802628126282262832628426285262862628726288262892629026291262922629326294262952629626297262982629926300263012630226303263042630526306263072630826309263102631126312
  1. # Copyright YEAR The Jetstack cert-manager contributors.
  2. #
  3. # Licensed under the Apache License, Version 2.0 (the "License");
  4. # you may not use this file except in compliance with the License.
  5. # You may obtain a copy of the License at
  6. #
  7. # http://www.apache.org/licenses/LICENSE-2.0
  8. #
  9. # Unless required by applicable law or agreed to in writing, software
  10. # distributed under the License is distributed on an "AS IS" BASIS,
  11. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. # See the License for the specific language governing permissions and
  13. # limitations under the License.
  14. apiVersion: apiextensions.k8s.io/v1
  15. kind: CustomResourceDefinition
  16. metadata:
  17. annotations:
  18. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  19. labels:
  20. app: cert-manager
  21. app.kubernetes.io/instance: cert-manager
  22. app.kubernetes.io/name: cert-manager
  23. name: certificaterequests.cert-manager.io
  24. spec:
  25. conversion:
  26. strategy: Webhook
  27. webhook:
  28. clientConfig:
  29. service:
  30. name: cert-manager-webhook
  31. namespace: cert-manager
  32. path: /convert
  33. conversionReviewVersions:
  34. - v1
  35. - v1beta1
  36. group: cert-manager.io
  37. names:
  38. kind: CertificateRequest
  39. listKind: CertificateRequestList
  40. plural: certificaterequests
  41. shortNames:
  42. - cr
  43. - crs
  44. singular: certificaterequest
  45. scope: Namespaced
  46. versions:
  47. - additionalPrinterColumns:
  48. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  49. name: Ready
  50. type: string
  51. - jsonPath: .spec.issuerRef.name
  52. name: Issuer
  53. priority: 1
  54. type: string
  55. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  56. name: Status
  57. priority: 1
  58. type: string
  59. - description: CreationTimestamp is a timestamp representing the server time when
  60. this object was created. It is not guaranteed to be set in happens-before
  61. order across separate operations. Clients may not set this value. It is represented
  62. in RFC3339 form and is in UTC.
  63. jsonPath: .metadata.creationTimestamp
  64. name: Age
  65. type: date
  66. name: v1alpha2
  67. schema:
  68. openAPIV3Schema:
  69. description: "A CertificateRequest is used to request a signed certificate
  70. from one of the configured issuers. \n All fields within the CertificateRequest's
  71. `spec` are immutable after creation. A CertificateRequest will either succeed
  72. or fail, as denoted by its `status.state` field. \n A CertificateRequest
  73. is a 'one-shot' resource, meaning it represents a single point in time request
  74. for a certificate and cannot be re-used."
  75. properties:
  76. apiVersion:
  77. description: 'APIVersion defines the versioned schema of this representation
  78. of an object. Servers should convert recognized schemas to the latest
  79. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  80. type: string
  81. kind:
  82. description: 'Kind is a string value representing the REST resource this
  83. object represents. Servers may infer this from the endpoint the client
  84. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  85. type: string
  86. metadata:
  87. type: object
  88. spec:
  89. description: Desired state of the CertificateRequest resource.
  90. properties:
  91. csr:
  92. description: The PEM-encoded x509 certificate signing request to be
  93. submitted to the CA for signing.
  94. format: byte
  95. type: string
  96. duration:
  97. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  98. This option may be ignored/overridden by some issuer types.
  99. type: string
  100. isCA:
  101. description: IsCA will request to mark the certificate as valid for
  102. certificate signing when submitting to the issuer. This will automatically
  103. add the `cert sign` usage to the list of `usages`.
  104. type: boolean
  105. issuerRef:
  106. description: IssuerRef is a reference to the issuer for this CertificateRequest. If
  107. the 'kind' field is not set, or set to 'Issuer', an Issuer resource
  108. with the given name in the same namespace as the CertificateRequest
  109. will be used. If the 'kind' field is set to 'ClusterIssuer', a
  110. ClusterIssuer with the provided name will be used. The 'name' field
  111. in this stanza is required at all times. The group field refers
  112. to the API group of the issuer which defaults to 'cert-manager.io'
  113. if empty.
  114. properties:
  115. group:
  116. description: Group of the resource being referred to.
  117. type: string
  118. kind:
  119. description: Kind of the resource being referred to.
  120. type: string
  121. name:
  122. description: Name of the resource being referred to.
  123. type: string
  124. required:
  125. - name
  126. type: object
  127. usages:
  128. description: Usages is the set of x509 usages that are requested for
  129. the certificate. Defaults to `digital signature` and `key encipherment`
  130. if not specified.
  131. items:
  132. description: 'KeyUsage specifies valid usage contexts for keys.
  133. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  134. Valid KeyUsage values are as follows: "signing", "digital signature",
  135. "content commitment", "key encipherment", "key agreement", "data
  136. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  137. only", "any", "server auth", "client auth", "code signing", "email
  138. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  139. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  140. sgc"'
  141. enum:
  142. - signing
  143. - digital signature
  144. - content commitment
  145. - key encipherment
  146. - key agreement
  147. - data encipherment
  148. - cert sign
  149. - crl sign
  150. - encipher only
  151. - decipher only
  152. - any
  153. - server auth
  154. - client auth
  155. - code signing
  156. - email protection
  157. - s/mime
  158. - ipsec end system
  159. - ipsec tunnel
  160. - ipsec user
  161. - timestamping
  162. - ocsp signing
  163. - microsoft sgc
  164. - netscape sgc
  165. type: string
  166. type: array
  167. required:
  168. - csr
  169. - issuerRef
  170. type: object
  171. status:
  172. description: Status of the CertificateRequest. This is set and managed
  173. automatically.
  174. properties:
  175. ca:
  176. description: The PEM encoded x509 certificate of the signer, also
  177. known as the CA (Certificate Authority). This is set on a best-effort
  178. basis by different issuers. If not set, the CA is assumed to be
  179. unknown/not available.
  180. format: byte
  181. type: string
  182. certificate:
  183. description: The PEM encoded x509 certificate resulting from the certificate
  184. signing request. If not set, the CertificateRequest has either not
  185. been completed or has failed. More information on failure can be
  186. found by checking the `conditions` field.
  187. format: byte
  188. type: string
  189. conditions:
  190. description: List of status conditions to indicate the status of a
  191. CertificateRequest. Known condition types are `Ready` and `InvalidRequest`.
  192. items:
  193. description: CertificateRequestCondition contains condition information
  194. for a CertificateRequest.
  195. properties:
  196. lastTransitionTime:
  197. description: LastTransitionTime is the timestamp corresponding
  198. to the last status change of this condition.
  199. format: date-time
  200. type: string
  201. message:
  202. description: Message is a human readable description of the
  203. details of the last transition, complementing reason.
  204. type: string
  205. reason:
  206. description: Reason is a brief machine readable explanation
  207. for the condition's last transition.
  208. type: string
  209. status:
  210. description: Status of the condition, one of ('True', 'False',
  211. 'Unknown').
  212. enum:
  213. - "True"
  214. - "False"
  215. - Unknown
  216. type: string
  217. type:
  218. description: Type of the condition, known values are ('Ready',
  219. 'InvalidRequest').
  220. type: string
  221. required:
  222. - status
  223. - type
  224. type: object
  225. type: array
  226. failureTime:
  227. description: FailureTime stores the time that this CertificateRequest
  228. failed. This is used to influence garbage collection and back-off.
  229. format: date-time
  230. type: string
  231. type: object
  232. type: object
  233. served: true
  234. storage: false
  235. subresources:
  236. status: {}
  237. - additionalPrinterColumns:
  238. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  239. name: Ready
  240. type: string
  241. - jsonPath: .spec.issuerRef.name
  242. name: Issuer
  243. priority: 1
  244. type: string
  245. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  246. name: Status
  247. priority: 1
  248. type: string
  249. - description: CreationTimestamp is a timestamp representing the server time when
  250. this object was created. It is not guaranteed to be set in happens-before
  251. order across separate operations. Clients may not set this value. It is represented
  252. in RFC3339 form and is in UTC.
  253. jsonPath: .metadata.creationTimestamp
  254. name: Age
  255. type: date
  256. name: v1alpha3
  257. schema:
  258. openAPIV3Schema:
  259. description: "A CertificateRequest is used to request a signed certificate
  260. from one of the configured issuers. \n All fields within the CertificateRequest's
  261. `spec` are immutable after creation. A CertificateRequest will either succeed
  262. or fail, as denoted by its `status.state` field. \n A CertificateRequest
  263. is a 'one-shot' resource, meaning it represents a single point in time request
  264. for a certificate and cannot be re-used."
  265. properties:
  266. apiVersion:
  267. description: 'APIVersion defines the versioned schema of this representation
  268. of an object. Servers should convert recognized schemas to the latest
  269. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  270. type: string
  271. kind:
  272. description: 'Kind is a string value representing the REST resource this
  273. object represents. Servers may infer this from the endpoint the client
  274. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  275. type: string
  276. metadata:
  277. type: object
  278. spec:
  279. description: Desired state of the CertificateRequest resource.
  280. properties:
  281. csr:
  282. description: The PEM-encoded x509 certificate signing request to be
  283. submitted to the CA for signing.
  284. format: byte
  285. type: string
  286. duration:
  287. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  288. This option may be ignored/overridden by some issuer types.
  289. type: string
  290. isCA:
  291. description: IsCA will request to mark the certificate as valid for
  292. certificate signing when submitting to the issuer. This will automatically
  293. add the `cert sign` usage to the list of `usages`.
  294. type: boolean
  295. issuerRef:
  296. description: IssuerRef is a reference to the issuer for this CertificateRequest. If
  297. the 'kind' field is not set, or set to 'Issuer', an Issuer resource
  298. with the given name in the same namespace as the CertificateRequest
  299. will be used. If the 'kind' field is set to 'ClusterIssuer', a
  300. ClusterIssuer with the provided name will be used. The 'name' field
  301. in this stanza is required at all times. The group field refers
  302. to the API group of the issuer which defaults to 'cert-manager.io'
  303. if empty.
  304. properties:
  305. group:
  306. description: Group of the resource being referred to.
  307. type: string
  308. kind:
  309. description: Kind of the resource being referred to.
  310. type: string
  311. name:
  312. description: Name of the resource being referred to.
  313. type: string
  314. required:
  315. - name
  316. type: object
  317. usages:
  318. description: Usages is the set of x509 usages that are requested for
  319. the certificate. Defaults to `digital signature` and `key encipherment`
  320. if not specified.
  321. items:
  322. description: 'KeyUsage specifies valid usage contexts for keys.
  323. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  324. Valid KeyUsage values are as follows: "signing", "digital signature",
  325. "content commitment", "key encipherment", "key agreement", "data
  326. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  327. only", "any", "server auth", "client auth", "code signing", "email
  328. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  329. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  330. sgc"'
  331. enum:
  332. - signing
  333. - digital signature
  334. - content commitment
  335. - key encipherment
  336. - key agreement
  337. - data encipherment
  338. - cert sign
  339. - crl sign
  340. - encipher only
  341. - decipher only
  342. - any
  343. - server auth
  344. - client auth
  345. - code signing
  346. - email protection
  347. - s/mime
  348. - ipsec end system
  349. - ipsec tunnel
  350. - ipsec user
  351. - timestamping
  352. - ocsp signing
  353. - microsoft sgc
  354. - netscape sgc
  355. type: string
  356. type: array
  357. required:
  358. - csr
  359. - issuerRef
  360. type: object
  361. status:
  362. description: Status of the CertificateRequest. This is set and managed
  363. automatically.
  364. properties:
  365. ca:
  366. description: The PEM encoded x509 certificate of the signer, also
  367. known as the CA (Certificate Authority). This is set on a best-effort
  368. basis by different issuers. If not set, the CA is assumed to be
  369. unknown/not available.
  370. format: byte
  371. type: string
  372. certificate:
  373. description: The PEM encoded x509 certificate resulting from the certificate
  374. signing request. If not set, the CertificateRequest has either not
  375. been completed or has failed. More information on failure can be
  376. found by checking the `conditions` field.
  377. format: byte
  378. type: string
  379. conditions:
  380. description: List of status conditions to indicate the status of a
  381. CertificateRequest. Known condition types are `Ready` and `InvalidRequest`.
  382. items:
  383. description: CertificateRequestCondition contains condition information
  384. for a CertificateRequest.
  385. properties:
  386. lastTransitionTime:
  387. description: LastTransitionTime is the timestamp corresponding
  388. to the last status change of this condition.
  389. format: date-time
  390. type: string
  391. message:
  392. description: Message is a human readable description of the
  393. details of the last transition, complementing reason.
  394. type: string
  395. reason:
  396. description: Reason is a brief machine readable explanation
  397. for the condition's last transition.
  398. type: string
  399. status:
  400. description: Status of the condition, one of ('True', 'False',
  401. 'Unknown').
  402. enum:
  403. - "True"
  404. - "False"
  405. - Unknown
  406. type: string
  407. type:
  408. description: Type of the condition, known values are ('Ready',
  409. 'InvalidRequest').
  410. type: string
  411. required:
  412. - status
  413. - type
  414. type: object
  415. type: array
  416. failureTime:
  417. description: FailureTime stores the time that this CertificateRequest
  418. failed. This is used to influence garbage collection and back-off.
  419. format: date-time
  420. type: string
  421. type: object
  422. type: object
  423. served: true
  424. storage: false
  425. subresources:
  426. status: {}
  427. - additionalPrinterColumns:
  428. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  429. name: Ready
  430. type: string
  431. - jsonPath: .spec.issuerRef.name
  432. name: Issuer
  433. priority: 1
  434. type: string
  435. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  436. name: Status
  437. priority: 1
  438. type: string
  439. - description: CreationTimestamp is a timestamp representing the server time when
  440. this object was created. It is not guaranteed to be set in happens-before
  441. order across separate operations. Clients may not set this value. It is represented
  442. in RFC3339 form and is in UTC.
  443. jsonPath: .metadata.creationTimestamp
  444. name: Age
  445. type: date
  446. name: v1beta1
  447. schema:
  448. openAPIV3Schema:
  449. description: "A CertificateRequest is used to request a signed certificate
  450. from one of the configured issuers. \n All fields within the CertificateRequest's
  451. `spec` are immutable after creation. A CertificateRequest will either succeed
  452. or fail, as denoted by its `status.state` field. \n A CertificateRequest
  453. is a 'one-shot' resource, meaning it represents a single point in time request
  454. for a certificate and cannot be re-used."
  455. properties:
  456. apiVersion:
  457. description: 'APIVersion defines the versioned schema of this representation
  458. of an object. Servers should convert recognized schemas to the latest
  459. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  460. type: string
  461. kind:
  462. description: 'Kind is a string value representing the REST resource this
  463. object represents. Servers may infer this from the endpoint the client
  464. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  465. type: string
  466. metadata:
  467. type: object
  468. spec:
  469. description: Desired state of the CertificateRequest resource.
  470. properties:
  471. duration:
  472. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  473. This option may be ignored/overridden by some issuer types.
  474. type: string
  475. isCA:
  476. description: IsCA will request to mark the certificate as valid for
  477. certificate signing when submitting to the issuer. This will automatically
  478. add the `cert sign` usage to the list of `usages`.
  479. type: boolean
  480. issuerRef:
  481. description: IssuerRef is a reference to the issuer for this CertificateRequest. If
  482. the 'kind' field is not set, or set to 'Issuer', an Issuer resource
  483. with the given name in the same namespace as the CertificateRequest
  484. will be used. If the 'kind' field is set to 'ClusterIssuer', a
  485. ClusterIssuer with the provided name will be used. The 'name' field
  486. in this stanza is required at all times. The group field refers
  487. to the API group of the issuer which defaults to 'cert-manager.io'
  488. if empty.
  489. properties:
  490. group:
  491. description: Group of the resource being referred to.
  492. type: string
  493. kind:
  494. description: Kind of the resource being referred to.
  495. type: string
  496. name:
  497. description: Name of the resource being referred to.
  498. type: string
  499. required:
  500. - name
  501. type: object
  502. request:
  503. description: The PEM-encoded x509 certificate signing request to be
  504. submitted to the CA for signing.
  505. format: byte
  506. type: string
  507. usages:
  508. description: Usages is the set of x509 usages that are requested for
  509. the certificate. Defaults to `digital signature` and `key encipherment`
  510. if not specified.
  511. items:
  512. description: 'KeyUsage specifies valid usage contexts for keys.
  513. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  514. Valid KeyUsage values are as follows: "signing", "digital signature",
  515. "content commitment", "key encipherment", "key agreement", "data
  516. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  517. only", "any", "server auth", "client auth", "code signing", "email
  518. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  519. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  520. sgc"'
  521. enum:
  522. - signing
  523. - digital signature
  524. - content commitment
  525. - key encipherment
  526. - key agreement
  527. - data encipherment
  528. - cert sign
  529. - crl sign
  530. - encipher only
  531. - decipher only
  532. - any
  533. - server auth
  534. - client auth
  535. - code signing
  536. - email protection
  537. - s/mime
  538. - ipsec end system
  539. - ipsec tunnel
  540. - ipsec user
  541. - timestamping
  542. - ocsp signing
  543. - microsoft sgc
  544. - netscape sgc
  545. type: string
  546. type: array
  547. required:
  548. - issuerRef
  549. - request
  550. type: object
  551. status:
  552. description: Status of the CertificateRequest. This is set and managed
  553. automatically.
  554. properties:
  555. ca:
  556. description: The PEM encoded x509 certificate of the signer, also
  557. known as the CA (Certificate Authority). This is set on a best-effort
  558. basis by different issuers. If not set, the CA is assumed to be
  559. unknown/not available.
  560. format: byte
  561. type: string
  562. certificate:
  563. description: The PEM encoded x509 certificate resulting from the certificate
  564. signing request. If not set, the CertificateRequest has either not
  565. been completed or has failed. More information on failure can be
  566. found by checking the `conditions` field.
  567. format: byte
  568. type: string
  569. conditions:
  570. description: List of status conditions to indicate the status of a
  571. CertificateRequest. Known condition types are `Ready` and `InvalidRequest`.
  572. items:
  573. description: CertificateRequestCondition contains condition information
  574. for a CertificateRequest.
  575. properties:
  576. lastTransitionTime:
  577. description: LastTransitionTime is the timestamp corresponding
  578. to the last status change of this condition.
  579. format: date-time
  580. type: string
  581. message:
  582. description: Message is a human readable description of the
  583. details of the last transition, complementing reason.
  584. type: string
  585. reason:
  586. description: Reason is a brief machine readable explanation
  587. for the condition's last transition.
  588. type: string
  589. status:
  590. description: Status of the condition, one of ('True', 'False',
  591. 'Unknown').
  592. enum:
  593. - "True"
  594. - "False"
  595. - Unknown
  596. type: string
  597. type:
  598. description: Type of the condition, known values are ('Ready',
  599. 'InvalidRequest').
  600. type: string
  601. required:
  602. - status
  603. - type
  604. type: object
  605. type: array
  606. failureTime:
  607. description: FailureTime stores the time that this CertificateRequest
  608. failed. This is used to influence garbage collection and back-off.
  609. format: date-time
  610. type: string
  611. type: object
  612. required:
  613. - spec
  614. type: object
  615. served: true
  616. storage: false
  617. subresources:
  618. status: {}
  619. - additionalPrinterColumns:
  620. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  621. name: Ready
  622. type: string
  623. - jsonPath: .spec.issuerRef.name
  624. name: Issuer
  625. priority: 1
  626. type: string
  627. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  628. name: Status
  629. priority: 1
  630. type: string
  631. - description: CreationTimestamp is a timestamp representing the server time when
  632. this object was created. It is not guaranteed to be set in happens-before
  633. order across separate operations. Clients may not set this value. It is represented
  634. in RFC3339 form and is in UTC.
  635. jsonPath: .metadata.creationTimestamp
  636. name: Age
  637. type: date
  638. name: v1
  639. schema:
  640. openAPIV3Schema:
  641. description: "A CertificateRequest is used to request a signed certificate
  642. from one of the configured issuers. \n All fields within the CertificateRequest's
  643. `spec` are immutable after creation. A CertificateRequest will either succeed
  644. or fail, as denoted by its `status.state` field. \n A CertificateRequest
  645. is a 'one-shot' resource, meaning it represents a single point in time request
  646. for a certificate and cannot be re-used."
  647. properties:
  648. apiVersion:
  649. description: 'APIVersion defines the versioned schema of this representation
  650. of an object. Servers should convert recognized schemas to the latest
  651. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  652. type: string
  653. kind:
  654. description: 'Kind is a string value representing the REST resource this
  655. object represents. Servers may infer this from the endpoint the client
  656. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  657. type: string
  658. metadata:
  659. type: object
  660. spec:
  661. description: Desired state of the CertificateRequest resource.
  662. properties:
  663. duration:
  664. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  665. This option may be ignored/overridden by some issuer types.
  666. type: string
  667. isCA:
  668. description: IsCA will request to mark the certificate as valid for
  669. certificate signing when submitting to the issuer. This will automatically
  670. add the `cert sign` usage to the list of `usages`.
  671. type: boolean
  672. issuerRef:
  673. description: IssuerRef is a reference to the issuer for this CertificateRequest. If
  674. the 'kind' field is not set, or set to 'Issuer', an Issuer resource
  675. with the given name in the same namespace as the CertificateRequest
  676. will be used. If the 'kind' field is set to 'ClusterIssuer', a
  677. ClusterIssuer with the provided name will be used. The 'name' field
  678. in this stanza is required at all times. The group field refers
  679. to the API group of the issuer which defaults to 'cert-manager.io'
  680. if empty.
  681. properties:
  682. group:
  683. description: Group of the resource being referred to.
  684. type: string
  685. kind:
  686. description: Kind of the resource being referred to.
  687. type: string
  688. name:
  689. description: Name of the resource being referred to.
  690. type: string
  691. required:
  692. - name
  693. type: object
  694. request:
  695. description: The PEM-encoded x509 certificate signing request to be
  696. submitted to the CA for signing.
  697. format: byte
  698. type: string
  699. usages:
  700. description: Usages is the set of x509 usages that are requested for
  701. the certificate. If usages are set they SHOULD be encoded inside
  702. the CSR spec Defaults to `digital signature` and `key encipherment`
  703. if not specified.
  704. items:
  705. description: 'KeyUsage specifies valid usage contexts for keys.
  706. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  707. Valid KeyUsage values are as follows: "signing", "digital signature",
  708. "content commitment", "key encipherment", "key agreement", "data
  709. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  710. only", "any", "server auth", "client auth", "code signing", "email
  711. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  712. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  713. sgc"'
  714. enum:
  715. - signing
  716. - digital signature
  717. - content commitment
  718. - key encipherment
  719. - key agreement
  720. - data encipherment
  721. - cert sign
  722. - crl sign
  723. - encipher only
  724. - decipher only
  725. - any
  726. - server auth
  727. - client auth
  728. - code signing
  729. - email protection
  730. - s/mime
  731. - ipsec end system
  732. - ipsec tunnel
  733. - ipsec user
  734. - timestamping
  735. - ocsp signing
  736. - microsoft sgc
  737. - netscape sgc
  738. type: string
  739. type: array
  740. required:
  741. - issuerRef
  742. - request
  743. type: object
  744. status:
  745. description: Status of the CertificateRequest. This is set and managed
  746. automatically.
  747. properties:
  748. ca:
  749. description: The PEM encoded x509 certificate of the signer, also
  750. known as the CA (Certificate Authority). This is set on a best-effort
  751. basis by different issuers. If not set, the CA is assumed to be
  752. unknown/not available.
  753. format: byte
  754. type: string
  755. certificate:
  756. description: The PEM encoded x509 certificate resulting from the certificate
  757. signing request. If not set, the CertificateRequest has either not
  758. been completed or has failed. More information on failure can be
  759. found by checking the `conditions` field.
  760. format: byte
  761. type: string
  762. conditions:
  763. description: List of status conditions to indicate the status of a
  764. CertificateRequest. Known condition types are `Ready` and `InvalidRequest`.
  765. items:
  766. description: CertificateRequestCondition contains condition information
  767. for a CertificateRequest.
  768. properties:
  769. lastTransitionTime:
  770. description: LastTransitionTime is the timestamp corresponding
  771. to the last status change of this condition.
  772. format: date-time
  773. type: string
  774. message:
  775. description: Message is a human readable description of the
  776. details of the last transition, complementing reason.
  777. type: string
  778. reason:
  779. description: Reason is a brief machine readable explanation
  780. for the condition's last transition.
  781. type: string
  782. status:
  783. description: Status of the condition, one of ('True', 'False',
  784. 'Unknown').
  785. enum:
  786. - "True"
  787. - "False"
  788. - Unknown
  789. type: string
  790. type:
  791. description: Type of the condition, known values are ('Ready',
  792. 'InvalidRequest').
  793. type: string
  794. required:
  795. - status
  796. - type
  797. type: object
  798. type: array
  799. failureTime:
  800. description: FailureTime stores the time that this CertificateRequest
  801. failed. This is used to influence garbage collection and back-off.
  802. format: date-time
  803. type: string
  804. type: object
  805. required:
  806. - spec
  807. type: object
  808. served: true
  809. storage: true
  810. subresources:
  811. status: {}
  812. status:
  813. acceptedNames:
  814. kind: ""
  815. plural: ""
  816. conditions: []
  817. storedVersions: []
  818. ---
  819. apiVersion: apiextensions.k8s.io/v1
  820. kind: CustomResourceDefinition
  821. metadata:
  822. annotations:
  823. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  824. labels:
  825. app: cert-manager
  826. app.kubernetes.io/instance: cert-manager
  827. app.kubernetes.io/name: cert-manager
  828. name: certificates.cert-manager.io
  829. spec:
  830. conversion:
  831. strategy: Webhook
  832. webhook:
  833. clientConfig:
  834. service:
  835. name: cert-manager-webhook
  836. namespace: cert-manager
  837. path: /convert
  838. conversionReviewVersions:
  839. - v1
  840. - v1beta1
  841. group: cert-manager.io
  842. names:
  843. kind: Certificate
  844. listKind: CertificateList
  845. plural: certificates
  846. shortNames:
  847. - cert
  848. - certs
  849. singular: certificate
  850. scope: Namespaced
  851. versions:
  852. - additionalPrinterColumns:
  853. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  854. name: Ready
  855. type: string
  856. - jsonPath: .spec.secretName
  857. name: Secret
  858. type: string
  859. - jsonPath: .spec.issuerRef.name
  860. name: Issuer
  861. priority: 1
  862. type: string
  863. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  864. name: Status
  865. priority: 1
  866. type: string
  867. - description: CreationTimestamp is a timestamp representing the server time when
  868. this object was created. It is not guaranteed to be set in happens-before
  869. order across separate operations. Clients may not set this value. It is represented
  870. in RFC3339 form and is in UTC.
  871. jsonPath: .metadata.creationTimestamp
  872. name: Age
  873. type: date
  874. name: v1alpha2
  875. schema:
  876. openAPIV3Schema:
  877. description: "A Certificate resource should be created to ensure an up to
  878. date and signed x509 certificate is stored in the Kubernetes Secret resource
  879. named in `spec.secretName`. \n The stored certificate will be renewed before
  880. it expires (as configured by `spec.renewBefore`)."
  881. properties:
  882. apiVersion:
  883. description: 'APIVersion defines the versioned schema of this representation
  884. of an object. Servers should convert recognized schemas to the latest
  885. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  886. type: string
  887. kind:
  888. description: 'Kind is a string value representing the REST resource this
  889. object represents. Servers may infer this from the endpoint the client
  890. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  891. type: string
  892. metadata:
  893. type: object
  894. spec:
  895. description: Desired state of the Certificate resource.
  896. properties:
  897. commonName:
  898. description: 'CommonName is a common name to be used on the Certificate.
  899. The CommonName should have a length of 64 characters or fewer to
  900. avoid generating invalid CSRs. This value is ignored by TLS clients
  901. when any subject alt name is set. This is x509 behaviour: https://tools.ietf.org/html/rfc6125#section-6.4.4'
  902. type: string
  903. dnsNames:
  904. description: DNSNames is a list of DNS subjectAltNames to be set on
  905. the Certificate.
  906. items:
  907. type: string
  908. type: array
  909. duration:
  910. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  911. This option may be ignored/overridden by some issuer types. If overridden
  912. and `renewBefore` is greater than the actual certificate duration,
  913. the certificate will be automatically renewed 2/3rds of the way
  914. through the certificate's duration.
  915. type: string
  916. emailSANs:
  917. description: EmailSANs is a list of email subjectAltNames to be set
  918. on the Certificate.
  919. items:
  920. type: string
  921. type: array
  922. ipAddresses:
  923. description: IPAddresses is a list of IP address subjectAltNames to
  924. be set on the Certificate.
  925. items:
  926. type: string
  927. type: array
  928. isCA:
  929. description: IsCA will mark this Certificate as valid for certificate
  930. signing. This will automatically add the `cert sign` usage to the
  931. list of `usages`.
  932. type: boolean
  933. issuerRef:
  934. description: IssuerRef is a reference to the issuer for this certificate.
  935. If the 'kind' field is not set, or set to 'Issuer', an Issuer resource
  936. with the given name in the same namespace as the Certificate will
  937. be used. If the 'kind' field is set to 'ClusterIssuer', a ClusterIssuer
  938. with the provided name will be used. The 'name' field in this stanza
  939. is required at all times.
  940. properties:
  941. group:
  942. description: Group of the resource being referred to.
  943. type: string
  944. kind:
  945. description: Kind of the resource being referred to.
  946. type: string
  947. name:
  948. description: Name of the resource being referred to.
  949. type: string
  950. required:
  951. - name
  952. type: object
  953. keyAlgorithm:
  954. description: KeyAlgorithm is the private key algorithm of the corresponding
  955. private key for this certificate. If provided, allowed values are
  956. either "rsa" or "ecdsa" If `keyAlgorithm` is specified and `keySize`
  957. is not provided, key size of 256 will be used for "ecdsa" key algorithm
  958. and key size of 2048 will be used for "rsa" key algorithm.
  959. enum:
  960. - rsa
  961. - ecdsa
  962. type: string
  963. keyEncoding:
  964. description: KeyEncoding is the private key cryptography standards
  965. (PKCS) for this certificate's private key to be encoded in. If provided,
  966. allowed values are "pkcs1" and "pkcs8" standing for PKCS#1 and PKCS#8,
  967. respectively. If KeyEncoding is not specified, then PKCS#1 will
  968. be used by default.
  969. enum:
  970. - pkcs1
  971. - pkcs8
  972. type: string
  973. keySize:
  974. description: KeySize is the key bit size of the corresponding private
  975. key for this certificate. If `keyAlgorithm` is set to `RSA`, valid
  976. values are `2048`, `4096` or `8192`, and will default to `2048`
  977. if not specified. If `keyAlgorithm` is set to `ECDSA`, valid values
  978. are `256`, `384` or `521`, and will default to `256` if not specified.
  979. No other values are allowed.
  980. maximum: 8192
  981. minimum: 0
  982. type: integer
  983. keystores:
  984. description: Keystores configures additional keystore output formats
  985. stored in the `secretName` Secret resource.
  986. properties:
  987. jks:
  988. description: JKS configures options for storing a JKS keystore
  989. in the `spec.secretName` Secret resource.
  990. properties:
  991. create:
  992. description: Create enables JKS keystore creation for the
  993. Certificate. If true, a file named `keystore.jks` will be
  994. created in the target Secret resource, encrypted using the
  995. password stored in `passwordSecretRef`. The keystore file
  996. will only be updated upon re-issuance.
  997. type: boolean
  998. passwordSecretRef:
  999. description: PasswordSecretRef is a reference to a key in
  1000. a Secret resource containing the password used to encrypt
  1001. the JKS keystore.
  1002. properties:
  1003. key:
  1004. description: The key of the entry in the Secret resource's
  1005. `data` field to be used. Some instances of this field
  1006. may be defaulted, in others it may be required.
  1007. type: string
  1008. name:
  1009. description: 'Name of the resource being referred to.
  1010. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1011. type: string
  1012. required:
  1013. - name
  1014. type: object
  1015. required:
  1016. - create
  1017. - passwordSecretRef
  1018. type: object
  1019. pkcs12:
  1020. description: PKCS12 configures options for storing a PKCS12 keystore
  1021. in the `spec.secretName` Secret resource.
  1022. properties:
  1023. create:
  1024. description: Create enables PKCS12 keystore creation for the
  1025. Certificate. If true, a file named `keystore.p12` will be
  1026. created in the target Secret resource, encrypted using the
  1027. password stored in `passwordSecretRef`. The keystore file
  1028. will only be updated upon re-issuance.
  1029. type: boolean
  1030. passwordSecretRef:
  1031. description: PasswordSecretRef is a reference to a key in
  1032. a Secret resource containing the password used to encrypt
  1033. the PKCS12 keystore.
  1034. properties:
  1035. key:
  1036. description: The key of the entry in the Secret resource's
  1037. `data` field to be used. Some instances of this field
  1038. may be defaulted, in others it may be required.
  1039. type: string
  1040. name:
  1041. description: 'Name of the resource being referred to.
  1042. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1043. type: string
  1044. required:
  1045. - name
  1046. type: object
  1047. required:
  1048. - create
  1049. - passwordSecretRef
  1050. type: object
  1051. type: object
  1052. organization:
  1053. description: Organization is a list of organizations to be used on
  1054. the Certificate.
  1055. items:
  1056. type: string
  1057. type: array
  1058. privateKey:
  1059. description: Options to control private keys used for the Certificate.
  1060. properties:
  1061. rotationPolicy:
  1062. description: RotationPolicy controls how private keys should be
  1063. regenerated when a re-issuance is being processed. If set to
  1064. Never, a private key will only be generated if one does not
  1065. already exist in the target `spec.secretName`. If one does exists
  1066. but it does not have the correct algorithm or size, a warning
  1067. will be raised to await user intervention. If set to Always,
  1068. a private key matching the specified requirements will be generated
  1069. whenever a re-issuance occurs. Default is 'Never' for backward
  1070. compatibility.
  1071. type: string
  1072. type: object
  1073. renewBefore:
  1074. description: The amount of time before the currently issued certificate's
  1075. `notAfter` time that cert-manager will begin to attempt to renew
  1076. the certificate. If this value is greater than the total duration
  1077. of the certificate (i.e. notAfter - notBefore), it will be automatically
  1078. renewed 2/3rds of the way through the certificate's duration.
  1079. type: string
  1080. secretName:
  1081. description: SecretName is the name of the secret resource that will
  1082. be automatically created and managed by this Certificate resource.
  1083. It will be populated with a private key and certificate, signed
  1084. by the denoted issuer.
  1085. type: string
  1086. subject:
  1087. description: Full X509 name specification (https://golang.org/pkg/crypto/x509/pkix/#Name).
  1088. properties:
  1089. countries:
  1090. description: Countries to be used on the Certificate.
  1091. items:
  1092. type: string
  1093. type: array
  1094. localities:
  1095. description: Cities to be used on the Certificate.
  1096. items:
  1097. type: string
  1098. type: array
  1099. organizationalUnits:
  1100. description: Organizational Units to be used on the Certificate.
  1101. items:
  1102. type: string
  1103. type: array
  1104. postalCodes:
  1105. description: Postal codes to be used on the Certificate.
  1106. items:
  1107. type: string
  1108. type: array
  1109. provinces:
  1110. description: State/Provinces to be used on the Certificate.
  1111. items:
  1112. type: string
  1113. type: array
  1114. serialNumber:
  1115. description: Serial number to be used on the Certificate.
  1116. type: string
  1117. streetAddresses:
  1118. description: Street addresses to be used on the Certificate.
  1119. items:
  1120. type: string
  1121. type: array
  1122. type: object
  1123. uriSANs:
  1124. description: URISANs is a list of URI subjectAltNames to be set on
  1125. the Certificate.
  1126. items:
  1127. type: string
  1128. type: array
  1129. usages:
  1130. description: Usages is the set of x509 usages that are requested for
  1131. the certificate. Defaults to `digital signature` and `key encipherment`
  1132. if not specified.
  1133. items:
  1134. description: 'KeyUsage specifies valid usage contexts for keys.
  1135. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  1136. Valid KeyUsage values are as follows: "signing", "digital signature",
  1137. "content commitment", "key encipherment", "key agreement", "data
  1138. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  1139. only", "any", "server auth", "client auth", "code signing", "email
  1140. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  1141. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  1142. sgc"'
  1143. enum:
  1144. - signing
  1145. - digital signature
  1146. - content commitment
  1147. - key encipherment
  1148. - key agreement
  1149. - data encipherment
  1150. - cert sign
  1151. - crl sign
  1152. - encipher only
  1153. - decipher only
  1154. - any
  1155. - server auth
  1156. - client auth
  1157. - code signing
  1158. - email protection
  1159. - s/mime
  1160. - ipsec end system
  1161. - ipsec tunnel
  1162. - ipsec user
  1163. - timestamping
  1164. - ocsp signing
  1165. - microsoft sgc
  1166. - netscape sgc
  1167. type: string
  1168. type: array
  1169. required:
  1170. - issuerRef
  1171. - secretName
  1172. type: object
  1173. status:
  1174. description: Status of the Certificate. This is set and managed automatically.
  1175. properties:
  1176. conditions:
  1177. description: List of status conditions to indicate the status of certificates.
  1178. Known condition types are `Ready` and `Issuing`.
  1179. items:
  1180. description: CertificateCondition contains condition information
  1181. for an Certificate.
  1182. properties:
  1183. lastTransitionTime:
  1184. description: LastTransitionTime is the timestamp corresponding
  1185. to the last status change of this condition.
  1186. format: date-time
  1187. type: string
  1188. message:
  1189. description: Message is a human readable description of the
  1190. details of the last transition, complementing reason.
  1191. type: string
  1192. reason:
  1193. description: Reason is a brief machine readable explanation
  1194. for the condition's last transition.
  1195. type: string
  1196. status:
  1197. description: Status of the condition, one of ('True', 'False',
  1198. 'Unknown').
  1199. enum:
  1200. - "True"
  1201. - "False"
  1202. - Unknown
  1203. type: string
  1204. type:
  1205. description: Type of the condition, known values are ('Ready',
  1206. `Issuing`).
  1207. type: string
  1208. required:
  1209. - status
  1210. - type
  1211. type: object
  1212. type: array
  1213. lastFailureTime:
  1214. description: LastFailureTime is the time as recorded by the Certificate
  1215. controller of the most recent failure to complete a CertificateRequest
  1216. for this Certificate resource. If set, cert-manager will not re-request
  1217. another Certificate until 1 hour has elapsed from this time.
  1218. format: date-time
  1219. type: string
  1220. nextPrivateKeySecretName:
  1221. description: The name of the Secret resource containing the private
  1222. key to be used for the next certificate iteration. The keymanager
  1223. controller will automatically set this field if the `Issuing` condition
  1224. is set to `True`. It will automatically unset this field when the
  1225. Issuing condition is not set or False.
  1226. type: string
  1227. notAfter:
  1228. description: The expiration time of the certificate stored in the
  1229. secret named by this resource in `spec.secretName`.
  1230. format: date-time
  1231. type: string
  1232. notBefore:
  1233. description: The time after which the certificate stored in the secret
  1234. named by this resource in spec.secretName is valid.
  1235. format: date-time
  1236. type: string
  1237. renewalTime:
  1238. description: RenewalTime is the time at which the certificate will
  1239. be next renewed. If not set, no upcoming renewal is scheduled.
  1240. format: date-time
  1241. type: string
  1242. revision:
  1243. description: "The current 'revision' of the certificate as issued.
  1244. \n When a CertificateRequest resource is created, it will have the
  1245. `cert-manager.io/certificate-revision` set to one greater than the
  1246. current value of this field. \n Upon issuance, this field will be
  1247. set to the value of the annotation on the CertificateRequest resource
  1248. used to issue the certificate. \n Persisting the value on the CertificateRequest
  1249. resource allows the certificates controller to know whether a request
  1250. is part of an old issuance or if it is part of the ongoing revision's
  1251. issuance by checking if the revision value in the annotation is
  1252. greater than this field."
  1253. type: integer
  1254. type: object
  1255. type: object
  1256. served: true
  1257. storage: false
  1258. subresources:
  1259. status: {}
  1260. - additionalPrinterColumns:
  1261. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1262. name: Ready
  1263. type: string
  1264. - jsonPath: .spec.secretName
  1265. name: Secret
  1266. type: string
  1267. - jsonPath: .spec.issuerRef.name
  1268. name: Issuer
  1269. priority: 1
  1270. type: string
  1271. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  1272. name: Status
  1273. priority: 1
  1274. type: string
  1275. - description: CreationTimestamp is a timestamp representing the server time when
  1276. this object was created. It is not guaranteed to be set in happens-before
  1277. order across separate operations. Clients may not set this value. It is represented
  1278. in RFC3339 form and is in UTC.
  1279. jsonPath: .metadata.creationTimestamp
  1280. name: Age
  1281. type: date
  1282. name: v1alpha3
  1283. schema:
  1284. openAPIV3Schema:
  1285. description: "A Certificate resource should be created to ensure an up to
  1286. date and signed x509 certificate is stored in the Kubernetes Secret resource
  1287. named in `spec.secretName`. \n The stored certificate will be renewed before
  1288. it expires (as configured by `spec.renewBefore`)."
  1289. properties:
  1290. apiVersion:
  1291. description: 'APIVersion defines the versioned schema of this representation
  1292. of an object. Servers should convert recognized schemas to the latest
  1293. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1294. type: string
  1295. kind:
  1296. description: 'Kind is a string value representing the REST resource this
  1297. object represents. Servers may infer this from the endpoint the client
  1298. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1299. type: string
  1300. metadata:
  1301. type: object
  1302. spec:
  1303. description: Desired state of the Certificate resource.
  1304. properties:
  1305. commonName:
  1306. description: 'CommonName is a common name to be used on the Certificate.
  1307. The CommonName should have a length of 64 characters or fewer to
  1308. avoid generating invalid CSRs. This value is ignored by TLS clients
  1309. when any subject alt name is set. This is x509 behaviour: https://tools.ietf.org/html/rfc6125#section-6.4.4'
  1310. type: string
  1311. dnsNames:
  1312. description: DNSNames is a list of DNS subjectAltNames to be set on
  1313. the Certificate.
  1314. items:
  1315. type: string
  1316. type: array
  1317. duration:
  1318. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  1319. This option may be ignored/overridden by some issuer types. If overridden
  1320. and `renewBefore` is greater than the actual certificate duration,
  1321. the certificate will be automatically renewed 2/3rds of the way
  1322. through the certificate's duration.
  1323. type: string
  1324. emailSANs:
  1325. description: EmailSANs is a list of email subjectAltNames to be set
  1326. on the Certificate.
  1327. items:
  1328. type: string
  1329. type: array
  1330. ipAddresses:
  1331. description: IPAddresses is a list of IP address subjectAltNames to
  1332. be set on the Certificate.
  1333. items:
  1334. type: string
  1335. type: array
  1336. isCA:
  1337. description: IsCA will mark this Certificate as valid for certificate
  1338. signing. This will automatically add the `cert sign` usage to the
  1339. list of `usages`.
  1340. type: boolean
  1341. issuerRef:
  1342. description: IssuerRef is a reference to the issuer for this certificate.
  1343. If the 'kind' field is not set, or set to 'Issuer', an Issuer resource
  1344. with the given name in the same namespace as the Certificate will
  1345. be used. If the 'kind' field is set to 'ClusterIssuer', a ClusterIssuer
  1346. with the provided name will be used. The 'name' field in this stanza
  1347. is required at all times.
  1348. properties:
  1349. group:
  1350. description: Group of the resource being referred to.
  1351. type: string
  1352. kind:
  1353. description: Kind of the resource being referred to.
  1354. type: string
  1355. name:
  1356. description: Name of the resource being referred to.
  1357. type: string
  1358. required:
  1359. - name
  1360. type: object
  1361. keyAlgorithm:
  1362. description: KeyAlgorithm is the private key algorithm of the corresponding
  1363. private key for this certificate. If provided, allowed values are
  1364. either "rsa" or "ecdsa" If `keyAlgorithm` is specified and `keySize`
  1365. is not provided, key size of 256 will be used for "ecdsa" key algorithm
  1366. and key size of 2048 will be used for "rsa" key algorithm.
  1367. enum:
  1368. - rsa
  1369. - ecdsa
  1370. type: string
  1371. keyEncoding:
  1372. description: KeyEncoding is the private key cryptography standards
  1373. (PKCS) for this certificate's private key to be encoded in. If provided,
  1374. allowed values are "pkcs1" and "pkcs8" standing for PKCS#1 and PKCS#8,
  1375. respectively. If KeyEncoding is not specified, then PKCS#1 will
  1376. be used by default.
  1377. enum:
  1378. - pkcs1
  1379. - pkcs8
  1380. type: string
  1381. keySize:
  1382. description: KeySize is the key bit size of the corresponding private
  1383. key for this certificate. If `keyAlgorithm` is set to `RSA`, valid
  1384. values are `2048`, `4096` or `8192`, and will default to `2048`
  1385. if not specified. If `keyAlgorithm` is set to `ECDSA`, valid values
  1386. are `256`, `384` or `521`, and will default to `256` if not specified.
  1387. No other values are allowed.
  1388. maximum: 8192
  1389. minimum: 0
  1390. type: integer
  1391. keystores:
  1392. description: Keystores configures additional keystore output formats
  1393. stored in the `secretName` Secret resource.
  1394. properties:
  1395. jks:
  1396. description: JKS configures options for storing a JKS keystore
  1397. in the `spec.secretName` Secret resource.
  1398. properties:
  1399. create:
  1400. description: Create enables JKS keystore creation for the
  1401. Certificate. If true, a file named `keystore.jks` will be
  1402. created in the target Secret resource, encrypted using the
  1403. password stored in `passwordSecretRef`. The keystore file
  1404. will only be updated upon re-issuance.
  1405. type: boolean
  1406. passwordSecretRef:
  1407. description: PasswordSecretRef is a reference to a key in
  1408. a Secret resource containing the password used to encrypt
  1409. the JKS keystore.
  1410. properties:
  1411. key:
  1412. description: The key of the entry in the Secret resource's
  1413. `data` field to be used. Some instances of this field
  1414. may be defaulted, in others it may be required.
  1415. type: string
  1416. name:
  1417. description: 'Name of the resource being referred to.
  1418. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1419. type: string
  1420. required:
  1421. - name
  1422. type: object
  1423. required:
  1424. - create
  1425. - passwordSecretRef
  1426. type: object
  1427. pkcs12:
  1428. description: PKCS12 configures options for storing a PKCS12 keystore
  1429. in the `spec.secretName` Secret resource.
  1430. properties:
  1431. create:
  1432. description: Create enables PKCS12 keystore creation for the
  1433. Certificate. If true, a file named `keystore.p12` will be
  1434. created in the target Secret resource, encrypted using the
  1435. password stored in `passwordSecretRef`. The keystore file
  1436. will only be updated upon re-issuance.
  1437. type: boolean
  1438. passwordSecretRef:
  1439. description: PasswordSecretRef is a reference to a key in
  1440. a Secret resource containing the password used to encrypt
  1441. the PKCS12 keystore.
  1442. properties:
  1443. key:
  1444. description: The key of the entry in the Secret resource's
  1445. `data` field to be used. Some instances of this field
  1446. may be defaulted, in others it may be required.
  1447. type: string
  1448. name:
  1449. description: 'Name of the resource being referred to.
  1450. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1451. type: string
  1452. required:
  1453. - name
  1454. type: object
  1455. required:
  1456. - create
  1457. - passwordSecretRef
  1458. type: object
  1459. type: object
  1460. privateKey:
  1461. description: Options to control private keys used for the Certificate.
  1462. properties:
  1463. rotationPolicy:
  1464. description: RotationPolicy controls how private keys should be
  1465. regenerated when a re-issuance is being processed. If set to
  1466. Never, a private key will only be generated if one does not
  1467. already exist in the target `spec.secretName`. If one does exists
  1468. but it does not have the correct algorithm or size, a warning
  1469. will be raised to await user intervention. If set to Always,
  1470. a private key matching the specified requirements will be generated
  1471. whenever a re-issuance occurs. Default is 'Never' for backward
  1472. compatibility.
  1473. type: string
  1474. type: object
  1475. renewBefore:
  1476. description: The amount of time before the currently issued certificate's
  1477. `notAfter` time that cert-manager will begin to attempt to renew
  1478. the certificate. If this value is greater than the total duration
  1479. of the certificate (i.e. notAfter - notBefore), it will be automatically
  1480. renewed 2/3rds of the way through the certificate's duration.
  1481. type: string
  1482. secretName:
  1483. description: SecretName is the name of the secret resource that will
  1484. be automatically created and managed by this Certificate resource.
  1485. It will be populated with a private key and certificate, signed
  1486. by the denoted issuer.
  1487. type: string
  1488. subject:
  1489. description: Full X509 name specification (https://golang.org/pkg/crypto/x509/pkix/#Name).
  1490. properties:
  1491. countries:
  1492. description: Countries to be used on the Certificate.
  1493. items:
  1494. type: string
  1495. type: array
  1496. localities:
  1497. description: Cities to be used on the Certificate.
  1498. items:
  1499. type: string
  1500. type: array
  1501. organizationalUnits:
  1502. description: Organizational Units to be used on the Certificate.
  1503. items:
  1504. type: string
  1505. type: array
  1506. organizations:
  1507. description: Organizations to be used on the Certificate.
  1508. items:
  1509. type: string
  1510. type: array
  1511. postalCodes:
  1512. description: Postal codes to be used on the Certificate.
  1513. items:
  1514. type: string
  1515. type: array
  1516. provinces:
  1517. description: State/Provinces to be used on the Certificate.
  1518. items:
  1519. type: string
  1520. type: array
  1521. serialNumber:
  1522. description: Serial number to be used on the Certificate.
  1523. type: string
  1524. streetAddresses:
  1525. description: Street addresses to be used on the Certificate.
  1526. items:
  1527. type: string
  1528. type: array
  1529. type: object
  1530. uriSANs:
  1531. description: URISANs is a list of URI subjectAltNames to be set on
  1532. the Certificate.
  1533. items:
  1534. type: string
  1535. type: array
  1536. usages:
  1537. description: Usages is the set of x509 usages that are requested for
  1538. the certificate. Defaults to `digital signature` and `key encipherment`
  1539. if not specified.
  1540. items:
  1541. description: 'KeyUsage specifies valid usage contexts for keys.
  1542. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  1543. Valid KeyUsage values are as follows: "signing", "digital signature",
  1544. "content commitment", "key encipherment", "key agreement", "data
  1545. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  1546. only", "any", "server auth", "client auth", "code signing", "email
  1547. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  1548. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  1549. sgc"'
  1550. enum:
  1551. - signing
  1552. - digital signature
  1553. - content commitment
  1554. - key encipherment
  1555. - key agreement
  1556. - data encipherment
  1557. - cert sign
  1558. - crl sign
  1559. - encipher only
  1560. - decipher only
  1561. - any
  1562. - server auth
  1563. - client auth
  1564. - code signing
  1565. - email protection
  1566. - s/mime
  1567. - ipsec end system
  1568. - ipsec tunnel
  1569. - ipsec user
  1570. - timestamping
  1571. - ocsp signing
  1572. - microsoft sgc
  1573. - netscape sgc
  1574. type: string
  1575. type: array
  1576. required:
  1577. - issuerRef
  1578. - secretName
  1579. type: object
  1580. status:
  1581. description: Status of the Certificate. This is set and managed automatically.
  1582. properties:
  1583. conditions:
  1584. description: List of status conditions to indicate the status of certificates.
  1585. Known condition types are `Ready` and `Issuing`.
  1586. items:
  1587. description: CertificateCondition contains condition information
  1588. for an Certificate.
  1589. properties:
  1590. lastTransitionTime:
  1591. description: LastTransitionTime is the timestamp corresponding
  1592. to the last status change of this condition.
  1593. format: date-time
  1594. type: string
  1595. message:
  1596. description: Message is a human readable description of the
  1597. details of the last transition, complementing reason.
  1598. type: string
  1599. reason:
  1600. description: Reason is a brief machine readable explanation
  1601. for the condition's last transition.
  1602. type: string
  1603. status:
  1604. description: Status of the condition, one of ('True', 'False',
  1605. 'Unknown').
  1606. enum:
  1607. - "True"
  1608. - "False"
  1609. - Unknown
  1610. type: string
  1611. type:
  1612. description: Type of the condition, known values are ('Ready',
  1613. `Issuing`).
  1614. type: string
  1615. required:
  1616. - status
  1617. - type
  1618. type: object
  1619. type: array
  1620. lastFailureTime:
  1621. description: LastFailureTime is the time as recorded by the Certificate
  1622. controller of the most recent failure to complete a CertificateRequest
  1623. for this Certificate resource. If set, cert-manager will not re-request
  1624. another Certificate until 1 hour has elapsed from this time.
  1625. format: date-time
  1626. type: string
  1627. nextPrivateKeySecretName:
  1628. description: The name of the Secret resource containing the private
  1629. key to be used for the next certificate iteration. The keymanager
  1630. controller will automatically set this field if the `Issuing` condition
  1631. is set to `True`. It will automatically unset this field when the
  1632. Issuing condition is not set or False.
  1633. type: string
  1634. notAfter:
  1635. description: The expiration time of the certificate stored in the
  1636. secret named by this resource in `spec.secretName`.
  1637. format: date-time
  1638. type: string
  1639. notBefore:
  1640. description: The time after which the certificate stored in the secret
  1641. named by this resource in spec.secretName is valid.
  1642. format: date-time
  1643. type: string
  1644. renewalTime:
  1645. description: RenewalTime is the time at which the certificate will
  1646. be next renewed. If not set, no upcoming renewal is scheduled.
  1647. format: date-time
  1648. type: string
  1649. revision:
  1650. description: "The current 'revision' of the certificate as issued.
  1651. \n When a CertificateRequest resource is created, it will have the
  1652. `cert-manager.io/certificate-revision` set to one greater than the
  1653. current value of this field. \n Upon issuance, this field will be
  1654. set to the value of the annotation on the CertificateRequest resource
  1655. used to issue the certificate. \n Persisting the value on the CertificateRequest
  1656. resource allows the certificates controller to know whether a request
  1657. is part of an old issuance or if it is part of the ongoing revision's
  1658. issuance by checking if the revision value in the annotation is
  1659. greater than this field."
  1660. type: integer
  1661. type: object
  1662. type: object
  1663. served: true
  1664. storage: false
  1665. subresources:
  1666. status: {}
  1667. - additionalPrinterColumns:
  1668. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1669. name: Ready
  1670. type: string
  1671. - jsonPath: .spec.secretName
  1672. name: Secret
  1673. type: string
  1674. - jsonPath: .spec.issuerRef.name
  1675. name: Issuer
  1676. priority: 1
  1677. type: string
  1678. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  1679. name: Status
  1680. priority: 1
  1681. type: string
  1682. - description: CreationTimestamp is a timestamp representing the server time when
  1683. this object was created. It is not guaranteed to be set in happens-before
  1684. order across separate operations. Clients may not set this value. It is represented
  1685. in RFC3339 form and is in UTC.
  1686. jsonPath: .metadata.creationTimestamp
  1687. name: Age
  1688. type: date
  1689. name: v1beta1
  1690. schema:
  1691. openAPIV3Schema:
  1692. description: "A Certificate resource should be created to ensure an up to
  1693. date and signed x509 certificate is stored in the Kubernetes Secret resource
  1694. named in `spec.secretName`. \n The stored certificate will be renewed before
  1695. it expires (as configured by `spec.renewBefore`)."
  1696. properties:
  1697. apiVersion:
  1698. description: 'APIVersion defines the versioned schema of this representation
  1699. of an object. Servers should convert recognized schemas to the latest
  1700. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1701. type: string
  1702. kind:
  1703. description: 'Kind is a string value representing the REST resource this
  1704. object represents. Servers may infer this from the endpoint the client
  1705. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1706. type: string
  1707. metadata:
  1708. type: object
  1709. spec:
  1710. description: Desired state of the Certificate resource.
  1711. properties:
  1712. commonName:
  1713. description: 'CommonName is a common name to be used on the Certificate.
  1714. The CommonName should have a length of 64 characters or fewer to
  1715. avoid generating invalid CSRs. This value is ignored by TLS clients
  1716. when any subject alt name is set. This is x509 behaviour: https://tools.ietf.org/html/rfc6125#section-6.4.4'
  1717. type: string
  1718. dnsNames:
  1719. description: DNSNames is a list of DNS subjectAltNames to be set on
  1720. the Certificate.
  1721. items:
  1722. type: string
  1723. type: array
  1724. duration:
  1725. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  1726. This option may be ignored/overridden by some issuer types. If overridden
  1727. and `renewBefore` is greater than the actual certificate duration,
  1728. the certificate will be automatically renewed 2/3rds of the way
  1729. through the certificate's duration.
  1730. type: string
  1731. emailSANs:
  1732. description: EmailSANs is a list of email subjectAltNames to be set
  1733. on the Certificate.
  1734. items:
  1735. type: string
  1736. type: array
  1737. ipAddresses:
  1738. description: IPAddresses is a list of IP address subjectAltNames to
  1739. be set on the Certificate.
  1740. items:
  1741. type: string
  1742. type: array
  1743. isCA:
  1744. description: IsCA will mark this Certificate as valid for certificate
  1745. signing. This will automatically add the `cert sign` usage to the
  1746. list of `usages`.
  1747. type: boolean
  1748. issuerRef:
  1749. description: IssuerRef is a reference to the issuer for this certificate.
  1750. If the 'kind' field is not set, or set to 'Issuer', an Issuer resource
  1751. with the given name in the same namespace as the Certificate will
  1752. be used. If the 'kind' field is set to 'ClusterIssuer', a ClusterIssuer
  1753. with the provided name will be used. The 'name' field in this stanza
  1754. is required at all times.
  1755. properties:
  1756. group:
  1757. description: Group of the resource being referred to.
  1758. type: string
  1759. kind:
  1760. description: Kind of the resource being referred to.
  1761. type: string
  1762. name:
  1763. description: Name of the resource being referred to.
  1764. type: string
  1765. required:
  1766. - name
  1767. type: object
  1768. keystores:
  1769. description: Keystores configures additional keystore output formats
  1770. stored in the `secretName` Secret resource.
  1771. properties:
  1772. jks:
  1773. description: JKS configures options for storing a JKS keystore
  1774. in the `spec.secretName` Secret resource.
  1775. properties:
  1776. create:
  1777. description: Create enables JKS keystore creation for the
  1778. Certificate. If true, a file named `keystore.jks` will be
  1779. created in the target Secret resource, encrypted using the
  1780. password stored in `passwordSecretRef`. The keystore file
  1781. will only be updated upon re-issuance.
  1782. type: boolean
  1783. passwordSecretRef:
  1784. description: PasswordSecretRef is a reference to a key in
  1785. a Secret resource containing the password used to encrypt
  1786. the JKS keystore.
  1787. properties:
  1788. key:
  1789. description: The key of the entry in the Secret resource's
  1790. `data` field to be used. Some instances of this field
  1791. may be defaulted, in others it may be required.
  1792. type: string
  1793. name:
  1794. description: 'Name of the resource being referred to.
  1795. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1796. type: string
  1797. required:
  1798. - name
  1799. type: object
  1800. required:
  1801. - create
  1802. - passwordSecretRef
  1803. type: object
  1804. pkcs12:
  1805. description: PKCS12 configures options for storing a PKCS12 keystore
  1806. in the `spec.secretName` Secret resource.
  1807. properties:
  1808. create:
  1809. description: Create enables PKCS12 keystore creation for the
  1810. Certificate. If true, a file named `keystore.p12` will be
  1811. created in the target Secret resource, encrypted using the
  1812. password stored in `passwordSecretRef`. The keystore file
  1813. will only be updated upon re-issuance.
  1814. type: boolean
  1815. passwordSecretRef:
  1816. description: PasswordSecretRef is a reference to a key in
  1817. a Secret resource containing the password used to encrypt
  1818. the PKCS12 keystore.
  1819. properties:
  1820. key:
  1821. description: The key of the entry in the Secret resource's
  1822. `data` field to be used. Some instances of this field
  1823. may be defaulted, in others it may be required.
  1824. type: string
  1825. name:
  1826. description: 'Name of the resource being referred to.
  1827. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1828. type: string
  1829. required:
  1830. - name
  1831. type: object
  1832. required:
  1833. - create
  1834. - passwordSecretRef
  1835. type: object
  1836. type: object
  1837. privateKey:
  1838. description: Options to control private keys used for the Certificate.
  1839. properties:
  1840. algorithm:
  1841. description: Algorithm is the private key algorithm of the corresponding
  1842. private key for this certificate. If provided, allowed values
  1843. are either "rsa" or "ecdsa" If `algorithm` is specified and
  1844. `size` is not provided, key size of 256 will be used for "ecdsa"
  1845. key algorithm and key size of 2048 will be used for "rsa" key
  1846. algorithm.
  1847. enum:
  1848. - RSA
  1849. - ECDSA
  1850. type: string
  1851. encoding:
  1852. description: The private key cryptography standards (PKCS) encoding
  1853. for this certificate's private key to be encoded in. If provided,
  1854. allowed values are "pkcs1" and "pkcs8" standing for PKCS#1 and
  1855. PKCS#8, respectively. Defaults to PKCS#1 if not specified.
  1856. enum:
  1857. - PKCS1
  1858. - PKCS8
  1859. type: string
  1860. rotationPolicy:
  1861. description: RotationPolicy controls how private keys should be
  1862. regenerated when a re-issuance is being processed. If set to
  1863. Never, a private key will only be generated if one does not
  1864. already exist in the target `spec.secretName`. If one does exists
  1865. but it does not have the correct algorithm or size, a warning
  1866. will be raised to await user intervention. If set to Always,
  1867. a private key matching the specified requirements will be generated
  1868. whenever a re-issuance occurs. Default is 'Never' for backward
  1869. compatibility.
  1870. type: string
  1871. size:
  1872. description: Size is the key bit size of the corresponding private
  1873. key for this certificate. If `algorithm` is set to `RSA`, valid
  1874. values are `2048`, `4096` or `8192`, and will default to `2048`
  1875. if not specified. If `algorithm` is set to `ECDSA`, valid values
  1876. are `256`, `384` or `521`, and will default to `256` if not
  1877. specified. No other values are allowed.
  1878. maximum: 8192
  1879. minimum: 0
  1880. type: integer
  1881. type: object
  1882. renewBefore:
  1883. description: The amount of time before the currently issued certificate's
  1884. `notAfter` time that cert-manager will begin to attempt to renew
  1885. the certificate. If this value is greater than the total duration
  1886. of the certificate (i.e. notAfter - notBefore), it will be automatically
  1887. renewed 2/3rds of the way through the certificate's duration.
  1888. type: string
  1889. secretName:
  1890. description: SecretName is the name of the secret resource that will
  1891. be automatically created and managed by this Certificate resource.
  1892. It will be populated with a private key and certificate, signed
  1893. by the denoted issuer.
  1894. type: string
  1895. subject:
  1896. description: Full X509 name specification (https://golang.org/pkg/crypto/x509/pkix/#Name).
  1897. properties:
  1898. countries:
  1899. description: Countries to be used on the Certificate.
  1900. items:
  1901. type: string
  1902. type: array
  1903. localities:
  1904. description: Cities to be used on the Certificate.
  1905. items:
  1906. type: string
  1907. type: array
  1908. organizationalUnits:
  1909. description: Organizational Units to be used on the Certificate.
  1910. items:
  1911. type: string
  1912. type: array
  1913. organizations:
  1914. description: Organizations to be used on the Certificate.
  1915. items:
  1916. type: string
  1917. type: array
  1918. postalCodes:
  1919. description: Postal codes to be used on the Certificate.
  1920. items:
  1921. type: string
  1922. type: array
  1923. provinces:
  1924. description: State/Provinces to be used on the Certificate.
  1925. items:
  1926. type: string
  1927. type: array
  1928. serialNumber:
  1929. description: Serial number to be used on the Certificate.
  1930. type: string
  1931. streetAddresses:
  1932. description: Street addresses to be used on the Certificate.
  1933. items:
  1934. type: string
  1935. type: array
  1936. type: object
  1937. uriSANs:
  1938. description: URISANs is a list of URI subjectAltNames to be set on
  1939. the Certificate.
  1940. items:
  1941. type: string
  1942. type: array
  1943. usages:
  1944. description: Usages is the set of x509 usages that are requested for
  1945. the certificate. Defaults to `digital signature` and `key encipherment`
  1946. if not specified.
  1947. items:
  1948. description: 'KeyUsage specifies valid usage contexts for keys.
  1949. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  1950. Valid KeyUsage values are as follows: "signing", "digital signature",
  1951. "content commitment", "key encipherment", "key agreement", "data
  1952. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  1953. only", "any", "server auth", "client auth", "code signing", "email
  1954. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  1955. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  1956. sgc"'
  1957. enum:
  1958. - signing
  1959. - digital signature
  1960. - content commitment
  1961. - key encipherment
  1962. - key agreement
  1963. - data encipherment
  1964. - cert sign
  1965. - crl sign
  1966. - encipher only
  1967. - decipher only
  1968. - any
  1969. - server auth
  1970. - client auth
  1971. - code signing
  1972. - email protection
  1973. - s/mime
  1974. - ipsec end system
  1975. - ipsec tunnel
  1976. - ipsec user
  1977. - timestamping
  1978. - ocsp signing
  1979. - microsoft sgc
  1980. - netscape sgc
  1981. type: string
  1982. type: array
  1983. required:
  1984. - issuerRef
  1985. - secretName
  1986. type: object
  1987. status:
  1988. description: Status of the Certificate. This is set and managed automatically.
  1989. properties:
  1990. conditions:
  1991. description: List of status conditions to indicate the status of certificates.
  1992. Known condition types are `Ready` and `Issuing`.
  1993. items:
  1994. description: CertificateCondition contains condition information
  1995. for an Certificate.
  1996. properties:
  1997. lastTransitionTime:
  1998. description: LastTransitionTime is the timestamp corresponding
  1999. to the last status change of this condition.
  2000. format: date-time
  2001. type: string
  2002. message:
  2003. description: Message is a human readable description of the
  2004. details of the last transition, complementing reason.
  2005. type: string
  2006. reason:
  2007. description: Reason is a brief machine readable explanation
  2008. for the condition's last transition.
  2009. type: string
  2010. status:
  2011. description: Status of the condition, one of ('True', 'False',
  2012. 'Unknown').
  2013. enum:
  2014. - "True"
  2015. - "False"
  2016. - Unknown
  2017. type: string
  2018. type:
  2019. description: Type of the condition, known values are ('Ready',
  2020. `Issuing`).
  2021. type: string
  2022. required:
  2023. - status
  2024. - type
  2025. type: object
  2026. type: array
  2027. lastFailureTime:
  2028. description: LastFailureTime is the time as recorded by the Certificate
  2029. controller of the most recent failure to complete a CertificateRequest
  2030. for this Certificate resource. If set, cert-manager will not re-request
  2031. another Certificate until 1 hour has elapsed from this time.
  2032. format: date-time
  2033. type: string
  2034. nextPrivateKeySecretName:
  2035. description: The name of the Secret resource containing the private
  2036. key to be used for the next certificate iteration. The keymanager
  2037. controller will automatically set this field if the `Issuing` condition
  2038. is set to `True`. It will automatically unset this field when the
  2039. Issuing condition is not set or False.
  2040. type: string
  2041. notAfter:
  2042. description: The expiration time of the certificate stored in the
  2043. secret named by this resource in `spec.secretName`.
  2044. format: date-time
  2045. type: string
  2046. notBefore:
  2047. description: The time after which the certificate stored in the secret
  2048. named by this resource in spec.secretName is valid.
  2049. format: date-time
  2050. type: string
  2051. renewalTime:
  2052. description: RenewalTime is the time at which the certificate will
  2053. be next renewed. If not set, no upcoming renewal is scheduled.
  2054. format: date-time
  2055. type: string
  2056. revision:
  2057. description: "The current 'revision' of the certificate as issued.
  2058. \n When a CertificateRequest resource is created, it will have the
  2059. `cert-manager.io/certificate-revision` set to one greater than the
  2060. current value of this field. \n Upon issuance, this field will be
  2061. set to the value of the annotation on the CertificateRequest resource
  2062. used to issue the certificate. \n Persisting the value on the CertificateRequest
  2063. resource allows the certificates controller to know whether a request
  2064. is part of an old issuance or if it is part of the ongoing revision's
  2065. issuance by checking if the revision value in the annotation is
  2066. greater than this field."
  2067. type: integer
  2068. type: object
  2069. required:
  2070. - spec
  2071. type: object
  2072. served: true
  2073. storage: false
  2074. subresources:
  2075. status: {}
  2076. - additionalPrinterColumns:
  2077. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2078. name: Ready
  2079. type: string
  2080. - jsonPath: .spec.secretName
  2081. name: Secret
  2082. type: string
  2083. - jsonPath: .spec.issuerRef.name
  2084. name: Issuer
  2085. priority: 1
  2086. type: string
  2087. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  2088. name: Status
  2089. priority: 1
  2090. type: string
  2091. - description: CreationTimestamp is a timestamp representing the server time when
  2092. this object was created. It is not guaranteed to be set in happens-before
  2093. order across separate operations. Clients may not set this value. It is represented
  2094. in RFC3339 form and is in UTC.
  2095. jsonPath: .metadata.creationTimestamp
  2096. name: Age
  2097. type: date
  2098. name: v1
  2099. schema:
  2100. openAPIV3Schema:
  2101. description: "A Certificate resource should be created to ensure an up to
  2102. date and signed x509 certificate is stored in the Kubernetes Secret resource
  2103. named in `spec.secretName`. \n The stored certificate will be renewed before
  2104. it expires (as configured by `spec.renewBefore`)."
  2105. properties:
  2106. apiVersion:
  2107. description: 'APIVersion defines the versioned schema of this representation
  2108. of an object. Servers should convert recognized schemas to the latest
  2109. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2110. type: string
  2111. kind:
  2112. description: 'Kind is a string value representing the REST resource this
  2113. object represents. Servers may infer this from the endpoint the client
  2114. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2115. type: string
  2116. metadata:
  2117. type: object
  2118. spec:
  2119. description: Desired state of the Certificate resource.
  2120. properties:
  2121. commonName:
  2122. description: 'CommonName is a common name to be used on the Certificate.
  2123. The CommonName should have a length of 64 characters or fewer to
  2124. avoid generating invalid CSRs. This value is ignored by TLS clients
  2125. when any subject alt name is set. This is x509 behaviour: https://tools.ietf.org/html/rfc6125#section-6.4.4'
  2126. type: string
  2127. dnsNames:
  2128. description: DNSNames is a list of DNS subjectAltNames to be set on
  2129. the Certificate.
  2130. items:
  2131. type: string
  2132. type: array
  2133. duration:
  2134. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  2135. This option may be ignored/overridden by some issuer types. If overridden
  2136. and `renewBefore` is greater than the actual certificate duration,
  2137. the certificate will be automatically renewed 2/3rds of the way
  2138. through the certificate's duration.
  2139. type: string
  2140. emailAddresses:
  2141. description: EmailAddresses is a list of email subjectAltNames to
  2142. be set on the Certificate.
  2143. items:
  2144. type: string
  2145. type: array
  2146. ipAddresses:
  2147. description: IPAddresses is a list of IP address subjectAltNames to
  2148. be set on the Certificate.
  2149. items:
  2150. type: string
  2151. type: array
  2152. isCA:
  2153. description: IsCA will mark this Certificate as valid for certificate
  2154. signing. This will automatically add the `cert sign` usage to the
  2155. list of `usages`.
  2156. type: boolean
  2157. issuerRef:
  2158. description: IssuerRef is a reference to the issuer for this certificate.
  2159. If the 'kind' field is not set, or set to 'Issuer', an Issuer resource
  2160. with the given name in the same namespace as the Certificate will
  2161. be used. If the 'kind' field is set to 'ClusterIssuer', a ClusterIssuer
  2162. with the provided name will be used. The 'name' field in this stanza
  2163. is required at all times.
  2164. properties:
  2165. group:
  2166. description: Group of the resource being referred to.
  2167. type: string
  2168. kind:
  2169. description: Kind of the resource being referred to.
  2170. type: string
  2171. name:
  2172. description: Name of the resource being referred to.
  2173. type: string
  2174. required:
  2175. - name
  2176. type: object
  2177. keystores:
  2178. description: Keystores configures additional keystore output formats
  2179. stored in the `secretName` Secret resource.
  2180. properties:
  2181. jks:
  2182. description: JKS configures options for storing a JKS keystore
  2183. in the `spec.secretName` Secret resource.
  2184. properties:
  2185. create:
  2186. description: Create enables JKS keystore creation for the
  2187. Certificate. If true, a file named `keystore.jks` will be
  2188. created in the target Secret resource, encrypted using the
  2189. password stored in `passwordSecretRef`. The keystore file
  2190. will only be updated upon re-issuance.
  2191. type: boolean
  2192. passwordSecretRef:
  2193. description: PasswordSecretRef is a reference to a key in
  2194. a Secret resource containing the password used to encrypt
  2195. the JKS keystore.
  2196. properties:
  2197. key:
  2198. description: The key of the entry in the Secret resource's
  2199. `data` field to be used. Some instances of this field
  2200. may be defaulted, in others it may be required.
  2201. type: string
  2202. name:
  2203. description: 'Name of the resource being referred to.
  2204. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2205. type: string
  2206. required:
  2207. - name
  2208. type: object
  2209. required:
  2210. - create
  2211. - passwordSecretRef
  2212. type: object
  2213. pkcs12:
  2214. description: PKCS12 configures options for storing a PKCS12 keystore
  2215. in the `spec.secretName` Secret resource.
  2216. properties:
  2217. create:
  2218. description: Create enables PKCS12 keystore creation for the
  2219. Certificate. If true, a file named `keystore.p12` will be
  2220. created in the target Secret resource, encrypted using the
  2221. password stored in `passwordSecretRef`. The keystore file
  2222. will only be updated upon re-issuance.
  2223. type: boolean
  2224. passwordSecretRef:
  2225. description: PasswordSecretRef is a reference to a key in
  2226. a Secret resource containing the password used to encrypt
  2227. the PKCS12 keystore.
  2228. properties:
  2229. key:
  2230. description: The key of the entry in the Secret resource's
  2231. `data` field to be used. Some instances of this field
  2232. may be defaulted, in others it may be required.
  2233. type: string
  2234. name:
  2235. description: 'Name of the resource being referred to.
  2236. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2237. type: string
  2238. required:
  2239. - name
  2240. type: object
  2241. required:
  2242. - create
  2243. - passwordSecretRef
  2244. type: object
  2245. type: object
  2246. privateKey:
  2247. description: Options to control private keys used for the Certificate.
  2248. properties:
  2249. algorithm:
  2250. description: Algorithm is the private key algorithm of the corresponding
  2251. private key for this certificate. If provided, allowed values
  2252. are either "rsa" or "ecdsa" If `algorithm` is specified and
  2253. `size` is not provided, key size of 256 will be used for "ecdsa"
  2254. key algorithm and key size of 2048 will be used for "rsa" key
  2255. algorithm.
  2256. enum:
  2257. - RSA
  2258. - ECDSA
  2259. type: string
  2260. encoding:
  2261. description: The private key cryptography standards (PKCS) encoding
  2262. for this certificate's private key to be encoded in. If provided,
  2263. allowed values are "pkcs1" and "pkcs8" standing for PKCS#1 and
  2264. PKCS#8, respectively. Defaults to PKCS#1 if not specified.
  2265. enum:
  2266. - PKCS1
  2267. - PKCS8
  2268. type: string
  2269. rotationPolicy:
  2270. description: RotationPolicy controls how private keys should be
  2271. regenerated when a re-issuance is being processed. If set to
  2272. Never, a private key will only be generated if one does not
  2273. already exist in the target `spec.secretName`. If one does exists
  2274. but it does not have the correct algorithm or size, a warning
  2275. will be raised to await user intervention. If set to Always,
  2276. a private key matching the specified requirements will be generated
  2277. whenever a re-issuance occurs. Default is 'Never' for backward
  2278. compatibility.
  2279. type: string
  2280. size:
  2281. description: Size is the key bit size of the corresponding private
  2282. key for this certificate. If `algorithm` is set to `RSA`, valid
  2283. values are `2048`, `4096` or `8192`, and will default to `2048`
  2284. if not specified. If `algorithm` is set to `ECDSA`, valid values
  2285. are `256`, `384` or `521`, and will default to `256` if not
  2286. specified. No other values are allowed.
  2287. maximum: 8192
  2288. minimum: 0
  2289. type: integer
  2290. type: object
  2291. renewBefore:
  2292. description: The amount of time before the currently issued certificate's
  2293. `notAfter` time that cert-manager will begin to attempt to renew
  2294. the certificate. If this value is greater than the total duration
  2295. of the certificate (i.e. notAfter - notBefore), it will be automatically
  2296. renewed 2/3rds of the way through the certificate's duration.
  2297. type: string
  2298. secretName:
  2299. description: SecretName is the name of the secret resource that will
  2300. be automatically created and managed by this Certificate resource.
  2301. It will be populated with a private key and certificate, signed
  2302. by the denoted issuer.
  2303. type: string
  2304. subject:
  2305. description: Full X509 name specification (https://golang.org/pkg/crypto/x509/pkix/#Name).
  2306. properties:
  2307. countries:
  2308. description: Countries to be used on the Certificate.
  2309. items:
  2310. type: string
  2311. type: array
  2312. localities:
  2313. description: Cities to be used on the Certificate.
  2314. items:
  2315. type: string
  2316. type: array
  2317. organizationalUnits:
  2318. description: Organizational Units to be used on the Certificate.
  2319. items:
  2320. type: string
  2321. type: array
  2322. organizations:
  2323. description: Organizations to be used on the Certificate.
  2324. items:
  2325. type: string
  2326. type: array
  2327. postalCodes:
  2328. description: Postal codes to be used on the Certificate.
  2329. items:
  2330. type: string
  2331. type: array
  2332. provinces:
  2333. description: State/Provinces to be used on the Certificate.
  2334. items:
  2335. type: string
  2336. type: array
  2337. serialNumber:
  2338. description: Serial number to be used on the Certificate.
  2339. type: string
  2340. streetAddresses:
  2341. description: Street addresses to be used on the Certificate.
  2342. items:
  2343. type: string
  2344. type: array
  2345. type: object
  2346. uris:
  2347. description: URIs is a list of URI subjectAltNames to be set on the
  2348. Certificate.
  2349. items:
  2350. type: string
  2351. type: array
  2352. usages:
  2353. description: Usages is the set of x509 usages that are requested for
  2354. the certificate. Defaults to `digital signature` and `key encipherment`
  2355. if not specified.
  2356. items:
  2357. description: 'KeyUsage specifies valid usage contexts for keys.
  2358. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  2359. Valid KeyUsage values are as follows: "signing", "digital signature",
  2360. "content commitment", "key encipherment", "key agreement", "data
  2361. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  2362. only", "any", "server auth", "client auth", "code signing", "email
  2363. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  2364. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  2365. sgc"'
  2366. enum:
  2367. - signing
  2368. - digital signature
  2369. - content commitment
  2370. - key encipherment
  2371. - key agreement
  2372. - data encipherment
  2373. - cert sign
  2374. - crl sign
  2375. - encipher only
  2376. - decipher only
  2377. - any
  2378. - server auth
  2379. - client auth
  2380. - code signing
  2381. - email protection
  2382. - s/mime
  2383. - ipsec end system
  2384. - ipsec tunnel
  2385. - ipsec user
  2386. - timestamping
  2387. - ocsp signing
  2388. - microsoft sgc
  2389. - netscape sgc
  2390. type: string
  2391. type: array
  2392. required:
  2393. - issuerRef
  2394. - secretName
  2395. type: object
  2396. status:
  2397. description: Status of the Certificate. This is set and managed automatically.
  2398. properties:
  2399. conditions:
  2400. description: List of status conditions to indicate the status of certificates.
  2401. Known condition types are `Ready` and `Issuing`.
  2402. items:
  2403. description: CertificateCondition contains condition information
  2404. for an Certificate.
  2405. properties:
  2406. lastTransitionTime:
  2407. description: LastTransitionTime is the timestamp corresponding
  2408. to the last status change of this condition.
  2409. format: date-time
  2410. type: string
  2411. message:
  2412. description: Message is a human readable description of the
  2413. details of the last transition, complementing reason.
  2414. type: string
  2415. reason:
  2416. description: Reason is a brief machine readable explanation
  2417. for the condition's last transition.
  2418. type: string
  2419. status:
  2420. description: Status of the condition, one of ('True', 'False',
  2421. 'Unknown').
  2422. enum:
  2423. - "True"
  2424. - "False"
  2425. - Unknown
  2426. type: string
  2427. type:
  2428. description: Type of the condition, known values are ('Ready',
  2429. `Issuing`).
  2430. type: string
  2431. required:
  2432. - status
  2433. - type
  2434. type: object
  2435. type: array
  2436. lastFailureTime:
  2437. description: LastFailureTime is the time as recorded by the Certificate
  2438. controller of the most recent failure to complete a CertificateRequest
  2439. for this Certificate resource. If set, cert-manager will not re-request
  2440. another Certificate until 1 hour has elapsed from this time.
  2441. format: date-time
  2442. type: string
  2443. nextPrivateKeySecretName:
  2444. description: The name of the Secret resource containing the private
  2445. key to be used for the next certificate iteration. The keymanager
  2446. controller will automatically set this field if the `Issuing` condition
  2447. is set to `True`. It will automatically unset this field when the
  2448. Issuing condition is not set or False.
  2449. type: string
  2450. notAfter:
  2451. description: The expiration time of the certificate stored in the
  2452. secret named by this resource in `spec.secretName`.
  2453. format: date-time
  2454. type: string
  2455. notBefore:
  2456. description: The time after which the certificate stored in the secret
  2457. named by this resource in spec.secretName is valid.
  2458. format: date-time
  2459. type: string
  2460. renewalTime:
  2461. description: RenewalTime is the time at which the certificate will
  2462. be next renewed. If not set, no upcoming renewal is scheduled.
  2463. format: date-time
  2464. type: string
  2465. revision:
  2466. description: "The current 'revision' of the certificate as issued.
  2467. \n When a CertificateRequest resource is created, it will have the
  2468. `cert-manager.io/certificate-revision` set to one greater than the
  2469. current value of this field. \n Upon issuance, this field will be
  2470. set to the value of the annotation on the CertificateRequest resource
  2471. used to issue the certificate. \n Persisting the value on the CertificateRequest
  2472. resource allows the certificates controller to know whether a request
  2473. is part of an old issuance or if it is part of the ongoing revision's
  2474. issuance by checking if the revision value in the annotation is
  2475. greater than this field."
  2476. type: integer
  2477. type: object
  2478. required:
  2479. - spec
  2480. type: object
  2481. served: true
  2482. storage: true
  2483. subresources:
  2484. status: {}
  2485. status:
  2486. acceptedNames:
  2487. kind: ""
  2488. plural: ""
  2489. conditions: []
  2490. storedVersions: []
  2491. ---
  2492. apiVersion: apiextensions.k8s.io/v1
  2493. kind: CustomResourceDefinition
  2494. metadata:
  2495. annotations:
  2496. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  2497. labels:
  2498. app: cert-manager
  2499. app.kubernetes.io/instance: cert-manager
  2500. app.kubernetes.io/name: cert-manager
  2501. name: challenges.acme.cert-manager.io
  2502. spec:
  2503. conversion:
  2504. strategy: Webhook
  2505. webhook:
  2506. clientConfig:
  2507. service:
  2508. name: cert-manager-webhook
  2509. namespace: cert-manager
  2510. path: /convert
  2511. conversionReviewVersions:
  2512. - v1
  2513. - v1beta1
  2514. group: acme.cert-manager.io
  2515. names:
  2516. kind: Challenge
  2517. listKind: ChallengeList
  2518. plural: challenges
  2519. singular: challenge
  2520. scope: Namespaced
  2521. versions:
  2522. - additionalPrinterColumns:
  2523. - jsonPath: .status.state
  2524. name: State
  2525. type: string
  2526. - jsonPath: .spec.dnsName
  2527. name: Domain
  2528. type: string
  2529. - jsonPath: .status.reason
  2530. name: Reason
  2531. priority: 1
  2532. type: string
  2533. - description: CreationTimestamp is a timestamp representing the server time when
  2534. this object was created. It is not guaranteed to be set in happens-before
  2535. order across separate operations. Clients may not set this value. It is represented
  2536. in RFC3339 form and is in UTC.
  2537. jsonPath: .metadata.creationTimestamp
  2538. name: Age
  2539. type: date
  2540. name: v1alpha2
  2541. schema:
  2542. openAPIV3Schema:
  2543. description: Challenge is a type to represent a Challenge request with an
  2544. ACME server
  2545. properties:
  2546. apiVersion:
  2547. description: 'APIVersion defines the versioned schema of this representation
  2548. of an object. Servers should convert recognized schemas to the latest
  2549. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2550. type: string
  2551. kind:
  2552. description: 'Kind is a string value representing the REST resource this
  2553. object represents. Servers may infer this from the endpoint the client
  2554. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2555. type: string
  2556. metadata:
  2557. type: object
  2558. spec:
  2559. properties:
  2560. authzURL:
  2561. description: AuthzURL is the URL to the ACME Authorization resource
  2562. that this challenge is a part of.
  2563. type: string
  2564. dnsName:
  2565. description: DNSName is the identifier that this challenge is for,
  2566. e.g. example.com. If the requested DNSName is a 'wildcard', this
  2567. field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
  2568. it must be `example.com`.
  2569. type: string
  2570. issuerRef:
  2571. description: IssuerRef references a properly configured ACME-type
  2572. Issuer which should be used to create this Challenge. If the Issuer
  2573. does not exist, processing will be retried. If the Issuer is not
  2574. an 'ACME' Issuer, an error will be returned and the Challenge will
  2575. be marked as failed.
  2576. properties:
  2577. group:
  2578. description: Group of the resource being referred to.
  2579. type: string
  2580. kind:
  2581. description: Kind of the resource being referred to.
  2582. type: string
  2583. name:
  2584. description: Name of the resource being referred to.
  2585. type: string
  2586. required:
  2587. - name
  2588. type: object
  2589. key:
  2590. description: 'Key is the ACME challenge key for this challenge For
  2591. HTTP01 challenges, this is the value that must be responded with
  2592. to complete the HTTP01 challenge in the format: `<private key JWK
  2593. thumbprint>.<key from acme server for challenge>`. For DNS01 challenges,
  2594. this is the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
  2595. from acme server for challenge>` text that must be set as the TXT
  2596. record content.'
  2597. type: string
  2598. solver:
  2599. description: Solver contains the domain solving configuration that
  2600. should be used to solve this challenge resource.
  2601. properties:
  2602. dns01:
  2603. description: Configures cert-manager to attempt to complete authorizations
  2604. by performing the DNS01 challenge flow.
  2605. properties:
  2606. acmedns:
  2607. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  2608. API to manage DNS01 challenge records.
  2609. properties:
  2610. accountSecretRef:
  2611. description: A reference to a specific 'key' within a
  2612. Secret resource. In some instances, `key` is a required
  2613. field.
  2614. properties:
  2615. key:
  2616. description: The key of the entry in the Secret resource's
  2617. `data` field to be used. Some instances of this
  2618. field may be defaulted, in others it may be required.
  2619. type: string
  2620. name:
  2621. description: 'Name of the resource being referred
  2622. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2623. type: string
  2624. required:
  2625. - name
  2626. type: object
  2627. host:
  2628. type: string
  2629. required:
  2630. - accountSecretRef
  2631. - host
  2632. type: object
  2633. akamai:
  2634. description: Use the Akamai DNS zone management API to manage
  2635. DNS01 challenge records.
  2636. properties:
  2637. accessTokenSecretRef:
  2638. description: A reference to a specific 'key' within a
  2639. Secret resource. In some instances, `key` is a required
  2640. field.
  2641. properties:
  2642. key:
  2643. description: The key of the entry in the Secret resource's
  2644. `data` field to be used. Some instances of this
  2645. field may be defaulted, in others it may be required.
  2646. type: string
  2647. name:
  2648. description: 'Name of the resource being referred
  2649. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2650. type: string
  2651. required:
  2652. - name
  2653. type: object
  2654. clientSecretSecretRef:
  2655. description: A reference to a specific 'key' within a
  2656. Secret resource. In some instances, `key` is a required
  2657. field.
  2658. properties:
  2659. key:
  2660. description: The key of the entry in the Secret resource's
  2661. `data` field to be used. Some instances of this
  2662. field may be defaulted, in others it may be required.
  2663. type: string
  2664. name:
  2665. description: 'Name of the resource being referred
  2666. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2667. type: string
  2668. required:
  2669. - name
  2670. type: object
  2671. clientTokenSecretRef:
  2672. description: A reference to a specific 'key' within a
  2673. Secret resource. In some instances, `key` is a required
  2674. field.
  2675. properties:
  2676. key:
  2677. description: The key of the entry in the Secret resource's
  2678. `data` field to be used. Some instances of this
  2679. field may be defaulted, in others it may be required.
  2680. type: string
  2681. name:
  2682. description: 'Name of the resource being referred
  2683. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2684. type: string
  2685. required:
  2686. - name
  2687. type: object
  2688. serviceConsumerDomain:
  2689. type: string
  2690. required:
  2691. - accessTokenSecretRef
  2692. - clientSecretSecretRef
  2693. - clientTokenSecretRef
  2694. - serviceConsumerDomain
  2695. type: object
  2696. azuredns:
  2697. description: Use the Microsoft Azure DNS API to manage DNS01
  2698. challenge records.
  2699. properties:
  2700. clientID:
  2701. description: if both this and ClientSecret are left unset
  2702. MSI will be used
  2703. type: string
  2704. clientSecretSecretRef:
  2705. description: if both this and ClientID are left unset
  2706. MSI will be used
  2707. properties:
  2708. key:
  2709. description: The key of the entry in the Secret resource's
  2710. `data` field to be used. Some instances of this
  2711. field may be defaulted, in others it may be required.
  2712. type: string
  2713. name:
  2714. description: 'Name of the resource being referred
  2715. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2716. type: string
  2717. required:
  2718. - name
  2719. type: object
  2720. environment:
  2721. enum:
  2722. - AzurePublicCloud
  2723. - AzureChinaCloud
  2724. - AzureGermanCloud
  2725. - AzureUSGovernmentCloud
  2726. type: string
  2727. hostedZoneName:
  2728. type: string
  2729. resourceGroupName:
  2730. type: string
  2731. subscriptionID:
  2732. type: string
  2733. tenantID:
  2734. description: when specifying ClientID and ClientSecret
  2735. then this field is also needed
  2736. type: string
  2737. required:
  2738. - resourceGroupName
  2739. - subscriptionID
  2740. type: object
  2741. clouddns:
  2742. description: Use the Google Cloud DNS API to manage DNS01
  2743. challenge records.
  2744. properties:
  2745. hostedZoneName:
  2746. description: HostedZoneName is an optional field that
  2747. tells cert-manager in which Cloud DNS zone the challenge
  2748. record has to be created. If left empty cert-manager
  2749. will automatically choose a zone.
  2750. type: string
  2751. project:
  2752. type: string
  2753. serviceAccountSecretRef:
  2754. description: A reference to a specific 'key' within a
  2755. Secret resource. In some instances, `key` is a required
  2756. field.
  2757. properties:
  2758. key:
  2759. description: The key of the entry in the Secret resource's
  2760. `data` field to be used. Some instances of this
  2761. field may be defaulted, in others it may be required.
  2762. type: string
  2763. name:
  2764. description: 'Name of the resource being referred
  2765. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2766. type: string
  2767. required:
  2768. - name
  2769. type: object
  2770. required:
  2771. - project
  2772. type: object
  2773. cloudflare:
  2774. description: Use the Cloudflare API to manage DNS01 challenge
  2775. records.
  2776. properties:
  2777. apiKeySecretRef:
  2778. description: 'API key to use to authenticate with Cloudflare.
  2779. Note: using an API token to authenticate is now the
  2780. recommended method as it allows greater control of permissions.'
  2781. properties:
  2782. key:
  2783. description: The key of the entry in the Secret resource's
  2784. `data` field to be used. Some instances of this
  2785. field may be defaulted, in others it may be required.
  2786. type: string
  2787. name:
  2788. description: 'Name of the resource being referred
  2789. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2790. type: string
  2791. required:
  2792. - name
  2793. type: object
  2794. apiTokenSecretRef:
  2795. description: API token used to authenticate with Cloudflare.
  2796. properties:
  2797. key:
  2798. description: The key of the entry in the Secret resource's
  2799. `data` field to be used. Some instances of this
  2800. field may be defaulted, in others it may be required.
  2801. type: string
  2802. name:
  2803. description: 'Name of the resource being referred
  2804. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2805. type: string
  2806. required:
  2807. - name
  2808. type: object
  2809. email:
  2810. description: Email of the account, only required when
  2811. using API key based authentication.
  2812. type: string
  2813. type: object
  2814. cnameStrategy:
  2815. description: CNAMEStrategy configures how the DNS01 provider
  2816. should handle CNAME records when found in DNS zones.
  2817. enum:
  2818. - None
  2819. - Follow
  2820. type: string
  2821. digitalocean:
  2822. description: Use the DigitalOcean DNS API to manage DNS01
  2823. challenge records.
  2824. properties:
  2825. tokenSecretRef:
  2826. description: A reference to a specific 'key' within a
  2827. Secret resource. In some instances, `key` is a required
  2828. field.
  2829. properties:
  2830. key:
  2831. description: The key of the entry in the Secret resource's
  2832. `data` field to be used. Some instances of this
  2833. field may be defaulted, in others it may be required.
  2834. type: string
  2835. name:
  2836. description: 'Name of the resource being referred
  2837. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2838. type: string
  2839. required:
  2840. - name
  2841. type: object
  2842. required:
  2843. - tokenSecretRef
  2844. type: object
  2845. rfc2136:
  2846. description: Use RFC2136 ("Dynamic Updates in the Domain Name
  2847. System") (https://datatracker.ietf.org/doc/rfc2136/) to
  2848. manage DNS01 challenge records.
  2849. properties:
  2850. nameserver:
  2851. description: The IP address or hostname of an authoritative
  2852. DNS server supporting RFC2136 in the form host:port.
  2853. If the host is an IPv6 address it must be enclosed in
  2854. square brackets (e.g [2001:db8::1]) ; port is optional.
  2855. This field is required.
  2856. type: string
  2857. tsigAlgorithm:
  2858. description: 'The TSIG Algorithm configured in the DNS
  2859. supporting RFC2136. Used only when ``tsigSecretSecretRef``
  2860. and ``tsigKeyName`` are defined. Supported values are
  2861. (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``,
  2862. ``HMACSHA256`` or ``HMACSHA512``.'
  2863. type: string
  2864. tsigKeyName:
  2865. description: The TSIG Key name configured in the DNS.
  2866. If ``tsigSecretSecretRef`` is defined, this field is
  2867. required.
  2868. type: string
  2869. tsigSecretSecretRef:
  2870. description: The name of the secret containing the TSIG
  2871. value. If ``tsigKeyName`` is defined, this field is
  2872. required.
  2873. properties:
  2874. key:
  2875. description: The key of the entry in the Secret resource's
  2876. `data` field to be used. Some instances of this
  2877. field may be defaulted, in others it may be required.
  2878. type: string
  2879. name:
  2880. description: 'Name of the resource being referred
  2881. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2882. type: string
  2883. required:
  2884. - name
  2885. type: object
  2886. required:
  2887. - nameserver
  2888. type: object
  2889. route53:
  2890. description: Use the AWS Route53 API to manage DNS01 challenge
  2891. records.
  2892. properties:
  2893. accessKeyID:
  2894. description: 'The AccessKeyID is used for authentication.
  2895. If not set we fall-back to using env vars, shared credentials
  2896. file or AWS Instance metadata see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  2897. type: string
  2898. hostedZoneID:
  2899. description: If set, the provider will manage only this
  2900. zone in Route53 and will not do an lookup using the
  2901. route53:ListHostedZonesByName api call.
  2902. type: string
  2903. region:
  2904. description: Always set the region when using AccessKeyID
  2905. and SecretAccessKey
  2906. type: string
  2907. role:
  2908. description: Role is a Role ARN which the Route53 provider
  2909. will assume using either the explicit credentials AccessKeyID/SecretAccessKey
  2910. or the inferred credentials from environment variables,
  2911. shared credentials file or AWS Instance metadata
  2912. type: string
  2913. secretAccessKeySecretRef:
  2914. description: The SecretAccessKey is used for authentication.
  2915. If not set we fall-back to using env vars, shared credentials
  2916. file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  2917. properties:
  2918. key:
  2919. description: The key of the entry in the Secret resource's
  2920. `data` field to be used. Some instances of this
  2921. field may be defaulted, in others it may be required.
  2922. type: string
  2923. name:
  2924. description: 'Name of the resource being referred
  2925. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2926. type: string
  2927. required:
  2928. - name
  2929. type: object
  2930. required:
  2931. - region
  2932. type: object
  2933. webhook:
  2934. description: Configure an external webhook based DNS01 challenge
  2935. solver to manage DNS01 challenge records.
  2936. properties:
  2937. config:
  2938. description: Additional configuration that should be passed
  2939. to the webhook apiserver when challenges are processed.
  2940. This can contain arbitrary JSON data. Secret values
  2941. should not be specified in this stanza. If secret values
  2942. are needed (e.g. credentials for a DNS service), you
  2943. should use a SecretKeySelector to reference a Secret
  2944. resource. For details on the schema of this field, consult
  2945. the webhook provider implementation's documentation.
  2946. x-kubernetes-preserve-unknown-fields: true
  2947. groupName:
  2948. description: The API group name that should be used when
  2949. POSTing ChallengePayload resources to the webhook apiserver.
  2950. This should be the same as the GroupName specified in
  2951. the webhook provider implementation.
  2952. type: string
  2953. solverName:
  2954. description: The name of the solver to use, as defined
  2955. in the webhook provider implementation. This will typically
  2956. be the name of the provider, e.g. 'cloudflare'.
  2957. type: string
  2958. required:
  2959. - groupName
  2960. - solverName
  2961. type: object
  2962. type: object
  2963. http01:
  2964. description: Configures cert-manager to attempt to complete authorizations
  2965. by performing the HTTP01 challenge flow. It is not possible
  2966. to obtain certificates for wildcard domain names (e.g. `*.example.com`)
  2967. using the HTTP01 challenge mechanism.
  2968. properties:
  2969. ingress:
  2970. description: The ingress based HTTP01 challenge solver will
  2971. solve challenges by creating or modifying Ingress resources
  2972. in order to route requests for '/.well-known/acme-challenge/XYZ'
  2973. to 'challenge solver' pods that are provisioned by cert-manager
  2974. for each Challenge to be completed.
  2975. properties:
  2976. class:
  2977. description: The ingress class to use when creating Ingress
  2978. resources to solve ACME challenges that use this challenge
  2979. solver. Only one of 'class' or 'name' may be specified.
  2980. type: string
  2981. ingressTemplate:
  2982. description: Optional ingress template used to configure
  2983. the ACME challenge solver ingress used for HTTP01 challenges
  2984. properties:
  2985. metadata:
  2986. description: ObjectMeta overrides for the ingress
  2987. used to solve HTTP01 challenges. Only the 'labels'
  2988. and 'annotations' fields may be set. If labels or
  2989. annotations overlap with in-built values, the values
  2990. here will override the in-built values.
  2991. properties:
  2992. annotations:
  2993. additionalProperties:
  2994. type: string
  2995. description: Annotations that should be added
  2996. to the created ACME HTTP01 solver ingress.
  2997. type: object
  2998. labels:
  2999. additionalProperties:
  3000. type: string
  3001. description: Labels that should be added to the
  3002. created ACME HTTP01 solver ingress.
  3003. type: object
  3004. type: object
  3005. type: object
  3006. name:
  3007. description: The name of the ingress resource that should
  3008. have ACME challenge solving routes inserted into it
  3009. in order to solve HTTP01 challenges. This is typically
  3010. used in conjunction with ingress controllers like ingress-gce,
  3011. which maintains a 1:1 mapping between external IPs and
  3012. ingress resources.
  3013. type: string
  3014. podTemplate:
  3015. description: Optional pod template used to configure the
  3016. ACME challenge solver pods used for HTTP01 challenges
  3017. properties:
  3018. metadata:
  3019. description: ObjectMeta overrides for the pod used
  3020. to solve HTTP01 challenges. Only the 'labels' and
  3021. 'annotations' fields may be set. If labels or annotations
  3022. overlap with in-built values, the values here will
  3023. override the in-built values.
  3024. properties:
  3025. annotations:
  3026. additionalProperties:
  3027. type: string
  3028. description: Annotations that should be added
  3029. to the create ACME HTTP01 solver pods.
  3030. type: object
  3031. labels:
  3032. additionalProperties:
  3033. type: string
  3034. description: Labels that should be added to the
  3035. created ACME HTTP01 solver pods.
  3036. type: object
  3037. type: object
  3038. spec:
  3039. description: PodSpec defines overrides for the HTTP01
  3040. challenge solver pod. Only the 'priorityClassName',
  3041. 'nodeSelector', 'affinity', 'serviceAccountName'
  3042. and 'tolerations' fields are supported currently.
  3043. All other fields will be ignored.
  3044. properties:
  3045. affinity:
  3046. description: If specified, the pod's scheduling
  3047. constraints
  3048. properties:
  3049. nodeAffinity:
  3050. description: Describes node affinity scheduling
  3051. rules for the pod.
  3052. properties:
  3053. preferredDuringSchedulingIgnoredDuringExecution:
  3054. description: The scheduler will prefer
  3055. to schedule pods to nodes that satisfy
  3056. the affinity expressions specified by
  3057. this field, but it may choose a node
  3058. that violates one or more of the expressions.
  3059. The node that is most preferred is the
  3060. one with the greatest sum of weights,
  3061. i.e. for each node that meets all of
  3062. the scheduling requirements (resource
  3063. request, requiredDuringScheduling affinity
  3064. expressions, etc.), compute a sum by
  3065. iterating through the elements of this
  3066. field and adding "weight" to the sum
  3067. if the node matches the corresponding
  3068. matchExpressions; the node(s) with the
  3069. highest sum are the most preferred.
  3070. items:
  3071. description: An empty preferred scheduling
  3072. term matches all objects with implicit
  3073. weight 0 (i.e. it's a no-op). A null
  3074. preferred scheduling term matches
  3075. no objects (i.e. is also a no-op).
  3076. properties:
  3077. preference:
  3078. description: A node selector term,
  3079. associated with the corresponding
  3080. weight.
  3081. properties:
  3082. matchExpressions:
  3083. description: A list of node
  3084. selector requirements by node's
  3085. labels.
  3086. items:
  3087. description: A node selector
  3088. requirement is a selector
  3089. that contains values, a
  3090. key, and an operator that
  3091. relates the key and values.
  3092. properties:
  3093. key:
  3094. description: The label
  3095. key that the selector
  3096. applies to.
  3097. type: string
  3098. operator:
  3099. description: Represents
  3100. a key's relationship
  3101. to a set of values.
  3102. Valid operators are
  3103. In, NotIn, Exists, DoesNotExist.
  3104. Gt, and Lt.
  3105. type: string
  3106. values:
  3107. description: An array
  3108. of string values. If
  3109. the operator is In or
  3110. NotIn, the values array
  3111. must be non-empty. If
  3112. the operator is Exists
  3113. or DoesNotExist, the
  3114. values array must be
  3115. empty. If the operator
  3116. is Gt or Lt, the values
  3117. array must have a single
  3118. element, which will
  3119. be interpreted as an
  3120. integer. This array
  3121. is replaced during a
  3122. strategic merge patch.
  3123. items:
  3124. type: string
  3125. type: array
  3126. required:
  3127. - key
  3128. - operator
  3129. type: object
  3130. type: array
  3131. matchFields:
  3132. description: A list of node
  3133. selector requirements by node's
  3134. fields.
  3135. items:
  3136. description: A node selector
  3137. requirement is a selector
  3138. that contains values, a
  3139. key, and an operator that
  3140. relates the key and values.
  3141. properties:
  3142. key:
  3143. description: The label
  3144. key that the selector
  3145. applies to.
  3146. type: string
  3147. operator:
  3148. description: Represents
  3149. a key's relationship
  3150. to a set of values.
  3151. Valid operators are
  3152. In, NotIn, Exists, DoesNotExist.
  3153. Gt, and Lt.
  3154. type: string
  3155. values:
  3156. description: An array
  3157. of string values. If
  3158. the operator is In or
  3159. NotIn, the values array
  3160. must be non-empty. If
  3161. the operator is Exists
  3162. or DoesNotExist, the
  3163. values array must be
  3164. empty. If the operator
  3165. is Gt or Lt, the values
  3166. array must have a single
  3167. element, which will
  3168. be interpreted as an
  3169. integer. This array
  3170. is replaced during a
  3171. strategic merge patch.
  3172. items:
  3173. type: string
  3174. type: array
  3175. required:
  3176. - key
  3177. - operator
  3178. type: object
  3179. type: array
  3180. type: object
  3181. weight:
  3182. description: Weight associated with
  3183. matching the corresponding nodeSelectorTerm,
  3184. in the range 1-100.
  3185. format: int32
  3186. type: integer
  3187. required:
  3188. - preference
  3189. - weight
  3190. type: object
  3191. type: array
  3192. requiredDuringSchedulingIgnoredDuringExecution:
  3193. description: If the affinity requirements
  3194. specified by this field are not met
  3195. at scheduling time, the pod will not
  3196. be scheduled onto the node. If the affinity
  3197. requirements specified by this field
  3198. cease to be met at some point during
  3199. pod execution (e.g. due to an update),
  3200. the system may or may not try to eventually
  3201. evict the pod from its node.
  3202. properties:
  3203. nodeSelectorTerms:
  3204. description: Required. A list of node
  3205. selector terms. The terms are ORed.
  3206. items:
  3207. description: A null or empty node
  3208. selector term matches no objects.
  3209. The requirements of them are ANDed.
  3210. The TopologySelectorTerm type
  3211. implements a subset of the NodeSelectorTerm.
  3212. properties:
  3213. matchExpressions:
  3214. description: A list of node
  3215. selector requirements by node's
  3216. labels.
  3217. items:
  3218. description: A node selector
  3219. requirement is a selector
  3220. that contains values, a
  3221. key, and an operator that
  3222. relates the key and values.
  3223. properties:
  3224. key:
  3225. description: The label
  3226. key that the selector
  3227. applies to.
  3228. type: string
  3229. operator:
  3230. description: Represents
  3231. a key's relationship
  3232. to a set of values.
  3233. Valid operators are
  3234. In, NotIn, Exists, DoesNotExist.
  3235. Gt, and Lt.
  3236. type: string
  3237. values:
  3238. description: An array
  3239. of string values. If
  3240. the operator is In or
  3241. NotIn, the values array
  3242. must be non-empty. If
  3243. the operator is Exists
  3244. or DoesNotExist, the
  3245. values array must be
  3246. empty. If the operator
  3247. is Gt or Lt, the values
  3248. array must have a single
  3249. element, which will
  3250. be interpreted as an
  3251. integer. This array
  3252. is replaced during a
  3253. strategic merge patch.
  3254. items:
  3255. type: string
  3256. type: array
  3257. required:
  3258. - key
  3259. - operator
  3260. type: object
  3261. type: array
  3262. matchFields:
  3263. description: A list of node
  3264. selector requirements by node's
  3265. fields.
  3266. items:
  3267. description: A node selector
  3268. requirement is a selector
  3269. that contains values, a
  3270. key, and an operator that
  3271. relates the key and values.
  3272. properties:
  3273. key:
  3274. description: The label
  3275. key that the selector
  3276. applies to.
  3277. type: string
  3278. operator:
  3279. description: Represents
  3280. a key's relationship
  3281. to a set of values.
  3282. Valid operators are
  3283. In, NotIn, Exists, DoesNotExist.
  3284. Gt, and Lt.
  3285. type: string
  3286. values:
  3287. description: An array
  3288. of string values. If
  3289. the operator is In or
  3290. NotIn, the values array
  3291. must be non-empty. If
  3292. the operator is Exists
  3293. or DoesNotExist, the
  3294. values array must be
  3295. empty. If the operator
  3296. is Gt or Lt, the values
  3297. array must have a single
  3298. element, which will
  3299. be interpreted as an
  3300. integer. This array
  3301. is replaced during a
  3302. strategic merge patch.
  3303. items:
  3304. type: string
  3305. type: array
  3306. required:
  3307. - key
  3308. - operator
  3309. type: object
  3310. type: array
  3311. type: object
  3312. type: array
  3313. required:
  3314. - nodeSelectorTerms
  3315. type: object
  3316. type: object
  3317. podAffinity:
  3318. description: Describes pod affinity scheduling
  3319. rules (e.g. co-locate this pod in the same
  3320. node, zone, etc. as some other pod(s)).
  3321. properties:
  3322. preferredDuringSchedulingIgnoredDuringExecution:
  3323. description: The scheduler will prefer
  3324. to schedule pods to nodes that satisfy
  3325. the affinity expressions specified by
  3326. this field, but it may choose a node
  3327. that violates one or more of the expressions.
  3328. The node that is most preferred is the
  3329. one with the greatest sum of weights,
  3330. i.e. for each node that meets all of
  3331. the scheduling requirements (resource
  3332. request, requiredDuringScheduling affinity
  3333. expressions, etc.), compute a sum by
  3334. iterating through the elements of this
  3335. field and adding "weight" to the sum
  3336. if the node has pods which matches the
  3337. corresponding podAffinityTerm; the node(s)
  3338. with the highest sum are the most preferred.
  3339. items:
  3340. description: The weights of all of the
  3341. matched WeightedPodAffinityTerm fields
  3342. are added per-node to find the most
  3343. preferred node(s)
  3344. properties:
  3345. podAffinityTerm:
  3346. description: Required. A pod affinity
  3347. term, associated with the corresponding
  3348. weight.
  3349. properties:
  3350. labelSelector:
  3351. description: A label query over
  3352. a set of resources, in this
  3353. case pods.
  3354. properties:
  3355. matchExpressions:
  3356. description: matchExpressions
  3357. is a list of label selector
  3358. requirements. The requirements
  3359. are ANDed.
  3360. items:
  3361. description: A label selector
  3362. requirement is a selector
  3363. that contains values,
  3364. a key, and an operator
  3365. that relates the key
  3366. and values.
  3367. properties:
  3368. key:
  3369. description: key is
  3370. the label key that
  3371. the selector applies
  3372. to.
  3373. type: string
  3374. operator:
  3375. description: operator
  3376. represents a key's
  3377. relationship to
  3378. a set of values.
  3379. Valid operators
  3380. are In, NotIn, Exists
  3381. and DoesNotExist.
  3382. type: string
  3383. values:
  3384. description: values
  3385. is an array of string
  3386. values. If the operator
  3387. is In or NotIn,
  3388. the values array
  3389. must be non-empty.
  3390. If the operator
  3391. is Exists or DoesNotExist,
  3392. the values array
  3393. must be empty. This
  3394. array is replaced
  3395. during a strategic
  3396. merge patch.
  3397. items:
  3398. type: string
  3399. type: array
  3400. required:
  3401. - key
  3402. - operator
  3403. type: object
  3404. type: array
  3405. matchLabels:
  3406. additionalProperties:
  3407. type: string
  3408. description: matchLabels
  3409. is a map of {key,value}
  3410. pairs. A single {key,value}
  3411. in the matchLabels map
  3412. is equivalent to an element
  3413. of matchExpressions, whose
  3414. key field is "key", the
  3415. operator is "In", and
  3416. the values array contains
  3417. only "value". The requirements
  3418. are ANDed.
  3419. type: object
  3420. type: object
  3421. namespaces:
  3422. description: namespaces specifies
  3423. which namespaces the labelSelector
  3424. applies to (matches against);
  3425. null or empty list means "this
  3426. pod's namespace"
  3427. items:
  3428. type: string
  3429. type: array
  3430. topologyKey:
  3431. description: This pod should
  3432. be co-located (affinity) or
  3433. not co-located (anti-affinity)
  3434. with the pods matching the
  3435. labelSelector in the specified
  3436. namespaces, where co-located
  3437. is defined as running on a
  3438. node whose value of the label
  3439. with key topologyKey matches
  3440. that of any node on which
  3441. any of the selected pods is
  3442. running. Empty topologyKey
  3443. is not allowed.
  3444. type: string
  3445. required:
  3446. - topologyKey
  3447. type: object
  3448. weight:
  3449. description: weight associated with
  3450. matching the corresponding podAffinityTerm,
  3451. in the range 1-100.
  3452. format: int32
  3453. type: integer
  3454. required:
  3455. - podAffinityTerm
  3456. - weight
  3457. type: object
  3458. type: array
  3459. requiredDuringSchedulingIgnoredDuringExecution:
  3460. description: If the affinity requirements
  3461. specified by this field are not met
  3462. at scheduling time, the pod will not
  3463. be scheduled onto the node. If the affinity
  3464. requirements specified by this field
  3465. cease to be met at some point during
  3466. pod execution (e.g. due to a pod label
  3467. update), the system may or may not try
  3468. to eventually evict the pod from its
  3469. node. When there are multiple elements,
  3470. the lists of nodes corresponding to
  3471. each podAffinityTerm are intersected,
  3472. i.e. all terms must be satisfied.
  3473. items:
  3474. description: Defines a set of pods (namely
  3475. those matching the labelSelector relative
  3476. to the given namespace(s)) that this
  3477. pod should be co-located (affinity)
  3478. or not co-located (anti-affinity)
  3479. with, where co-located is defined
  3480. as running on a node whose value of
  3481. the label with key <topologyKey> matches
  3482. that of any node on which a pod of
  3483. the set of pods is running
  3484. properties:
  3485. labelSelector:
  3486. description: A label query over
  3487. a set of resources, in this case
  3488. pods.
  3489. properties:
  3490. matchExpressions:
  3491. description: matchExpressions
  3492. is a list of label selector
  3493. requirements. The requirements
  3494. are ANDed.
  3495. items:
  3496. description: A label selector
  3497. requirement is a selector
  3498. that contains values, a
  3499. key, and an operator that
  3500. relates the key and values.
  3501. properties:
  3502. key:
  3503. description: key is the
  3504. label key that the selector
  3505. applies to.
  3506. type: string
  3507. operator:
  3508. description: operator
  3509. represents a key's relationship
  3510. to a set of values.
  3511. Valid operators are
  3512. In, NotIn, Exists and
  3513. DoesNotExist.
  3514. type: string
  3515. values:
  3516. description: values is
  3517. an array of string values.
  3518. If the operator is In
  3519. or NotIn, the values
  3520. array must be non-empty.
  3521. If the operator is Exists
  3522. or DoesNotExist, the
  3523. values array must be
  3524. empty. This array is
  3525. replaced during a strategic
  3526. merge patch.
  3527. items:
  3528. type: string
  3529. type: array
  3530. required:
  3531. - key
  3532. - operator
  3533. type: object
  3534. type: array
  3535. matchLabels:
  3536. additionalProperties:
  3537. type: string
  3538. description: matchLabels is
  3539. a map of {key,value} pairs.
  3540. A single {key,value} in the
  3541. matchLabels map is equivalent
  3542. to an element of matchExpressions,
  3543. whose key field is "key",
  3544. the operator is "In", and
  3545. the values array contains
  3546. only "value". The requirements
  3547. are ANDed.
  3548. type: object
  3549. type: object
  3550. namespaces:
  3551. description: namespaces specifies
  3552. which namespaces the labelSelector
  3553. applies to (matches against);
  3554. null or empty list means "this
  3555. pod's namespace"
  3556. items:
  3557. type: string
  3558. type: array
  3559. topologyKey:
  3560. description: This pod should be
  3561. co-located (affinity) or not co-located
  3562. (anti-affinity) with the pods
  3563. matching the labelSelector in
  3564. the specified namespaces, where
  3565. co-located is defined as running
  3566. on a node whose value of the label
  3567. with key topologyKey matches that
  3568. of any node on which any of the
  3569. selected pods is running. Empty
  3570. topologyKey is not allowed.
  3571. type: string
  3572. required:
  3573. - topologyKey
  3574. type: object
  3575. type: array
  3576. type: object
  3577. podAntiAffinity:
  3578. description: Describes pod anti-affinity scheduling
  3579. rules (e.g. avoid putting this pod in the
  3580. same node, zone, etc. as some other pod(s)).
  3581. properties:
  3582. preferredDuringSchedulingIgnoredDuringExecution:
  3583. description: The scheduler will prefer
  3584. to schedule pods to nodes that satisfy
  3585. the anti-affinity expressions specified
  3586. by this field, but it may choose a node
  3587. that violates one or more of the expressions.
  3588. The node that is most preferred is the
  3589. one with the greatest sum of weights,
  3590. i.e. for each node that meets all of
  3591. the scheduling requirements (resource
  3592. request, requiredDuringScheduling anti-affinity
  3593. expressions, etc.), compute a sum by
  3594. iterating through the elements of this
  3595. field and adding "weight" to the sum
  3596. if the node has pods which matches the
  3597. corresponding podAffinityTerm; the node(s)
  3598. with the highest sum are the most preferred.
  3599. items:
  3600. description: The weights of all of the
  3601. matched WeightedPodAffinityTerm fields
  3602. are added per-node to find the most
  3603. preferred node(s)
  3604. properties:
  3605. podAffinityTerm:
  3606. description: Required. A pod affinity
  3607. term, associated with the corresponding
  3608. weight.
  3609. properties:
  3610. labelSelector:
  3611. description: A label query over
  3612. a set of resources, in this
  3613. case pods.
  3614. properties:
  3615. matchExpressions:
  3616. description: matchExpressions
  3617. is a list of label selector
  3618. requirements. The requirements
  3619. are ANDed.
  3620. items:
  3621. description: A label selector
  3622. requirement is a selector
  3623. that contains values,
  3624. a key, and an operator
  3625. that relates the key
  3626. and values.
  3627. properties:
  3628. key:
  3629. description: key is
  3630. the label key that
  3631. the selector applies
  3632. to.
  3633. type: string
  3634. operator:
  3635. description: operator
  3636. represents a key's
  3637. relationship to
  3638. a set of values.
  3639. Valid operators
  3640. are In, NotIn, Exists
  3641. and DoesNotExist.
  3642. type: string
  3643. values:
  3644. description: values
  3645. is an array of string
  3646. values. If the operator
  3647. is In or NotIn,
  3648. the values array
  3649. must be non-empty.
  3650. If the operator
  3651. is Exists or DoesNotExist,
  3652. the values array
  3653. must be empty. This
  3654. array is replaced
  3655. during a strategic
  3656. merge patch.
  3657. items:
  3658. type: string
  3659. type: array
  3660. required:
  3661. - key
  3662. - operator
  3663. type: object
  3664. type: array
  3665. matchLabels:
  3666. additionalProperties:
  3667. type: string
  3668. description: matchLabels
  3669. is a map of {key,value}
  3670. pairs. A single {key,value}
  3671. in the matchLabels map
  3672. is equivalent to an element
  3673. of matchExpressions, whose
  3674. key field is "key", the
  3675. operator is "In", and
  3676. the values array contains
  3677. only "value". The requirements
  3678. are ANDed.
  3679. type: object
  3680. type: object
  3681. namespaces:
  3682. description: namespaces specifies
  3683. which namespaces the labelSelector
  3684. applies to (matches against);
  3685. null or empty list means "this
  3686. pod's namespace"
  3687. items:
  3688. type: string
  3689. type: array
  3690. topologyKey:
  3691. description: This pod should
  3692. be co-located (affinity) or
  3693. not co-located (anti-affinity)
  3694. with the pods matching the
  3695. labelSelector in the specified
  3696. namespaces, where co-located
  3697. is defined as running on a
  3698. node whose value of the label
  3699. with key topologyKey matches
  3700. that of any node on which
  3701. any of the selected pods is
  3702. running. Empty topologyKey
  3703. is not allowed.
  3704. type: string
  3705. required:
  3706. - topologyKey
  3707. type: object
  3708. weight:
  3709. description: weight associated with
  3710. matching the corresponding podAffinityTerm,
  3711. in the range 1-100.
  3712. format: int32
  3713. type: integer
  3714. required:
  3715. - podAffinityTerm
  3716. - weight
  3717. type: object
  3718. type: array
  3719. requiredDuringSchedulingIgnoredDuringExecution:
  3720. description: If the anti-affinity requirements
  3721. specified by this field are not met
  3722. at scheduling time, the pod will not
  3723. be scheduled onto the node. If the anti-affinity
  3724. requirements specified by this field
  3725. cease to be met at some point during
  3726. pod execution (e.g. due to a pod label
  3727. update), the system may or may not try
  3728. to eventually evict the pod from its
  3729. node. When there are multiple elements,
  3730. the lists of nodes corresponding to
  3731. each podAffinityTerm are intersected,
  3732. i.e. all terms must be satisfied.
  3733. items:
  3734. description: Defines a set of pods (namely
  3735. those matching the labelSelector relative
  3736. to the given namespace(s)) that this
  3737. pod should be co-located (affinity)
  3738. or not co-located (anti-affinity)
  3739. with, where co-located is defined
  3740. as running on a node whose value of
  3741. the label with key <topologyKey> matches
  3742. that of any node on which a pod of
  3743. the set of pods is running
  3744. properties:
  3745. labelSelector:
  3746. description: A label query over
  3747. a set of resources, in this case
  3748. pods.
  3749. properties:
  3750. matchExpressions:
  3751. description: matchExpressions
  3752. is a list of label selector
  3753. requirements. The requirements
  3754. are ANDed.
  3755. items:
  3756. description: A label selector
  3757. requirement is a selector
  3758. that contains values, a
  3759. key, and an operator that
  3760. relates the key and values.
  3761. properties:
  3762. key:
  3763. description: key is the
  3764. label key that the selector
  3765. applies to.
  3766. type: string
  3767. operator:
  3768. description: operator
  3769. represents a key's relationship
  3770. to a set of values.
  3771. Valid operators are
  3772. In, NotIn, Exists and
  3773. DoesNotExist.
  3774. type: string
  3775. values:
  3776. description: values is
  3777. an array of string values.
  3778. If the operator is In
  3779. or NotIn, the values
  3780. array must be non-empty.
  3781. If the operator is Exists
  3782. or DoesNotExist, the
  3783. values array must be
  3784. empty. This array is
  3785. replaced during a strategic
  3786. merge patch.
  3787. items:
  3788. type: string
  3789. type: array
  3790. required:
  3791. - key
  3792. - operator
  3793. type: object
  3794. type: array
  3795. matchLabels:
  3796. additionalProperties:
  3797. type: string
  3798. description: matchLabels is
  3799. a map of {key,value} pairs.
  3800. A single {key,value} in the
  3801. matchLabels map is equivalent
  3802. to an element of matchExpressions,
  3803. whose key field is "key",
  3804. the operator is "In", and
  3805. the values array contains
  3806. only "value". The requirements
  3807. are ANDed.
  3808. type: object
  3809. type: object
  3810. namespaces:
  3811. description: namespaces specifies
  3812. which namespaces the labelSelector
  3813. applies to (matches against);
  3814. null or empty list means "this
  3815. pod's namespace"
  3816. items:
  3817. type: string
  3818. type: array
  3819. topologyKey:
  3820. description: This pod should be
  3821. co-located (affinity) or not co-located
  3822. (anti-affinity) with the pods
  3823. matching the labelSelector in
  3824. the specified namespaces, where
  3825. co-located is defined as running
  3826. on a node whose value of the label
  3827. with key topologyKey matches that
  3828. of any node on which any of the
  3829. selected pods is running. Empty
  3830. topologyKey is not allowed.
  3831. type: string
  3832. required:
  3833. - topologyKey
  3834. type: object
  3835. type: array
  3836. type: object
  3837. type: object
  3838. nodeSelector:
  3839. additionalProperties:
  3840. type: string
  3841. description: 'NodeSelector is a selector which
  3842. must be true for the pod to fit on a node. Selector
  3843. which must match a node''s labels for the pod
  3844. to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  3845. type: object
  3846. priorityClassName:
  3847. description: If specified, the pod's priorityClassName.
  3848. type: string
  3849. serviceAccountName:
  3850. description: If specified, the pod's service account
  3851. type: string
  3852. tolerations:
  3853. description: If specified, the pod's tolerations.
  3854. items:
  3855. description: The pod this Toleration is attached
  3856. to tolerates any taint that matches the triple
  3857. <key,value,effect> using the matching operator
  3858. <operator>.
  3859. properties:
  3860. effect:
  3861. description: Effect indicates the taint
  3862. effect to match. Empty means match all
  3863. taint effects. When specified, allowed
  3864. values are NoSchedule, PreferNoSchedule
  3865. and NoExecute.
  3866. type: string
  3867. key:
  3868. description: Key is the taint key that the
  3869. toleration applies to. Empty means match
  3870. all taint keys. If the key is empty, operator
  3871. must be Exists; this combination means
  3872. to match all values and all keys.
  3873. type: string
  3874. operator:
  3875. description: Operator represents a key's
  3876. relationship to the value. Valid operators
  3877. are Exists and Equal. Defaults to Equal.
  3878. Exists is equivalent to wildcard for value,
  3879. so that a pod can tolerate all taints
  3880. of a particular category.
  3881. type: string
  3882. tolerationSeconds:
  3883. description: TolerationSeconds represents
  3884. the period of time the toleration (which
  3885. must be of effect NoExecute, otherwise
  3886. this field is ignored) tolerates the taint.
  3887. By default, it is not set, which means
  3888. tolerate the taint forever (do not evict).
  3889. Zero and negative values will be treated
  3890. as 0 (evict immediately) by the system.
  3891. format: int64
  3892. type: integer
  3893. value:
  3894. description: Value is the taint value the
  3895. toleration matches to. If the operator
  3896. is Exists, the value should be empty,
  3897. otherwise just a regular string.
  3898. type: string
  3899. type: object
  3900. type: array
  3901. type: object
  3902. type: object
  3903. serviceType:
  3904. description: Optional service type for Kubernetes solver
  3905. service
  3906. type: string
  3907. type: object
  3908. type: object
  3909. selector:
  3910. description: Selector selects a set of DNSNames on the Certificate
  3911. resource that should be solved using this challenge solver.
  3912. If not specified, the solver will be treated as the 'default'
  3913. solver with the lowest priority, i.e. if any other solver has
  3914. a more specific match, it will be used instead.
  3915. properties:
  3916. dnsNames:
  3917. description: List of DNSNames that this solver will be used
  3918. to solve. If specified and a match is found, a dnsNames
  3919. selector will take precedence over a dnsZones selector.
  3920. If multiple solvers match with the same dnsNames value,
  3921. the solver with the most matching labels in matchLabels
  3922. will be selected. If neither has more matches, the solver
  3923. defined earlier in the list will be selected.
  3924. items:
  3925. type: string
  3926. type: array
  3927. dnsZones:
  3928. description: List of DNSZones that this solver will be used
  3929. to solve. The most specific DNS zone match specified here
  3930. will take precedence over other DNS zone matches, so a solver
  3931. specifying sys.example.com will be selected over one specifying
  3932. example.com for the domain www.sys.example.com. If multiple
  3933. solvers match with the same dnsZones value, the solver with
  3934. the most matching labels in matchLabels will be selected.
  3935. If neither has more matches, the solver defined earlier
  3936. in the list will be selected.
  3937. items:
  3938. type: string
  3939. type: array
  3940. matchLabels:
  3941. additionalProperties:
  3942. type: string
  3943. description: A label selector that is used to refine the set
  3944. of certificate's that this challenge solver will apply to.
  3945. type: object
  3946. type: object
  3947. type: object
  3948. token:
  3949. description: Token is the ACME challenge token for this challenge.
  3950. This is the raw value returned from the ACME server.
  3951. type: string
  3952. type:
  3953. description: Type is the type of ACME challenge this resource represents.
  3954. One of "http-01" or "dns-01".
  3955. enum:
  3956. - http-01
  3957. - dns-01
  3958. type: string
  3959. url:
  3960. description: URL is the URL of the ACME Challenge resource for this
  3961. challenge. This can be used to lookup details about the status of
  3962. this challenge.
  3963. type: string
  3964. wildcard:
  3965. description: Wildcard will be true if this challenge is for a wildcard
  3966. identifier, for example '*.example.com'.
  3967. type: boolean
  3968. required:
  3969. - authzURL
  3970. - dnsName
  3971. - issuerRef
  3972. - key
  3973. - solver
  3974. - token
  3975. - type
  3976. - url
  3977. type: object
  3978. status:
  3979. properties:
  3980. presented:
  3981. description: Presented will be set to true if the challenge values
  3982. for this challenge are currently 'presented'. This *does not* imply
  3983. the self check is passing. Only that the values have been 'submitted'
  3984. for the appropriate challenge mechanism (i.e. the DNS01 TXT record
  3985. has been presented, or the HTTP01 configuration has been configured).
  3986. type: boolean
  3987. processing:
  3988. description: Processing is used to denote whether this challenge should
  3989. be processed or not. This field will only be set to true by the
  3990. 'scheduling' component. It will only be set to false by the 'challenges'
  3991. controller, after the challenge has reached a final state or timed
  3992. out. If this field is set to false, the challenge controller will
  3993. not take any more action.
  3994. type: boolean
  3995. reason:
  3996. description: Reason contains human readable information on why the
  3997. Challenge is in the current state.
  3998. type: string
  3999. state:
  4000. description: State contains the current 'state' of the challenge.
  4001. If not set, the state of the challenge is unknown.
  4002. enum:
  4003. - valid
  4004. - ready
  4005. - pending
  4006. - processing
  4007. - invalid
  4008. - expired
  4009. - errored
  4010. type: string
  4011. type: object
  4012. required:
  4013. - metadata
  4014. type: object
  4015. served: true
  4016. storage: false
  4017. subresources:
  4018. status: {}
  4019. - additionalPrinterColumns:
  4020. - jsonPath: .status.state
  4021. name: State
  4022. type: string
  4023. - jsonPath: .spec.dnsName
  4024. name: Domain
  4025. type: string
  4026. - jsonPath: .status.reason
  4027. name: Reason
  4028. priority: 1
  4029. type: string
  4030. - description: CreationTimestamp is a timestamp representing the server time when
  4031. this object was created. It is not guaranteed to be set in happens-before
  4032. order across separate operations. Clients may not set this value. It is represented
  4033. in RFC3339 form and is in UTC.
  4034. jsonPath: .metadata.creationTimestamp
  4035. name: Age
  4036. type: date
  4037. name: v1alpha3
  4038. schema:
  4039. openAPIV3Schema:
  4040. description: Challenge is a type to represent a Challenge request with an
  4041. ACME server
  4042. properties:
  4043. apiVersion:
  4044. description: 'APIVersion defines the versioned schema of this representation
  4045. of an object. Servers should convert recognized schemas to the latest
  4046. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  4047. type: string
  4048. kind:
  4049. description: 'Kind is a string value representing the REST resource this
  4050. object represents. Servers may infer this from the endpoint the client
  4051. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  4052. type: string
  4053. metadata:
  4054. type: object
  4055. spec:
  4056. properties:
  4057. authzURL:
  4058. description: AuthzURL is the URL to the ACME Authorization resource
  4059. that this challenge is a part of.
  4060. type: string
  4061. dnsName:
  4062. description: DNSName is the identifier that this challenge is for,
  4063. e.g. example.com. If the requested DNSName is a 'wildcard', this
  4064. field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
  4065. it must be `example.com`.
  4066. type: string
  4067. issuerRef:
  4068. description: IssuerRef references a properly configured ACME-type
  4069. Issuer which should be used to create this Challenge. If the Issuer
  4070. does not exist, processing will be retried. If the Issuer is not
  4071. an 'ACME' Issuer, an error will be returned and the Challenge will
  4072. be marked as failed.
  4073. properties:
  4074. group:
  4075. description: Group of the resource being referred to.
  4076. type: string
  4077. kind:
  4078. description: Kind of the resource being referred to.
  4079. type: string
  4080. name:
  4081. description: Name of the resource being referred to.
  4082. type: string
  4083. required:
  4084. - name
  4085. type: object
  4086. key:
  4087. description: 'Key is the ACME challenge key for this challenge For
  4088. HTTP01 challenges, this is the value that must be responded with
  4089. to complete the HTTP01 challenge in the format: `<private key JWK
  4090. thumbprint>.<key from acme server for challenge>`. For DNS01 challenges,
  4091. this is the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
  4092. from acme server for challenge>` text that must be set as the TXT
  4093. record content.'
  4094. type: string
  4095. solver:
  4096. description: Solver contains the domain solving configuration that
  4097. should be used to solve this challenge resource.
  4098. properties:
  4099. dns01:
  4100. description: Configures cert-manager to attempt to complete authorizations
  4101. by performing the DNS01 challenge flow.
  4102. properties:
  4103. acmedns:
  4104. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  4105. API to manage DNS01 challenge records.
  4106. properties:
  4107. accountSecretRef:
  4108. description: A reference to a specific 'key' within a
  4109. Secret resource. In some instances, `key` is a required
  4110. field.
  4111. properties:
  4112. key:
  4113. description: The key of the entry in the Secret resource's
  4114. `data` field to be used. Some instances of this
  4115. field may be defaulted, in others it may be required.
  4116. type: string
  4117. name:
  4118. description: 'Name of the resource being referred
  4119. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4120. type: string
  4121. required:
  4122. - name
  4123. type: object
  4124. host:
  4125. type: string
  4126. required:
  4127. - accountSecretRef
  4128. - host
  4129. type: object
  4130. akamai:
  4131. description: Use the Akamai DNS zone management API to manage
  4132. DNS01 challenge records.
  4133. properties:
  4134. accessTokenSecretRef:
  4135. description: A reference to a specific 'key' within a
  4136. Secret resource. In some instances, `key` is a required
  4137. field.
  4138. properties:
  4139. key:
  4140. description: The key of the entry in the Secret resource's
  4141. `data` field to be used. Some instances of this
  4142. field may be defaulted, in others it may be required.
  4143. type: string
  4144. name:
  4145. description: 'Name of the resource being referred
  4146. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4147. type: string
  4148. required:
  4149. - name
  4150. type: object
  4151. clientSecretSecretRef:
  4152. description: A reference to a specific 'key' within a
  4153. Secret resource. In some instances, `key` is a required
  4154. field.
  4155. properties:
  4156. key:
  4157. description: The key of the entry in the Secret resource's
  4158. `data` field to be used. Some instances of this
  4159. field may be defaulted, in others it may be required.
  4160. type: string
  4161. name:
  4162. description: 'Name of the resource being referred
  4163. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4164. type: string
  4165. required:
  4166. - name
  4167. type: object
  4168. clientTokenSecretRef:
  4169. description: A reference to a specific 'key' within a
  4170. Secret resource. In some instances, `key` is a required
  4171. field.
  4172. properties:
  4173. key:
  4174. description: The key of the entry in the Secret resource's
  4175. `data` field to be used. Some instances of this
  4176. field may be defaulted, in others it may be required.
  4177. type: string
  4178. name:
  4179. description: 'Name of the resource being referred
  4180. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4181. type: string
  4182. required:
  4183. - name
  4184. type: object
  4185. serviceConsumerDomain:
  4186. type: string
  4187. required:
  4188. - accessTokenSecretRef
  4189. - clientSecretSecretRef
  4190. - clientTokenSecretRef
  4191. - serviceConsumerDomain
  4192. type: object
  4193. azuredns:
  4194. description: Use the Microsoft Azure DNS API to manage DNS01
  4195. challenge records.
  4196. properties:
  4197. clientID:
  4198. description: if both this and ClientSecret are left unset
  4199. MSI will be used
  4200. type: string
  4201. clientSecretSecretRef:
  4202. description: if both this and ClientID are left unset
  4203. MSI will be used
  4204. properties:
  4205. key:
  4206. description: The key of the entry in the Secret resource's
  4207. `data` field to be used. Some instances of this
  4208. field may be defaulted, in others it may be required.
  4209. type: string
  4210. name:
  4211. description: 'Name of the resource being referred
  4212. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4213. type: string
  4214. required:
  4215. - name
  4216. type: object
  4217. environment:
  4218. enum:
  4219. - AzurePublicCloud
  4220. - AzureChinaCloud
  4221. - AzureGermanCloud
  4222. - AzureUSGovernmentCloud
  4223. type: string
  4224. hostedZoneName:
  4225. type: string
  4226. resourceGroupName:
  4227. type: string
  4228. subscriptionID:
  4229. type: string
  4230. tenantID:
  4231. description: when specifying ClientID and ClientSecret
  4232. then this field is also needed
  4233. type: string
  4234. required:
  4235. - resourceGroupName
  4236. - subscriptionID
  4237. type: object
  4238. clouddns:
  4239. description: Use the Google Cloud DNS API to manage DNS01
  4240. challenge records.
  4241. properties:
  4242. hostedZoneName:
  4243. description: HostedZoneName is an optional field that
  4244. tells cert-manager in which Cloud DNS zone the challenge
  4245. record has to be created. If left empty cert-manager
  4246. will automatically choose a zone.
  4247. type: string
  4248. project:
  4249. type: string
  4250. serviceAccountSecretRef:
  4251. description: A reference to a specific 'key' within a
  4252. Secret resource. In some instances, `key` is a required
  4253. field.
  4254. properties:
  4255. key:
  4256. description: The key of the entry in the Secret resource's
  4257. `data` field to be used. Some instances of this
  4258. field may be defaulted, in others it may be required.
  4259. type: string
  4260. name:
  4261. description: 'Name of the resource being referred
  4262. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4263. type: string
  4264. required:
  4265. - name
  4266. type: object
  4267. required:
  4268. - project
  4269. type: object
  4270. cloudflare:
  4271. description: Use the Cloudflare API to manage DNS01 challenge
  4272. records.
  4273. properties:
  4274. apiKeySecretRef:
  4275. description: 'API key to use to authenticate with Cloudflare.
  4276. Note: using an API token to authenticate is now the
  4277. recommended method as it allows greater control of permissions.'
  4278. properties:
  4279. key:
  4280. description: The key of the entry in the Secret resource's
  4281. `data` field to be used. Some instances of this
  4282. field may be defaulted, in others it may be required.
  4283. type: string
  4284. name:
  4285. description: 'Name of the resource being referred
  4286. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4287. type: string
  4288. required:
  4289. - name
  4290. type: object
  4291. apiTokenSecretRef:
  4292. description: API token used to authenticate with Cloudflare.
  4293. properties:
  4294. key:
  4295. description: The key of the entry in the Secret resource's
  4296. `data` field to be used. Some instances of this
  4297. field may be defaulted, in others it may be required.
  4298. type: string
  4299. name:
  4300. description: 'Name of the resource being referred
  4301. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4302. type: string
  4303. required:
  4304. - name
  4305. type: object
  4306. email:
  4307. description: Email of the account, only required when
  4308. using API key based authentication.
  4309. type: string
  4310. type: object
  4311. cnameStrategy:
  4312. description: CNAMEStrategy configures how the DNS01 provider
  4313. should handle CNAME records when found in DNS zones.
  4314. enum:
  4315. - None
  4316. - Follow
  4317. type: string
  4318. digitalocean:
  4319. description: Use the DigitalOcean DNS API to manage DNS01
  4320. challenge records.
  4321. properties:
  4322. tokenSecretRef:
  4323. description: A reference to a specific 'key' within a
  4324. Secret resource. In some instances, `key` is a required
  4325. field.
  4326. properties:
  4327. key:
  4328. description: The key of the entry in the Secret resource's
  4329. `data` field to be used. Some instances of this
  4330. field may be defaulted, in others it may be required.
  4331. type: string
  4332. name:
  4333. description: 'Name of the resource being referred
  4334. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4335. type: string
  4336. required:
  4337. - name
  4338. type: object
  4339. required:
  4340. - tokenSecretRef
  4341. type: object
  4342. rfc2136:
  4343. description: Use RFC2136 ("Dynamic Updates in the Domain Name
  4344. System") (https://datatracker.ietf.org/doc/rfc2136/) to
  4345. manage DNS01 challenge records.
  4346. properties:
  4347. nameserver:
  4348. description: The IP address or hostname of an authoritative
  4349. DNS server supporting RFC2136 in the form host:port.
  4350. If the host is an IPv6 address it must be enclosed in
  4351. square brackets (e.g [2001:db8::1]) ; port is optional.
  4352. This field is required.
  4353. type: string
  4354. tsigAlgorithm:
  4355. description: 'The TSIG Algorithm configured in the DNS
  4356. supporting RFC2136. Used only when ``tsigSecretSecretRef``
  4357. and ``tsigKeyName`` are defined. Supported values are
  4358. (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``,
  4359. ``HMACSHA256`` or ``HMACSHA512``.'
  4360. type: string
  4361. tsigKeyName:
  4362. description: The TSIG Key name configured in the DNS.
  4363. If ``tsigSecretSecretRef`` is defined, this field is
  4364. required.
  4365. type: string
  4366. tsigSecretSecretRef:
  4367. description: The name of the secret containing the TSIG
  4368. value. If ``tsigKeyName`` is defined, this field is
  4369. required.
  4370. properties:
  4371. key:
  4372. description: The key of the entry in the Secret resource's
  4373. `data` field to be used. Some instances of this
  4374. field may be defaulted, in others it may be required.
  4375. type: string
  4376. name:
  4377. description: 'Name of the resource being referred
  4378. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4379. type: string
  4380. required:
  4381. - name
  4382. type: object
  4383. required:
  4384. - nameserver
  4385. type: object
  4386. route53:
  4387. description: Use the AWS Route53 API to manage DNS01 challenge
  4388. records.
  4389. properties:
  4390. accessKeyID:
  4391. description: 'The AccessKeyID is used for authentication.
  4392. If not set we fall-back to using env vars, shared credentials
  4393. file or AWS Instance metadata see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  4394. type: string
  4395. hostedZoneID:
  4396. description: If set, the provider will manage only this
  4397. zone in Route53 and will not do an lookup using the
  4398. route53:ListHostedZonesByName api call.
  4399. type: string
  4400. region:
  4401. description: Always set the region when using AccessKeyID
  4402. and SecretAccessKey
  4403. type: string
  4404. role:
  4405. description: Role is a Role ARN which the Route53 provider
  4406. will assume using either the explicit credentials AccessKeyID/SecretAccessKey
  4407. or the inferred credentials from environment variables,
  4408. shared credentials file or AWS Instance metadata
  4409. type: string
  4410. secretAccessKeySecretRef:
  4411. description: The SecretAccessKey is used for authentication.
  4412. If not set we fall-back to using env vars, shared credentials
  4413. file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  4414. properties:
  4415. key:
  4416. description: The key of the entry in the Secret resource's
  4417. `data` field to be used. Some instances of this
  4418. field may be defaulted, in others it may be required.
  4419. type: string
  4420. name:
  4421. description: 'Name of the resource being referred
  4422. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4423. type: string
  4424. required:
  4425. - name
  4426. type: object
  4427. required:
  4428. - region
  4429. type: object
  4430. webhook:
  4431. description: Configure an external webhook based DNS01 challenge
  4432. solver to manage DNS01 challenge records.
  4433. properties:
  4434. config:
  4435. description: Additional configuration that should be passed
  4436. to the webhook apiserver when challenges are processed.
  4437. This can contain arbitrary JSON data. Secret values
  4438. should not be specified in this stanza. If secret values
  4439. are needed (e.g. credentials for a DNS service), you
  4440. should use a SecretKeySelector to reference a Secret
  4441. resource. For details on the schema of this field, consult
  4442. the webhook provider implementation's documentation.
  4443. x-kubernetes-preserve-unknown-fields: true
  4444. groupName:
  4445. description: The API group name that should be used when
  4446. POSTing ChallengePayload resources to the webhook apiserver.
  4447. This should be the same as the GroupName specified in
  4448. the webhook provider implementation.
  4449. type: string
  4450. solverName:
  4451. description: The name of the solver to use, as defined
  4452. in the webhook provider implementation. This will typically
  4453. be the name of the provider, e.g. 'cloudflare'.
  4454. type: string
  4455. required:
  4456. - groupName
  4457. - solverName
  4458. type: object
  4459. type: object
  4460. http01:
  4461. description: Configures cert-manager to attempt to complete authorizations
  4462. by performing the HTTP01 challenge flow. It is not possible
  4463. to obtain certificates for wildcard domain names (e.g. `*.example.com`)
  4464. using the HTTP01 challenge mechanism.
  4465. properties:
  4466. ingress:
  4467. description: The ingress based HTTP01 challenge solver will
  4468. solve challenges by creating or modifying Ingress resources
  4469. in order to route requests for '/.well-known/acme-challenge/XYZ'
  4470. to 'challenge solver' pods that are provisioned by cert-manager
  4471. for each Challenge to be completed.
  4472. properties:
  4473. class:
  4474. description: The ingress class to use when creating Ingress
  4475. resources to solve ACME challenges that use this challenge
  4476. solver. Only one of 'class' or 'name' may be specified.
  4477. type: string
  4478. ingressTemplate:
  4479. description: Optional ingress template used to configure
  4480. the ACME challenge solver ingress used for HTTP01 challenges
  4481. properties:
  4482. metadata:
  4483. description: ObjectMeta overrides for the ingress
  4484. used to solve HTTP01 challenges. Only the 'labels'
  4485. and 'annotations' fields may be set. If labels or
  4486. annotations overlap with in-built values, the values
  4487. here will override the in-built values.
  4488. properties:
  4489. annotations:
  4490. additionalProperties:
  4491. type: string
  4492. description: Annotations that should be added
  4493. to the created ACME HTTP01 solver ingress.
  4494. type: object
  4495. labels:
  4496. additionalProperties:
  4497. type: string
  4498. description: Labels that should be added to the
  4499. created ACME HTTP01 solver ingress.
  4500. type: object
  4501. type: object
  4502. type: object
  4503. name:
  4504. description: The name of the ingress resource that should
  4505. have ACME challenge solving routes inserted into it
  4506. in order to solve HTTP01 challenges. This is typically
  4507. used in conjunction with ingress controllers like ingress-gce,
  4508. which maintains a 1:1 mapping between external IPs and
  4509. ingress resources.
  4510. type: string
  4511. podTemplate:
  4512. description: Optional pod template used to configure the
  4513. ACME challenge solver pods used for HTTP01 challenges
  4514. properties:
  4515. metadata:
  4516. description: ObjectMeta overrides for the pod used
  4517. to solve HTTP01 challenges. Only the 'labels' and
  4518. 'annotations' fields may be set. If labels or annotations
  4519. overlap with in-built values, the values here will
  4520. override the in-built values.
  4521. properties:
  4522. annotations:
  4523. additionalProperties:
  4524. type: string
  4525. description: Annotations that should be added
  4526. to the create ACME HTTP01 solver pods.
  4527. type: object
  4528. labels:
  4529. additionalProperties:
  4530. type: string
  4531. description: Labels that should be added to the
  4532. created ACME HTTP01 solver pods.
  4533. type: object
  4534. type: object
  4535. spec:
  4536. description: PodSpec defines overrides for the HTTP01
  4537. challenge solver pod. Only the 'priorityClassName',
  4538. 'nodeSelector', 'affinity', 'serviceAccountName'
  4539. and 'tolerations' fields are supported currently.
  4540. All other fields will be ignored.
  4541. properties:
  4542. affinity:
  4543. description: If specified, the pod's scheduling
  4544. constraints
  4545. properties:
  4546. nodeAffinity:
  4547. description: Describes node affinity scheduling
  4548. rules for the pod.
  4549. properties:
  4550. preferredDuringSchedulingIgnoredDuringExecution:
  4551. description: The scheduler will prefer
  4552. to schedule pods to nodes that satisfy
  4553. the affinity expressions specified by
  4554. this field, but it may choose a node
  4555. that violates one or more of the expressions.
  4556. The node that is most preferred is the
  4557. one with the greatest sum of weights,
  4558. i.e. for each node that meets all of
  4559. the scheduling requirements (resource
  4560. request, requiredDuringScheduling affinity
  4561. expressions, etc.), compute a sum by
  4562. iterating through the elements of this
  4563. field and adding "weight" to the sum
  4564. if the node matches the corresponding
  4565. matchExpressions; the node(s) with the
  4566. highest sum are the most preferred.
  4567. items:
  4568. description: An empty preferred scheduling
  4569. term matches all objects with implicit
  4570. weight 0 (i.e. it's a no-op). A null
  4571. preferred scheduling term matches
  4572. no objects (i.e. is also a no-op).
  4573. properties:
  4574. preference:
  4575. description: A node selector term,
  4576. associated with the corresponding
  4577. weight.
  4578. properties:
  4579. matchExpressions:
  4580. description: A list of node
  4581. selector requirements by node's
  4582. labels.
  4583. items:
  4584. description: A node selector
  4585. requirement is a selector
  4586. that contains values, a
  4587. key, and an operator that
  4588. relates the key and values.
  4589. properties:
  4590. key:
  4591. description: The label
  4592. key that the selector
  4593. applies to.
  4594. type: string
  4595. operator:
  4596. description: Represents
  4597. a key's relationship
  4598. to a set of values.
  4599. Valid operators are
  4600. In, NotIn, Exists, DoesNotExist.
  4601. Gt, and Lt.
  4602. type: string
  4603. values:
  4604. description: An array
  4605. of string values. If
  4606. the operator is In or
  4607. NotIn, the values array
  4608. must be non-empty. If
  4609. the operator is Exists
  4610. or DoesNotExist, the
  4611. values array must be
  4612. empty. If the operator
  4613. is Gt or Lt, the values
  4614. array must have a single
  4615. element, which will
  4616. be interpreted as an
  4617. integer. This array
  4618. is replaced during a
  4619. strategic merge patch.
  4620. items:
  4621. type: string
  4622. type: array
  4623. required:
  4624. - key
  4625. - operator
  4626. type: object
  4627. type: array
  4628. matchFields:
  4629. description: A list of node
  4630. selector requirements by node's
  4631. fields.
  4632. items:
  4633. description: A node selector
  4634. requirement is a selector
  4635. that contains values, a
  4636. key, and an operator that
  4637. relates the key and values.
  4638. properties:
  4639. key:
  4640. description: The label
  4641. key that the selector
  4642. applies to.
  4643. type: string
  4644. operator:
  4645. description: Represents
  4646. a key's relationship
  4647. to a set of values.
  4648. Valid operators are
  4649. In, NotIn, Exists, DoesNotExist.
  4650. Gt, and Lt.
  4651. type: string
  4652. values:
  4653. description: An array
  4654. of string values. If
  4655. the operator is In or
  4656. NotIn, the values array
  4657. must be non-empty. If
  4658. the operator is Exists
  4659. or DoesNotExist, the
  4660. values array must be
  4661. empty. If the operator
  4662. is Gt or Lt, the values
  4663. array must have a single
  4664. element, which will
  4665. be interpreted as an
  4666. integer. This array
  4667. is replaced during a
  4668. strategic merge patch.
  4669. items:
  4670. type: string
  4671. type: array
  4672. required:
  4673. - key
  4674. - operator
  4675. type: object
  4676. type: array
  4677. type: object
  4678. weight:
  4679. description: Weight associated with
  4680. matching the corresponding nodeSelectorTerm,
  4681. in the range 1-100.
  4682. format: int32
  4683. type: integer
  4684. required:
  4685. - preference
  4686. - weight
  4687. type: object
  4688. type: array
  4689. requiredDuringSchedulingIgnoredDuringExecution:
  4690. description: If the affinity requirements
  4691. specified by this field are not met
  4692. at scheduling time, the pod will not
  4693. be scheduled onto the node. If the affinity
  4694. requirements specified by this field
  4695. cease to be met at some point during
  4696. pod execution (e.g. due to an update),
  4697. the system may or may not try to eventually
  4698. evict the pod from its node.
  4699. properties:
  4700. nodeSelectorTerms:
  4701. description: Required. A list of node
  4702. selector terms. The terms are ORed.
  4703. items:
  4704. description: A null or empty node
  4705. selector term matches no objects.
  4706. The requirements of them are ANDed.
  4707. The TopologySelectorTerm type
  4708. implements a subset of the NodeSelectorTerm.
  4709. properties:
  4710. matchExpressions:
  4711. description: A list of node
  4712. selector requirements by node's
  4713. labels.
  4714. items:
  4715. description: A node selector
  4716. requirement is a selector
  4717. that contains values, a
  4718. key, and an operator that
  4719. relates the key and values.
  4720. properties:
  4721. key:
  4722. description: The label
  4723. key that the selector
  4724. applies to.
  4725. type: string
  4726. operator:
  4727. description: Represents
  4728. a key's relationship
  4729. to a set of values.
  4730. Valid operators are
  4731. In, NotIn, Exists, DoesNotExist.
  4732. Gt, and Lt.
  4733. type: string
  4734. values:
  4735. description: An array
  4736. of string values. If
  4737. the operator is In or
  4738. NotIn, the values array
  4739. must be non-empty. If
  4740. the operator is Exists
  4741. or DoesNotExist, the
  4742. values array must be
  4743. empty. If the operator
  4744. is Gt or Lt, the values
  4745. array must have a single
  4746. element, which will
  4747. be interpreted as an
  4748. integer. This array
  4749. is replaced during a
  4750. strategic merge patch.
  4751. items:
  4752. type: string
  4753. type: array
  4754. required:
  4755. - key
  4756. - operator
  4757. type: object
  4758. type: array
  4759. matchFields:
  4760. description: A list of node
  4761. selector requirements by node's
  4762. fields.
  4763. items:
  4764. description: A node selector
  4765. requirement is a selector
  4766. that contains values, a
  4767. key, and an operator that
  4768. relates the key and values.
  4769. properties:
  4770. key:
  4771. description: The label
  4772. key that the selector
  4773. applies to.
  4774. type: string
  4775. operator:
  4776. description: Represents
  4777. a key's relationship
  4778. to a set of values.
  4779. Valid operators are
  4780. In, NotIn, Exists, DoesNotExist.
  4781. Gt, and Lt.
  4782. type: string
  4783. values:
  4784. description: An array
  4785. of string values. If
  4786. the operator is In or
  4787. NotIn, the values array
  4788. must be non-empty. If
  4789. the operator is Exists
  4790. or DoesNotExist, the
  4791. values array must be
  4792. empty. If the operator
  4793. is Gt or Lt, the values
  4794. array must have a single
  4795. element, which will
  4796. be interpreted as an
  4797. integer. This array
  4798. is replaced during a
  4799. strategic merge patch.
  4800. items:
  4801. type: string
  4802. type: array
  4803. required:
  4804. - key
  4805. - operator
  4806. type: object
  4807. type: array
  4808. type: object
  4809. type: array
  4810. required:
  4811. - nodeSelectorTerms
  4812. type: object
  4813. type: object
  4814. podAffinity:
  4815. description: Describes pod affinity scheduling
  4816. rules (e.g. co-locate this pod in the same
  4817. node, zone, etc. as some other pod(s)).
  4818. properties:
  4819. preferredDuringSchedulingIgnoredDuringExecution:
  4820. description: The scheduler will prefer
  4821. to schedule pods to nodes that satisfy
  4822. the affinity expressions specified by
  4823. this field, but it may choose a node
  4824. that violates one or more of the expressions.
  4825. The node that is most preferred is the
  4826. one with the greatest sum of weights,
  4827. i.e. for each node that meets all of
  4828. the scheduling requirements (resource
  4829. request, requiredDuringScheduling affinity
  4830. expressions, etc.), compute a sum by
  4831. iterating through the elements of this
  4832. field and adding "weight" to the sum
  4833. if the node has pods which matches the
  4834. corresponding podAffinityTerm; the node(s)
  4835. with the highest sum are the most preferred.
  4836. items:
  4837. description: The weights of all of the
  4838. matched WeightedPodAffinityTerm fields
  4839. are added per-node to find the most
  4840. preferred node(s)
  4841. properties:
  4842. podAffinityTerm:
  4843. description: Required. A pod affinity
  4844. term, associated with the corresponding
  4845. weight.
  4846. properties:
  4847. labelSelector:
  4848. description: A label query over
  4849. a set of resources, in this
  4850. case pods.
  4851. properties:
  4852. matchExpressions:
  4853. description: matchExpressions
  4854. is a list of label selector
  4855. requirements. The requirements
  4856. are ANDed.
  4857. items:
  4858. description: A label selector
  4859. requirement is a selector
  4860. that contains values,
  4861. a key, and an operator
  4862. that relates the key
  4863. and values.
  4864. properties:
  4865. key:
  4866. description: key is
  4867. the label key that
  4868. the selector applies
  4869. to.
  4870. type: string
  4871. operator:
  4872. description: operator
  4873. represents a key's
  4874. relationship to
  4875. a set of values.
  4876. Valid operators
  4877. are In, NotIn, Exists
  4878. and DoesNotExist.
  4879. type: string
  4880. values:
  4881. description: values
  4882. is an array of string
  4883. values. If the operator
  4884. is In or NotIn,
  4885. the values array
  4886. must be non-empty.
  4887. If the operator
  4888. is Exists or DoesNotExist,
  4889. the values array
  4890. must be empty. This
  4891. array is replaced
  4892. during a strategic
  4893. merge patch.
  4894. items:
  4895. type: string
  4896. type: array
  4897. required:
  4898. - key
  4899. - operator
  4900. type: object
  4901. type: array
  4902. matchLabels:
  4903. additionalProperties:
  4904. type: string
  4905. description: matchLabels
  4906. is a map of {key,value}
  4907. pairs. A single {key,value}
  4908. in the matchLabels map
  4909. is equivalent to an element
  4910. of matchExpressions, whose
  4911. key field is "key", the
  4912. operator is "In", and
  4913. the values array contains
  4914. only "value". The requirements
  4915. are ANDed.
  4916. type: object
  4917. type: object
  4918. namespaces:
  4919. description: namespaces specifies
  4920. which namespaces the labelSelector
  4921. applies to (matches against);
  4922. null or empty list means "this
  4923. pod's namespace"
  4924. items:
  4925. type: string
  4926. type: array
  4927. topologyKey:
  4928. description: This pod should
  4929. be co-located (affinity) or
  4930. not co-located (anti-affinity)
  4931. with the pods matching the
  4932. labelSelector in the specified
  4933. namespaces, where co-located
  4934. is defined as running on a
  4935. node whose value of the label
  4936. with key topologyKey matches
  4937. that of any node on which
  4938. any of the selected pods is
  4939. running. Empty topologyKey
  4940. is not allowed.
  4941. type: string
  4942. required:
  4943. - topologyKey
  4944. type: object
  4945. weight:
  4946. description: weight associated with
  4947. matching the corresponding podAffinityTerm,
  4948. in the range 1-100.
  4949. format: int32
  4950. type: integer
  4951. required:
  4952. - podAffinityTerm
  4953. - weight
  4954. type: object
  4955. type: array
  4956. requiredDuringSchedulingIgnoredDuringExecution:
  4957. description: If the affinity requirements
  4958. specified by this field are not met
  4959. at scheduling time, the pod will not
  4960. be scheduled onto the node. If the affinity
  4961. requirements specified by this field
  4962. cease to be met at some point during
  4963. pod execution (e.g. due to a pod label
  4964. update), the system may or may not try
  4965. to eventually evict the pod from its
  4966. node. When there are multiple elements,
  4967. the lists of nodes corresponding to
  4968. each podAffinityTerm are intersected,
  4969. i.e. all terms must be satisfied.
  4970. items:
  4971. description: Defines a set of pods (namely
  4972. those matching the labelSelector relative
  4973. to the given namespace(s)) that this
  4974. pod should be co-located (affinity)
  4975. or not co-located (anti-affinity)
  4976. with, where co-located is defined
  4977. as running on a node whose value of
  4978. the label with key <topologyKey> matches
  4979. that of any node on which a pod of
  4980. the set of pods is running
  4981. properties:
  4982. labelSelector:
  4983. description: A label query over
  4984. a set of resources, in this case
  4985. pods.
  4986. properties:
  4987. matchExpressions:
  4988. description: matchExpressions
  4989. is a list of label selector
  4990. requirements. The requirements
  4991. are ANDed.
  4992. items:
  4993. description: A label selector
  4994. requirement is a selector
  4995. that contains values, a
  4996. key, and an operator that
  4997. relates the key and values.
  4998. properties:
  4999. key:
  5000. description: key is the
  5001. label key that the selector
  5002. applies to.
  5003. type: string
  5004. operator:
  5005. description: operator
  5006. represents a key's relationship
  5007. to a set of values.
  5008. Valid operators are
  5009. In, NotIn, Exists and
  5010. DoesNotExist.
  5011. type: string
  5012. values:
  5013. description: values is
  5014. an array of string values.
  5015. If the operator is In
  5016. or NotIn, the values
  5017. array must be non-empty.
  5018. If the operator is Exists
  5019. or DoesNotExist, the
  5020. values array must be
  5021. empty. This array is
  5022. replaced during a strategic
  5023. merge patch.
  5024. items:
  5025. type: string
  5026. type: array
  5027. required:
  5028. - key
  5029. - operator
  5030. type: object
  5031. type: array
  5032. matchLabels:
  5033. additionalProperties:
  5034. type: string
  5035. description: matchLabels is
  5036. a map of {key,value} pairs.
  5037. A single {key,value} in the
  5038. matchLabels map is equivalent
  5039. to an element of matchExpressions,
  5040. whose key field is "key",
  5041. the operator is "In", and
  5042. the values array contains
  5043. only "value". The requirements
  5044. are ANDed.
  5045. type: object
  5046. type: object
  5047. namespaces:
  5048. description: namespaces specifies
  5049. which namespaces the labelSelector
  5050. applies to (matches against);
  5051. null or empty list means "this
  5052. pod's namespace"
  5053. items:
  5054. type: string
  5055. type: array
  5056. topologyKey:
  5057. description: This pod should be
  5058. co-located (affinity) or not co-located
  5059. (anti-affinity) with the pods
  5060. matching the labelSelector in
  5061. the specified namespaces, where
  5062. co-located is defined as running
  5063. on a node whose value of the label
  5064. with key topologyKey matches that
  5065. of any node on which any of the
  5066. selected pods is running. Empty
  5067. topologyKey is not allowed.
  5068. type: string
  5069. required:
  5070. - topologyKey
  5071. type: object
  5072. type: array
  5073. type: object
  5074. podAntiAffinity:
  5075. description: Describes pod anti-affinity scheduling
  5076. rules (e.g. avoid putting this pod in the
  5077. same node, zone, etc. as some other pod(s)).
  5078. properties:
  5079. preferredDuringSchedulingIgnoredDuringExecution:
  5080. description: The scheduler will prefer
  5081. to schedule pods to nodes that satisfy
  5082. the anti-affinity expressions specified
  5083. by this field, but it may choose a node
  5084. that violates one or more of the expressions.
  5085. The node that is most preferred is the
  5086. one with the greatest sum of weights,
  5087. i.e. for each node that meets all of
  5088. the scheduling requirements (resource
  5089. request, requiredDuringScheduling anti-affinity
  5090. expressions, etc.), compute a sum by
  5091. iterating through the elements of this
  5092. field and adding "weight" to the sum
  5093. if the node has pods which matches the
  5094. corresponding podAffinityTerm; the node(s)
  5095. with the highest sum are the most preferred.
  5096. items:
  5097. description: The weights of all of the
  5098. matched WeightedPodAffinityTerm fields
  5099. are added per-node to find the most
  5100. preferred node(s)
  5101. properties:
  5102. podAffinityTerm:
  5103. description: Required. A pod affinity
  5104. term, associated with the corresponding
  5105. weight.
  5106. properties:
  5107. labelSelector:
  5108. description: A label query over
  5109. a set of resources, in this
  5110. case pods.
  5111. properties:
  5112. matchExpressions:
  5113. description: matchExpressions
  5114. is a list of label selector
  5115. requirements. The requirements
  5116. are ANDed.
  5117. items:
  5118. description: A label selector
  5119. requirement is a selector
  5120. that contains values,
  5121. a key, and an operator
  5122. that relates the key
  5123. and values.
  5124. properties:
  5125. key:
  5126. description: key is
  5127. the label key that
  5128. the selector applies
  5129. to.
  5130. type: string
  5131. operator:
  5132. description: operator
  5133. represents a key's
  5134. relationship to
  5135. a set of values.
  5136. Valid operators
  5137. are In, NotIn, Exists
  5138. and DoesNotExist.
  5139. type: string
  5140. values:
  5141. description: values
  5142. is an array of string
  5143. values. If the operator
  5144. is In or NotIn,
  5145. the values array
  5146. must be non-empty.
  5147. If the operator
  5148. is Exists or DoesNotExist,
  5149. the values array
  5150. must be empty. This
  5151. array is replaced
  5152. during a strategic
  5153. merge patch.
  5154. items:
  5155. type: string
  5156. type: array
  5157. required:
  5158. - key
  5159. - operator
  5160. type: object
  5161. type: array
  5162. matchLabels:
  5163. additionalProperties:
  5164. type: string
  5165. description: matchLabels
  5166. is a map of {key,value}
  5167. pairs. A single {key,value}
  5168. in the matchLabels map
  5169. is equivalent to an element
  5170. of matchExpressions, whose
  5171. key field is "key", the
  5172. operator is "In", and
  5173. the values array contains
  5174. only "value". The requirements
  5175. are ANDed.
  5176. type: object
  5177. type: object
  5178. namespaces:
  5179. description: namespaces specifies
  5180. which namespaces the labelSelector
  5181. applies to (matches against);
  5182. null or empty list means "this
  5183. pod's namespace"
  5184. items:
  5185. type: string
  5186. type: array
  5187. topologyKey:
  5188. description: This pod should
  5189. be co-located (affinity) or
  5190. not co-located (anti-affinity)
  5191. with the pods matching the
  5192. labelSelector in the specified
  5193. namespaces, where co-located
  5194. is defined as running on a
  5195. node whose value of the label
  5196. with key topologyKey matches
  5197. that of any node on which
  5198. any of the selected pods is
  5199. running. Empty topologyKey
  5200. is not allowed.
  5201. type: string
  5202. required:
  5203. - topologyKey
  5204. type: object
  5205. weight:
  5206. description: weight associated with
  5207. matching the corresponding podAffinityTerm,
  5208. in the range 1-100.
  5209. format: int32
  5210. type: integer
  5211. required:
  5212. - podAffinityTerm
  5213. - weight
  5214. type: object
  5215. type: array
  5216. requiredDuringSchedulingIgnoredDuringExecution:
  5217. description: If the anti-affinity requirements
  5218. specified by this field are not met
  5219. at scheduling time, the pod will not
  5220. be scheduled onto the node. If the anti-affinity
  5221. requirements specified by this field
  5222. cease to be met at some point during
  5223. pod execution (e.g. due to a pod label
  5224. update), the system may or may not try
  5225. to eventually evict the pod from its
  5226. node. When there are multiple elements,
  5227. the lists of nodes corresponding to
  5228. each podAffinityTerm are intersected,
  5229. i.e. all terms must be satisfied.
  5230. items:
  5231. description: Defines a set of pods (namely
  5232. those matching the labelSelector relative
  5233. to the given namespace(s)) that this
  5234. pod should be co-located (affinity)
  5235. or not co-located (anti-affinity)
  5236. with, where co-located is defined
  5237. as running on a node whose value of
  5238. the label with key <topologyKey> matches
  5239. that of any node on which a pod of
  5240. the set of pods is running
  5241. properties:
  5242. labelSelector:
  5243. description: A label query over
  5244. a set of resources, in this case
  5245. pods.
  5246. properties:
  5247. matchExpressions:
  5248. description: matchExpressions
  5249. is a list of label selector
  5250. requirements. The requirements
  5251. are ANDed.
  5252. items:
  5253. description: A label selector
  5254. requirement is a selector
  5255. that contains values, a
  5256. key, and an operator that
  5257. relates the key and values.
  5258. properties:
  5259. key:
  5260. description: key is the
  5261. label key that the selector
  5262. applies to.
  5263. type: string
  5264. operator:
  5265. description: operator
  5266. represents a key's relationship
  5267. to a set of values.
  5268. Valid operators are
  5269. In, NotIn, Exists and
  5270. DoesNotExist.
  5271. type: string
  5272. values:
  5273. description: values is
  5274. an array of string values.
  5275. If the operator is In
  5276. or NotIn, the values
  5277. array must be non-empty.
  5278. If the operator is Exists
  5279. or DoesNotExist, the
  5280. values array must be
  5281. empty. This array is
  5282. replaced during a strategic
  5283. merge patch.
  5284. items:
  5285. type: string
  5286. type: array
  5287. required:
  5288. - key
  5289. - operator
  5290. type: object
  5291. type: array
  5292. matchLabels:
  5293. additionalProperties:
  5294. type: string
  5295. description: matchLabels is
  5296. a map of {key,value} pairs.
  5297. A single {key,value} in the
  5298. matchLabels map is equivalent
  5299. to an element of matchExpressions,
  5300. whose key field is "key",
  5301. the operator is "In", and
  5302. the values array contains
  5303. only "value". The requirements
  5304. are ANDed.
  5305. type: object
  5306. type: object
  5307. namespaces:
  5308. description: namespaces specifies
  5309. which namespaces the labelSelector
  5310. applies to (matches against);
  5311. null or empty list means "this
  5312. pod's namespace"
  5313. items:
  5314. type: string
  5315. type: array
  5316. topologyKey:
  5317. description: This pod should be
  5318. co-located (affinity) or not co-located
  5319. (anti-affinity) with the pods
  5320. matching the labelSelector in
  5321. the specified namespaces, where
  5322. co-located is defined as running
  5323. on a node whose value of the label
  5324. with key topologyKey matches that
  5325. of any node on which any of the
  5326. selected pods is running. Empty
  5327. topologyKey is not allowed.
  5328. type: string
  5329. required:
  5330. - topologyKey
  5331. type: object
  5332. type: array
  5333. type: object
  5334. type: object
  5335. nodeSelector:
  5336. additionalProperties:
  5337. type: string
  5338. description: 'NodeSelector is a selector which
  5339. must be true for the pod to fit on a node. Selector
  5340. which must match a node''s labels for the pod
  5341. to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  5342. type: object
  5343. priorityClassName:
  5344. description: If specified, the pod's priorityClassName.
  5345. type: string
  5346. serviceAccountName:
  5347. description: If specified, the pod's service account
  5348. type: string
  5349. tolerations:
  5350. description: If specified, the pod's tolerations.
  5351. items:
  5352. description: The pod this Toleration is attached
  5353. to tolerates any taint that matches the triple
  5354. <key,value,effect> using the matching operator
  5355. <operator>.
  5356. properties:
  5357. effect:
  5358. description: Effect indicates the taint
  5359. effect to match. Empty means match all
  5360. taint effects. When specified, allowed
  5361. values are NoSchedule, PreferNoSchedule
  5362. and NoExecute.
  5363. type: string
  5364. key:
  5365. description: Key is the taint key that the
  5366. toleration applies to. Empty means match
  5367. all taint keys. If the key is empty, operator
  5368. must be Exists; this combination means
  5369. to match all values and all keys.
  5370. type: string
  5371. operator:
  5372. description: Operator represents a key's
  5373. relationship to the value. Valid operators
  5374. are Exists and Equal. Defaults to Equal.
  5375. Exists is equivalent to wildcard for value,
  5376. so that a pod can tolerate all taints
  5377. of a particular category.
  5378. type: string
  5379. tolerationSeconds:
  5380. description: TolerationSeconds represents
  5381. the period of time the toleration (which
  5382. must be of effect NoExecute, otherwise
  5383. this field is ignored) tolerates the taint.
  5384. By default, it is not set, which means
  5385. tolerate the taint forever (do not evict).
  5386. Zero and negative values will be treated
  5387. as 0 (evict immediately) by the system.
  5388. format: int64
  5389. type: integer
  5390. value:
  5391. description: Value is the taint value the
  5392. toleration matches to. If the operator
  5393. is Exists, the value should be empty,
  5394. otherwise just a regular string.
  5395. type: string
  5396. type: object
  5397. type: array
  5398. type: object
  5399. type: object
  5400. serviceType:
  5401. description: Optional service type for Kubernetes solver
  5402. service
  5403. type: string
  5404. type: object
  5405. type: object
  5406. selector:
  5407. description: Selector selects a set of DNSNames on the Certificate
  5408. resource that should be solved using this challenge solver.
  5409. If not specified, the solver will be treated as the 'default'
  5410. solver with the lowest priority, i.e. if any other solver has
  5411. a more specific match, it will be used instead.
  5412. properties:
  5413. dnsNames:
  5414. description: List of DNSNames that this solver will be used
  5415. to solve. If specified and a match is found, a dnsNames
  5416. selector will take precedence over a dnsZones selector.
  5417. If multiple solvers match with the same dnsNames value,
  5418. the solver with the most matching labels in matchLabels
  5419. will be selected. If neither has more matches, the solver
  5420. defined earlier in the list will be selected.
  5421. items:
  5422. type: string
  5423. type: array
  5424. dnsZones:
  5425. description: List of DNSZones that this solver will be used
  5426. to solve. The most specific DNS zone match specified here
  5427. will take precedence over other DNS zone matches, so a solver
  5428. specifying sys.example.com will be selected over one specifying
  5429. example.com for the domain www.sys.example.com. If multiple
  5430. solvers match with the same dnsZones value, the solver with
  5431. the most matching labels in matchLabels will be selected.
  5432. If neither has more matches, the solver defined earlier
  5433. in the list will be selected.
  5434. items:
  5435. type: string
  5436. type: array
  5437. matchLabels:
  5438. additionalProperties:
  5439. type: string
  5440. description: A label selector that is used to refine the set
  5441. of certificate's that this challenge solver will apply to.
  5442. type: object
  5443. type: object
  5444. type: object
  5445. token:
  5446. description: Token is the ACME challenge token for this challenge.
  5447. This is the raw value returned from the ACME server.
  5448. type: string
  5449. type:
  5450. description: Type is the type of ACME challenge this resource represents.
  5451. One of "http-01" or "dns-01".
  5452. enum:
  5453. - http-01
  5454. - dns-01
  5455. type: string
  5456. url:
  5457. description: URL is the URL of the ACME Challenge resource for this
  5458. challenge. This can be used to lookup details about the status of
  5459. this challenge.
  5460. type: string
  5461. wildcard:
  5462. description: Wildcard will be true if this challenge is for a wildcard
  5463. identifier, for example '*.example.com'.
  5464. type: boolean
  5465. required:
  5466. - authzURL
  5467. - dnsName
  5468. - issuerRef
  5469. - key
  5470. - solver
  5471. - token
  5472. - type
  5473. - url
  5474. type: object
  5475. status:
  5476. properties:
  5477. presented:
  5478. description: Presented will be set to true if the challenge values
  5479. for this challenge are currently 'presented'. This *does not* imply
  5480. the self check is passing. Only that the values have been 'submitted'
  5481. for the appropriate challenge mechanism (i.e. the DNS01 TXT record
  5482. has been presented, or the HTTP01 configuration has been configured).
  5483. type: boolean
  5484. processing:
  5485. description: Processing is used to denote whether this challenge should
  5486. be processed or not. This field will only be set to true by the
  5487. 'scheduling' component. It will only be set to false by the 'challenges'
  5488. controller, after the challenge has reached a final state or timed
  5489. out. If this field is set to false, the challenge controller will
  5490. not take any more action.
  5491. type: boolean
  5492. reason:
  5493. description: Reason contains human readable information on why the
  5494. Challenge is in the current state.
  5495. type: string
  5496. state:
  5497. description: State contains the current 'state' of the challenge.
  5498. If not set, the state of the challenge is unknown.
  5499. enum:
  5500. - valid
  5501. - ready
  5502. - pending
  5503. - processing
  5504. - invalid
  5505. - expired
  5506. - errored
  5507. type: string
  5508. type: object
  5509. required:
  5510. - metadata
  5511. type: object
  5512. served: true
  5513. storage: false
  5514. subresources:
  5515. status: {}
  5516. - additionalPrinterColumns:
  5517. - jsonPath: .status.state
  5518. name: State
  5519. type: string
  5520. - jsonPath: .spec.dnsName
  5521. name: Domain
  5522. type: string
  5523. - jsonPath: .status.reason
  5524. name: Reason
  5525. priority: 1
  5526. type: string
  5527. - description: CreationTimestamp is a timestamp representing the server time when
  5528. this object was created. It is not guaranteed to be set in happens-before
  5529. order across separate operations. Clients may not set this value. It is represented
  5530. in RFC3339 form and is in UTC.
  5531. jsonPath: .metadata.creationTimestamp
  5532. name: Age
  5533. type: date
  5534. name: v1beta1
  5535. schema:
  5536. openAPIV3Schema:
  5537. description: Challenge is a type to represent a Challenge request with an
  5538. ACME server
  5539. properties:
  5540. apiVersion:
  5541. description: 'APIVersion defines the versioned schema of this representation
  5542. of an object. Servers should convert recognized schemas to the latest
  5543. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  5544. type: string
  5545. kind:
  5546. description: 'Kind is a string value representing the REST resource this
  5547. object represents. Servers may infer this from the endpoint the client
  5548. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  5549. type: string
  5550. metadata:
  5551. type: object
  5552. spec:
  5553. properties:
  5554. authorizationURL:
  5555. description: The URL to the ACME Authorization resource that this
  5556. challenge is a part of.
  5557. type: string
  5558. dnsName:
  5559. description: dnsName is the identifier that this challenge is for,
  5560. e.g. example.com. If the requested DNSName is a 'wildcard', this
  5561. field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
  5562. it must be `example.com`.
  5563. type: string
  5564. issuerRef:
  5565. description: References a properly configured ACME-type Issuer which
  5566. should be used to create this Challenge. If the Issuer does not
  5567. exist, processing will be retried. If the Issuer is not an 'ACME'
  5568. Issuer, an error will be returned and the Challenge will be marked
  5569. as failed.
  5570. properties:
  5571. group:
  5572. description: Group of the resource being referred to.
  5573. type: string
  5574. kind:
  5575. description: Kind of the resource being referred to.
  5576. type: string
  5577. name:
  5578. description: Name of the resource being referred to.
  5579. type: string
  5580. required:
  5581. - name
  5582. type: object
  5583. key:
  5584. description: 'The ACME challenge key for this challenge For HTTP01
  5585. challenges, this is the value that must be responded with to complete
  5586. the HTTP01 challenge in the format: `<private key JWK thumbprint>.<key
  5587. from acme server for challenge>`. For DNS01 challenges, this is
  5588. the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
  5589. from acme server for challenge>` text that must be set as the TXT
  5590. record content.'
  5591. type: string
  5592. solver:
  5593. description: Contains the domain solving configuration that should
  5594. be used to solve this challenge resource.
  5595. properties:
  5596. dns01:
  5597. description: Configures cert-manager to attempt to complete authorizations
  5598. by performing the DNS01 challenge flow.
  5599. properties:
  5600. acmeDNS:
  5601. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  5602. API to manage DNS01 challenge records.
  5603. properties:
  5604. accountSecretRef:
  5605. description: A reference to a specific 'key' within a
  5606. Secret resource. In some instances, `key` is a required
  5607. field.
  5608. properties:
  5609. key:
  5610. description: The key of the entry in the Secret resource's
  5611. `data` field to be used. Some instances of this
  5612. field may be defaulted, in others it may be required.
  5613. type: string
  5614. name:
  5615. description: 'Name of the resource being referred
  5616. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5617. type: string
  5618. required:
  5619. - name
  5620. type: object
  5621. host:
  5622. type: string
  5623. required:
  5624. - accountSecretRef
  5625. - host
  5626. type: object
  5627. akamai:
  5628. description: Use the Akamai DNS zone management API to manage
  5629. DNS01 challenge records.
  5630. properties:
  5631. accessTokenSecretRef:
  5632. description: A reference to a specific 'key' within a
  5633. Secret resource. In some instances, `key` is a required
  5634. field.
  5635. properties:
  5636. key:
  5637. description: The key of the entry in the Secret resource's
  5638. `data` field to be used. Some instances of this
  5639. field may be defaulted, in others it may be required.
  5640. type: string
  5641. name:
  5642. description: 'Name of the resource being referred
  5643. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5644. type: string
  5645. required:
  5646. - name
  5647. type: object
  5648. clientSecretSecretRef:
  5649. description: A reference to a specific 'key' within a
  5650. Secret resource. In some instances, `key` is a required
  5651. field.
  5652. properties:
  5653. key:
  5654. description: The key of the entry in the Secret resource's
  5655. `data` field to be used. Some instances of this
  5656. field may be defaulted, in others it may be required.
  5657. type: string
  5658. name:
  5659. description: 'Name of the resource being referred
  5660. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5661. type: string
  5662. required:
  5663. - name
  5664. type: object
  5665. clientTokenSecretRef:
  5666. description: A reference to a specific 'key' within a
  5667. Secret resource. In some instances, `key` is a required
  5668. field.
  5669. properties:
  5670. key:
  5671. description: The key of the entry in the Secret resource's
  5672. `data` field to be used. Some instances of this
  5673. field may be defaulted, in others it may be required.
  5674. type: string
  5675. name:
  5676. description: 'Name of the resource being referred
  5677. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5678. type: string
  5679. required:
  5680. - name
  5681. type: object
  5682. serviceConsumerDomain:
  5683. type: string
  5684. required:
  5685. - accessTokenSecretRef
  5686. - clientSecretSecretRef
  5687. - clientTokenSecretRef
  5688. - serviceConsumerDomain
  5689. type: object
  5690. azureDNS:
  5691. description: Use the Microsoft Azure DNS API to manage DNS01
  5692. challenge records.
  5693. properties:
  5694. clientID:
  5695. description: if both this and ClientSecret are left unset
  5696. MSI will be used
  5697. type: string
  5698. clientSecretSecretRef:
  5699. description: if both this and ClientID are left unset
  5700. MSI will be used
  5701. properties:
  5702. key:
  5703. description: The key of the entry in the Secret resource's
  5704. `data` field to be used. Some instances of this
  5705. field may be defaulted, in others it may be required.
  5706. type: string
  5707. name:
  5708. description: 'Name of the resource being referred
  5709. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5710. type: string
  5711. required:
  5712. - name
  5713. type: object
  5714. environment:
  5715. enum:
  5716. - AzurePublicCloud
  5717. - AzureChinaCloud
  5718. - AzureGermanCloud
  5719. - AzureUSGovernmentCloud
  5720. type: string
  5721. hostedZoneName:
  5722. type: string
  5723. resourceGroupName:
  5724. type: string
  5725. subscriptionID:
  5726. type: string
  5727. tenantID:
  5728. description: when specifying ClientID and ClientSecret
  5729. then this field is also needed
  5730. type: string
  5731. required:
  5732. - resourceGroupName
  5733. - subscriptionID
  5734. type: object
  5735. cloudDNS:
  5736. description: Use the Google Cloud DNS API to manage DNS01
  5737. challenge records.
  5738. properties:
  5739. hostedZoneName:
  5740. description: HostedZoneName is an optional field that
  5741. tells cert-manager in which Cloud DNS zone the challenge
  5742. record has to be created. If left empty cert-manager
  5743. will automatically choose a zone.
  5744. type: string
  5745. project:
  5746. type: string
  5747. serviceAccountSecretRef:
  5748. description: A reference to a specific 'key' within a
  5749. Secret resource. In some instances, `key` is a required
  5750. field.
  5751. properties:
  5752. key:
  5753. description: The key of the entry in the Secret resource's
  5754. `data` field to be used. Some instances of this
  5755. field may be defaulted, in others it may be required.
  5756. type: string
  5757. name:
  5758. description: 'Name of the resource being referred
  5759. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5760. type: string
  5761. required:
  5762. - name
  5763. type: object
  5764. required:
  5765. - project
  5766. type: object
  5767. cloudflare:
  5768. description: Use the Cloudflare API to manage DNS01 challenge
  5769. records.
  5770. properties:
  5771. apiKeySecretRef:
  5772. description: 'API key to use to authenticate with Cloudflare.
  5773. Note: using an API token to authenticate is now the
  5774. recommended method as it allows greater control of permissions.'
  5775. properties:
  5776. key:
  5777. description: The key of the entry in the Secret resource's
  5778. `data` field to be used. Some instances of this
  5779. field may be defaulted, in others it may be required.
  5780. type: string
  5781. name:
  5782. description: 'Name of the resource being referred
  5783. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5784. type: string
  5785. required:
  5786. - name
  5787. type: object
  5788. apiTokenSecretRef:
  5789. description: API token used to authenticate with Cloudflare.
  5790. properties:
  5791. key:
  5792. description: The key of the entry in the Secret resource's
  5793. `data` field to be used. Some instances of this
  5794. field may be defaulted, in others it may be required.
  5795. type: string
  5796. name:
  5797. description: 'Name of the resource being referred
  5798. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5799. type: string
  5800. required:
  5801. - name
  5802. type: object
  5803. email:
  5804. description: Email of the account, only required when
  5805. using API key based authentication.
  5806. type: string
  5807. type: object
  5808. cnameStrategy:
  5809. description: CNAMEStrategy configures how the DNS01 provider
  5810. should handle CNAME records when found in DNS zones.
  5811. enum:
  5812. - None
  5813. - Follow
  5814. type: string
  5815. digitalocean:
  5816. description: Use the DigitalOcean DNS API to manage DNS01
  5817. challenge records.
  5818. properties:
  5819. tokenSecretRef:
  5820. description: A reference to a specific 'key' within a
  5821. Secret resource. In some instances, `key` is a required
  5822. field.
  5823. properties:
  5824. key:
  5825. description: The key of the entry in the Secret resource's
  5826. `data` field to be used. Some instances of this
  5827. field may be defaulted, in others it may be required.
  5828. type: string
  5829. name:
  5830. description: 'Name of the resource being referred
  5831. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5832. type: string
  5833. required:
  5834. - name
  5835. type: object
  5836. required:
  5837. - tokenSecretRef
  5838. type: object
  5839. rfc2136:
  5840. description: Use RFC2136 ("Dynamic Updates in the Domain Name
  5841. System") (https://datatracker.ietf.org/doc/rfc2136/) to
  5842. manage DNS01 challenge records.
  5843. properties:
  5844. nameserver:
  5845. description: The IP address or hostname of an authoritative
  5846. DNS server supporting RFC2136 in the form host:port.
  5847. If the host is an IPv6 address it must be enclosed in
  5848. square brackets (e.g [2001:db8::1]) ; port is optional.
  5849. This field is required.
  5850. type: string
  5851. tsigAlgorithm:
  5852. description: 'The TSIG Algorithm configured in the DNS
  5853. supporting RFC2136. Used only when ``tsigSecretSecretRef``
  5854. and ``tsigKeyName`` are defined. Supported values are
  5855. (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``,
  5856. ``HMACSHA256`` or ``HMACSHA512``.'
  5857. type: string
  5858. tsigKeyName:
  5859. description: The TSIG Key name configured in the DNS.
  5860. If ``tsigSecretSecretRef`` is defined, this field is
  5861. required.
  5862. type: string
  5863. tsigSecretSecretRef:
  5864. description: The name of the secret containing the TSIG
  5865. value. If ``tsigKeyName`` is defined, this field is
  5866. required.
  5867. properties:
  5868. key:
  5869. description: The key of the entry in the Secret resource's
  5870. `data` field to be used. Some instances of this
  5871. field may be defaulted, in others it may be required.
  5872. type: string
  5873. name:
  5874. description: 'Name of the resource being referred
  5875. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5876. type: string
  5877. required:
  5878. - name
  5879. type: object
  5880. required:
  5881. - nameserver
  5882. type: object
  5883. route53:
  5884. description: Use the AWS Route53 API to manage DNS01 challenge
  5885. records.
  5886. properties:
  5887. accessKeyID:
  5888. description: 'The AccessKeyID is used for authentication.
  5889. If not set we fall-back to using env vars, shared credentials
  5890. file or AWS Instance metadata see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  5891. type: string
  5892. hostedZoneID:
  5893. description: If set, the provider will manage only this
  5894. zone in Route53 and will not do an lookup using the
  5895. route53:ListHostedZonesByName api call.
  5896. type: string
  5897. region:
  5898. description: Always set the region when using AccessKeyID
  5899. and SecretAccessKey
  5900. type: string
  5901. role:
  5902. description: Role is a Role ARN which the Route53 provider
  5903. will assume using either the explicit credentials AccessKeyID/SecretAccessKey
  5904. or the inferred credentials from environment variables,
  5905. shared credentials file or AWS Instance metadata
  5906. type: string
  5907. secretAccessKeySecretRef:
  5908. description: The SecretAccessKey is used for authentication.
  5909. If not set we fall-back to using env vars, shared credentials
  5910. file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  5911. properties:
  5912. key:
  5913. description: The key of the entry in the Secret resource's
  5914. `data` field to be used. Some instances of this
  5915. field may be defaulted, in others it may be required.
  5916. type: string
  5917. name:
  5918. description: 'Name of the resource being referred
  5919. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5920. type: string
  5921. required:
  5922. - name
  5923. type: object
  5924. required:
  5925. - region
  5926. type: object
  5927. webhook:
  5928. description: Configure an external webhook based DNS01 challenge
  5929. solver to manage DNS01 challenge records.
  5930. properties:
  5931. config:
  5932. description: Additional configuration that should be passed
  5933. to the webhook apiserver when challenges are processed.
  5934. This can contain arbitrary JSON data. Secret values
  5935. should not be specified in this stanza. If secret values
  5936. are needed (e.g. credentials for a DNS service), you
  5937. should use a SecretKeySelector to reference a Secret
  5938. resource. For details on the schema of this field, consult
  5939. the webhook provider implementation's documentation.
  5940. x-kubernetes-preserve-unknown-fields: true
  5941. groupName:
  5942. description: The API group name that should be used when
  5943. POSTing ChallengePayload resources to the webhook apiserver.
  5944. This should be the same as the GroupName specified in
  5945. the webhook provider implementation.
  5946. type: string
  5947. solverName:
  5948. description: The name of the solver to use, as defined
  5949. in the webhook provider implementation. This will typically
  5950. be the name of the provider, e.g. 'cloudflare'.
  5951. type: string
  5952. required:
  5953. - groupName
  5954. - solverName
  5955. type: object
  5956. type: object
  5957. http01:
  5958. description: Configures cert-manager to attempt to complete authorizations
  5959. by performing the HTTP01 challenge flow. It is not possible
  5960. to obtain certificates for wildcard domain names (e.g. `*.example.com`)
  5961. using the HTTP01 challenge mechanism.
  5962. properties:
  5963. ingress:
  5964. description: The ingress based HTTP01 challenge solver will
  5965. solve challenges by creating or modifying Ingress resources
  5966. in order to route requests for '/.well-known/acme-challenge/XYZ'
  5967. to 'challenge solver' pods that are provisioned by cert-manager
  5968. for each Challenge to be completed.
  5969. properties:
  5970. class:
  5971. description: The ingress class to use when creating Ingress
  5972. resources to solve ACME challenges that use this challenge
  5973. solver. Only one of 'class' or 'name' may be specified.
  5974. type: string
  5975. ingressTemplate:
  5976. description: Optional ingress template used to configure
  5977. the ACME challenge solver ingress used for HTTP01 challenges
  5978. properties:
  5979. metadata:
  5980. description: ObjectMeta overrides for the ingress
  5981. used to solve HTTP01 challenges. Only the 'labels'
  5982. and 'annotations' fields may be set. If labels or
  5983. annotations overlap with in-built values, the values
  5984. here will override the in-built values.
  5985. properties:
  5986. annotations:
  5987. additionalProperties:
  5988. type: string
  5989. description: Annotations that should be added
  5990. to the created ACME HTTP01 solver ingress.
  5991. type: object
  5992. labels:
  5993. additionalProperties:
  5994. type: string
  5995. description: Labels that should be added to the
  5996. created ACME HTTP01 solver ingress.
  5997. type: object
  5998. type: object
  5999. type: object
  6000. name:
  6001. description: The name of the ingress resource that should
  6002. have ACME challenge solving routes inserted into it
  6003. in order to solve HTTP01 challenges. This is typically
  6004. used in conjunction with ingress controllers like ingress-gce,
  6005. which maintains a 1:1 mapping between external IPs and
  6006. ingress resources.
  6007. type: string
  6008. podTemplate:
  6009. description: Optional pod template used to configure the
  6010. ACME challenge solver pods used for HTTP01 challenges
  6011. properties:
  6012. metadata:
  6013. description: ObjectMeta overrides for the pod used
  6014. to solve HTTP01 challenges. Only the 'labels' and
  6015. 'annotations' fields may be set. If labels or annotations
  6016. overlap with in-built values, the values here will
  6017. override the in-built values.
  6018. properties:
  6019. annotations:
  6020. additionalProperties:
  6021. type: string
  6022. description: Annotations that should be added
  6023. to the create ACME HTTP01 solver pods.
  6024. type: object
  6025. labels:
  6026. additionalProperties:
  6027. type: string
  6028. description: Labels that should be added to the
  6029. created ACME HTTP01 solver pods.
  6030. type: object
  6031. type: object
  6032. spec:
  6033. description: PodSpec defines overrides for the HTTP01
  6034. challenge solver pod. Only the 'priorityClassName',
  6035. 'nodeSelector', 'affinity', 'serviceAccountName'
  6036. and 'tolerations' fields are supported currently.
  6037. All other fields will be ignored.
  6038. properties:
  6039. affinity:
  6040. description: If specified, the pod's scheduling
  6041. constraints
  6042. properties:
  6043. nodeAffinity:
  6044. description: Describes node affinity scheduling
  6045. rules for the pod.
  6046. properties:
  6047. preferredDuringSchedulingIgnoredDuringExecution:
  6048. description: The scheduler will prefer
  6049. to schedule pods to nodes that satisfy
  6050. the affinity expressions specified by
  6051. this field, but it may choose a node
  6052. that violates one or more of the expressions.
  6053. The node that is most preferred is the
  6054. one with the greatest sum of weights,
  6055. i.e. for each node that meets all of
  6056. the scheduling requirements (resource
  6057. request, requiredDuringScheduling affinity
  6058. expressions, etc.), compute a sum by
  6059. iterating through the elements of this
  6060. field and adding "weight" to the sum
  6061. if the node matches the corresponding
  6062. matchExpressions; the node(s) with the
  6063. highest sum are the most preferred.
  6064. items:
  6065. description: An empty preferred scheduling
  6066. term matches all objects with implicit
  6067. weight 0 (i.e. it's a no-op). A null
  6068. preferred scheduling term matches
  6069. no objects (i.e. is also a no-op).
  6070. properties:
  6071. preference:
  6072. description: A node selector term,
  6073. associated with the corresponding
  6074. weight.
  6075. properties:
  6076. matchExpressions:
  6077. description: A list of node
  6078. selector requirements by node's
  6079. labels.
  6080. items:
  6081. description: A node selector
  6082. requirement is a selector
  6083. that contains values, a
  6084. key, and an operator that
  6085. relates the key and values.
  6086. properties:
  6087. key:
  6088. description: The label
  6089. key that the selector
  6090. applies to.
  6091. type: string
  6092. operator:
  6093. description: Represents
  6094. a key's relationship
  6095. to a set of values.
  6096. Valid operators are
  6097. In, NotIn, Exists, DoesNotExist.
  6098. Gt, and Lt.
  6099. type: string
  6100. values:
  6101. description: An array
  6102. of string values. If
  6103. the operator is In or
  6104. NotIn, the values array
  6105. must be non-empty. If
  6106. the operator is Exists
  6107. or DoesNotExist, the
  6108. values array must be
  6109. empty. If the operator
  6110. is Gt or Lt, the values
  6111. array must have a single
  6112. element, which will
  6113. be interpreted as an
  6114. integer. This array
  6115. is replaced during a
  6116. strategic merge patch.
  6117. items:
  6118. type: string
  6119. type: array
  6120. required:
  6121. - key
  6122. - operator
  6123. type: object
  6124. type: array
  6125. matchFields:
  6126. description: A list of node
  6127. selector requirements by node's
  6128. fields.
  6129. items:
  6130. description: A node selector
  6131. requirement is a selector
  6132. that contains values, a
  6133. key, and an operator that
  6134. relates the key and values.
  6135. properties:
  6136. key:
  6137. description: The label
  6138. key that the selector
  6139. applies to.
  6140. type: string
  6141. operator:
  6142. description: Represents
  6143. a key's relationship
  6144. to a set of values.
  6145. Valid operators are
  6146. In, NotIn, Exists, DoesNotExist.
  6147. Gt, and Lt.
  6148. type: string
  6149. values:
  6150. description: An array
  6151. of string values. If
  6152. the operator is In or
  6153. NotIn, the values array
  6154. must be non-empty. If
  6155. the operator is Exists
  6156. or DoesNotExist, the
  6157. values array must be
  6158. empty. If the operator
  6159. is Gt or Lt, the values
  6160. array must have a single
  6161. element, which will
  6162. be interpreted as an
  6163. integer. This array
  6164. is replaced during a
  6165. strategic merge patch.
  6166. items:
  6167. type: string
  6168. type: array
  6169. required:
  6170. - key
  6171. - operator
  6172. type: object
  6173. type: array
  6174. type: object
  6175. weight:
  6176. description: Weight associated with
  6177. matching the corresponding nodeSelectorTerm,
  6178. in the range 1-100.
  6179. format: int32
  6180. type: integer
  6181. required:
  6182. - preference
  6183. - weight
  6184. type: object
  6185. type: array
  6186. requiredDuringSchedulingIgnoredDuringExecution:
  6187. description: If the affinity requirements
  6188. specified by this field are not met
  6189. at scheduling time, the pod will not
  6190. be scheduled onto the node. If the affinity
  6191. requirements specified by this field
  6192. cease to be met at some point during
  6193. pod execution (e.g. due to an update),
  6194. the system may or may not try to eventually
  6195. evict the pod from its node.
  6196. properties:
  6197. nodeSelectorTerms:
  6198. description: Required. A list of node
  6199. selector terms. The terms are ORed.
  6200. items:
  6201. description: A null or empty node
  6202. selector term matches no objects.
  6203. The requirements of them are ANDed.
  6204. The TopologySelectorTerm type
  6205. implements a subset of the NodeSelectorTerm.
  6206. properties:
  6207. matchExpressions:
  6208. description: A list of node
  6209. selector requirements by node's
  6210. labels.
  6211. items:
  6212. description: A node selector
  6213. requirement is a selector
  6214. that contains values, a
  6215. key, and an operator that
  6216. relates the key and values.
  6217. properties:
  6218. key:
  6219. description: The label
  6220. key that the selector
  6221. applies to.
  6222. type: string
  6223. operator:
  6224. description: Represents
  6225. a key's relationship
  6226. to a set of values.
  6227. Valid operators are
  6228. In, NotIn, Exists, DoesNotExist.
  6229. Gt, and Lt.
  6230. type: string
  6231. values:
  6232. description: An array
  6233. of string values. If
  6234. the operator is In or
  6235. NotIn, the values array
  6236. must be non-empty. If
  6237. the operator is Exists
  6238. or DoesNotExist, the
  6239. values array must be
  6240. empty. If the operator
  6241. is Gt or Lt, the values
  6242. array must have a single
  6243. element, which will
  6244. be interpreted as an
  6245. integer. This array
  6246. is replaced during a
  6247. strategic merge patch.
  6248. items:
  6249. type: string
  6250. type: array
  6251. required:
  6252. - key
  6253. - operator
  6254. type: object
  6255. type: array
  6256. matchFields:
  6257. description: A list of node
  6258. selector requirements by node's
  6259. fields.
  6260. items:
  6261. description: A node selector
  6262. requirement is a selector
  6263. that contains values, a
  6264. key, and an operator that
  6265. relates the key and values.
  6266. properties:
  6267. key:
  6268. description: The label
  6269. key that the selector
  6270. applies to.
  6271. type: string
  6272. operator:
  6273. description: Represents
  6274. a key's relationship
  6275. to a set of values.
  6276. Valid operators are
  6277. In, NotIn, Exists, DoesNotExist.
  6278. Gt, and Lt.
  6279. type: string
  6280. values:
  6281. description: An array
  6282. of string values. If
  6283. the operator is In or
  6284. NotIn, the values array
  6285. must be non-empty. If
  6286. the operator is Exists
  6287. or DoesNotExist, the
  6288. values array must be
  6289. empty. If the operator
  6290. is Gt or Lt, the values
  6291. array must have a single
  6292. element, which will
  6293. be interpreted as an
  6294. integer. This array
  6295. is replaced during a
  6296. strategic merge patch.
  6297. items:
  6298. type: string
  6299. type: array
  6300. required:
  6301. - key
  6302. - operator
  6303. type: object
  6304. type: array
  6305. type: object
  6306. type: array
  6307. required:
  6308. - nodeSelectorTerms
  6309. type: object
  6310. type: object
  6311. podAffinity:
  6312. description: Describes pod affinity scheduling
  6313. rules (e.g. co-locate this pod in the same
  6314. node, zone, etc. as some other pod(s)).
  6315. properties:
  6316. preferredDuringSchedulingIgnoredDuringExecution:
  6317. description: The scheduler will prefer
  6318. to schedule pods to nodes that satisfy
  6319. the affinity expressions specified by
  6320. this field, but it may choose a node
  6321. that violates one or more of the expressions.
  6322. The node that is most preferred is the
  6323. one with the greatest sum of weights,
  6324. i.e. for each node that meets all of
  6325. the scheduling requirements (resource
  6326. request, requiredDuringScheduling affinity
  6327. expressions, etc.), compute a sum by
  6328. iterating through the elements of this
  6329. field and adding "weight" to the sum
  6330. if the node has pods which matches the
  6331. corresponding podAffinityTerm; the node(s)
  6332. with the highest sum are the most preferred.
  6333. items:
  6334. description: The weights of all of the
  6335. matched WeightedPodAffinityTerm fields
  6336. are added per-node to find the most
  6337. preferred node(s)
  6338. properties:
  6339. podAffinityTerm:
  6340. description: Required. A pod affinity
  6341. term, associated with the corresponding
  6342. weight.
  6343. properties:
  6344. labelSelector:
  6345. description: A label query over
  6346. a set of resources, in this
  6347. case pods.
  6348. properties:
  6349. matchExpressions:
  6350. description: matchExpressions
  6351. is a list of label selector
  6352. requirements. The requirements
  6353. are ANDed.
  6354. items:
  6355. description: A label selector
  6356. requirement is a selector
  6357. that contains values,
  6358. a key, and an operator
  6359. that relates the key
  6360. and values.
  6361. properties:
  6362. key:
  6363. description: key is
  6364. the label key that
  6365. the selector applies
  6366. to.
  6367. type: string
  6368. operator:
  6369. description: operator
  6370. represents a key's
  6371. relationship to
  6372. a set of values.
  6373. Valid operators
  6374. are In, NotIn, Exists
  6375. and DoesNotExist.
  6376. type: string
  6377. values:
  6378. description: values
  6379. is an array of string
  6380. values. If the operator
  6381. is In or NotIn,
  6382. the values array
  6383. must be non-empty.
  6384. If the operator
  6385. is Exists or DoesNotExist,
  6386. the values array
  6387. must be empty. This
  6388. array is replaced
  6389. during a strategic
  6390. merge patch.
  6391. items:
  6392. type: string
  6393. type: array
  6394. required:
  6395. - key
  6396. - operator
  6397. type: object
  6398. type: array
  6399. matchLabels:
  6400. additionalProperties:
  6401. type: string
  6402. description: matchLabels
  6403. is a map of {key,value}
  6404. pairs. A single {key,value}
  6405. in the matchLabels map
  6406. is equivalent to an element
  6407. of matchExpressions, whose
  6408. key field is "key", the
  6409. operator is "In", and
  6410. the values array contains
  6411. only "value". The requirements
  6412. are ANDed.
  6413. type: object
  6414. type: object
  6415. namespaces:
  6416. description: namespaces specifies
  6417. which namespaces the labelSelector
  6418. applies to (matches against);
  6419. null or empty list means "this
  6420. pod's namespace"
  6421. items:
  6422. type: string
  6423. type: array
  6424. topologyKey:
  6425. description: This pod should
  6426. be co-located (affinity) or
  6427. not co-located (anti-affinity)
  6428. with the pods matching the
  6429. labelSelector in the specified
  6430. namespaces, where co-located
  6431. is defined as running on a
  6432. node whose value of the label
  6433. with key topologyKey matches
  6434. that of any node on which
  6435. any of the selected pods is
  6436. running. Empty topologyKey
  6437. is not allowed.
  6438. type: string
  6439. required:
  6440. - topologyKey
  6441. type: object
  6442. weight:
  6443. description: weight associated with
  6444. matching the corresponding podAffinityTerm,
  6445. in the range 1-100.
  6446. format: int32
  6447. type: integer
  6448. required:
  6449. - podAffinityTerm
  6450. - weight
  6451. type: object
  6452. type: array
  6453. requiredDuringSchedulingIgnoredDuringExecution:
  6454. description: If the affinity requirements
  6455. specified by this field are not met
  6456. at scheduling time, the pod will not
  6457. be scheduled onto the node. If the affinity
  6458. requirements specified by this field
  6459. cease to be met at some point during
  6460. pod execution (e.g. due to a pod label
  6461. update), the system may or may not try
  6462. to eventually evict the pod from its
  6463. node. When there are multiple elements,
  6464. the lists of nodes corresponding to
  6465. each podAffinityTerm are intersected,
  6466. i.e. all terms must be satisfied.
  6467. items:
  6468. description: Defines a set of pods (namely
  6469. those matching the labelSelector relative
  6470. to the given namespace(s)) that this
  6471. pod should be co-located (affinity)
  6472. or not co-located (anti-affinity)
  6473. with, where co-located is defined
  6474. as running on a node whose value of
  6475. the label with key <topologyKey> matches
  6476. that of any node on which a pod of
  6477. the set of pods is running
  6478. properties:
  6479. labelSelector:
  6480. description: A label query over
  6481. a set of resources, in this case
  6482. pods.
  6483. properties:
  6484. matchExpressions:
  6485. description: matchExpressions
  6486. is a list of label selector
  6487. requirements. The requirements
  6488. are ANDed.
  6489. items:
  6490. description: A label selector
  6491. requirement is a selector
  6492. that contains values, a
  6493. key, and an operator that
  6494. relates the key and values.
  6495. properties:
  6496. key:
  6497. description: key is the
  6498. label key that the selector
  6499. applies to.
  6500. type: string
  6501. operator:
  6502. description: operator
  6503. represents a key's relationship
  6504. to a set of values.
  6505. Valid operators are
  6506. In, NotIn, Exists and
  6507. DoesNotExist.
  6508. type: string
  6509. values:
  6510. description: values is
  6511. an array of string values.
  6512. If the operator is In
  6513. or NotIn, the values
  6514. array must be non-empty.
  6515. If the operator is Exists
  6516. or DoesNotExist, the
  6517. values array must be
  6518. empty. This array is
  6519. replaced during a strategic
  6520. merge patch.
  6521. items:
  6522. type: string
  6523. type: array
  6524. required:
  6525. - key
  6526. - operator
  6527. type: object
  6528. type: array
  6529. matchLabels:
  6530. additionalProperties:
  6531. type: string
  6532. description: matchLabels is
  6533. a map of {key,value} pairs.
  6534. A single {key,value} in the
  6535. matchLabels map is equivalent
  6536. to an element of matchExpressions,
  6537. whose key field is "key",
  6538. the operator is "In", and
  6539. the values array contains
  6540. only "value". The requirements
  6541. are ANDed.
  6542. type: object
  6543. type: object
  6544. namespaces:
  6545. description: namespaces specifies
  6546. which namespaces the labelSelector
  6547. applies to (matches against);
  6548. null or empty list means "this
  6549. pod's namespace"
  6550. items:
  6551. type: string
  6552. type: array
  6553. topologyKey:
  6554. description: This pod should be
  6555. co-located (affinity) or not co-located
  6556. (anti-affinity) with the pods
  6557. matching the labelSelector in
  6558. the specified namespaces, where
  6559. co-located is defined as running
  6560. on a node whose value of the label
  6561. with key topologyKey matches that
  6562. of any node on which any of the
  6563. selected pods is running. Empty
  6564. topologyKey is not allowed.
  6565. type: string
  6566. required:
  6567. - topologyKey
  6568. type: object
  6569. type: array
  6570. type: object
  6571. podAntiAffinity:
  6572. description: Describes pod anti-affinity scheduling
  6573. rules (e.g. avoid putting this pod in the
  6574. same node, zone, etc. as some other pod(s)).
  6575. properties:
  6576. preferredDuringSchedulingIgnoredDuringExecution:
  6577. description: The scheduler will prefer
  6578. to schedule pods to nodes that satisfy
  6579. the anti-affinity expressions specified
  6580. by this field, but it may choose a node
  6581. that violates one or more of the expressions.
  6582. The node that is most preferred is the
  6583. one with the greatest sum of weights,
  6584. i.e. for each node that meets all of
  6585. the scheduling requirements (resource
  6586. request, requiredDuringScheduling anti-affinity
  6587. expressions, etc.), compute a sum by
  6588. iterating through the elements of this
  6589. field and adding "weight" to the sum
  6590. if the node has pods which matches the
  6591. corresponding podAffinityTerm; the node(s)
  6592. with the highest sum are the most preferred.
  6593. items:
  6594. description: The weights of all of the
  6595. matched WeightedPodAffinityTerm fields
  6596. are added per-node to find the most
  6597. preferred node(s)
  6598. properties:
  6599. podAffinityTerm:
  6600. description: Required. A pod affinity
  6601. term, associated with the corresponding
  6602. weight.
  6603. properties:
  6604. labelSelector:
  6605. description: A label query over
  6606. a set of resources, in this
  6607. case pods.
  6608. properties:
  6609. matchExpressions:
  6610. description: matchExpressions
  6611. is a list of label selector
  6612. requirements. The requirements
  6613. are ANDed.
  6614. items:
  6615. description: A label selector
  6616. requirement is a selector
  6617. that contains values,
  6618. a key, and an operator
  6619. that relates the key
  6620. and values.
  6621. properties:
  6622. key:
  6623. description: key is
  6624. the label key that
  6625. the selector applies
  6626. to.
  6627. type: string
  6628. operator:
  6629. description: operator
  6630. represents a key's
  6631. relationship to
  6632. a set of values.
  6633. Valid operators
  6634. are In, NotIn, Exists
  6635. and DoesNotExist.
  6636. type: string
  6637. values:
  6638. description: values
  6639. is an array of string
  6640. values. If the operator
  6641. is In or NotIn,
  6642. the values array
  6643. must be non-empty.
  6644. If the operator
  6645. is Exists or DoesNotExist,
  6646. the values array
  6647. must be empty. This
  6648. array is replaced
  6649. during a strategic
  6650. merge patch.
  6651. items:
  6652. type: string
  6653. type: array
  6654. required:
  6655. - key
  6656. - operator
  6657. type: object
  6658. type: array
  6659. matchLabels:
  6660. additionalProperties:
  6661. type: string
  6662. description: matchLabels
  6663. is a map of {key,value}
  6664. pairs. A single {key,value}
  6665. in the matchLabels map
  6666. is equivalent to an element
  6667. of matchExpressions, whose
  6668. key field is "key", the
  6669. operator is "In", and
  6670. the values array contains
  6671. only "value". The requirements
  6672. are ANDed.
  6673. type: object
  6674. type: object
  6675. namespaces:
  6676. description: namespaces specifies
  6677. which namespaces the labelSelector
  6678. applies to (matches against);
  6679. null or empty list means "this
  6680. pod's namespace"
  6681. items:
  6682. type: string
  6683. type: array
  6684. topologyKey:
  6685. description: This pod should
  6686. be co-located (affinity) or
  6687. not co-located (anti-affinity)
  6688. with the pods matching the
  6689. labelSelector in the specified
  6690. namespaces, where co-located
  6691. is defined as running on a
  6692. node whose value of the label
  6693. with key topologyKey matches
  6694. that of any node on which
  6695. any of the selected pods is
  6696. running. Empty topologyKey
  6697. is not allowed.
  6698. type: string
  6699. required:
  6700. - topologyKey
  6701. type: object
  6702. weight:
  6703. description: weight associated with
  6704. matching the corresponding podAffinityTerm,
  6705. in the range 1-100.
  6706. format: int32
  6707. type: integer
  6708. required:
  6709. - podAffinityTerm
  6710. - weight
  6711. type: object
  6712. type: array
  6713. requiredDuringSchedulingIgnoredDuringExecution:
  6714. description: If the anti-affinity requirements
  6715. specified by this field are not met
  6716. at scheduling time, the pod will not
  6717. be scheduled onto the node. If the anti-affinity
  6718. requirements specified by this field
  6719. cease to be met at some point during
  6720. pod execution (e.g. due to a pod label
  6721. update), the system may or may not try
  6722. to eventually evict the pod from its
  6723. node. When there are multiple elements,
  6724. the lists of nodes corresponding to
  6725. each podAffinityTerm are intersected,
  6726. i.e. all terms must be satisfied.
  6727. items:
  6728. description: Defines a set of pods (namely
  6729. those matching the labelSelector relative
  6730. to the given namespace(s)) that this
  6731. pod should be co-located (affinity)
  6732. or not co-located (anti-affinity)
  6733. with, where co-located is defined
  6734. as running on a node whose value of
  6735. the label with key <topologyKey> matches
  6736. that of any node on which a pod of
  6737. the set of pods is running
  6738. properties:
  6739. labelSelector:
  6740. description: A label query over
  6741. a set of resources, in this case
  6742. pods.
  6743. properties:
  6744. matchExpressions:
  6745. description: matchExpressions
  6746. is a list of label selector
  6747. requirements. The requirements
  6748. are ANDed.
  6749. items:
  6750. description: A label selector
  6751. requirement is a selector
  6752. that contains values, a
  6753. key, and an operator that
  6754. relates the key and values.
  6755. properties:
  6756. key:
  6757. description: key is the
  6758. label key that the selector
  6759. applies to.
  6760. type: string
  6761. operator:
  6762. description: operator
  6763. represents a key's relationship
  6764. to a set of values.
  6765. Valid operators are
  6766. In, NotIn, Exists and
  6767. DoesNotExist.
  6768. type: string
  6769. values:
  6770. description: values is
  6771. an array of string values.
  6772. If the operator is In
  6773. or NotIn, the values
  6774. array must be non-empty.
  6775. If the operator is Exists
  6776. or DoesNotExist, the
  6777. values array must be
  6778. empty. This array is
  6779. replaced during a strategic
  6780. merge patch.
  6781. items:
  6782. type: string
  6783. type: array
  6784. required:
  6785. - key
  6786. - operator
  6787. type: object
  6788. type: array
  6789. matchLabels:
  6790. additionalProperties:
  6791. type: string
  6792. description: matchLabels is
  6793. a map of {key,value} pairs.
  6794. A single {key,value} in the
  6795. matchLabels map is equivalent
  6796. to an element of matchExpressions,
  6797. whose key field is "key",
  6798. the operator is "In", and
  6799. the values array contains
  6800. only "value". The requirements
  6801. are ANDed.
  6802. type: object
  6803. type: object
  6804. namespaces:
  6805. description: namespaces specifies
  6806. which namespaces the labelSelector
  6807. applies to (matches against);
  6808. null or empty list means "this
  6809. pod's namespace"
  6810. items:
  6811. type: string
  6812. type: array
  6813. topologyKey:
  6814. description: This pod should be
  6815. co-located (affinity) or not co-located
  6816. (anti-affinity) with the pods
  6817. matching the labelSelector in
  6818. the specified namespaces, where
  6819. co-located is defined as running
  6820. on a node whose value of the label
  6821. with key topologyKey matches that
  6822. of any node on which any of the
  6823. selected pods is running. Empty
  6824. topologyKey is not allowed.
  6825. type: string
  6826. required:
  6827. - topologyKey
  6828. type: object
  6829. type: array
  6830. type: object
  6831. type: object
  6832. nodeSelector:
  6833. additionalProperties:
  6834. type: string
  6835. description: 'NodeSelector is a selector which
  6836. must be true for the pod to fit on a node. Selector
  6837. which must match a node''s labels for the pod
  6838. to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  6839. type: object
  6840. priorityClassName:
  6841. description: If specified, the pod's priorityClassName.
  6842. type: string
  6843. serviceAccountName:
  6844. description: If specified, the pod's service account
  6845. type: string
  6846. tolerations:
  6847. description: If specified, the pod's tolerations.
  6848. items:
  6849. description: The pod this Toleration is attached
  6850. to tolerates any taint that matches the triple
  6851. <key,value,effect> using the matching operator
  6852. <operator>.
  6853. properties:
  6854. effect:
  6855. description: Effect indicates the taint
  6856. effect to match. Empty means match all
  6857. taint effects. When specified, allowed
  6858. values are NoSchedule, PreferNoSchedule
  6859. and NoExecute.
  6860. type: string
  6861. key:
  6862. description: Key is the taint key that the
  6863. toleration applies to. Empty means match
  6864. all taint keys. If the key is empty, operator
  6865. must be Exists; this combination means
  6866. to match all values and all keys.
  6867. type: string
  6868. operator:
  6869. description: Operator represents a key's
  6870. relationship to the value. Valid operators
  6871. are Exists and Equal. Defaults to Equal.
  6872. Exists is equivalent to wildcard for value,
  6873. so that a pod can tolerate all taints
  6874. of a particular category.
  6875. type: string
  6876. tolerationSeconds:
  6877. description: TolerationSeconds represents
  6878. the period of time the toleration (which
  6879. must be of effect NoExecute, otherwise
  6880. this field is ignored) tolerates the taint.
  6881. By default, it is not set, which means
  6882. tolerate the taint forever (do not evict).
  6883. Zero and negative values will be treated
  6884. as 0 (evict immediately) by the system.
  6885. format: int64
  6886. type: integer
  6887. value:
  6888. description: Value is the taint value the
  6889. toleration matches to. If the operator
  6890. is Exists, the value should be empty,
  6891. otherwise just a regular string.
  6892. type: string
  6893. type: object
  6894. type: array
  6895. type: object
  6896. type: object
  6897. serviceType:
  6898. description: Optional service type for Kubernetes solver
  6899. service
  6900. type: string
  6901. type: object
  6902. type: object
  6903. selector:
  6904. description: Selector selects a set of DNSNames on the Certificate
  6905. resource that should be solved using this challenge solver.
  6906. If not specified, the solver will be treated as the 'default'
  6907. solver with the lowest priority, i.e. if any other solver has
  6908. a more specific match, it will be used instead.
  6909. properties:
  6910. dnsNames:
  6911. description: List of DNSNames that this solver will be used
  6912. to solve. If specified and a match is found, a dnsNames
  6913. selector will take precedence over a dnsZones selector.
  6914. If multiple solvers match with the same dnsNames value,
  6915. the solver with the most matching labels in matchLabels
  6916. will be selected. If neither has more matches, the solver
  6917. defined earlier in the list will be selected.
  6918. items:
  6919. type: string
  6920. type: array
  6921. dnsZones:
  6922. description: List of DNSZones that this solver will be used
  6923. to solve. The most specific DNS zone match specified here
  6924. will take precedence over other DNS zone matches, so a solver
  6925. specifying sys.example.com will be selected over one specifying
  6926. example.com for the domain www.sys.example.com. If multiple
  6927. solvers match with the same dnsZones value, the solver with
  6928. the most matching labels in matchLabels will be selected.
  6929. If neither has more matches, the solver defined earlier
  6930. in the list will be selected.
  6931. items:
  6932. type: string
  6933. type: array
  6934. matchLabels:
  6935. additionalProperties:
  6936. type: string
  6937. description: A label selector that is used to refine the set
  6938. of certificate's that this challenge solver will apply to.
  6939. type: object
  6940. type: object
  6941. type: object
  6942. token:
  6943. description: The ACME challenge token for this challenge. This is
  6944. the raw value returned from the ACME server.
  6945. type: string
  6946. type:
  6947. description: The type of ACME challenge this resource represents.
  6948. One of "HTTP-01" or "DNS-01".
  6949. enum:
  6950. - HTTP-01
  6951. - DNS-01
  6952. type: string
  6953. url:
  6954. description: The URL of the ACME Challenge resource for this challenge.
  6955. This can be used to lookup details about the status of this challenge.
  6956. type: string
  6957. wildcard:
  6958. description: wildcard will be true if this challenge is for a wildcard
  6959. identifier, for example '*.example.com'.
  6960. type: boolean
  6961. required:
  6962. - authorizationURL
  6963. - dnsName
  6964. - issuerRef
  6965. - key
  6966. - solver
  6967. - token
  6968. - type
  6969. - url
  6970. type: object
  6971. status:
  6972. properties:
  6973. presented:
  6974. description: presented will be set to true if the challenge values
  6975. for this challenge are currently 'presented'. This *does not* imply
  6976. the self check is passing. Only that the values have been 'submitted'
  6977. for the appropriate challenge mechanism (i.e. the DNS01 TXT record
  6978. has been presented, or the HTTP01 configuration has been configured).
  6979. type: boolean
  6980. processing:
  6981. description: Used to denote whether this challenge should be processed
  6982. or not. This field will only be set to true by the 'scheduling'
  6983. component. It will only be set to false by the 'challenges' controller,
  6984. after the challenge has reached a final state or timed out. If this
  6985. field is set to false, the challenge controller will not take any
  6986. more action.
  6987. type: boolean
  6988. reason:
  6989. description: Contains human readable information on why the Challenge
  6990. is in the current state.
  6991. type: string
  6992. state:
  6993. description: Contains the current 'state' of the challenge. If not
  6994. set, the state of the challenge is unknown.
  6995. enum:
  6996. - valid
  6997. - ready
  6998. - pending
  6999. - processing
  7000. - invalid
  7001. - expired
  7002. - errored
  7003. type: string
  7004. type: object
  7005. required:
  7006. - metadata
  7007. - spec
  7008. type: object
  7009. served: true
  7010. storage: false
  7011. subresources:
  7012. status: {}
  7013. - additionalPrinterColumns:
  7014. - jsonPath: .status.state
  7015. name: State
  7016. type: string
  7017. - jsonPath: .spec.dnsName
  7018. name: Domain
  7019. type: string
  7020. - jsonPath: .status.reason
  7021. name: Reason
  7022. priority: 1
  7023. type: string
  7024. - description: CreationTimestamp is a timestamp representing the server time when
  7025. this object was created. It is not guaranteed to be set in happens-before
  7026. order across separate operations. Clients may not set this value. It is represented
  7027. in RFC3339 form and is in UTC.
  7028. jsonPath: .metadata.creationTimestamp
  7029. name: Age
  7030. type: date
  7031. name: v1
  7032. schema:
  7033. openAPIV3Schema:
  7034. description: Challenge is a type to represent a Challenge request with an
  7035. ACME server
  7036. properties:
  7037. apiVersion:
  7038. description: 'APIVersion defines the versioned schema of this representation
  7039. of an object. Servers should convert recognized schemas to the latest
  7040. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  7041. type: string
  7042. kind:
  7043. description: 'Kind is a string value representing the REST resource this
  7044. object represents. Servers may infer this from the endpoint the client
  7045. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  7046. type: string
  7047. metadata:
  7048. type: object
  7049. spec:
  7050. properties:
  7051. authorizationURL:
  7052. description: The URL to the ACME Authorization resource that this
  7053. challenge is a part of.
  7054. type: string
  7055. dnsName:
  7056. description: dnsName is the identifier that this challenge is for,
  7057. e.g. example.com. If the requested DNSName is a 'wildcard', this
  7058. field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
  7059. it must be `example.com`.
  7060. type: string
  7061. issuerRef:
  7062. description: References a properly configured ACME-type Issuer which
  7063. should be used to create this Challenge. If the Issuer does not
  7064. exist, processing will be retried. If the Issuer is not an 'ACME'
  7065. Issuer, an error will be returned and the Challenge will be marked
  7066. as failed.
  7067. properties:
  7068. group:
  7069. description: Group of the resource being referred to.
  7070. type: string
  7071. kind:
  7072. description: Kind of the resource being referred to.
  7073. type: string
  7074. name:
  7075. description: Name of the resource being referred to.
  7076. type: string
  7077. required:
  7078. - name
  7079. type: object
  7080. key:
  7081. description: 'The ACME challenge key for this challenge For HTTP01
  7082. challenges, this is the value that must be responded with to complete
  7083. the HTTP01 challenge in the format: `<private key JWK thumbprint>.<key
  7084. from acme server for challenge>`. For DNS01 challenges, this is
  7085. the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
  7086. from acme server for challenge>` text that must be set as the TXT
  7087. record content.'
  7088. type: string
  7089. solver:
  7090. description: Contains the domain solving configuration that should
  7091. be used to solve this challenge resource.
  7092. properties:
  7093. dns01:
  7094. description: Configures cert-manager to attempt to complete authorizations
  7095. by performing the DNS01 challenge flow.
  7096. properties:
  7097. acmeDNS:
  7098. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  7099. API to manage DNS01 challenge records.
  7100. properties:
  7101. accountSecretRef:
  7102. description: A reference to a specific 'key' within a
  7103. Secret resource. In some instances, `key` is a required
  7104. field.
  7105. properties:
  7106. key:
  7107. description: The key of the entry in the Secret resource's
  7108. `data` field to be used. Some instances of this
  7109. field may be defaulted, in others it may be required.
  7110. type: string
  7111. name:
  7112. description: 'Name of the resource being referred
  7113. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7114. type: string
  7115. required:
  7116. - name
  7117. type: object
  7118. host:
  7119. type: string
  7120. required:
  7121. - accountSecretRef
  7122. - host
  7123. type: object
  7124. akamai:
  7125. description: Use the Akamai DNS zone management API to manage
  7126. DNS01 challenge records.
  7127. properties:
  7128. accessTokenSecretRef:
  7129. description: A reference to a specific 'key' within a
  7130. Secret resource. In some instances, `key` is a required
  7131. field.
  7132. properties:
  7133. key:
  7134. description: The key of the entry in the Secret resource's
  7135. `data` field to be used. Some instances of this
  7136. field may be defaulted, in others it may be required.
  7137. type: string
  7138. name:
  7139. description: 'Name of the resource being referred
  7140. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7141. type: string
  7142. required:
  7143. - name
  7144. type: object
  7145. clientSecretSecretRef:
  7146. description: A reference to a specific 'key' within a
  7147. Secret resource. In some instances, `key` is a required
  7148. field.
  7149. properties:
  7150. key:
  7151. description: The key of the entry in the Secret resource's
  7152. `data` field to be used. Some instances of this
  7153. field may be defaulted, in others it may be required.
  7154. type: string
  7155. name:
  7156. description: 'Name of the resource being referred
  7157. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7158. type: string
  7159. required:
  7160. - name
  7161. type: object
  7162. clientTokenSecretRef:
  7163. description: A reference to a specific 'key' within a
  7164. Secret resource. In some instances, `key` is a required
  7165. field.
  7166. properties:
  7167. key:
  7168. description: The key of the entry in the Secret resource's
  7169. `data` field to be used. Some instances of this
  7170. field may be defaulted, in others it may be required.
  7171. type: string
  7172. name:
  7173. description: 'Name of the resource being referred
  7174. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7175. type: string
  7176. required:
  7177. - name
  7178. type: object
  7179. serviceConsumerDomain:
  7180. type: string
  7181. required:
  7182. - accessTokenSecretRef
  7183. - clientSecretSecretRef
  7184. - clientTokenSecretRef
  7185. - serviceConsumerDomain
  7186. type: object
  7187. azureDNS:
  7188. description: Use the Microsoft Azure DNS API to manage DNS01
  7189. challenge records.
  7190. properties:
  7191. clientID:
  7192. description: if both this and ClientSecret are left unset
  7193. MSI will be used
  7194. type: string
  7195. clientSecretSecretRef:
  7196. description: if both this and ClientID are left unset
  7197. MSI will be used
  7198. properties:
  7199. key:
  7200. description: The key of the entry in the Secret resource's
  7201. `data` field to be used. Some instances of this
  7202. field may be defaulted, in others it may be required.
  7203. type: string
  7204. name:
  7205. description: 'Name of the resource being referred
  7206. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7207. type: string
  7208. required:
  7209. - name
  7210. type: object
  7211. environment:
  7212. enum:
  7213. - AzurePublicCloud
  7214. - AzureChinaCloud
  7215. - AzureGermanCloud
  7216. - AzureUSGovernmentCloud
  7217. type: string
  7218. hostedZoneName:
  7219. type: string
  7220. resourceGroupName:
  7221. type: string
  7222. subscriptionID:
  7223. type: string
  7224. tenantID:
  7225. description: when specifying ClientID and ClientSecret
  7226. then this field is also needed
  7227. type: string
  7228. required:
  7229. - resourceGroupName
  7230. - subscriptionID
  7231. type: object
  7232. cloudDNS:
  7233. description: Use the Google Cloud DNS API to manage DNS01
  7234. challenge records.
  7235. properties:
  7236. hostedZoneName:
  7237. description: HostedZoneName is an optional field that
  7238. tells cert-manager in which Cloud DNS zone the challenge
  7239. record has to be created. If left empty cert-manager
  7240. will automatically choose a zone.
  7241. type: string
  7242. project:
  7243. type: string
  7244. serviceAccountSecretRef:
  7245. description: A reference to a specific 'key' within a
  7246. Secret resource. In some instances, `key` is a required
  7247. field.
  7248. properties:
  7249. key:
  7250. description: The key of the entry in the Secret resource's
  7251. `data` field to be used. Some instances of this
  7252. field may be defaulted, in others it may be required.
  7253. type: string
  7254. name:
  7255. description: 'Name of the resource being referred
  7256. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7257. type: string
  7258. required:
  7259. - name
  7260. type: object
  7261. required:
  7262. - project
  7263. type: object
  7264. cloudflare:
  7265. description: Use the Cloudflare API to manage DNS01 challenge
  7266. records.
  7267. properties:
  7268. apiKeySecretRef:
  7269. description: 'API key to use to authenticate with Cloudflare.
  7270. Note: using an API token to authenticate is now the
  7271. recommended method as it allows greater control of permissions.'
  7272. properties:
  7273. key:
  7274. description: The key of the entry in the Secret resource's
  7275. `data` field to be used. Some instances of this
  7276. field may be defaulted, in others it may be required.
  7277. type: string
  7278. name:
  7279. description: 'Name of the resource being referred
  7280. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7281. type: string
  7282. required:
  7283. - name
  7284. type: object
  7285. apiTokenSecretRef:
  7286. description: API token used to authenticate with Cloudflare.
  7287. properties:
  7288. key:
  7289. description: The key of the entry in the Secret resource's
  7290. `data` field to be used. Some instances of this
  7291. field may be defaulted, in others it may be required.
  7292. type: string
  7293. name:
  7294. description: 'Name of the resource being referred
  7295. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7296. type: string
  7297. required:
  7298. - name
  7299. type: object
  7300. email:
  7301. description: Email of the account, only required when
  7302. using API key based authentication.
  7303. type: string
  7304. type: object
  7305. cnameStrategy:
  7306. description: CNAMEStrategy configures how the DNS01 provider
  7307. should handle CNAME records when found in DNS zones.
  7308. enum:
  7309. - None
  7310. - Follow
  7311. type: string
  7312. digitalocean:
  7313. description: Use the DigitalOcean DNS API to manage DNS01
  7314. challenge records.
  7315. properties:
  7316. tokenSecretRef:
  7317. description: A reference to a specific 'key' within a
  7318. Secret resource. In some instances, `key` is a required
  7319. field.
  7320. properties:
  7321. key:
  7322. description: The key of the entry in the Secret resource's
  7323. `data` field to be used. Some instances of this
  7324. field may be defaulted, in others it may be required.
  7325. type: string
  7326. name:
  7327. description: 'Name of the resource being referred
  7328. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7329. type: string
  7330. required:
  7331. - name
  7332. type: object
  7333. required:
  7334. - tokenSecretRef
  7335. type: object
  7336. rfc2136:
  7337. description: Use RFC2136 ("Dynamic Updates in the Domain Name
  7338. System") (https://datatracker.ietf.org/doc/rfc2136/) to
  7339. manage DNS01 challenge records.
  7340. properties:
  7341. nameserver:
  7342. description: The IP address or hostname of an authoritative
  7343. DNS server supporting RFC2136 in the form host:port.
  7344. If the host is an IPv6 address it must be enclosed in
  7345. square brackets (e.g [2001:db8::1]) ; port is optional.
  7346. This field is required.
  7347. type: string
  7348. tsigAlgorithm:
  7349. description: 'The TSIG Algorithm configured in the DNS
  7350. supporting RFC2136. Used only when ``tsigSecretSecretRef``
  7351. and ``tsigKeyName`` are defined. Supported values are
  7352. (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``,
  7353. ``HMACSHA256`` or ``HMACSHA512``.'
  7354. type: string
  7355. tsigKeyName:
  7356. description: The TSIG Key name configured in the DNS.
  7357. If ``tsigSecretSecretRef`` is defined, this field is
  7358. required.
  7359. type: string
  7360. tsigSecretSecretRef:
  7361. description: The name of the secret containing the TSIG
  7362. value. If ``tsigKeyName`` is defined, this field is
  7363. required.
  7364. properties:
  7365. key:
  7366. description: The key of the entry in the Secret resource's
  7367. `data` field to be used. Some instances of this
  7368. field may be defaulted, in others it may be required.
  7369. type: string
  7370. name:
  7371. description: 'Name of the resource being referred
  7372. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7373. type: string
  7374. required:
  7375. - name
  7376. type: object
  7377. required:
  7378. - nameserver
  7379. type: object
  7380. route53:
  7381. description: Use the AWS Route53 API to manage DNS01 challenge
  7382. records.
  7383. properties:
  7384. accessKeyID:
  7385. description: 'The AccessKeyID is used for authentication.
  7386. If not set we fall-back to using env vars, shared credentials
  7387. file or AWS Instance metadata see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  7388. type: string
  7389. hostedZoneID:
  7390. description: If set, the provider will manage only this
  7391. zone in Route53 and will not do an lookup using the
  7392. route53:ListHostedZonesByName api call.
  7393. type: string
  7394. region:
  7395. description: Always set the region when using AccessKeyID
  7396. and SecretAccessKey
  7397. type: string
  7398. role:
  7399. description: Role is a Role ARN which the Route53 provider
  7400. will assume using either the explicit credentials AccessKeyID/SecretAccessKey
  7401. or the inferred credentials from environment variables,
  7402. shared credentials file or AWS Instance metadata
  7403. type: string
  7404. secretAccessKeySecretRef:
  7405. description: The SecretAccessKey is used for authentication.
  7406. If not set we fall-back to using env vars, shared credentials
  7407. file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  7408. properties:
  7409. key:
  7410. description: The key of the entry in the Secret resource's
  7411. `data` field to be used. Some instances of this
  7412. field may be defaulted, in others it may be required.
  7413. type: string
  7414. name:
  7415. description: 'Name of the resource being referred
  7416. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7417. type: string
  7418. required:
  7419. - name
  7420. type: object
  7421. required:
  7422. - region
  7423. type: object
  7424. webhook:
  7425. description: Configure an external webhook based DNS01 challenge
  7426. solver to manage DNS01 challenge records.
  7427. properties:
  7428. config:
  7429. description: Additional configuration that should be passed
  7430. to the webhook apiserver when challenges are processed.
  7431. This can contain arbitrary JSON data. Secret values
  7432. should not be specified in this stanza. If secret values
  7433. are needed (e.g. credentials for a DNS service), you
  7434. should use a SecretKeySelector to reference a Secret
  7435. resource. For details on the schema of this field, consult
  7436. the webhook provider implementation's documentation.
  7437. x-kubernetes-preserve-unknown-fields: true
  7438. groupName:
  7439. description: The API group name that should be used when
  7440. POSTing ChallengePayload resources to the webhook apiserver.
  7441. This should be the same as the GroupName specified in
  7442. the webhook provider implementation.
  7443. type: string
  7444. solverName:
  7445. description: The name of the solver to use, as defined
  7446. in the webhook provider implementation. This will typically
  7447. be the name of the provider, e.g. 'cloudflare'.
  7448. type: string
  7449. required:
  7450. - groupName
  7451. - solverName
  7452. type: object
  7453. type: object
  7454. http01:
  7455. description: Configures cert-manager to attempt to complete authorizations
  7456. by performing the HTTP01 challenge flow. It is not possible
  7457. to obtain certificates for wildcard domain names (e.g. `*.example.com`)
  7458. using the HTTP01 challenge mechanism.
  7459. properties:
  7460. ingress:
  7461. description: The ingress based HTTP01 challenge solver will
  7462. solve challenges by creating or modifying Ingress resources
  7463. in order to route requests for '/.well-known/acme-challenge/XYZ'
  7464. to 'challenge solver' pods that are provisioned by cert-manager
  7465. for each Challenge to be completed.
  7466. properties:
  7467. class:
  7468. description: The ingress class to use when creating Ingress
  7469. resources to solve ACME challenges that use this challenge
  7470. solver. Only one of 'class' or 'name' may be specified.
  7471. type: string
  7472. ingressTemplate:
  7473. description: Optional ingress template used to configure
  7474. the ACME challenge solver ingress used for HTTP01 challenges
  7475. properties:
  7476. metadata:
  7477. description: ObjectMeta overrides for the ingress
  7478. used to solve HTTP01 challenges. Only the 'labels'
  7479. and 'annotations' fields may be set. If labels or
  7480. annotations overlap with in-built values, the values
  7481. here will override the in-built values.
  7482. properties:
  7483. annotations:
  7484. additionalProperties:
  7485. type: string
  7486. description: Annotations that should be added
  7487. to the created ACME HTTP01 solver ingress.
  7488. type: object
  7489. labels:
  7490. additionalProperties:
  7491. type: string
  7492. description: Labels that should be added to the
  7493. created ACME HTTP01 solver ingress.
  7494. type: object
  7495. type: object
  7496. type: object
  7497. name:
  7498. description: The name of the ingress resource that should
  7499. have ACME challenge solving routes inserted into it
  7500. in order to solve HTTP01 challenges. This is typically
  7501. used in conjunction with ingress controllers like ingress-gce,
  7502. which maintains a 1:1 mapping between external IPs and
  7503. ingress resources.
  7504. type: string
  7505. podTemplate:
  7506. description: Optional pod template used to configure the
  7507. ACME challenge solver pods used for HTTP01 challenges
  7508. properties:
  7509. metadata:
  7510. description: ObjectMeta overrides for the pod used
  7511. to solve HTTP01 challenges. Only the 'labels' and
  7512. 'annotations' fields may be set. If labels or annotations
  7513. overlap with in-built values, the values here will
  7514. override the in-built values.
  7515. properties:
  7516. annotations:
  7517. additionalProperties:
  7518. type: string
  7519. description: Annotations that should be added
  7520. to the create ACME HTTP01 solver pods.
  7521. type: object
  7522. labels:
  7523. additionalProperties:
  7524. type: string
  7525. description: Labels that should be added to the
  7526. created ACME HTTP01 solver pods.
  7527. type: object
  7528. type: object
  7529. spec:
  7530. description: PodSpec defines overrides for the HTTP01
  7531. challenge solver pod. Only the 'priorityClassName',
  7532. 'nodeSelector', 'affinity', 'serviceAccountName'
  7533. and 'tolerations' fields are supported currently.
  7534. All other fields will be ignored.
  7535. properties:
  7536. affinity:
  7537. description: If specified, the pod's scheduling
  7538. constraints
  7539. properties:
  7540. nodeAffinity:
  7541. description: Describes node affinity scheduling
  7542. rules for the pod.
  7543. properties:
  7544. preferredDuringSchedulingIgnoredDuringExecution:
  7545. description: The scheduler will prefer
  7546. to schedule pods to nodes that satisfy
  7547. the affinity expressions specified by
  7548. this field, but it may choose a node
  7549. that violates one or more of the expressions.
  7550. The node that is most preferred is the
  7551. one with the greatest sum of weights,
  7552. i.e. for each node that meets all of
  7553. the scheduling requirements (resource
  7554. request, requiredDuringScheduling affinity
  7555. expressions, etc.), compute a sum by
  7556. iterating through the elements of this
  7557. field and adding "weight" to the sum
  7558. if the node matches the corresponding
  7559. matchExpressions; the node(s) with the
  7560. highest sum are the most preferred.
  7561. items:
  7562. description: An empty preferred scheduling
  7563. term matches all objects with implicit
  7564. weight 0 (i.e. it's a no-op). A null
  7565. preferred scheduling term matches
  7566. no objects (i.e. is also a no-op).
  7567. properties:
  7568. preference:
  7569. description: A node selector term,
  7570. associated with the corresponding
  7571. weight.
  7572. properties:
  7573. matchExpressions:
  7574. description: A list of node
  7575. selector requirements by node's
  7576. labels.
  7577. items:
  7578. description: A node selector
  7579. requirement is a selector
  7580. that contains values, a
  7581. key, and an operator that
  7582. relates the key and values.
  7583. properties:
  7584. key:
  7585. description: The label
  7586. key that the selector
  7587. applies to.
  7588. type: string
  7589. operator:
  7590. description: Represents
  7591. a key's relationship
  7592. to a set of values.
  7593. Valid operators are
  7594. In, NotIn, Exists, DoesNotExist.
  7595. Gt, and Lt.
  7596. type: string
  7597. values:
  7598. description: An array
  7599. of string values. If
  7600. the operator is In or
  7601. NotIn, the values array
  7602. must be non-empty. If
  7603. the operator is Exists
  7604. or DoesNotExist, the
  7605. values array must be
  7606. empty. If the operator
  7607. is Gt or Lt, the values
  7608. array must have a single
  7609. element, which will
  7610. be interpreted as an
  7611. integer. This array
  7612. is replaced during a
  7613. strategic merge patch.
  7614. items:
  7615. type: string
  7616. type: array
  7617. required:
  7618. - key
  7619. - operator
  7620. type: object
  7621. type: array
  7622. matchFields:
  7623. description: A list of node
  7624. selector requirements by node's
  7625. fields.
  7626. items:
  7627. description: A node selector
  7628. requirement is a selector
  7629. that contains values, a
  7630. key, and an operator that
  7631. relates the key and values.
  7632. properties:
  7633. key:
  7634. description: The label
  7635. key that the selector
  7636. applies to.
  7637. type: string
  7638. operator:
  7639. description: Represents
  7640. a key's relationship
  7641. to a set of values.
  7642. Valid operators are
  7643. In, NotIn, Exists, DoesNotExist.
  7644. Gt, and Lt.
  7645. type: string
  7646. values:
  7647. description: An array
  7648. of string values. If
  7649. the operator is In or
  7650. NotIn, the values array
  7651. must be non-empty. If
  7652. the operator is Exists
  7653. or DoesNotExist, the
  7654. values array must be
  7655. empty. If the operator
  7656. is Gt or Lt, the values
  7657. array must have a single
  7658. element, which will
  7659. be interpreted as an
  7660. integer. This array
  7661. is replaced during a
  7662. strategic merge patch.
  7663. items:
  7664. type: string
  7665. type: array
  7666. required:
  7667. - key
  7668. - operator
  7669. type: object
  7670. type: array
  7671. type: object
  7672. weight:
  7673. description: Weight associated with
  7674. matching the corresponding nodeSelectorTerm,
  7675. in the range 1-100.
  7676. format: int32
  7677. type: integer
  7678. required:
  7679. - preference
  7680. - weight
  7681. type: object
  7682. type: array
  7683. requiredDuringSchedulingIgnoredDuringExecution:
  7684. description: If the affinity requirements
  7685. specified by this field are not met
  7686. at scheduling time, the pod will not
  7687. be scheduled onto the node. If the affinity
  7688. requirements specified by this field
  7689. cease to be met at some point during
  7690. pod execution (e.g. due to an update),
  7691. the system may or may not try to eventually
  7692. evict the pod from its node.
  7693. properties:
  7694. nodeSelectorTerms:
  7695. description: Required. A list of node
  7696. selector terms. The terms are ORed.
  7697. items:
  7698. description: A null or empty node
  7699. selector term matches no objects.
  7700. The requirements of them are ANDed.
  7701. The TopologySelectorTerm type
  7702. implements a subset of the NodeSelectorTerm.
  7703. properties:
  7704. matchExpressions:
  7705. description: A list of node
  7706. selector requirements by node's
  7707. labels.
  7708. items:
  7709. description: A node selector
  7710. requirement is a selector
  7711. that contains values, a
  7712. key, and an operator that
  7713. relates the key and values.
  7714. properties:
  7715. key:
  7716. description: The label
  7717. key that the selector
  7718. applies to.
  7719. type: string
  7720. operator:
  7721. description: Represents
  7722. a key's relationship
  7723. to a set of values.
  7724. Valid operators are
  7725. In, NotIn, Exists, DoesNotExist.
  7726. Gt, and Lt.
  7727. type: string
  7728. values:
  7729. description: An array
  7730. of string values. If
  7731. the operator is In or
  7732. NotIn, the values array
  7733. must be non-empty. If
  7734. the operator is Exists
  7735. or DoesNotExist, the
  7736. values array must be
  7737. empty. If the operator
  7738. is Gt or Lt, the values
  7739. array must have a single
  7740. element, which will
  7741. be interpreted as an
  7742. integer. This array
  7743. is replaced during a
  7744. strategic merge patch.
  7745. items:
  7746. type: string
  7747. type: array
  7748. required:
  7749. - key
  7750. - operator
  7751. type: object
  7752. type: array
  7753. matchFields:
  7754. description: A list of node
  7755. selector requirements by node's
  7756. fields.
  7757. items:
  7758. description: A node selector
  7759. requirement is a selector
  7760. that contains values, a
  7761. key, and an operator that
  7762. relates the key and values.
  7763. properties:
  7764. key:
  7765. description: The label
  7766. key that the selector
  7767. applies to.
  7768. type: string
  7769. operator:
  7770. description: Represents
  7771. a key's relationship
  7772. to a set of values.
  7773. Valid operators are
  7774. In, NotIn, Exists, DoesNotExist.
  7775. Gt, and Lt.
  7776. type: string
  7777. values:
  7778. description: An array
  7779. of string values. If
  7780. the operator is In or
  7781. NotIn, the values array
  7782. must be non-empty. If
  7783. the operator is Exists
  7784. or DoesNotExist, the
  7785. values array must be
  7786. empty. If the operator
  7787. is Gt or Lt, the values
  7788. array must have a single
  7789. element, which will
  7790. be interpreted as an
  7791. integer. This array
  7792. is replaced during a
  7793. strategic merge patch.
  7794. items:
  7795. type: string
  7796. type: array
  7797. required:
  7798. - key
  7799. - operator
  7800. type: object
  7801. type: array
  7802. type: object
  7803. type: array
  7804. required:
  7805. - nodeSelectorTerms
  7806. type: object
  7807. type: object
  7808. podAffinity:
  7809. description: Describes pod affinity scheduling
  7810. rules (e.g. co-locate this pod in the same
  7811. node, zone, etc. as some other pod(s)).
  7812. properties:
  7813. preferredDuringSchedulingIgnoredDuringExecution:
  7814. description: The scheduler will prefer
  7815. to schedule pods to nodes that satisfy
  7816. the affinity expressions specified by
  7817. this field, but it may choose a node
  7818. that violates one or more of the expressions.
  7819. The node that is most preferred is the
  7820. one with the greatest sum of weights,
  7821. i.e. for each node that meets all of
  7822. the scheduling requirements (resource
  7823. request, requiredDuringScheduling affinity
  7824. expressions, etc.), compute a sum by
  7825. iterating through the elements of this
  7826. field and adding "weight" to the sum
  7827. if the node has pods which matches the
  7828. corresponding podAffinityTerm; the node(s)
  7829. with the highest sum are the most preferred.
  7830. items:
  7831. description: The weights of all of the
  7832. matched WeightedPodAffinityTerm fields
  7833. are added per-node to find the most
  7834. preferred node(s)
  7835. properties:
  7836. podAffinityTerm:
  7837. description: Required. A pod affinity
  7838. term, associated with the corresponding
  7839. weight.
  7840. properties:
  7841. labelSelector:
  7842. description: A label query over
  7843. a set of resources, in this
  7844. case pods.
  7845. properties:
  7846. matchExpressions:
  7847. description: matchExpressions
  7848. is a list of label selector
  7849. requirements. The requirements
  7850. are ANDed.
  7851. items:
  7852. description: A label selector
  7853. requirement is a selector
  7854. that contains values,
  7855. a key, and an operator
  7856. that relates the key
  7857. and values.
  7858. properties:
  7859. key:
  7860. description: key is
  7861. the label key that
  7862. the selector applies
  7863. to.
  7864. type: string
  7865. operator:
  7866. description: operator
  7867. represents a key's
  7868. relationship to
  7869. a set of values.
  7870. Valid operators
  7871. are In, NotIn, Exists
  7872. and DoesNotExist.
  7873. type: string
  7874. values:
  7875. description: values
  7876. is an array of string
  7877. values. If the operator
  7878. is In or NotIn,
  7879. the values array
  7880. must be non-empty.
  7881. If the operator
  7882. is Exists or DoesNotExist,
  7883. the values array
  7884. must be empty. This
  7885. array is replaced
  7886. during a strategic
  7887. merge patch.
  7888. items:
  7889. type: string
  7890. type: array
  7891. required:
  7892. - key
  7893. - operator
  7894. type: object
  7895. type: array
  7896. matchLabels:
  7897. additionalProperties:
  7898. type: string
  7899. description: matchLabels
  7900. is a map of {key,value}
  7901. pairs. A single {key,value}
  7902. in the matchLabels map
  7903. is equivalent to an element
  7904. of matchExpressions, whose
  7905. key field is "key", the
  7906. operator is "In", and
  7907. the values array contains
  7908. only "value". The requirements
  7909. are ANDed.
  7910. type: object
  7911. type: object
  7912. namespaces:
  7913. description: namespaces specifies
  7914. which namespaces the labelSelector
  7915. applies to (matches against);
  7916. null or empty list means "this
  7917. pod's namespace"
  7918. items:
  7919. type: string
  7920. type: array
  7921. topologyKey:
  7922. description: This pod should
  7923. be co-located (affinity) or
  7924. not co-located (anti-affinity)
  7925. with the pods matching the
  7926. labelSelector in the specified
  7927. namespaces, where co-located
  7928. is defined as running on a
  7929. node whose value of the label
  7930. with key topologyKey matches
  7931. that of any node on which
  7932. any of the selected pods is
  7933. running. Empty topologyKey
  7934. is not allowed.
  7935. type: string
  7936. required:
  7937. - topologyKey
  7938. type: object
  7939. weight:
  7940. description: weight associated with
  7941. matching the corresponding podAffinityTerm,
  7942. in the range 1-100.
  7943. format: int32
  7944. type: integer
  7945. required:
  7946. - podAffinityTerm
  7947. - weight
  7948. type: object
  7949. type: array
  7950. requiredDuringSchedulingIgnoredDuringExecution:
  7951. description: If the affinity requirements
  7952. specified by this field are not met
  7953. at scheduling time, the pod will not
  7954. be scheduled onto the node. If the affinity
  7955. requirements specified by this field
  7956. cease to be met at some point during
  7957. pod execution (e.g. due to a pod label
  7958. update), the system may or may not try
  7959. to eventually evict the pod from its
  7960. node. When there are multiple elements,
  7961. the lists of nodes corresponding to
  7962. each podAffinityTerm are intersected,
  7963. i.e. all terms must be satisfied.
  7964. items:
  7965. description: Defines a set of pods (namely
  7966. those matching the labelSelector relative
  7967. to the given namespace(s)) that this
  7968. pod should be co-located (affinity)
  7969. or not co-located (anti-affinity)
  7970. with, where co-located is defined
  7971. as running on a node whose value of
  7972. the label with key <topologyKey> matches
  7973. that of any node on which a pod of
  7974. the set of pods is running
  7975. properties:
  7976. labelSelector:
  7977. description: A label query over
  7978. a set of resources, in this case
  7979. pods.
  7980. properties:
  7981. matchExpressions:
  7982. description: matchExpressions
  7983. is a list of label selector
  7984. requirements. The requirements
  7985. are ANDed.
  7986. items:
  7987. description: A label selector
  7988. requirement is a selector
  7989. that contains values, a
  7990. key, and an operator that
  7991. relates the key and values.
  7992. properties:
  7993. key:
  7994. description: key is the
  7995. label key that the selector
  7996. applies to.
  7997. type: string
  7998. operator:
  7999. description: operator
  8000. represents a key's relationship
  8001. to a set of values.
  8002. Valid operators are
  8003. In, NotIn, Exists and
  8004. DoesNotExist.
  8005. type: string
  8006. values:
  8007. description: values is
  8008. an array of string values.
  8009. If the operator is In
  8010. or NotIn, the values
  8011. array must be non-empty.
  8012. If the operator is Exists
  8013. or DoesNotExist, the
  8014. values array must be
  8015. empty. This array is
  8016. replaced during a strategic
  8017. merge patch.
  8018. items:
  8019. type: string
  8020. type: array
  8021. required:
  8022. - key
  8023. - operator
  8024. type: object
  8025. type: array
  8026. matchLabels:
  8027. additionalProperties:
  8028. type: string
  8029. description: matchLabels is
  8030. a map of {key,value} pairs.
  8031. A single {key,value} in the
  8032. matchLabels map is equivalent
  8033. to an element of matchExpressions,
  8034. whose key field is "key",
  8035. the operator is "In", and
  8036. the values array contains
  8037. only "value". The requirements
  8038. are ANDed.
  8039. type: object
  8040. type: object
  8041. namespaces:
  8042. description: namespaces specifies
  8043. which namespaces the labelSelector
  8044. applies to (matches against);
  8045. null or empty list means "this
  8046. pod's namespace"
  8047. items:
  8048. type: string
  8049. type: array
  8050. topologyKey:
  8051. description: This pod should be
  8052. co-located (affinity) or not co-located
  8053. (anti-affinity) with the pods
  8054. matching the labelSelector in
  8055. the specified namespaces, where
  8056. co-located is defined as running
  8057. on a node whose value of the label
  8058. with key topologyKey matches that
  8059. of any node on which any of the
  8060. selected pods is running. Empty
  8061. topologyKey is not allowed.
  8062. type: string
  8063. required:
  8064. - topologyKey
  8065. type: object
  8066. type: array
  8067. type: object
  8068. podAntiAffinity:
  8069. description: Describes pod anti-affinity scheduling
  8070. rules (e.g. avoid putting this pod in the
  8071. same node, zone, etc. as some other pod(s)).
  8072. properties:
  8073. preferredDuringSchedulingIgnoredDuringExecution:
  8074. description: The scheduler will prefer
  8075. to schedule pods to nodes that satisfy
  8076. the anti-affinity expressions specified
  8077. by this field, but it may choose a node
  8078. that violates one or more of the expressions.
  8079. The node that is most preferred is the
  8080. one with the greatest sum of weights,
  8081. i.e. for each node that meets all of
  8082. the scheduling requirements (resource
  8083. request, requiredDuringScheduling anti-affinity
  8084. expressions, etc.), compute a sum by
  8085. iterating through the elements of this
  8086. field and adding "weight" to the sum
  8087. if the node has pods which matches the
  8088. corresponding podAffinityTerm; the node(s)
  8089. with the highest sum are the most preferred.
  8090. items:
  8091. description: The weights of all of the
  8092. matched WeightedPodAffinityTerm fields
  8093. are added per-node to find the most
  8094. preferred node(s)
  8095. properties:
  8096. podAffinityTerm:
  8097. description: Required. A pod affinity
  8098. term, associated with the corresponding
  8099. weight.
  8100. properties:
  8101. labelSelector:
  8102. description: A label query over
  8103. a set of resources, in this
  8104. case pods.
  8105. properties:
  8106. matchExpressions:
  8107. description: matchExpressions
  8108. is a list of label selector
  8109. requirements. The requirements
  8110. are ANDed.
  8111. items:
  8112. description: A label selector
  8113. requirement is a selector
  8114. that contains values,
  8115. a key, and an operator
  8116. that relates the key
  8117. and values.
  8118. properties:
  8119. key:
  8120. description: key is
  8121. the label key that
  8122. the selector applies
  8123. to.
  8124. type: string
  8125. operator:
  8126. description: operator
  8127. represents a key's
  8128. relationship to
  8129. a set of values.
  8130. Valid operators
  8131. are In, NotIn, Exists
  8132. and DoesNotExist.
  8133. type: string
  8134. values:
  8135. description: values
  8136. is an array of string
  8137. values. If the operator
  8138. is In or NotIn,
  8139. the values array
  8140. must be non-empty.
  8141. If the operator
  8142. is Exists or DoesNotExist,
  8143. the values array
  8144. must be empty. This
  8145. array is replaced
  8146. during a strategic
  8147. merge patch.
  8148. items:
  8149. type: string
  8150. type: array
  8151. required:
  8152. - key
  8153. - operator
  8154. type: object
  8155. type: array
  8156. matchLabels:
  8157. additionalProperties:
  8158. type: string
  8159. description: matchLabels
  8160. is a map of {key,value}
  8161. pairs. A single {key,value}
  8162. in the matchLabels map
  8163. is equivalent to an element
  8164. of matchExpressions, whose
  8165. key field is "key", the
  8166. operator is "In", and
  8167. the values array contains
  8168. only "value". The requirements
  8169. are ANDed.
  8170. type: object
  8171. type: object
  8172. namespaces:
  8173. description: namespaces specifies
  8174. which namespaces the labelSelector
  8175. applies to (matches against);
  8176. null or empty list means "this
  8177. pod's namespace"
  8178. items:
  8179. type: string
  8180. type: array
  8181. topologyKey:
  8182. description: This pod should
  8183. be co-located (affinity) or
  8184. not co-located (anti-affinity)
  8185. with the pods matching the
  8186. labelSelector in the specified
  8187. namespaces, where co-located
  8188. is defined as running on a
  8189. node whose value of the label
  8190. with key topologyKey matches
  8191. that of any node on which
  8192. any of the selected pods is
  8193. running. Empty topologyKey
  8194. is not allowed.
  8195. type: string
  8196. required:
  8197. - topologyKey
  8198. type: object
  8199. weight:
  8200. description: weight associated with
  8201. matching the corresponding podAffinityTerm,
  8202. in the range 1-100.
  8203. format: int32
  8204. type: integer
  8205. required:
  8206. - podAffinityTerm
  8207. - weight
  8208. type: object
  8209. type: array
  8210. requiredDuringSchedulingIgnoredDuringExecution:
  8211. description: If the anti-affinity requirements
  8212. specified by this field are not met
  8213. at scheduling time, the pod will not
  8214. be scheduled onto the node. If the anti-affinity
  8215. requirements specified by this field
  8216. cease to be met at some point during
  8217. pod execution (e.g. due to a pod label
  8218. update), the system may or may not try
  8219. to eventually evict the pod from its
  8220. node. When there are multiple elements,
  8221. the lists of nodes corresponding to
  8222. each podAffinityTerm are intersected,
  8223. i.e. all terms must be satisfied.
  8224. items:
  8225. description: Defines a set of pods (namely
  8226. those matching the labelSelector relative
  8227. to the given namespace(s)) that this
  8228. pod should be co-located (affinity)
  8229. or not co-located (anti-affinity)
  8230. with, where co-located is defined
  8231. as running on a node whose value of
  8232. the label with key <topologyKey> matches
  8233. that of any node on which a pod of
  8234. the set of pods is running
  8235. properties:
  8236. labelSelector:
  8237. description: A label query over
  8238. a set of resources, in this case
  8239. pods.
  8240. properties:
  8241. matchExpressions:
  8242. description: matchExpressions
  8243. is a list of label selector
  8244. requirements. The requirements
  8245. are ANDed.
  8246. items:
  8247. description: A label selector
  8248. requirement is a selector
  8249. that contains values, a
  8250. key, and an operator that
  8251. relates the key and values.
  8252. properties:
  8253. key:
  8254. description: key is the
  8255. label key that the selector
  8256. applies to.
  8257. type: string
  8258. operator:
  8259. description: operator
  8260. represents a key's relationship
  8261. to a set of values.
  8262. Valid operators are
  8263. In, NotIn, Exists and
  8264. DoesNotExist.
  8265. type: string
  8266. values:
  8267. description: values is
  8268. an array of string values.
  8269. If the operator is In
  8270. or NotIn, the values
  8271. array must be non-empty.
  8272. If the operator is Exists
  8273. or DoesNotExist, the
  8274. values array must be
  8275. empty. This array is
  8276. replaced during a strategic
  8277. merge patch.
  8278. items:
  8279. type: string
  8280. type: array
  8281. required:
  8282. - key
  8283. - operator
  8284. type: object
  8285. type: array
  8286. matchLabels:
  8287. additionalProperties:
  8288. type: string
  8289. description: matchLabels is
  8290. a map of {key,value} pairs.
  8291. A single {key,value} in the
  8292. matchLabels map is equivalent
  8293. to an element of matchExpressions,
  8294. whose key field is "key",
  8295. the operator is "In", and
  8296. the values array contains
  8297. only "value". The requirements
  8298. are ANDed.
  8299. type: object
  8300. type: object
  8301. namespaces:
  8302. description: namespaces specifies
  8303. which namespaces the labelSelector
  8304. applies to (matches against);
  8305. null or empty list means "this
  8306. pod's namespace"
  8307. items:
  8308. type: string
  8309. type: array
  8310. topologyKey:
  8311. description: This pod should be
  8312. co-located (affinity) or not co-located
  8313. (anti-affinity) with the pods
  8314. matching the labelSelector in
  8315. the specified namespaces, where
  8316. co-located is defined as running
  8317. on a node whose value of the label
  8318. with key topologyKey matches that
  8319. of any node on which any of the
  8320. selected pods is running. Empty
  8321. topologyKey is not allowed.
  8322. type: string
  8323. required:
  8324. - topologyKey
  8325. type: object
  8326. type: array
  8327. type: object
  8328. type: object
  8329. nodeSelector:
  8330. additionalProperties:
  8331. type: string
  8332. description: 'NodeSelector is a selector which
  8333. must be true for the pod to fit on a node. Selector
  8334. which must match a node''s labels for the pod
  8335. to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  8336. type: object
  8337. priorityClassName:
  8338. description: If specified, the pod's priorityClassName.
  8339. type: string
  8340. serviceAccountName:
  8341. description: If specified, the pod's service account
  8342. type: string
  8343. tolerations:
  8344. description: If specified, the pod's tolerations.
  8345. items:
  8346. description: The pod this Toleration is attached
  8347. to tolerates any taint that matches the triple
  8348. <key,value,effect> using the matching operator
  8349. <operator>.
  8350. properties:
  8351. effect:
  8352. description: Effect indicates the taint
  8353. effect to match. Empty means match all
  8354. taint effects. When specified, allowed
  8355. values are NoSchedule, PreferNoSchedule
  8356. and NoExecute.
  8357. type: string
  8358. key:
  8359. description: Key is the taint key that the
  8360. toleration applies to. Empty means match
  8361. all taint keys. If the key is empty, operator
  8362. must be Exists; this combination means
  8363. to match all values and all keys.
  8364. type: string
  8365. operator:
  8366. description: Operator represents a key's
  8367. relationship to the value. Valid operators
  8368. are Exists and Equal. Defaults to Equal.
  8369. Exists is equivalent to wildcard for value,
  8370. so that a pod can tolerate all taints
  8371. of a particular category.
  8372. type: string
  8373. tolerationSeconds:
  8374. description: TolerationSeconds represents
  8375. the period of time the toleration (which
  8376. must be of effect NoExecute, otherwise
  8377. this field is ignored) tolerates the taint.
  8378. By default, it is not set, which means
  8379. tolerate the taint forever (do not evict).
  8380. Zero and negative values will be treated
  8381. as 0 (evict immediately) by the system.
  8382. format: int64
  8383. type: integer
  8384. value:
  8385. description: Value is the taint value the
  8386. toleration matches to. If the operator
  8387. is Exists, the value should be empty,
  8388. otherwise just a regular string.
  8389. type: string
  8390. type: object
  8391. type: array
  8392. type: object
  8393. type: object
  8394. serviceType:
  8395. description: Optional service type for Kubernetes solver
  8396. service
  8397. type: string
  8398. type: object
  8399. type: object
  8400. selector:
  8401. description: Selector selects a set of DNSNames on the Certificate
  8402. resource that should be solved using this challenge solver.
  8403. If not specified, the solver will be treated as the 'default'
  8404. solver with the lowest priority, i.e. if any other solver has
  8405. a more specific match, it will be used instead.
  8406. properties:
  8407. dnsNames:
  8408. description: List of DNSNames that this solver will be used
  8409. to solve. If specified and a match is found, a dnsNames
  8410. selector will take precedence over a dnsZones selector.
  8411. If multiple solvers match with the same dnsNames value,
  8412. the solver with the most matching labels in matchLabels
  8413. will be selected. If neither has more matches, the solver
  8414. defined earlier in the list will be selected.
  8415. items:
  8416. type: string
  8417. type: array
  8418. dnsZones:
  8419. description: List of DNSZones that this solver will be used
  8420. to solve. The most specific DNS zone match specified here
  8421. will take precedence over other DNS zone matches, so a solver
  8422. specifying sys.example.com will be selected over one specifying
  8423. example.com for the domain www.sys.example.com. If multiple
  8424. solvers match with the same dnsZones value, the solver with
  8425. the most matching labels in matchLabels will be selected.
  8426. If neither has more matches, the solver defined earlier
  8427. in the list will be selected.
  8428. items:
  8429. type: string
  8430. type: array
  8431. matchLabels:
  8432. additionalProperties:
  8433. type: string
  8434. description: A label selector that is used to refine the set
  8435. of certificate's that this challenge solver will apply to.
  8436. type: object
  8437. type: object
  8438. type: object
  8439. token:
  8440. description: The ACME challenge token for this challenge. This is
  8441. the raw value returned from the ACME server.
  8442. type: string
  8443. type:
  8444. description: The type of ACME challenge this resource represents.
  8445. One of "HTTP-01" or "DNS-01".
  8446. enum:
  8447. - HTTP-01
  8448. - DNS-01
  8449. type: string
  8450. url:
  8451. description: The URL of the ACME Challenge resource for this challenge.
  8452. This can be used to lookup details about the status of this challenge.
  8453. type: string
  8454. wildcard:
  8455. description: wildcard will be true if this challenge is for a wildcard
  8456. identifier, for example '*.example.com'.
  8457. type: boolean
  8458. required:
  8459. - authorizationURL
  8460. - dnsName
  8461. - issuerRef
  8462. - key
  8463. - solver
  8464. - token
  8465. - type
  8466. - url
  8467. type: object
  8468. status:
  8469. properties:
  8470. presented:
  8471. description: presented will be set to true if the challenge values
  8472. for this challenge are currently 'presented'. This *does not* imply
  8473. the self check is passing. Only that the values have been 'submitted'
  8474. for the appropriate challenge mechanism (i.e. the DNS01 TXT record
  8475. has been presented, or the HTTP01 configuration has been configured).
  8476. type: boolean
  8477. processing:
  8478. description: Used to denote whether this challenge should be processed
  8479. or not. This field will only be set to true by the 'scheduling'
  8480. component. It will only be set to false by the 'challenges' controller,
  8481. after the challenge has reached a final state or timed out. If this
  8482. field is set to false, the challenge controller will not take any
  8483. more action.
  8484. type: boolean
  8485. reason:
  8486. description: Contains human readable information on why the Challenge
  8487. is in the current state.
  8488. type: string
  8489. state:
  8490. description: Contains the current 'state' of the challenge. If not
  8491. set, the state of the challenge is unknown.
  8492. enum:
  8493. - valid
  8494. - ready
  8495. - pending
  8496. - processing
  8497. - invalid
  8498. - expired
  8499. - errored
  8500. type: string
  8501. type: object
  8502. required:
  8503. - metadata
  8504. - spec
  8505. type: object
  8506. served: true
  8507. storage: true
  8508. subresources:
  8509. status: {}
  8510. status:
  8511. acceptedNames:
  8512. kind: ""
  8513. plural: ""
  8514. conditions: []
  8515. storedVersions: []
  8516. ---
  8517. apiVersion: apiextensions.k8s.io/v1
  8518. kind: CustomResourceDefinition
  8519. metadata:
  8520. annotations:
  8521. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  8522. labels:
  8523. app: cert-manager
  8524. app.kubernetes.io/instance: cert-manager
  8525. app.kubernetes.io/name: cert-manager
  8526. name: clusterissuers.cert-manager.io
  8527. spec:
  8528. conversion:
  8529. strategy: Webhook
  8530. webhook:
  8531. clientConfig:
  8532. service:
  8533. name: cert-manager-webhook
  8534. namespace: cert-manager
  8535. path: /convert
  8536. conversionReviewVersions:
  8537. - v1
  8538. - v1beta1
  8539. group: cert-manager.io
  8540. names:
  8541. kind: ClusterIssuer
  8542. listKind: ClusterIssuerList
  8543. plural: clusterissuers
  8544. singular: clusterissuer
  8545. scope: Cluster
  8546. versions:
  8547. - additionalPrinterColumns:
  8548. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  8549. name: Ready
  8550. type: string
  8551. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  8552. name: Status
  8553. priority: 1
  8554. type: string
  8555. - description: CreationTimestamp is a timestamp representing the server time when
  8556. this object was created. It is not guaranteed to be set in happens-before
  8557. order across separate operations. Clients may not set this value. It is represented
  8558. in RFC3339 form and is in UTC.
  8559. jsonPath: .metadata.creationTimestamp
  8560. name: Age
  8561. type: date
  8562. name: v1alpha2
  8563. schema:
  8564. openAPIV3Schema:
  8565. description: A ClusterIssuer represents a certificate issuing authority which
  8566. can be referenced as part of `issuerRef` fields. It is similar to an Issuer,
  8567. however it is cluster-scoped and therefore can be referenced by resources
  8568. that exist in *any* namespace, not just the same namespace as the referent.
  8569. properties:
  8570. apiVersion:
  8571. description: 'APIVersion defines the versioned schema of this representation
  8572. of an object. Servers should convert recognized schemas to the latest
  8573. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  8574. type: string
  8575. kind:
  8576. description: 'Kind is a string value representing the REST resource this
  8577. object represents. Servers may infer this from the endpoint the client
  8578. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  8579. type: string
  8580. metadata:
  8581. type: object
  8582. spec:
  8583. description: Desired state of the ClusterIssuer resource.
  8584. properties:
  8585. acme:
  8586. description: ACME configures this issuer to communicate with a RFC8555
  8587. (ACME) server to obtain signed x509 certificates.
  8588. properties:
  8589. disableAccountKeyGeneration:
  8590. description: Enables or disables generating a new ACME account
  8591. key. If true, the Issuer resource will *not* request a new account
  8592. but will expect the account key to be supplied via an existing
  8593. secret. If false, the cert-manager system will generate a new
  8594. ACME account key for the Issuer. Defaults to false.
  8595. type: boolean
  8596. email:
  8597. description: Email is the email address to be associated with
  8598. the ACME account. This field is optional, but it is strongly
  8599. recommended to be set. It will be used to contact you in case
  8600. of issues with your account or certificates, including expiry
  8601. notification emails. This field may be updated after the account
  8602. is initially registered.
  8603. type: string
  8604. externalAccountBinding:
  8605. description: ExternalAccountBinding is a reference to a CA external
  8606. account of the ACME server. If set, upon registration cert-manager
  8607. will attempt to associate the given external account credentials
  8608. with the registered ACME account.
  8609. properties:
  8610. keyAlgorithm:
  8611. description: keyAlgorithm is the MAC key algorithm that the
  8612. key is used for. Valid values are "HS256", "HS384" and "HS512".
  8613. enum:
  8614. - HS256
  8615. - HS384
  8616. - HS512
  8617. type: string
  8618. keyID:
  8619. description: keyID is the ID of the CA key that the External
  8620. Account is bound to.
  8621. type: string
  8622. keySecretRef:
  8623. description: keySecretRef is a Secret Key Selector referencing
  8624. a data item in a Kubernetes Secret which holds the symmetric
  8625. MAC key of the External Account Binding. The `key` is the
  8626. index string that is paired with the key data in the Secret
  8627. and should not be confused with the key data itself, or
  8628. indeed with the External Account Binding keyID above. The
  8629. secret key stored in the Secret **must** be un-padded, base64
  8630. URL encoded data.
  8631. properties:
  8632. key:
  8633. description: The key of the entry in the Secret resource's
  8634. `data` field to be used. Some instances of this field
  8635. may be defaulted, in others it may be required.
  8636. type: string
  8637. name:
  8638. description: 'Name of the resource being referred to.
  8639. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8640. type: string
  8641. required:
  8642. - name
  8643. type: object
  8644. required:
  8645. - keyAlgorithm
  8646. - keyID
  8647. - keySecretRef
  8648. type: object
  8649. preferredChain:
  8650. description: 'PreferredChain is the chain to use if the ACME server
  8651. outputs multiple. PreferredChain is no guarantee that this one
  8652. gets delivered by the ACME endpoint. For example, for Let''s
  8653. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  8654. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  8655. picks the first certificate bundle in the ACME alternative chains
  8656. that has a certificate with this value as its issuer''s CN'
  8657. maxLength: 64
  8658. type: string
  8659. privateKeySecretRef:
  8660. description: PrivateKey is the name of a Kubernetes Secret resource
  8661. that will be used to store the automatically generated ACME
  8662. account private key. Optionally, a `key` may be specified to
  8663. select a specific entry within the named Secret resource. If
  8664. `key` is not specified, a default of `tls.key` will be used.
  8665. properties:
  8666. key:
  8667. description: The key of the entry in the Secret resource's
  8668. `data` field to be used. Some instances of this field may
  8669. be defaulted, in others it may be required.
  8670. type: string
  8671. name:
  8672. description: 'Name of the resource being referred to. More
  8673. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8674. type: string
  8675. required:
  8676. - name
  8677. type: object
  8678. server:
  8679. description: 'Server is the URL used to access the ACME server''s
  8680. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  8681. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  8682. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  8683. type: string
  8684. skipTLSVerify:
  8685. description: Enables or disables validation of the ACME server
  8686. TLS certificate. If true, requests to the ACME server will not
  8687. have their TLS certificate validated (i.e. insecure connections
  8688. will be allowed). Only enable this option in development environments.
  8689. The cert-manager system installed roots will be used to verify
  8690. connections to the ACME server if this is false. Defaults to
  8691. false.
  8692. type: boolean
  8693. solvers:
  8694. description: 'Solvers is a list of challenge solvers that will
  8695. be used to solve ACME challenges for the matching domains. Solver
  8696. configurations must be provided in order to obtain certificates
  8697. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  8698. items:
  8699. description: Configures an issuer to solve challenges using
  8700. the specified options. Only one of HTTP01 or DNS01 may be
  8701. provided.
  8702. properties:
  8703. dns01:
  8704. description: Configures cert-manager to attempt to complete
  8705. authorizations by performing the DNS01 challenge flow.
  8706. properties:
  8707. acmedns:
  8708. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  8709. API to manage DNS01 challenge records.
  8710. properties:
  8711. accountSecretRef:
  8712. description: A reference to a specific 'key' within
  8713. a Secret resource. In some instances, `key` is
  8714. a required field.
  8715. properties:
  8716. key:
  8717. description: The key of the entry in the Secret
  8718. resource's `data` field to be used. Some instances
  8719. of this field may be defaulted, in others
  8720. it may be required.
  8721. type: string
  8722. name:
  8723. description: 'Name of the resource being referred
  8724. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8725. type: string
  8726. required:
  8727. - name
  8728. type: object
  8729. host:
  8730. type: string
  8731. required:
  8732. - accountSecretRef
  8733. - host
  8734. type: object
  8735. akamai:
  8736. description: Use the Akamai DNS zone management API
  8737. to manage DNS01 challenge records.
  8738. properties:
  8739. accessTokenSecretRef:
  8740. description: A reference to a specific 'key' within
  8741. a Secret resource. In some instances, `key` is
  8742. a required field.
  8743. properties:
  8744. key:
  8745. description: The key of the entry in the Secret
  8746. resource's `data` field to be used. Some instances
  8747. of this field may be defaulted, in others
  8748. it may be required.
  8749. type: string
  8750. name:
  8751. description: 'Name of the resource being referred
  8752. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8753. type: string
  8754. required:
  8755. - name
  8756. type: object
  8757. clientSecretSecretRef:
  8758. description: A reference to a specific 'key' within
  8759. a Secret resource. In some instances, `key` is
  8760. a required field.
  8761. properties:
  8762. key:
  8763. description: The key of the entry in the Secret
  8764. resource's `data` field to be used. Some instances
  8765. of this field may be defaulted, in others
  8766. it may be required.
  8767. type: string
  8768. name:
  8769. description: 'Name of the resource being referred
  8770. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8771. type: string
  8772. required:
  8773. - name
  8774. type: object
  8775. clientTokenSecretRef:
  8776. description: A reference to a specific 'key' within
  8777. a Secret resource. In some instances, `key` is
  8778. a required field.
  8779. properties:
  8780. key:
  8781. description: The key of the entry in the Secret
  8782. resource's `data` field to be used. Some instances
  8783. of this field may be defaulted, in others
  8784. it may be required.
  8785. type: string
  8786. name:
  8787. description: 'Name of the resource being referred
  8788. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8789. type: string
  8790. required:
  8791. - name
  8792. type: object
  8793. serviceConsumerDomain:
  8794. type: string
  8795. required:
  8796. - accessTokenSecretRef
  8797. - clientSecretSecretRef
  8798. - clientTokenSecretRef
  8799. - serviceConsumerDomain
  8800. type: object
  8801. azuredns:
  8802. description: Use the Microsoft Azure DNS API to manage
  8803. DNS01 challenge records.
  8804. properties:
  8805. clientID:
  8806. description: if both this and ClientSecret are left
  8807. unset MSI will be used
  8808. type: string
  8809. clientSecretSecretRef:
  8810. description: if both this and ClientID are left
  8811. unset MSI will be used
  8812. properties:
  8813. key:
  8814. description: The key of the entry in the Secret
  8815. resource's `data` field to be used. Some instances
  8816. of this field may be defaulted, in others
  8817. it may be required.
  8818. type: string
  8819. name:
  8820. description: 'Name of the resource being referred
  8821. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8822. type: string
  8823. required:
  8824. - name
  8825. type: object
  8826. environment:
  8827. enum:
  8828. - AzurePublicCloud
  8829. - AzureChinaCloud
  8830. - AzureGermanCloud
  8831. - AzureUSGovernmentCloud
  8832. type: string
  8833. hostedZoneName:
  8834. type: string
  8835. resourceGroupName:
  8836. type: string
  8837. subscriptionID:
  8838. type: string
  8839. tenantID:
  8840. description: when specifying ClientID and ClientSecret
  8841. then this field is also needed
  8842. type: string
  8843. required:
  8844. - resourceGroupName
  8845. - subscriptionID
  8846. type: object
  8847. clouddns:
  8848. description: Use the Google Cloud DNS API to manage
  8849. DNS01 challenge records.
  8850. properties:
  8851. hostedZoneName:
  8852. description: HostedZoneName is an optional field
  8853. that tells cert-manager in which Cloud DNS zone
  8854. the challenge record has to be created. If left
  8855. empty cert-manager will automatically choose a
  8856. zone.
  8857. type: string
  8858. project:
  8859. type: string
  8860. serviceAccountSecretRef:
  8861. description: A reference to a specific 'key' within
  8862. a Secret resource. In some instances, `key` is
  8863. a required field.
  8864. properties:
  8865. key:
  8866. description: The key of the entry in the Secret
  8867. resource's `data` field to be used. Some instances
  8868. of this field may be defaulted, in others
  8869. it may be required.
  8870. type: string
  8871. name:
  8872. description: 'Name of the resource being referred
  8873. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8874. type: string
  8875. required:
  8876. - name
  8877. type: object
  8878. required:
  8879. - project
  8880. type: object
  8881. cloudflare:
  8882. description: Use the Cloudflare API to manage DNS01
  8883. challenge records.
  8884. properties:
  8885. apiKeySecretRef:
  8886. description: 'API key to use to authenticate with
  8887. Cloudflare. Note: using an API token to authenticate
  8888. is now the recommended method as it allows greater
  8889. control of permissions.'
  8890. properties:
  8891. key:
  8892. description: The key of the entry in the Secret
  8893. resource's `data` field to be used. Some instances
  8894. of this field may be defaulted, in others
  8895. it may be required.
  8896. type: string
  8897. name:
  8898. description: 'Name of the resource being referred
  8899. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8900. type: string
  8901. required:
  8902. - name
  8903. type: object
  8904. apiTokenSecretRef:
  8905. description: API token used to authenticate with
  8906. Cloudflare.
  8907. properties:
  8908. key:
  8909. description: The key of the entry in the Secret
  8910. resource's `data` field to be used. Some instances
  8911. of this field may be defaulted, in others
  8912. it may be required.
  8913. type: string
  8914. name:
  8915. description: 'Name of the resource being referred
  8916. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8917. type: string
  8918. required:
  8919. - name
  8920. type: object
  8921. email:
  8922. description: Email of the account, only required
  8923. when using API key based authentication.
  8924. type: string
  8925. type: object
  8926. cnameStrategy:
  8927. description: CNAMEStrategy configures how the DNS01
  8928. provider should handle CNAME records when found in
  8929. DNS zones.
  8930. enum:
  8931. - None
  8932. - Follow
  8933. type: string
  8934. digitalocean:
  8935. description: Use the DigitalOcean DNS API to manage
  8936. DNS01 challenge records.
  8937. properties:
  8938. tokenSecretRef:
  8939. description: A reference to a specific 'key' within
  8940. a Secret resource. In some instances, `key` is
  8941. a required field.
  8942. properties:
  8943. key:
  8944. description: The key of the entry in the Secret
  8945. resource's `data` field to be used. Some instances
  8946. of this field may be defaulted, in others
  8947. it may be required.
  8948. type: string
  8949. name:
  8950. description: 'Name of the resource being referred
  8951. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8952. type: string
  8953. required:
  8954. - name
  8955. type: object
  8956. required:
  8957. - tokenSecretRef
  8958. type: object
  8959. rfc2136:
  8960. description: Use RFC2136 ("Dynamic Updates in the Domain
  8961. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  8962. to manage DNS01 challenge records.
  8963. properties:
  8964. nameserver:
  8965. description: The IP address or hostname of an authoritative
  8966. DNS server supporting RFC2136 in the form host:port.
  8967. If the host is an IPv6 address it must be enclosed
  8968. in square brackets (e.g [2001:db8::1]) ; port
  8969. is optional. This field is required.
  8970. type: string
  8971. tsigAlgorithm:
  8972. description: 'The TSIG Algorithm configured in the
  8973. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  8974. and ``tsigKeyName`` are defined. Supported values
  8975. are (case-insensitive): ``HMACMD5`` (default),
  8976. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  8977. type: string
  8978. tsigKeyName:
  8979. description: The TSIG Key name configured in the
  8980. DNS. If ``tsigSecretSecretRef`` is defined, this
  8981. field is required.
  8982. type: string
  8983. tsigSecretSecretRef:
  8984. description: The name of the secret containing the
  8985. TSIG value. If ``tsigKeyName`` is defined, this
  8986. field is required.
  8987. properties:
  8988. key:
  8989. description: The key of the entry in the Secret
  8990. resource's `data` field to be used. Some instances
  8991. of this field may be defaulted, in others
  8992. it may be required.
  8993. type: string
  8994. name:
  8995. description: 'Name of the resource being referred
  8996. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8997. type: string
  8998. required:
  8999. - name
  9000. type: object
  9001. required:
  9002. - nameserver
  9003. type: object
  9004. route53:
  9005. description: Use the AWS Route53 API to manage DNS01
  9006. challenge records.
  9007. properties:
  9008. accessKeyID:
  9009. description: 'The AccessKeyID is used for authentication.
  9010. If not set we fall-back to using env vars, shared
  9011. credentials file or AWS Instance metadata see:
  9012. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  9013. type: string
  9014. hostedZoneID:
  9015. description: If set, the provider will manage only
  9016. this zone in Route53 and will not do an lookup
  9017. using the route53:ListHostedZonesByName api call.
  9018. type: string
  9019. region:
  9020. description: Always set the region when using AccessKeyID
  9021. and SecretAccessKey
  9022. type: string
  9023. role:
  9024. description: Role is a Role ARN which the Route53
  9025. provider will assume using either the explicit
  9026. credentials AccessKeyID/SecretAccessKey or the
  9027. inferred credentials from environment variables,
  9028. shared credentials file or AWS Instance metadata
  9029. type: string
  9030. secretAccessKeySecretRef:
  9031. description: The SecretAccessKey is used for authentication.
  9032. If not set we fall-back to using env vars, shared
  9033. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  9034. properties:
  9035. key:
  9036. description: The key of the entry in the Secret
  9037. resource's `data` field to be used. Some instances
  9038. of this field may be defaulted, in others
  9039. it may be required.
  9040. type: string
  9041. name:
  9042. description: 'Name of the resource being referred
  9043. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9044. type: string
  9045. required:
  9046. - name
  9047. type: object
  9048. required:
  9049. - region
  9050. type: object
  9051. webhook:
  9052. description: Configure an external webhook based DNS01
  9053. challenge solver to manage DNS01 challenge records.
  9054. properties:
  9055. config:
  9056. description: Additional configuration that should
  9057. be passed to the webhook apiserver when challenges
  9058. are processed. This can contain arbitrary JSON
  9059. data. Secret values should not be specified in
  9060. this stanza. If secret values are needed (e.g.
  9061. credentials for a DNS service), you should use
  9062. a SecretKeySelector to reference a Secret resource.
  9063. For details on the schema of this field, consult
  9064. the webhook provider implementation's documentation.
  9065. x-kubernetes-preserve-unknown-fields: true
  9066. groupName:
  9067. description: The API group name that should be used
  9068. when POSTing ChallengePayload resources to the
  9069. webhook apiserver. This should be the same as
  9070. the GroupName specified in the webhook provider
  9071. implementation.
  9072. type: string
  9073. solverName:
  9074. description: The name of the solver to use, as defined
  9075. in the webhook provider implementation. This will
  9076. typically be the name of the provider, e.g. 'cloudflare'.
  9077. type: string
  9078. required:
  9079. - groupName
  9080. - solverName
  9081. type: object
  9082. type: object
  9083. http01:
  9084. description: Configures cert-manager to attempt to complete
  9085. authorizations by performing the HTTP01 challenge flow.
  9086. It is not possible to obtain certificates for wildcard
  9087. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  9088. mechanism.
  9089. properties:
  9090. ingress:
  9091. description: The ingress based HTTP01 challenge solver
  9092. will solve challenges by creating or modifying Ingress
  9093. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  9094. to 'challenge solver' pods that are provisioned by
  9095. cert-manager for each Challenge to be completed.
  9096. properties:
  9097. class:
  9098. description: The ingress class to use when creating
  9099. Ingress resources to solve ACME challenges that
  9100. use this challenge solver. Only one of 'class'
  9101. or 'name' may be specified.
  9102. type: string
  9103. ingressTemplate:
  9104. description: Optional ingress template used to configure
  9105. the ACME challenge solver ingress used for HTTP01
  9106. challenges
  9107. properties:
  9108. metadata:
  9109. description: ObjectMeta overrides for the ingress
  9110. used to solve HTTP01 challenges. Only the
  9111. 'labels' and 'annotations' fields may be set.
  9112. If labels or annotations overlap with in-built
  9113. values, the values here will override the
  9114. in-built values.
  9115. properties:
  9116. annotations:
  9117. additionalProperties:
  9118. type: string
  9119. description: Annotations that should be
  9120. added to the created ACME HTTP01 solver
  9121. ingress.
  9122. type: object
  9123. labels:
  9124. additionalProperties:
  9125. type: string
  9126. description: Labels that should be added
  9127. to the created ACME HTTP01 solver ingress.
  9128. type: object
  9129. type: object
  9130. type: object
  9131. name:
  9132. description: The name of the ingress resource that
  9133. should have ACME challenge solving routes inserted
  9134. into it in order to solve HTTP01 challenges. This
  9135. is typically used in conjunction with ingress
  9136. controllers like ingress-gce, which maintains
  9137. a 1:1 mapping between external IPs and ingress
  9138. resources.
  9139. type: string
  9140. podTemplate:
  9141. description: Optional pod template used to configure
  9142. the ACME challenge solver pods used for HTTP01
  9143. challenges
  9144. properties:
  9145. metadata:
  9146. description: ObjectMeta overrides for the pod
  9147. used to solve HTTP01 challenges. Only the
  9148. 'labels' and 'annotations' fields may be set.
  9149. If labels or annotations overlap with in-built
  9150. values, the values here will override the
  9151. in-built values.
  9152. properties:
  9153. annotations:
  9154. additionalProperties:
  9155. type: string
  9156. description: Annotations that should be
  9157. added to the create ACME HTTP01 solver
  9158. pods.
  9159. type: object
  9160. labels:
  9161. additionalProperties:
  9162. type: string
  9163. description: Labels that should be added
  9164. to the created ACME HTTP01 solver pods.
  9165. type: object
  9166. type: object
  9167. spec:
  9168. description: PodSpec defines overrides for the
  9169. HTTP01 challenge solver pod. Only the 'priorityClassName',
  9170. 'nodeSelector', 'affinity', 'serviceAccountName'
  9171. and 'tolerations' fields are supported currently.
  9172. All other fields will be ignored.
  9173. properties:
  9174. affinity:
  9175. description: If specified, the pod's scheduling
  9176. constraints
  9177. properties:
  9178. nodeAffinity:
  9179. description: Describes node affinity
  9180. scheduling rules for the pod.
  9181. properties:
  9182. preferredDuringSchedulingIgnoredDuringExecution:
  9183. description: The scheduler will
  9184. prefer to schedule pods to nodes
  9185. that satisfy the affinity expressions
  9186. specified by this field, but it
  9187. may choose a node that violates
  9188. one or more of the expressions.
  9189. The node that is most preferred
  9190. is the one with the greatest sum
  9191. of weights, i.e. for each node
  9192. that meets all of the scheduling
  9193. requirements (resource request,
  9194. requiredDuringScheduling affinity
  9195. expressions, etc.), compute a
  9196. sum by iterating through the elements
  9197. of this field and adding "weight"
  9198. to the sum if the node matches
  9199. the corresponding matchExpressions;
  9200. the node(s) with the highest sum
  9201. are the most preferred.
  9202. items:
  9203. description: An empty preferred
  9204. scheduling term matches all
  9205. objects with implicit weight
  9206. 0 (i.e. it's a no-op). A null
  9207. preferred scheduling term matches
  9208. no objects (i.e. is also a no-op).
  9209. properties:
  9210. preference:
  9211. description: A node selector
  9212. term, associated with the
  9213. corresponding weight.
  9214. properties:
  9215. matchExpressions:
  9216. description: A list of
  9217. node selector requirements
  9218. by node's labels.
  9219. items:
  9220. description: A node
  9221. selector requirement
  9222. is a selector that
  9223. contains values, a
  9224. key, and an operator
  9225. that relates the key
  9226. and values.
  9227. properties:
  9228. key:
  9229. description: The
  9230. label key that
  9231. the selector applies
  9232. to.
  9233. type: string
  9234. operator:
  9235. description: Represents
  9236. a key's relationship
  9237. to a set of values.
  9238. Valid operators
  9239. are In, NotIn,
  9240. Exists, DoesNotExist.
  9241. Gt, and Lt.
  9242. type: string
  9243. values:
  9244. description: An
  9245. array of string
  9246. values. If the
  9247. operator is In
  9248. or NotIn, the
  9249. values array must
  9250. be non-empty.
  9251. If the operator
  9252. is Exists or DoesNotExist,
  9253. the values array
  9254. must be empty.
  9255. If the operator
  9256. is Gt or Lt, the
  9257. values array must
  9258. have a single
  9259. element, which
  9260. will be interpreted
  9261. as an integer.
  9262. This array is
  9263. replaced during
  9264. a strategic merge
  9265. patch.
  9266. items:
  9267. type: string
  9268. type: array
  9269. required:
  9270. - key
  9271. - operator
  9272. type: object
  9273. type: array
  9274. matchFields:
  9275. description: A list of
  9276. node selector requirements
  9277. by node's fields.
  9278. items:
  9279. description: A node
  9280. selector requirement
  9281. is a selector that
  9282. contains values, a
  9283. key, and an operator
  9284. that relates the key
  9285. and values.
  9286. properties:
  9287. key:
  9288. description: The
  9289. label key that
  9290. the selector applies
  9291. to.
  9292. type: string
  9293. operator:
  9294. description: Represents
  9295. a key's relationship
  9296. to a set of values.
  9297. Valid operators
  9298. are In, NotIn,
  9299. Exists, DoesNotExist.
  9300. Gt, and Lt.
  9301. type: string
  9302. values:
  9303. description: An
  9304. array of string
  9305. values. If the
  9306. operator is In
  9307. or NotIn, the
  9308. values array must
  9309. be non-empty.
  9310. If the operator
  9311. is Exists or DoesNotExist,
  9312. the values array
  9313. must be empty.
  9314. If the operator
  9315. is Gt or Lt, the
  9316. values array must
  9317. have a single
  9318. element, which
  9319. will be interpreted
  9320. as an integer.
  9321. This array is
  9322. replaced during
  9323. a strategic merge
  9324. patch.
  9325. items:
  9326. type: string
  9327. type: array
  9328. required:
  9329. - key
  9330. - operator
  9331. type: object
  9332. type: array
  9333. type: object
  9334. weight:
  9335. description: Weight associated
  9336. with matching the corresponding
  9337. nodeSelectorTerm, in the
  9338. range 1-100.
  9339. format: int32
  9340. type: integer
  9341. required:
  9342. - preference
  9343. - weight
  9344. type: object
  9345. type: array
  9346. requiredDuringSchedulingIgnoredDuringExecution:
  9347. description: If the affinity requirements
  9348. specified by this field are not
  9349. met at scheduling time, the pod
  9350. will not be scheduled onto the
  9351. node. If the affinity requirements
  9352. specified by this field cease
  9353. to be met at some point during
  9354. pod execution (e.g. due to an
  9355. update), the system may or may
  9356. not try to eventually evict the
  9357. pod from its node.
  9358. properties:
  9359. nodeSelectorTerms:
  9360. description: Required. A list
  9361. of node selector terms. The
  9362. terms are ORed.
  9363. items:
  9364. description: A null or empty
  9365. node selector term matches
  9366. no objects. The requirements
  9367. of them are ANDed. The TopologySelectorTerm
  9368. type implements a subset
  9369. of the NodeSelectorTerm.
  9370. properties:
  9371. matchExpressions:
  9372. description: A list of
  9373. node selector requirements
  9374. by node's labels.
  9375. items:
  9376. description: A node
  9377. selector requirement
  9378. is a selector that
  9379. contains values, a
  9380. key, and an operator
  9381. that relates the key
  9382. and values.
  9383. properties:
  9384. key:
  9385. description: The
  9386. label key that
  9387. the selector applies
  9388. to.
  9389. type: string
  9390. operator:
  9391. description: Represents
  9392. a key's relationship
  9393. to a set of values.
  9394. Valid operators
  9395. are In, NotIn,
  9396. Exists, DoesNotExist.
  9397. Gt, and Lt.
  9398. type: string
  9399. values:
  9400. description: An
  9401. array of string
  9402. values. If the
  9403. operator is In
  9404. or NotIn, the
  9405. values array must
  9406. be non-empty.
  9407. If the operator
  9408. is Exists or DoesNotExist,
  9409. the values array
  9410. must be empty.
  9411. If the operator
  9412. is Gt or Lt, the
  9413. values array must
  9414. have a single
  9415. element, which
  9416. will be interpreted
  9417. as an integer.
  9418. This array is
  9419. replaced during
  9420. a strategic merge
  9421. patch.
  9422. items:
  9423. type: string
  9424. type: array
  9425. required:
  9426. - key
  9427. - operator
  9428. type: object
  9429. type: array
  9430. matchFields:
  9431. description: A list of
  9432. node selector requirements
  9433. by node's fields.
  9434. items:
  9435. description: A node
  9436. selector requirement
  9437. is a selector that
  9438. contains values, a
  9439. key, and an operator
  9440. that relates the key
  9441. and values.
  9442. properties:
  9443. key:
  9444. description: The
  9445. label key that
  9446. the selector applies
  9447. to.
  9448. type: string
  9449. operator:
  9450. description: Represents
  9451. a key's relationship
  9452. to a set of values.
  9453. Valid operators
  9454. are In, NotIn,
  9455. Exists, DoesNotExist.
  9456. Gt, and Lt.
  9457. type: string
  9458. values:
  9459. description: An
  9460. array of string
  9461. values. If the
  9462. operator is In
  9463. or NotIn, the
  9464. values array must
  9465. be non-empty.
  9466. If the operator
  9467. is Exists or DoesNotExist,
  9468. the values array
  9469. must be empty.
  9470. If the operator
  9471. is Gt or Lt, the
  9472. values array must
  9473. have a single
  9474. element, which
  9475. will be interpreted
  9476. as an integer.
  9477. This array is
  9478. replaced during
  9479. a strategic merge
  9480. patch.
  9481. items:
  9482. type: string
  9483. type: array
  9484. required:
  9485. - key
  9486. - operator
  9487. type: object
  9488. type: array
  9489. type: object
  9490. type: array
  9491. required:
  9492. - nodeSelectorTerms
  9493. type: object
  9494. type: object
  9495. podAffinity:
  9496. description: Describes pod affinity
  9497. scheduling rules (e.g. co-locate this
  9498. pod in the same node, zone, etc. as
  9499. some other pod(s)).
  9500. properties:
  9501. preferredDuringSchedulingIgnoredDuringExecution:
  9502. description: The scheduler will
  9503. prefer to schedule pods to nodes
  9504. that satisfy the affinity expressions
  9505. specified by this field, but it
  9506. may choose a node that violates
  9507. one or more of the expressions.
  9508. The node that is most preferred
  9509. is the one with the greatest sum
  9510. of weights, i.e. for each node
  9511. that meets all of the scheduling
  9512. requirements (resource request,
  9513. requiredDuringScheduling affinity
  9514. expressions, etc.), compute a
  9515. sum by iterating through the elements
  9516. of this field and adding "weight"
  9517. to the sum if the node has pods
  9518. which matches the corresponding
  9519. podAffinityTerm; the node(s) with
  9520. the highest sum are the most preferred.
  9521. items:
  9522. description: The weights of all
  9523. of the matched WeightedPodAffinityTerm
  9524. fields are added per-node to
  9525. find the most preferred node(s)
  9526. properties:
  9527. podAffinityTerm:
  9528. description: Required. A pod
  9529. affinity term, associated
  9530. with the corresponding weight.
  9531. properties:
  9532. labelSelector:
  9533. description: A label query
  9534. over a set of resources,
  9535. in this case pods.
  9536. properties:
  9537. matchExpressions:
  9538. description: matchExpressions
  9539. is a list of label
  9540. selector requirements.
  9541. The requirements
  9542. are ANDed.
  9543. items:
  9544. description: A label
  9545. selector requirement
  9546. is a selector
  9547. that contains
  9548. values, a key,
  9549. and an operator
  9550. that relates the
  9551. key and values.
  9552. properties:
  9553. key:
  9554. description: key
  9555. is the label
  9556. key that the
  9557. selector applies
  9558. to.
  9559. type: string
  9560. operator:
  9561. description: operator
  9562. represents
  9563. a key's relationship
  9564. to a set of
  9565. values. Valid
  9566. operators
  9567. are In, NotIn,
  9568. Exists and
  9569. DoesNotExist.
  9570. type: string
  9571. values:
  9572. description: values
  9573. is an array
  9574. of string
  9575. values. If
  9576. the operator
  9577. is In or NotIn,
  9578. the values
  9579. array must
  9580. be non-empty.
  9581. If the operator
  9582. is Exists
  9583. or DoesNotExist,
  9584. the values
  9585. array must
  9586. be empty.
  9587. This array
  9588. is replaced
  9589. during a strategic
  9590. merge patch.
  9591. items:
  9592. type: string
  9593. type: array
  9594. required:
  9595. - key
  9596. - operator
  9597. type: object
  9598. type: array
  9599. matchLabels:
  9600. additionalProperties:
  9601. type: string
  9602. description: matchLabels
  9603. is a map of {key,value}
  9604. pairs. A single
  9605. {key,value} in the
  9606. matchLabels map
  9607. is equivalent to
  9608. an element of matchExpressions,
  9609. whose key field
  9610. is "key", the operator
  9611. is "In", and the
  9612. values array contains
  9613. only "value". The
  9614. requirements are
  9615. ANDed.
  9616. type: object
  9617. type: object
  9618. namespaces:
  9619. description: namespaces
  9620. specifies which namespaces
  9621. the labelSelector applies
  9622. to (matches against);
  9623. null or empty list means
  9624. "this pod's namespace"
  9625. items:
  9626. type: string
  9627. type: array
  9628. topologyKey:
  9629. description: This pod
  9630. should be co-located
  9631. (affinity) or not co-located
  9632. (anti-affinity) with
  9633. the pods matching the
  9634. labelSelector in the
  9635. specified namespaces,
  9636. where co-located is
  9637. defined as running on
  9638. a node whose value of
  9639. the label with key topologyKey
  9640. matches that of any
  9641. node on which any of
  9642. the selected pods is
  9643. running. Empty topologyKey
  9644. is not allowed.
  9645. type: string
  9646. required:
  9647. - topologyKey
  9648. type: object
  9649. weight:
  9650. description: weight associated
  9651. with matching the corresponding
  9652. podAffinityTerm, in the
  9653. range 1-100.
  9654. format: int32
  9655. type: integer
  9656. required:
  9657. - podAffinityTerm
  9658. - weight
  9659. type: object
  9660. type: array
  9661. requiredDuringSchedulingIgnoredDuringExecution:
  9662. description: If the affinity requirements
  9663. specified by this field are not
  9664. met at scheduling time, the pod
  9665. will not be scheduled onto the
  9666. node. If the affinity requirements
  9667. specified by this field cease
  9668. to be met at some point during
  9669. pod execution (e.g. due to a pod
  9670. label update), the system may
  9671. or may not try to eventually evict
  9672. the pod from its node. When there
  9673. are multiple elements, the lists
  9674. of nodes corresponding to each
  9675. podAffinityTerm are intersected,
  9676. i.e. all terms must be satisfied.
  9677. items:
  9678. description: Defines a set of
  9679. pods (namely those matching
  9680. the labelSelector relative to
  9681. the given namespace(s)) that
  9682. this pod should be co-located
  9683. (affinity) or not co-located
  9684. (anti-affinity) with, where
  9685. co-located is defined as running
  9686. on a node whose value of the
  9687. label with key <topologyKey>
  9688. matches that of any node on
  9689. which a pod of the set of pods
  9690. is running
  9691. properties:
  9692. labelSelector:
  9693. description: A label query
  9694. over a set of resources,
  9695. in this case pods.
  9696. properties:
  9697. matchExpressions:
  9698. description: matchExpressions
  9699. is a list of label selector
  9700. requirements. The requirements
  9701. are ANDed.
  9702. items:
  9703. description: A label
  9704. selector requirement
  9705. is a selector that
  9706. contains values, a
  9707. key, and an operator
  9708. that relates the key
  9709. and values.
  9710. properties:
  9711. key:
  9712. description: key
  9713. is the label key
  9714. that the selector
  9715. applies to.
  9716. type: string
  9717. operator:
  9718. description: operator
  9719. represents a key's
  9720. relationship to
  9721. a set of values.
  9722. Valid operators
  9723. are In, NotIn,
  9724. Exists and DoesNotExist.
  9725. type: string
  9726. values:
  9727. description: values
  9728. is an array of
  9729. string values.
  9730. If the operator
  9731. is In or NotIn,
  9732. the values array
  9733. must be non-empty.
  9734. If the operator
  9735. is Exists or DoesNotExist,
  9736. the values array
  9737. must be empty.
  9738. This array is
  9739. replaced during
  9740. a strategic merge
  9741. patch.
  9742. items:
  9743. type: string
  9744. type: array
  9745. required:
  9746. - key
  9747. - operator
  9748. type: object
  9749. type: array
  9750. matchLabels:
  9751. additionalProperties:
  9752. type: string
  9753. description: matchLabels
  9754. is a map of {key,value}
  9755. pairs. A single {key,value}
  9756. in the matchLabels map
  9757. is equivalent to an
  9758. element of matchExpressions,
  9759. whose key field is "key",
  9760. the operator is "In",
  9761. and the values array
  9762. contains only "value".
  9763. The requirements are
  9764. ANDed.
  9765. type: object
  9766. type: object
  9767. namespaces:
  9768. description: namespaces specifies
  9769. which namespaces the labelSelector
  9770. applies to (matches against);
  9771. null or empty list means
  9772. "this pod's namespace"
  9773. items:
  9774. type: string
  9775. type: array
  9776. topologyKey:
  9777. description: This pod should
  9778. be co-located (affinity)
  9779. or not co-located (anti-affinity)
  9780. with the pods matching the
  9781. labelSelector in the specified
  9782. namespaces, where co-located
  9783. is defined as running on
  9784. a node whose value of the
  9785. label with key topologyKey
  9786. matches that of any node
  9787. on which any of the selected
  9788. pods is running. Empty topologyKey
  9789. is not allowed.
  9790. type: string
  9791. required:
  9792. - topologyKey
  9793. type: object
  9794. type: array
  9795. type: object
  9796. podAntiAffinity:
  9797. description: Describes pod anti-affinity
  9798. scheduling rules (e.g. avoid putting
  9799. this pod in the same node, zone, etc.
  9800. as some other pod(s)).
  9801. properties:
  9802. preferredDuringSchedulingIgnoredDuringExecution:
  9803. description: The scheduler will
  9804. prefer to schedule pods to nodes
  9805. that satisfy the anti-affinity
  9806. expressions specified by this
  9807. field, but it may choose a node
  9808. that violates one or more of the
  9809. expressions. The node that is
  9810. most preferred is the one with
  9811. the greatest sum of weights, i.e.
  9812. for each node that meets all of
  9813. the scheduling requirements (resource
  9814. request, requiredDuringScheduling
  9815. anti-affinity expressions, etc.),
  9816. compute a sum by iterating through
  9817. the elements of this field and
  9818. adding "weight" to the sum if
  9819. the node has pods which matches
  9820. the corresponding podAffinityTerm;
  9821. the node(s) with the highest sum
  9822. are the most preferred.
  9823. items:
  9824. description: The weights of all
  9825. of the matched WeightedPodAffinityTerm
  9826. fields are added per-node to
  9827. find the most preferred node(s)
  9828. properties:
  9829. podAffinityTerm:
  9830. description: Required. A pod
  9831. affinity term, associated
  9832. with the corresponding weight.
  9833. properties:
  9834. labelSelector:
  9835. description: A label query
  9836. over a set of resources,
  9837. in this case pods.
  9838. properties:
  9839. matchExpressions:
  9840. description: matchExpressions
  9841. is a list of label
  9842. selector requirements.
  9843. The requirements
  9844. are ANDed.
  9845. items:
  9846. description: A label
  9847. selector requirement
  9848. is a selector
  9849. that contains
  9850. values, a key,
  9851. and an operator
  9852. that relates the
  9853. key and values.
  9854. properties:
  9855. key:
  9856. description: key
  9857. is the label
  9858. key that the
  9859. selector applies
  9860. to.
  9861. type: string
  9862. operator:
  9863. description: operator
  9864. represents
  9865. a key's relationship
  9866. to a set of
  9867. values. Valid
  9868. operators
  9869. are In, NotIn,
  9870. Exists and
  9871. DoesNotExist.
  9872. type: string
  9873. values:
  9874. description: values
  9875. is an array
  9876. of string
  9877. values. If
  9878. the operator
  9879. is In or NotIn,
  9880. the values
  9881. array must
  9882. be non-empty.
  9883. If the operator
  9884. is Exists
  9885. or DoesNotExist,
  9886. the values
  9887. array must
  9888. be empty.
  9889. This array
  9890. is replaced
  9891. during a strategic
  9892. merge patch.
  9893. items:
  9894. type: string
  9895. type: array
  9896. required:
  9897. - key
  9898. - operator
  9899. type: object
  9900. type: array
  9901. matchLabels:
  9902. additionalProperties:
  9903. type: string
  9904. description: matchLabels
  9905. is a map of {key,value}
  9906. pairs. A single
  9907. {key,value} in the
  9908. matchLabels map
  9909. is equivalent to
  9910. an element of matchExpressions,
  9911. whose key field
  9912. is "key", the operator
  9913. is "In", and the
  9914. values array contains
  9915. only "value". The
  9916. requirements are
  9917. ANDed.
  9918. type: object
  9919. type: object
  9920. namespaces:
  9921. description: namespaces
  9922. specifies which namespaces
  9923. the labelSelector applies
  9924. to (matches against);
  9925. null or empty list means
  9926. "this pod's namespace"
  9927. items:
  9928. type: string
  9929. type: array
  9930. topologyKey:
  9931. description: This pod
  9932. should be co-located
  9933. (affinity) or not co-located
  9934. (anti-affinity) with
  9935. the pods matching the
  9936. labelSelector in the
  9937. specified namespaces,
  9938. where co-located is
  9939. defined as running on
  9940. a node whose value of
  9941. the label with key topologyKey
  9942. matches that of any
  9943. node on which any of
  9944. the selected pods is
  9945. running. Empty topologyKey
  9946. is not allowed.
  9947. type: string
  9948. required:
  9949. - topologyKey
  9950. type: object
  9951. weight:
  9952. description: weight associated
  9953. with matching the corresponding
  9954. podAffinityTerm, in the
  9955. range 1-100.
  9956. format: int32
  9957. type: integer
  9958. required:
  9959. - podAffinityTerm
  9960. - weight
  9961. type: object
  9962. type: array
  9963. requiredDuringSchedulingIgnoredDuringExecution:
  9964. description: If the anti-affinity
  9965. requirements specified by this
  9966. field are not met at scheduling
  9967. time, the pod will not be scheduled
  9968. onto the node. If the anti-affinity
  9969. requirements specified by this
  9970. field cease to be met at some
  9971. point during pod execution (e.g.
  9972. due to a pod label update), the
  9973. system may or may not try to eventually
  9974. evict the pod from its node. When
  9975. there are multiple elements, the
  9976. lists of nodes corresponding to
  9977. each podAffinityTerm are intersected,
  9978. i.e. all terms must be satisfied.
  9979. items:
  9980. description: Defines a set of
  9981. pods (namely those matching
  9982. the labelSelector relative to
  9983. the given namespace(s)) that
  9984. this pod should be co-located
  9985. (affinity) or not co-located
  9986. (anti-affinity) with, where
  9987. co-located is defined as running
  9988. on a node whose value of the
  9989. label with key <topologyKey>
  9990. matches that of any node on
  9991. which a pod of the set of pods
  9992. is running
  9993. properties:
  9994. labelSelector:
  9995. description: A label query
  9996. over a set of resources,
  9997. in this case pods.
  9998. properties:
  9999. matchExpressions:
  10000. description: matchExpressions
  10001. is a list of label selector
  10002. requirements. The requirements
  10003. are ANDed.
  10004. items:
  10005. description: A label
  10006. selector requirement
  10007. is a selector that
  10008. contains values, a
  10009. key, and an operator
  10010. that relates the key
  10011. and values.
  10012. properties:
  10013. key:
  10014. description: key
  10015. is the label key
  10016. that the selector
  10017. applies to.
  10018. type: string
  10019. operator:
  10020. description: operator
  10021. represents a key's
  10022. relationship to
  10023. a set of values.
  10024. Valid operators
  10025. are In, NotIn,
  10026. Exists and DoesNotExist.
  10027. type: string
  10028. values:
  10029. description: values
  10030. is an array of
  10031. string values.
  10032. If the operator
  10033. is In or NotIn,
  10034. the values array
  10035. must be non-empty.
  10036. If the operator
  10037. is Exists or DoesNotExist,
  10038. the values array
  10039. must be empty.
  10040. This array is
  10041. replaced during
  10042. a strategic merge
  10043. patch.
  10044. items:
  10045. type: string
  10046. type: array
  10047. required:
  10048. - key
  10049. - operator
  10050. type: object
  10051. type: array
  10052. matchLabels:
  10053. additionalProperties:
  10054. type: string
  10055. description: matchLabels
  10056. is a map of {key,value}
  10057. pairs. A single {key,value}
  10058. in the matchLabels map
  10059. is equivalent to an
  10060. element of matchExpressions,
  10061. whose key field is "key",
  10062. the operator is "In",
  10063. and the values array
  10064. contains only "value".
  10065. The requirements are
  10066. ANDed.
  10067. type: object
  10068. type: object
  10069. namespaces:
  10070. description: namespaces specifies
  10071. which namespaces the labelSelector
  10072. applies to (matches against);
  10073. null or empty list means
  10074. "this pod's namespace"
  10075. items:
  10076. type: string
  10077. type: array
  10078. topologyKey:
  10079. description: This pod should
  10080. be co-located (affinity)
  10081. or not co-located (anti-affinity)
  10082. with the pods matching the
  10083. labelSelector in the specified
  10084. namespaces, where co-located
  10085. is defined as running on
  10086. a node whose value of the
  10087. label with key topologyKey
  10088. matches that of any node
  10089. on which any of the selected
  10090. pods is running. Empty topologyKey
  10091. is not allowed.
  10092. type: string
  10093. required:
  10094. - topologyKey
  10095. type: object
  10096. type: array
  10097. type: object
  10098. type: object
  10099. nodeSelector:
  10100. additionalProperties:
  10101. type: string
  10102. description: 'NodeSelector is a selector
  10103. which must be true for the pod to fit
  10104. on a node. Selector which must match a
  10105. node''s labels for the pod to be scheduled
  10106. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  10107. type: object
  10108. priorityClassName:
  10109. description: If specified, the pod's priorityClassName.
  10110. type: string
  10111. serviceAccountName:
  10112. description: If specified, the pod's service
  10113. account
  10114. type: string
  10115. tolerations:
  10116. description: If specified, the pod's tolerations.
  10117. items:
  10118. description: The pod this Toleration is
  10119. attached to tolerates any taint that
  10120. matches the triple <key,value,effect>
  10121. using the matching operator <operator>.
  10122. properties:
  10123. effect:
  10124. description: Effect indicates the
  10125. taint effect to match. Empty means
  10126. match all taint effects. When specified,
  10127. allowed values are NoSchedule, PreferNoSchedule
  10128. and NoExecute.
  10129. type: string
  10130. key:
  10131. description: Key is the taint key
  10132. that the toleration applies to.
  10133. Empty means match all taint keys.
  10134. If the key is empty, operator must
  10135. be Exists; this combination means
  10136. to match all values and all keys.
  10137. type: string
  10138. operator:
  10139. description: Operator represents a
  10140. key's relationship to the value.
  10141. Valid operators are Exists and Equal.
  10142. Defaults to Equal. Exists is equivalent
  10143. to wildcard for value, so that a
  10144. pod can tolerate all taints of a
  10145. particular category.
  10146. type: string
  10147. tolerationSeconds:
  10148. description: TolerationSeconds represents
  10149. the period of time the toleration
  10150. (which must be of effect NoExecute,
  10151. otherwise this field is ignored)
  10152. tolerates the taint. By default,
  10153. it is not set, which means tolerate
  10154. the taint forever (do not evict).
  10155. Zero and negative values will be
  10156. treated as 0 (evict immediately)
  10157. by the system.
  10158. format: int64
  10159. type: integer
  10160. value:
  10161. description: Value is the taint value
  10162. the toleration matches to. If the
  10163. operator is Exists, the value should
  10164. be empty, otherwise just a regular
  10165. string.
  10166. type: string
  10167. type: object
  10168. type: array
  10169. type: object
  10170. type: object
  10171. serviceType:
  10172. description: Optional service type for Kubernetes
  10173. solver service
  10174. type: string
  10175. type: object
  10176. type: object
  10177. selector:
  10178. description: Selector selects a set of DNSNames on the Certificate
  10179. resource that should be solved using this challenge solver.
  10180. If not specified, the solver will be treated as the 'default'
  10181. solver with the lowest priority, i.e. if any other solver
  10182. has a more specific match, it will be used instead.
  10183. properties:
  10184. dnsNames:
  10185. description: List of DNSNames that this solver will
  10186. be used to solve. If specified and a match is found,
  10187. a dnsNames selector will take precedence over a dnsZones
  10188. selector. If multiple solvers match with the same
  10189. dnsNames value, the solver with the most matching
  10190. labels in matchLabels will be selected. If neither
  10191. has more matches, the solver defined earlier in the
  10192. list will be selected.
  10193. items:
  10194. type: string
  10195. type: array
  10196. dnsZones:
  10197. description: List of DNSZones that this solver will
  10198. be used to solve. The most specific DNS zone match
  10199. specified here will take precedence over other DNS
  10200. zone matches, so a solver specifying sys.example.com
  10201. will be selected over one specifying example.com for
  10202. the domain www.sys.example.com. If multiple solvers
  10203. match with the same dnsZones value, the solver with
  10204. the most matching labels in matchLabels will be selected.
  10205. If neither has more matches, the solver defined earlier
  10206. in the list will be selected.
  10207. items:
  10208. type: string
  10209. type: array
  10210. matchLabels:
  10211. additionalProperties:
  10212. type: string
  10213. description: A label selector that is used to refine
  10214. the set of certificate's that this challenge solver
  10215. will apply to.
  10216. type: object
  10217. type: object
  10218. type: object
  10219. type: array
  10220. required:
  10221. - privateKeySecretRef
  10222. - server
  10223. type: object
  10224. ca:
  10225. description: CA configures this issuer to sign certificates using
  10226. a signing CA keypair stored in a Secret resource. This is used to
  10227. build internal PKIs that are managed by cert-manager.
  10228. properties:
  10229. crlDistributionPoints:
  10230. description: The CRL distribution points is an X.509 v3 certificate
  10231. extension which identifies the location of the CRL from which
  10232. the revocation of this certificate can be checked. If not set,
  10233. certificates will be issued without distribution points set.
  10234. items:
  10235. type: string
  10236. type: array
  10237. secretName:
  10238. description: SecretName is the name of the secret used to sign
  10239. Certificates issued by this Issuer.
  10240. type: string
  10241. required:
  10242. - secretName
  10243. type: object
  10244. selfSigned:
  10245. description: SelfSigned configures this issuer to 'self sign' certificates
  10246. using the private key used to create the CertificateRequest object.
  10247. properties:
  10248. crlDistributionPoints:
  10249. description: The CRL distribution points is an X.509 v3 certificate
  10250. extension which identifies the location of the CRL from which
  10251. the revocation of this certificate can be checked. If not set
  10252. certificate will be issued without CDP. Values are strings.
  10253. items:
  10254. type: string
  10255. type: array
  10256. type: object
  10257. vault:
  10258. description: Vault configures this issuer to sign certificates using
  10259. a HashiCorp Vault PKI backend.
  10260. properties:
  10261. auth:
  10262. description: Auth configures how cert-manager authenticates with
  10263. the Vault server.
  10264. properties:
  10265. appRole:
  10266. description: AppRole authenticates with Vault using the App
  10267. Role auth mechanism, with the role and secret stored in
  10268. a Kubernetes Secret resource.
  10269. properties:
  10270. path:
  10271. description: 'Path where the App Role authentication backend
  10272. is mounted in Vault, e.g: "approle"'
  10273. type: string
  10274. roleId:
  10275. description: RoleID configured in the App Role authentication
  10276. backend when setting up the authentication backend in
  10277. Vault.
  10278. type: string
  10279. secretRef:
  10280. description: Reference to a key in a Secret that contains
  10281. the App Role secret used to authenticate with Vault.
  10282. The `key` field must be specified and denotes which
  10283. entry within the Secret resource is used as the app
  10284. role secret.
  10285. properties:
  10286. key:
  10287. description: The key of the entry in the Secret resource's
  10288. `data` field to be used. Some instances of this
  10289. field may be defaulted, in others it may be required.
  10290. type: string
  10291. name:
  10292. description: 'Name of the resource being referred
  10293. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10294. type: string
  10295. required:
  10296. - name
  10297. type: object
  10298. required:
  10299. - path
  10300. - roleId
  10301. - secretRef
  10302. type: object
  10303. kubernetes:
  10304. description: Kubernetes authenticates with Vault by passing
  10305. the ServiceAccount token stored in the named Secret resource
  10306. to the Vault server.
  10307. properties:
  10308. mountPath:
  10309. description: The Vault mountPath here is the mount path
  10310. to use when authenticating with Vault. For example,
  10311. setting a value to `/v1/auth/foo`, will use the path
  10312. `/v1/auth/foo/login` to authenticate with Vault. If
  10313. unspecified, the default value "/v1/auth/kubernetes"
  10314. will be used.
  10315. type: string
  10316. role:
  10317. description: A required field containing the Vault Role
  10318. to assume. A Role binds a Kubernetes ServiceAccount
  10319. with a set of Vault policies.
  10320. type: string
  10321. secretRef:
  10322. description: The required Secret field containing a Kubernetes
  10323. ServiceAccount JWT used for authenticating with Vault.
  10324. Use of 'ambient credentials' is not supported.
  10325. properties:
  10326. key:
  10327. description: The key of the entry in the Secret resource's
  10328. `data` field to be used. Some instances of this
  10329. field may be defaulted, in others it may be required.
  10330. type: string
  10331. name:
  10332. description: 'Name of the resource being referred
  10333. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10334. type: string
  10335. required:
  10336. - name
  10337. type: object
  10338. required:
  10339. - role
  10340. - secretRef
  10341. type: object
  10342. tokenSecretRef:
  10343. description: TokenSecretRef authenticates with Vault by presenting
  10344. a token.
  10345. properties:
  10346. key:
  10347. description: The key of the entry in the Secret resource's
  10348. `data` field to be used. Some instances of this field
  10349. may be defaulted, in others it may be required.
  10350. type: string
  10351. name:
  10352. description: 'Name of the resource being referred to.
  10353. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10354. type: string
  10355. required:
  10356. - name
  10357. type: object
  10358. type: object
  10359. caBundle:
  10360. description: PEM encoded CA bundle used to validate Vault server
  10361. certificate. Only used if the Server URL is using HTTPS protocol.
  10362. This parameter is ignored for plain HTTP protocol connection.
  10363. If not set the system root certificates are used to validate
  10364. the TLS connection.
  10365. format: byte
  10366. type: string
  10367. namespace:
  10368. description: 'Name of the vault namespace. Namespaces is a set
  10369. of features within Vault Enterprise that allows Vault environments
  10370. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  10371. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  10372. type: string
  10373. path:
  10374. description: 'Path is the mount path of the Vault PKI backend''s
  10375. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  10376. type: string
  10377. server:
  10378. description: 'Server is the connection address for the Vault server,
  10379. e.g: "https://vault.example.com:8200".'
  10380. type: string
  10381. required:
  10382. - auth
  10383. - path
  10384. - server
  10385. type: object
  10386. venafi:
  10387. description: Venafi configures this issuer to sign certificates using
  10388. a Venafi TPP or Venafi Cloud policy zone.
  10389. properties:
  10390. cloud:
  10391. description: Cloud specifies the Venafi cloud configuration settings.
  10392. Only one of TPP or Cloud may be specified.
  10393. properties:
  10394. apiTokenSecretRef:
  10395. description: APITokenSecretRef is a secret key selector for
  10396. the Venafi Cloud API token.
  10397. properties:
  10398. key:
  10399. description: The key of the entry in the Secret resource's
  10400. `data` field to be used. Some instances of this field
  10401. may be defaulted, in others it may be required.
  10402. type: string
  10403. name:
  10404. description: 'Name of the resource being referred to.
  10405. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10406. type: string
  10407. required:
  10408. - name
  10409. type: object
  10410. url:
  10411. description: URL is the base URL for Venafi Cloud. Defaults
  10412. to "https://api.venafi.cloud/v1".
  10413. type: string
  10414. required:
  10415. - apiTokenSecretRef
  10416. type: object
  10417. tpp:
  10418. description: TPP specifies Trust Protection Platform configuration
  10419. settings. Only one of TPP or Cloud may be specified.
  10420. properties:
  10421. caBundle:
  10422. description: CABundle is a PEM encoded TLS certificate to
  10423. use to verify connections to the TPP instance. If specified,
  10424. system roots will not be used and the issuing CA for the
  10425. TPP instance must be verifiable using the provided root.
  10426. If not specified, the connection will be verified using
  10427. the cert-manager system root certificates.
  10428. format: byte
  10429. type: string
  10430. credentialsRef:
  10431. description: CredentialsRef is a reference to a Secret containing
  10432. the username and password for the TPP server. The secret
  10433. must contain two keys, 'username' and 'password'.
  10434. properties:
  10435. name:
  10436. description: 'Name of the resource being referred to.
  10437. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10438. type: string
  10439. required:
  10440. - name
  10441. type: object
  10442. url:
  10443. description: 'URL is the base URL for the vedsdk endpoint
  10444. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  10445. type: string
  10446. required:
  10447. - credentialsRef
  10448. - url
  10449. type: object
  10450. zone:
  10451. description: Zone is the Venafi Policy Zone to use for this issuer.
  10452. All requests made to the Venafi platform will be restricted
  10453. by the named zone policy. This field is required.
  10454. type: string
  10455. required:
  10456. - zone
  10457. type: object
  10458. type: object
  10459. status:
  10460. description: Status of the ClusterIssuer. This is set and managed automatically.
  10461. properties:
  10462. acme:
  10463. description: ACME specific status options. This field should only
  10464. be set if the Issuer is configured to use an ACME server to issue
  10465. certificates.
  10466. properties:
  10467. lastRegisteredEmail:
  10468. description: LastRegisteredEmail is the email associated with
  10469. the latest registered ACME account, in order to track changes
  10470. made to registered account associated with the Issuer
  10471. type: string
  10472. uri:
  10473. description: URI is the unique account identifier, which can also
  10474. be used to retrieve account details from the CA
  10475. type: string
  10476. type: object
  10477. conditions:
  10478. description: List of status conditions to indicate the status of a
  10479. CertificateRequest. Known condition types are `Ready`.
  10480. items:
  10481. description: IssuerCondition contains condition information for
  10482. an Issuer.
  10483. properties:
  10484. lastTransitionTime:
  10485. description: LastTransitionTime is the timestamp corresponding
  10486. to the last status change of this condition.
  10487. format: date-time
  10488. type: string
  10489. message:
  10490. description: Message is a human readable description of the
  10491. details of the last transition, complementing reason.
  10492. type: string
  10493. reason:
  10494. description: Reason is a brief machine readable explanation
  10495. for the condition's last transition.
  10496. type: string
  10497. status:
  10498. description: Status of the condition, one of ('True', 'False',
  10499. 'Unknown').
  10500. enum:
  10501. - "True"
  10502. - "False"
  10503. - Unknown
  10504. type: string
  10505. type:
  10506. description: Type of the condition, known values are ('Ready').
  10507. type: string
  10508. required:
  10509. - status
  10510. - type
  10511. type: object
  10512. type: array
  10513. type: object
  10514. type: object
  10515. served: true
  10516. storage: false
  10517. subresources:
  10518. status: {}
  10519. - additionalPrinterColumns:
  10520. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  10521. name: Ready
  10522. type: string
  10523. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  10524. name: Status
  10525. priority: 1
  10526. type: string
  10527. - description: CreationTimestamp is a timestamp representing the server time when
  10528. this object was created. It is not guaranteed to be set in happens-before
  10529. order across separate operations. Clients may not set this value. It is represented
  10530. in RFC3339 form and is in UTC.
  10531. jsonPath: .metadata.creationTimestamp
  10532. name: Age
  10533. type: date
  10534. name: v1alpha3
  10535. schema:
  10536. openAPIV3Schema:
  10537. description: A ClusterIssuer represents a certificate issuing authority which
  10538. can be referenced as part of `issuerRef` fields. It is similar to an Issuer,
  10539. however it is cluster-scoped and therefore can be referenced by resources
  10540. that exist in *any* namespace, not just the same namespace as the referent.
  10541. properties:
  10542. apiVersion:
  10543. description: 'APIVersion defines the versioned schema of this representation
  10544. of an object. Servers should convert recognized schemas to the latest
  10545. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  10546. type: string
  10547. kind:
  10548. description: 'Kind is a string value representing the REST resource this
  10549. object represents. Servers may infer this from the endpoint the client
  10550. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  10551. type: string
  10552. metadata:
  10553. type: object
  10554. spec:
  10555. description: Desired state of the ClusterIssuer resource.
  10556. properties:
  10557. acme:
  10558. description: ACME configures this issuer to communicate with a RFC8555
  10559. (ACME) server to obtain signed x509 certificates.
  10560. properties:
  10561. disableAccountKeyGeneration:
  10562. description: Enables or disables generating a new ACME account
  10563. key. If true, the Issuer resource will *not* request a new account
  10564. but will expect the account key to be supplied via an existing
  10565. secret. If false, the cert-manager system will generate a new
  10566. ACME account key for the Issuer. Defaults to false.
  10567. type: boolean
  10568. email:
  10569. description: Email is the email address to be associated with
  10570. the ACME account. This field is optional, but it is strongly
  10571. recommended to be set. It will be used to contact you in case
  10572. of issues with your account or certificates, including expiry
  10573. notification emails. This field may be updated after the account
  10574. is initially registered.
  10575. type: string
  10576. externalAccountBinding:
  10577. description: ExternalAccountBinding is a reference to a CA external
  10578. account of the ACME server. If set, upon registration cert-manager
  10579. will attempt to associate the given external account credentials
  10580. with the registered ACME account.
  10581. properties:
  10582. keyAlgorithm:
  10583. description: keyAlgorithm is the MAC key algorithm that the
  10584. key is used for. Valid values are "HS256", "HS384" and "HS512".
  10585. enum:
  10586. - HS256
  10587. - HS384
  10588. - HS512
  10589. type: string
  10590. keyID:
  10591. description: keyID is the ID of the CA key that the External
  10592. Account is bound to.
  10593. type: string
  10594. keySecretRef:
  10595. description: keySecretRef is a Secret Key Selector referencing
  10596. a data item in a Kubernetes Secret which holds the symmetric
  10597. MAC key of the External Account Binding. The `key` is the
  10598. index string that is paired with the key data in the Secret
  10599. and should not be confused with the key data itself, or
  10600. indeed with the External Account Binding keyID above. The
  10601. secret key stored in the Secret **must** be un-padded, base64
  10602. URL encoded data.
  10603. properties:
  10604. key:
  10605. description: The key of the entry in the Secret resource's
  10606. `data` field to be used. Some instances of this field
  10607. may be defaulted, in others it may be required.
  10608. type: string
  10609. name:
  10610. description: 'Name of the resource being referred to.
  10611. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10612. type: string
  10613. required:
  10614. - name
  10615. type: object
  10616. required:
  10617. - keyAlgorithm
  10618. - keyID
  10619. - keySecretRef
  10620. type: object
  10621. preferredChain:
  10622. description: 'PreferredChain is the chain to use if the ACME server
  10623. outputs multiple. PreferredChain is no guarantee that this one
  10624. gets delivered by the ACME endpoint. For example, for Let''s
  10625. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  10626. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  10627. picks the first certificate bundle in the ACME alternative chains
  10628. that has a certificate with this value as its issuer''s CN'
  10629. maxLength: 64
  10630. type: string
  10631. privateKeySecretRef:
  10632. description: PrivateKey is the name of a Kubernetes Secret resource
  10633. that will be used to store the automatically generated ACME
  10634. account private key. Optionally, a `key` may be specified to
  10635. select a specific entry within the named Secret resource. If
  10636. `key` is not specified, a default of `tls.key` will be used.
  10637. properties:
  10638. key:
  10639. description: The key of the entry in the Secret resource's
  10640. `data` field to be used. Some instances of this field may
  10641. be defaulted, in others it may be required.
  10642. type: string
  10643. name:
  10644. description: 'Name of the resource being referred to. More
  10645. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10646. type: string
  10647. required:
  10648. - name
  10649. type: object
  10650. server:
  10651. description: 'Server is the URL used to access the ACME server''s
  10652. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  10653. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  10654. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  10655. type: string
  10656. skipTLSVerify:
  10657. description: Enables or disables validation of the ACME server
  10658. TLS certificate. If true, requests to the ACME server will not
  10659. have their TLS certificate validated (i.e. insecure connections
  10660. will be allowed). Only enable this option in development environments.
  10661. The cert-manager system installed roots will be used to verify
  10662. connections to the ACME server if this is false. Defaults to
  10663. false.
  10664. type: boolean
  10665. solvers:
  10666. description: 'Solvers is a list of challenge solvers that will
  10667. be used to solve ACME challenges for the matching domains. Solver
  10668. configurations must be provided in order to obtain certificates
  10669. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  10670. items:
  10671. description: Configures an issuer to solve challenges using
  10672. the specified options. Only one of HTTP01 or DNS01 may be
  10673. provided.
  10674. properties:
  10675. dns01:
  10676. description: Configures cert-manager to attempt to complete
  10677. authorizations by performing the DNS01 challenge flow.
  10678. properties:
  10679. acmedns:
  10680. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  10681. API to manage DNS01 challenge records.
  10682. properties:
  10683. accountSecretRef:
  10684. description: A reference to a specific 'key' within
  10685. a Secret resource. In some instances, `key` is
  10686. a required field.
  10687. properties:
  10688. key:
  10689. description: The key of the entry in the Secret
  10690. resource's `data` field to be used. Some instances
  10691. of this field may be defaulted, in others
  10692. it may be required.
  10693. type: string
  10694. name:
  10695. description: 'Name of the resource being referred
  10696. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10697. type: string
  10698. required:
  10699. - name
  10700. type: object
  10701. host:
  10702. type: string
  10703. required:
  10704. - accountSecretRef
  10705. - host
  10706. type: object
  10707. akamai:
  10708. description: Use the Akamai DNS zone management API
  10709. to manage DNS01 challenge records.
  10710. properties:
  10711. accessTokenSecretRef:
  10712. description: A reference to a specific 'key' within
  10713. a Secret resource. In some instances, `key` is
  10714. a required field.
  10715. properties:
  10716. key:
  10717. description: The key of the entry in the Secret
  10718. resource's `data` field to be used. Some instances
  10719. of this field may be defaulted, in others
  10720. it may be required.
  10721. type: string
  10722. name:
  10723. description: 'Name of the resource being referred
  10724. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10725. type: string
  10726. required:
  10727. - name
  10728. type: object
  10729. clientSecretSecretRef:
  10730. description: A reference to a specific 'key' within
  10731. a Secret resource. In some instances, `key` is
  10732. a required field.
  10733. properties:
  10734. key:
  10735. description: The key of the entry in the Secret
  10736. resource's `data` field to be used. Some instances
  10737. of this field may be defaulted, in others
  10738. it may be required.
  10739. type: string
  10740. name:
  10741. description: 'Name of the resource being referred
  10742. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10743. type: string
  10744. required:
  10745. - name
  10746. type: object
  10747. clientTokenSecretRef:
  10748. description: A reference to a specific 'key' within
  10749. a Secret resource. In some instances, `key` is
  10750. a required field.
  10751. properties:
  10752. key:
  10753. description: The key of the entry in the Secret
  10754. resource's `data` field to be used. Some instances
  10755. of this field may be defaulted, in others
  10756. it may be required.
  10757. type: string
  10758. name:
  10759. description: 'Name of the resource being referred
  10760. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10761. type: string
  10762. required:
  10763. - name
  10764. type: object
  10765. serviceConsumerDomain:
  10766. type: string
  10767. required:
  10768. - accessTokenSecretRef
  10769. - clientSecretSecretRef
  10770. - clientTokenSecretRef
  10771. - serviceConsumerDomain
  10772. type: object
  10773. azuredns:
  10774. description: Use the Microsoft Azure DNS API to manage
  10775. DNS01 challenge records.
  10776. properties:
  10777. clientID:
  10778. description: if both this and ClientSecret are left
  10779. unset MSI will be used
  10780. type: string
  10781. clientSecretSecretRef:
  10782. description: if both this and ClientID are left
  10783. unset MSI will be used
  10784. properties:
  10785. key:
  10786. description: The key of the entry in the Secret
  10787. resource's `data` field to be used. Some instances
  10788. of this field may be defaulted, in others
  10789. it may be required.
  10790. type: string
  10791. name:
  10792. description: 'Name of the resource being referred
  10793. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10794. type: string
  10795. required:
  10796. - name
  10797. type: object
  10798. environment:
  10799. enum:
  10800. - AzurePublicCloud
  10801. - AzureChinaCloud
  10802. - AzureGermanCloud
  10803. - AzureUSGovernmentCloud
  10804. type: string
  10805. hostedZoneName:
  10806. type: string
  10807. resourceGroupName:
  10808. type: string
  10809. subscriptionID:
  10810. type: string
  10811. tenantID:
  10812. description: when specifying ClientID and ClientSecret
  10813. then this field is also needed
  10814. type: string
  10815. required:
  10816. - resourceGroupName
  10817. - subscriptionID
  10818. type: object
  10819. clouddns:
  10820. description: Use the Google Cloud DNS API to manage
  10821. DNS01 challenge records.
  10822. properties:
  10823. hostedZoneName:
  10824. description: HostedZoneName is an optional field
  10825. that tells cert-manager in which Cloud DNS zone
  10826. the challenge record has to be created. If left
  10827. empty cert-manager will automatically choose a
  10828. zone.
  10829. type: string
  10830. project:
  10831. type: string
  10832. serviceAccountSecretRef:
  10833. description: A reference to a specific 'key' within
  10834. a Secret resource. In some instances, `key` is
  10835. a required field.
  10836. properties:
  10837. key:
  10838. description: The key of the entry in the Secret
  10839. resource's `data` field to be used. Some instances
  10840. of this field may be defaulted, in others
  10841. it may be required.
  10842. type: string
  10843. name:
  10844. description: 'Name of the resource being referred
  10845. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10846. type: string
  10847. required:
  10848. - name
  10849. type: object
  10850. required:
  10851. - project
  10852. type: object
  10853. cloudflare:
  10854. description: Use the Cloudflare API to manage DNS01
  10855. challenge records.
  10856. properties:
  10857. apiKeySecretRef:
  10858. description: 'API key to use to authenticate with
  10859. Cloudflare. Note: using an API token to authenticate
  10860. is now the recommended method as it allows greater
  10861. control of permissions.'
  10862. properties:
  10863. key:
  10864. description: The key of the entry in the Secret
  10865. resource's `data` field to be used. Some instances
  10866. of this field may be defaulted, in others
  10867. it may be required.
  10868. type: string
  10869. name:
  10870. description: 'Name of the resource being referred
  10871. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10872. type: string
  10873. required:
  10874. - name
  10875. type: object
  10876. apiTokenSecretRef:
  10877. description: API token used to authenticate with
  10878. Cloudflare.
  10879. properties:
  10880. key:
  10881. description: The key of the entry in the Secret
  10882. resource's `data` field to be used. Some instances
  10883. of this field may be defaulted, in others
  10884. it may be required.
  10885. type: string
  10886. name:
  10887. description: 'Name of the resource being referred
  10888. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10889. type: string
  10890. required:
  10891. - name
  10892. type: object
  10893. email:
  10894. description: Email of the account, only required
  10895. when using API key based authentication.
  10896. type: string
  10897. type: object
  10898. cnameStrategy:
  10899. description: CNAMEStrategy configures how the DNS01
  10900. provider should handle CNAME records when found in
  10901. DNS zones.
  10902. enum:
  10903. - None
  10904. - Follow
  10905. type: string
  10906. digitalocean:
  10907. description: Use the DigitalOcean DNS API to manage
  10908. DNS01 challenge records.
  10909. properties:
  10910. tokenSecretRef:
  10911. description: A reference to a specific 'key' within
  10912. a Secret resource. In some instances, `key` is
  10913. a required field.
  10914. properties:
  10915. key:
  10916. description: The key of the entry in the Secret
  10917. resource's `data` field to be used. Some instances
  10918. of this field may be defaulted, in others
  10919. it may be required.
  10920. type: string
  10921. name:
  10922. description: 'Name of the resource being referred
  10923. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10924. type: string
  10925. required:
  10926. - name
  10927. type: object
  10928. required:
  10929. - tokenSecretRef
  10930. type: object
  10931. rfc2136:
  10932. description: Use RFC2136 ("Dynamic Updates in the Domain
  10933. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  10934. to manage DNS01 challenge records.
  10935. properties:
  10936. nameserver:
  10937. description: The IP address or hostname of an authoritative
  10938. DNS server supporting RFC2136 in the form host:port.
  10939. If the host is an IPv6 address it must be enclosed
  10940. in square brackets (e.g [2001:db8::1]) ; port
  10941. is optional. This field is required.
  10942. type: string
  10943. tsigAlgorithm:
  10944. description: 'The TSIG Algorithm configured in the
  10945. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  10946. and ``tsigKeyName`` are defined. Supported values
  10947. are (case-insensitive): ``HMACMD5`` (default),
  10948. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  10949. type: string
  10950. tsigKeyName:
  10951. description: The TSIG Key name configured in the
  10952. DNS. If ``tsigSecretSecretRef`` is defined, this
  10953. field is required.
  10954. type: string
  10955. tsigSecretSecretRef:
  10956. description: The name of the secret containing the
  10957. TSIG value. If ``tsigKeyName`` is defined, this
  10958. field is required.
  10959. properties:
  10960. key:
  10961. description: The key of the entry in the Secret
  10962. resource's `data` field to be used. Some instances
  10963. of this field may be defaulted, in others
  10964. it may be required.
  10965. type: string
  10966. name:
  10967. description: 'Name of the resource being referred
  10968. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10969. type: string
  10970. required:
  10971. - name
  10972. type: object
  10973. required:
  10974. - nameserver
  10975. type: object
  10976. route53:
  10977. description: Use the AWS Route53 API to manage DNS01
  10978. challenge records.
  10979. properties:
  10980. accessKeyID:
  10981. description: 'The AccessKeyID is used for authentication.
  10982. If not set we fall-back to using env vars, shared
  10983. credentials file or AWS Instance metadata see:
  10984. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  10985. type: string
  10986. hostedZoneID:
  10987. description: If set, the provider will manage only
  10988. this zone in Route53 and will not do an lookup
  10989. using the route53:ListHostedZonesByName api call.
  10990. type: string
  10991. region:
  10992. description: Always set the region when using AccessKeyID
  10993. and SecretAccessKey
  10994. type: string
  10995. role:
  10996. description: Role is a Role ARN which the Route53
  10997. provider will assume using either the explicit
  10998. credentials AccessKeyID/SecretAccessKey or the
  10999. inferred credentials from environment variables,
  11000. shared credentials file or AWS Instance metadata
  11001. type: string
  11002. secretAccessKeySecretRef:
  11003. description: The SecretAccessKey is used for authentication.
  11004. If not set we fall-back to using env vars, shared
  11005. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  11006. properties:
  11007. key:
  11008. description: The key of the entry in the Secret
  11009. resource's `data` field to be used. Some instances
  11010. of this field may be defaulted, in others
  11011. it may be required.
  11012. type: string
  11013. name:
  11014. description: 'Name of the resource being referred
  11015. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  11016. type: string
  11017. required:
  11018. - name
  11019. type: object
  11020. required:
  11021. - region
  11022. type: object
  11023. webhook:
  11024. description: Configure an external webhook based DNS01
  11025. challenge solver to manage DNS01 challenge records.
  11026. properties:
  11027. config:
  11028. description: Additional configuration that should
  11029. be passed to the webhook apiserver when challenges
  11030. are processed. This can contain arbitrary JSON
  11031. data. Secret values should not be specified in
  11032. this stanza. If secret values are needed (e.g.
  11033. credentials for a DNS service), you should use
  11034. a SecretKeySelector to reference a Secret resource.
  11035. For details on the schema of this field, consult
  11036. the webhook provider implementation's documentation.
  11037. x-kubernetes-preserve-unknown-fields: true
  11038. groupName:
  11039. description: The API group name that should be used
  11040. when POSTing ChallengePayload resources to the
  11041. webhook apiserver. This should be the same as
  11042. the GroupName specified in the webhook provider
  11043. implementation.
  11044. type: string
  11045. solverName:
  11046. description: The name of the solver to use, as defined
  11047. in the webhook provider implementation. This will
  11048. typically be the name of the provider, e.g. 'cloudflare'.
  11049. type: string
  11050. required:
  11051. - groupName
  11052. - solverName
  11053. type: object
  11054. type: object
  11055. http01:
  11056. description: Configures cert-manager to attempt to complete
  11057. authorizations by performing the HTTP01 challenge flow.
  11058. It is not possible to obtain certificates for wildcard
  11059. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  11060. mechanism.
  11061. properties:
  11062. ingress:
  11063. description: The ingress based HTTP01 challenge solver
  11064. will solve challenges by creating or modifying Ingress
  11065. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  11066. to 'challenge solver' pods that are provisioned by
  11067. cert-manager for each Challenge to be completed.
  11068. properties:
  11069. class:
  11070. description: The ingress class to use when creating
  11071. Ingress resources to solve ACME challenges that
  11072. use this challenge solver. Only one of 'class'
  11073. or 'name' may be specified.
  11074. type: string
  11075. ingressTemplate:
  11076. description: Optional ingress template used to configure
  11077. the ACME challenge solver ingress used for HTTP01
  11078. challenges
  11079. properties:
  11080. metadata:
  11081. description: ObjectMeta overrides for the ingress
  11082. used to solve HTTP01 challenges. Only the
  11083. 'labels' and 'annotations' fields may be set.
  11084. If labels or annotations overlap with in-built
  11085. values, the values here will override the
  11086. in-built values.
  11087. properties:
  11088. annotations:
  11089. additionalProperties:
  11090. type: string
  11091. description: Annotations that should be
  11092. added to the created ACME HTTP01 solver
  11093. ingress.
  11094. type: object
  11095. labels:
  11096. additionalProperties:
  11097. type: string
  11098. description: Labels that should be added
  11099. to the created ACME HTTP01 solver ingress.
  11100. type: object
  11101. type: object
  11102. type: object
  11103. name:
  11104. description: The name of the ingress resource that
  11105. should have ACME challenge solving routes inserted
  11106. into it in order to solve HTTP01 challenges. This
  11107. is typically used in conjunction with ingress
  11108. controllers like ingress-gce, which maintains
  11109. a 1:1 mapping between external IPs and ingress
  11110. resources.
  11111. type: string
  11112. podTemplate:
  11113. description: Optional pod template used to configure
  11114. the ACME challenge solver pods used for HTTP01
  11115. challenges
  11116. properties:
  11117. metadata:
  11118. description: ObjectMeta overrides for the pod
  11119. used to solve HTTP01 challenges. Only the
  11120. 'labels' and 'annotations' fields may be set.
  11121. If labels or annotations overlap with in-built
  11122. values, the values here will override the
  11123. in-built values.
  11124. properties:
  11125. annotations:
  11126. additionalProperties:
  11127. type: string
  11128. description: Annotations that should be
  11129. added to the create ACME HTTP01 solver
  11130. pods.
  11131. type: object
  11132. labels:
  11133. additionalProperties:
  11134. type: string
  11135. description: Labels that should be added
  11136. to the created ACME HTTP01 solver pods.
  11137. type: object
  11138. type: object
  11139. spec:
  11140. description: PodSpec defines overrides for the
  11141. HTTP01 challenge solver pod. Only the 'priorityClassName',
  11142. 'nodeSelector', 'affinity', 'serviceAccountName'
  11143. and 'tolerations' fields are supported currently.
  11144. All other fields will be ignored.
  11145. properties:
  11146. affinity:
  11147. description: If specified, the pod's scheduling
  11148. constraints
  11149. properties:
  11150. nodeAffinity:
  11151. description: Describes node affinity
  11152. scheduling rules for the pod.
  11153. properties:
  11154. preferredDuringSchedulingIgnoredDuringExecution:
  11155. description: The scheduler will
  11156. prefer to schedule pods to nodes
  11157. that satisfy the affinity expressions
  11158. specified by this field, but it
  11159. may choose a node that violates
  11160. one or more of the expressions.
  11161. The node that is most preferred
  11162. is the one with the greatest sum
  11163. of weights, i.e. for each node
  11164. that meets all of the scheduling
  11165. requirements (resource request,
  11166. requiredDuringScheduling affinity
  11167. expressions, etc.), compute a
  11168. sum by iterating through the elements
  11169. of this field and adding "weight"
  11170. to the sum if the node matches
  11171. the corresponding matchExpressions;
  11172. the node(s) with the highest sum
  11173. are the most preferred.
  11174. items:
  11175. description: An empty preferred
  11176. scheduling term matches all
  11177. objects with implicit weight
  11178. 0 (i.e. it's a no-op). A null
  11179. preferred scheduling term matches
  11180. no objects (i.e. is also a no-op).
  11181. properties:
  11182. preference:
  11183. description: A node selector
  11184. term, associated with the
  11185. corresponding weight.
  11186. properties:
  11187. matchExpressions:
  11188. description: A list of
  11189. node selector requirements
  11190. by node's labels.
  11191. items:
  11192. description: A node
  11193. selector requirement
  11194. is a selector that
  11195. contains values, a
  11196. key, and an operator
  11197. that relates the key
  11198. and values.
  11199. properties:
  11200. key:
  11201. description: The
  11202. label key that
  11203. the selector applies
  11204. to.
  11205. type: string
  11206. operator:
  11207. description: Represents
  11208. a key's relationship
  11209. to a set of values.
  11210. Valid operators
  11211. are In, NotIn,
  11212. Exists, DoesNotExist.
  11213. Gt, and Lt.
  11214. type: string
  11215. values:
  11216. description: An
  11217. array of string
  11218. values. If the
  11219. operator is In
  11220. or NotIn, the
  11221. values array must
  11222. be non-empty.
  11223. If the operator
  11224. is Exists or DoesNotExist,
  11225. the values array
  11226. must be empty.
  11227. If the operator
  11228. is Gt or Lt, the
  11229. values array must
  11230. have a single
  11231. element, which
  11232. will be interpreted
  11233. as an integer.
  11234. This array is
  11235. replaced during
  11236. a strategic merge
  11237. patch.
  11238. items:
  11239. type: string
  11240. type: array
  11241. required:
  11242. - key
  11243. - operator
  11244. type: object
  11245. type: array
  11246. matchFields:
  11247. description: A list of
  11248. node selector requirements
  11249. by node's fields.
  11250. items:
  11251. description: A node
  11252. selector requirement
  11253. is a selector that
  11254. contains values, a
  11255. key, and an operator
  11256. that relates the key
  11257. and values.
  11258. properties:
  11259. key:
  11260. description: The
  11261. label key that
  11262. the selector applies
  11263. to.
  11264. type: string
  11265. operator:
  11266. description: Represents
  11267. a key's relationship
  11268. to a set of values.
  11269. Valid operators
  11270. are In, NotIn,
  11271. Exists, DoesNotExist.
  11272. Gt, and Lt.
  11273. type: string
  11274. values:
  11275. description: An
  11276. array of string
  11277. values. If the
  11278. operator is In
  11279. or NotIn, the
  11280. values array must
  11281. be non-empty.
  11282. If the operator
  11283. is Exists or DoesNotExist,
  11284. the values array
  11285. must be empty.
  11286. If the operator
  11287. is Gt or Lt, the
  11288. values array must
  11289. have a single
  11290. element, which
  11291. will be interpreted
  11292. as an integer.
  11293. This array is
  11294. replaced during
  11295. a strategic merge
  11296. patch.
  11297. items:
  11298. type: string
  11299. type: array
  11300. required:
  11301. - key
  11302. - operator
  11303. type: object
  11304. type: array
  11305. type: object
  11306. weight:
  11307. description: Weight associated
  11308. with matching the corresponding
  11309. nodeSelectorTerm, in the
  11310. range 1-100.
  11311. format: int32
  11312. type: integer
  11313. required:
  11314. - preference
  11315. - weight
  11316. type: object
  11317. type: array
  11318. requiredDuringSchedulingIgnoredDuringExecution:
  11319. description: If the affinity requirements
  11320. specified by this field are not
  11321. met at scheduling time, the pod
  11322. will not be scheduled onto the
  11323. node. If the affinity requirements
  11324. specified by this field cease
  11325. to be met at some point during
  11326. pod execution (e.g. due to an
  11327. update), the system may or may
  11328. not try to eventually evict the
  11329. pod from its node.
  11330. properties:
  11331. nodeSelectorTerms:
  11332. description: Required. A list
  11333. of node selector terms. The
  11334. terms are ORed.
  11335. items:
  11336. description: A null or empty
  11337. node selector term matches
  11338. no objects. The requirements
  11339. of them are ANDed. The TopologySelectorTerm
  11340. type implements a subset
  11341. of the NodeSelectorTerm.
  11342. properties:
  11343. matchExpressions:
  11344. description: A list of
  11345. node selector requirements
  11346. by node's labels.
  11347. items:
  11348. description: A node
  11349. selector requirement
  11350. is a selector that
  11351. contains values, a
  11352. key, and an operator
  11353. that relates the key
  11354. and values.
  11355. properties:
  11356. key:
  11357. description: The
  11358. label key that
  11359. the selector applies
  11360. to.
  11361. type: string
  11362. operator:
  11363. description: Represents
  11364. a key's relationship
  11365. to a set of values.
  11366. Valid operators
  11367. are In, NotIn,
  11368. Exists, DoesNotExist.
  11369. Gt, and Lt.
  11370. type: string
  11371. values:
  11372. description: An
  11373. array of string
  11374. values. If the
  11375. operator is In
  11376. or NotIn, the
  11377. values array must
  11378. be non-empty.
  11379. If the operator
  11380. is Exists or DoesNotExist,
  11381. the values array
  11382. must be empty.
  11383. If the operator
  11384. is Gt or Lt, the
  11385. values array must
  11386. have a single
  11387. element, which
  11388. will be interpreted
  11389. as an integer.
  11390. This array is
  11391. replaced during
  11392. a strategic merge
  11393. patch.
  11394. items:
  11395. type: string
  11396. type: array
  11397. required:
  11398. - key
  11399. - operator
  11400. type: object
  11401. type: array
  11402. matchFields:
  11403. description: A list of
  11404. node selector requirements
  11405. by node's fields.
  11406. items:
  11407. description: A node
  11408. selector requirement
  11409. is a selector that
  11410. contains values, a
  11411. key, and an operator
  11412. that relates the key
  11413. and values.
  11414. properties:
  11415. key:
  11416. description: The
  11417. label key that
  11418. the selector applies
  11419. to.
  11420. type: string
  11421. operator:
  11422. description: Represents
  11423. a key's relationship
  11424. to a set of values.
  11425. Valid operators
  11426. are In, NotIn,
  11427. Exists, DoesNotExist.
  11428. Gt, and Lt.
  11429. type: string
  11430. values:
  11431. description: An
  11432. array of string
  11433. values. If the
  11434. operator is In
  11435. or NotIn, the
  11436. values array must
  11437. be non-empty.
  11438. If the operator
  11439. is Exists or DoesNotExist,
  11440. the values array
  11441. must be empty.
  11442. If the operator
  11443. is Gt or Lt, the
  11444. values array must
  11445. have a single
  11446. element, which
  11447. will be interpreted
  11448. as an integer.
  11449. This array is
  11450. replaced during
  11451. a strategic merge
  11452. patch.
  11453. items:
  11454. type: string
  11455. type: array
  11456. required:
  11457. - key
  11458. - operator
  11459. type: object
  11460. type: array
  11461. type: object
  11462. type: array
  11463. required:
  11464. - nodeSelectorTerms
  11465. type: object
  11466. type: object
  11467. podAffinity:
  11468. description: Describes pod affinity
  11469. scheduling rules (e.g. co-locate this
  11470. pod in the same node, zone, etc. as
  11471. some other pod(s)).
  11472. properties:
  11473. preferredDuringSchedulingIgnoredDuringExecution:
  11474. description: The scheduler will
  11475. prefer to schedule pods to nodes
  11476. that satisfy the affinity expressions
  11477. specified by this field, but it
  11478. may choose a node that violates
  11479. one or more of the expressions.
  11480. The node that is most preferred
  11481. is the one with the greatest sum
  11482. of weights, i.e. for each node
  11483. that meets all of the scheduling
  11484. requirements (resource request,
  11485. requiredDuringScheduling affinity
  11486. expressions, etc.), compute a
  11487. sum by iterating through the elements
  11488. of this field and adding "weight"
  11489. to the sum if the node has pods
  11490. which matches the corresponding
  11491. podAffinityTerm; the node(s) with
  11492. the highest sum are the most preferred.
  11493. items:
  11494. description: The weights of all
  11495. of the matched WeightedPodAffinityTerm
  11496. fields are added per-node to
  11497. find the most preferred node(s)
  11498. properties:
  11499. podAffinityTerm:
  11500. description: Required. A pod
  11501. affinity term, associated
  11502. with the corresponding weight.
  11503. properties:
  11504. labelSelector:
  11505. description: A label query
  11506. over a set of resources,
  11507. in this case pods.
  11508. properties:
  11509. matchExpressions:
  11510. description: matchExpressions
  11511. is a list of label
  11512. selector requirements.
  11513. The requirements
  11514. are ANDed.
  11515. items:
  11516. description: A label
  11517. selector requirement
  11518. is a selector
  11519. that contains
  11520. values, a key,
  11521. and an operator
  11522. that relates the
  11523. key and values.
  11524. properties:
  11525. key:
  11526. description: key
  11527. is the label
  11528. key that the
  11529. selector applies
  11530. to.
  11531. type: string
  11532. operator:
  11533. description: operator
  11534. represents
  11535. a key's relationship
  11536. to a set of
  11537. values. Valid
  11538. operators
  11539. are In, NotIn,
  11540. Exists and
  11541. DoesNotExist.
  11542. type: string
  11543. values:
  11544. description: values
  11545. is an array
  11546. of string
  11547. values. If
  11548. the operator
  11549. is In or NotIn,
  11550. the values
  11551. array must
  11552. be non-empty.
  11553. If the operator
  11554. is Exists
  11555. or DoesNotExist,
  11556. the values
  11557. array must
  11558. be empty.
  11559. This array
  11560. is replaced
  11561. during a strategic
  11562. merge patch.
  11563. items:
  11564. type: string
  11565. type: array
  11566. required:
  11567. - key
  11568. - operator
  11569. type: object
  11570. type: array
  11571. matchLabels:
  11572. additionalProperties:
  11573. type: string
  11574. description: matchLabels
  11575. is a map of {key,value}
  11576. pairs. A single
  11577. {key,value} in the
  11578. matchLabels map
  11579. is equivalent to
  11580. an element of matchExpressions,
  11581. whose key field
  11582. is "key", the operator
  11583. is "In", and the
  11584. values array contains
  11585. only "value". The
  11586. requirements are
  11587. ANDed.
  11588. type: object
  11589. type: object
  11590. namespaces:
  11591. description: namespaces
  11592. specifies which namespaces
  11593. the labelSelector applies
  11594. to (matches against);
  11595. null or empty list means
  11596. "this pod's namespace"
  11597. items:
  11598. type: string
  11599. type: array
  11600. topologyKey:
  11601. description: This pod
  11602. should be co-located
  11603. (affinity) or not co-located
  11604. (anti-affinity) with
  11605. the pods matching the
  11606. labelSelector in the
  11607. specified namespaces,
  11608. where co-located is
  11609. defined as running on
  11610. a node whose value of
  11611. the label with key topologyKey
  11612. matches that of any
  11613. node on which any of
  11614. the selected pods is
  11615. running. Empty topologyKey
  11616. is not allowed.
  11617. type: string
  11618. required:
  11619. - topologyKey
  11620. type: object
  11621. weight:
  11622. description: weight associated
  11623. with matching the corresponding
  11624. podAffinityTerm, in the
  11625. range 1-100.
  11626. format: int32
  11627. type: integer
  11628. required:
  11629. - podAffinityTerm
  11630. - weight
  11631. type: object
  11632. type: array
  11633. requiredDuringSchedulingIgnoredDuringExecution:
  11634. description: If the affinity requirements
  11635. specified by this field are not
  11636. met at scheduling time, the pod
  11637. will not be scheduled onto the
  11638. node. If the affinity requirements
  11639. specified by this field cease
  11640. to be met at some point during
  11641. pod execution (e.g. due to a pod
  11642. label update), the system may
  11643. or may not try to eventually evict
  11644. the pod from its node. When there
  11645. are multiple elements, the lists
  11646. of nodes corresponding to each
  11647. podAffinityTerm are intersected,
  11648. i.e. all terms must be satisfied.
  11649. items:
  11650. description: Defines a set of
  11651. pods (namely those matching
  11652. the labelSelector relative to
  11653. the given namespace(s)) that
  11654. this pod should be co-located
  11655. (affinity) or not co-located
  11656. (anti-affinity) with, where
  11657. co-located is defined as running
  11658. on a node whose value of the
  11659. label with key <topologyKey>
  11660. matches that of any node on
  11661. which a pod of the set of pods
  11662. is running
  11663. properties:
  11664. labelSelector:
  11665. description: A label query
  11666. over a set of resources,
  11667. in this case pods.
  11668. properties:
  11669. matchExpressions:
  11670. description: matchExpressions
  11671. is a list of label selector
  11672. requirements. The requirements
  11673. are ANDed.
  11674. items:
  11675. description: A label
  11676. selector requirement
  11677. is a selector that
  11678. contains values, a
  11679. key, and an operator
  11680. that relates the key
  11681. and values.
  11682. properties:
  11683. key:
  11684. description: key
  11685. is the label key
  11686. that the selector
  11687. applies to.
  11688. type: string
  11689. operator:
  11690. description: operator
  11691. represents a key's
  11692. relationship to
  11693. a set of values.
  11694. Valid operators
  11695. are In, NotIn,
  11696. Exists and DoesNotExist.
  11697. type: string
  11698. values:
  11699. description: values
  11700. is an array of
  11701. string values.
  11702. If the operator
  11703. is In or NotIn,
  11704. the values array
  11705. must be non-empty.
  11706. If the operator
  11707. is Exists or DoesNotExist,
  11708. the values array
  11709. must be empty.
  11710. This array is
  11711. replaced during
  11712. a strategic merge
  11713. patch.
  11714. items:
  11715. type: string
  11716. type: array
  11717. required:
  11718. - key
  11719. - operator
  11720. type: object
  11721. type: array
  11722. matchLabels:
  11723. additionalProperties:
  11724. type: string
  11725. description: matchLabels
  11726. is a map of {key,value}
  11727. pairs. A single {key,value}
  11728. in the matchLabels map
  11729. is equivalent to an
  11730. element of matchExpressions,
  11731. whose key field is "key",
  11732. the operator is "In",
  11733. and the values array
  11734. contains only "value".
  11735. The requirements are
  11736. ANDed.
  11737. type: object
  11738. type: object
  11739. namespaces:
  11740. description: namespaces specifies
  11741. which namespaces the labelSelector
  11742. applies to (matches against);
  11743. null or empty list means
  11744. "this pod's namespace"
  11745. items:
  11746. type: string
  11747. type: array
  11748. topologyKey:
  11749. description: This pod should
  11750. be co-located (affinity)
  11751. or not co-located (anti-affinity)
  11752. with the pods matching the
  11753. labelSelector in the specified
  11754. namespaces, where co-located
  11755. is defined as running on
  11756. a node whose value of the
  11757. label with key topologyKey
  11758. matches that of any node
  11759. on which any of the selected
  11760. pods is running. Empty topologyKey
  11761. is not allowed.
  11762. type: string
  11763. required:
  11764. - topologyKey
  11765. type: object
  11766. type: array
  11767. type: object
  11768. podAntiAffinity:
  11769. description: Describes pod anti-affinity
  11770. scheduling rules (e.g. avoid putting
  11771. this pod in the same node, zone, etc.
  11772. as some other pod(s)).
  11773. properties:
  11774. preferredDuringSchedulingIgnoredDuringExecution:
  11775. description: The scheduler will
  11776. prefer to schedule pods to nodes
  11777. that satisfy the anti-affinity
  11778. expressions specified by this
  11779. field, but it may choose a node
  11780. that violates one or more of the
  11781. expressions. The node that is
  11782. most preferred is the one with
  11783. the greatest sum of weights, i.e.
  11784. for each node that meets all of
  11785. the scheduling requirements (resource
  11786. request, requiredDuringScheduling
  11787. anti-affinity expressions, etc.),
  11788. compute a sum by iterating through
  11789. the elements of this field and
  11790. adding "weight" to the sum if
  11791. the node has pods which matches
  11792. the corresponding podAffinityTerm;
  11793. the node(s) with the highest sum
  11794. are the most preferred.
  11795. items:
  11796. description: The weights of all
  11797. of the matched WeightedPodAffinityTerm
  11798. fields are added per-node to
  11799. find the most preferred node(s)
  11800. properties:
  11801. podAffinityTerm:
  11802. description: Required. A pod
  11803. affinity term, associated
  11804. with the corresponding weight.
  11805. properties:
  11806. labelSelector:
  11807. description: A label query
  11808. over a set of resources,
  11809. in this case pods.
  11810. properties:
  11811. matchExpressions:
  11812. description: matchExpressions
  11813. is a list of label
  11814. selector requirements.
  11815. The requirements
  11816. are ANDed.
  11817. items:
  11818. description: A label
  11819. selector requirement
  11820. is a selector
  11821. that contains
  11822. values, a key,
  11823. and an operator
  11824. that relates the
  11825. key and values.
  11826. properties:
  11827. key:
  11828. description: key
  11829. is the label
  11830. key that the
  11831. selector applies
  11832. to.
  11833. type: string
  11834. operator:
  11835. description: operator
  11836. represents
  11837. a key's relationship
  11838. to a set of
  11839. values. Valid
  11840. operators
  11841. are In, NotIn,
  11842. Exists and
  11843. DoesNotExist.
  11844. type: string
  11845. values:
  11846. description: values
  11847. is an array
  11848. of string
  11849. values. If
  11850. the operator
  11851. is In or NotIn,
  11852. the values
  11853. array must
  11854. be non-empty.
  11855. If the operator
  11856. is Exists
  11857. or DoesNotExist,
  11858. the values
  11859. array must
  11860. be empty.
  11861. This array
  11862. is replaced
  11863. during a strategic
  11864. merge patch.
  11865. items:
  11866. type: string
  11867. type: array
  11868. required:
  11869. - key
  11870. - operator
  11871. type: object
  11872. type: array
  11873. matchLabels:
  11874. additionalProperties:
  11875. type: string
  11876. description: matchLabels
  11877. is a map of {key,value}
  11878. pairs. A single
  11879. {key,value} in the
  11880. matchLabels map
  11881. is equivalent to
  11882. an element of matchExpressions,
  11883. whose key field
  11884. is "key", the operator
  11885. is "In", and the
  11886. values array contains
  11887. only "value". The
  11888. requirements are
  11889. ANDed.
  11890. type: object
  11891. type: object
  11892. namespaces:
  11893. description: namespaces
  11894. specifies which namespaces
  11895. the labelSelector applies
  11896. to (matches against);
  11897. null or empty list means
  11898. "this pod's namespace"
  11899. items:
  11900. type: string
  11901. type: array
  11902. topologyKey:
  11903. description: This pod
  11904. should be co-located
  11905. (affinity) or not co-located
  11906. (anti-affinity) with
  11907. the pods matching the
  11908. labelSelector in the
  11909. specified namespaces,
  11910. where co-located is
  11911. defined as running on
  11912. a node whose value of
  11913. the label with key topologyKey
  11914. matches that of any
  11915. node on which any of
  11916. the selected pods is
  11917. running. Empty topologyKey
  11918. is not allowed.
  11919. type: string
  11920. required:
  11921. - topologyKey
  11922. type: object
  11923. weight:
  11924. description: weight associated
  11925. with matching the corresponding
  11926. podAffinityTerm, in the
  11927. range 1-100.
  11928. format: int32
  11929. type: integer
  11930. required:
  11931. - podAffinityTerm
  11932. - weight
  11933. type: object
  11934. type: array
  11935. requiredDuringSchedulingIgnoredDuringExecution:
  11936. description: If the anti-affinity
  11937. requirements specified by this
  11938. field are not met at scheduling
  11939. time, the pod will not be scheduled
  11940. onto the node. If the anti-affinity
  11941. requirements specified by this
  11942. field cease to be met at some
  11943. point during pod execution (e.g.
  11944. due to a pod label update), the
  11945. system may or may not try to eventually
  11946. evict the pod from its node. When
  11947. there are multiple elements, the
  11948. lists of nodes corresponding to
  11949. each podAffinityTerm are intersected,
  11950. i.e. all terms must be satisfied.
  11951. items:
  11952. description: Defines a set of
  11953. pods (namely those matching
  11954. the labelSelector relative to
  11955. the given namespace(s)) that
  11956. this pod should be co-located
  11957. (affinity) or not co-located
  11958. (anti-affinity) with, where
  11959. co-located is defined as running
  11960. on a node whose value of the
  11961. label with key <topologyKey>
  11962. matches that of any node on
  11963. which a pod of the set of pods
  11964. is running
  11965. properties:
  11966. labelSelector:
  11967. description: A label query
  11968. over a set of resources,
  11969. in this case pods.
  11970. properties:
  11971. matchExpressions:
  11972. description: matchExpressions
  11973. is a list of label selector
  11974. requirements. The requirements
  11975. are ANDed.
  11976. items:
  11977. description: A label
  11978. selector requirement
  11979. is a selector that
  11980. contains values, a
  11981. key, and an operator
  11982. that relates the key
  11983. and values.
  11984. properties:
  11985. key:
  11986. description: key
  11987. is the label key
  11988. that the selector
  11989. applies to.
  11990. type: string
  11991. operator:
  11992. description: operator
  11993. represents a key's
  11994. relationship to
  11995. a set of values.
  11996. Valid operators
  11997. are In, NotIn,
  11998. Exists and DoesNotExist.
  11999. type: string
  12000. values:
  12001. description: values
  12002. is an array of
  12003. string values.
  12004. If the operator
  12005. is In or NotIn,
  12006. the values array
  12007. must be non-empty.
  12008. If the operator
  12009. is Exists or DoesNotExist,
  12010. the values array
  12011. must be empty.
  12012. This array is
  12013. replaced during
  12014. a strategic merge
  12015. patch.
  12016. items:
  12017. type: string
  12018. type: array
  12019. required:
  12020. - key
  12021. - operator
  12022. type: object
  12023. type: array
  12024. matchLabels:
  12025. additionalProperties:
  12026. type: string
  12027. description: matchLabels
  12028. is a map of {key,value}
  12029. pairs. A single {key,value}
  12030. in the matchLabels map
  12031. is equivalent to an
  12032. element of matchExpressions,
  12033. whose key field is "key",
  12034. the operator is "In",
  12035. and the values array
  12036. contains only "value".
  12037. The requirements are
  12038. ANDed.
  12039. type: object
  12040. type: object
  12041. namespaces:
  12042. description: namespaces specifies
  12043. which namespaces the labelSelector
  12044. applies to (matches against);
  12045. null or empty list means
  12046. "this pod's namespace"
  12047. items:
  12048. type: string
  12049. type: array
  12050. topologyKey:
  12051. description: This pod should
  12052. be co-located (affinity)
  12053. or not co-located (anti-affinity)
  12054. with the pods matching the
  12055. labelSelector in the specified
  12056. namespaces, where co-located
  12057. is defined as running on
  12058. a node whose value of the
  12059. label with key topologyKey
  12060. matches that of any node
  12061. on which any of the selected
  12062. pods is running. Empty topologyKey
  12063. is not allowed.
  12064. type: string
  12065. required:
  12066. - topologyKey
  12067. type: object
  12068. type: array
  12069. type: object
  12070. type: object
  12071. nodeSelector:
  12072. additionalProperties:
  12073. type: string
  12074. description: 'NodeSelector is a selector
  12075. which must be true for the pod to fit
  12076. on a node. Selector which must match a
  12077. node''s labels for the pod to be scheduled
  12078. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  12079. type: object
  12080. priorityClassName:
  12081. description: If specified, the pod's priorityClassName.
  12082. type: string
  12083. serviceAccountName:
  12084. description: If specified, the pod's service
  12085. account
  12086. type: string
  12087. tolerations:
  12088. description: If specified, the pod's tolerations.
  12089. items:
  12090. description: The pod this Toleration is
  12091. attached to tolerates any taint that
  12092. matches the triple <key,value,effect>
  12093. using the matching operator <operator>.
  12094. properties:
  12095. effect:
  12096. description: Effect indicates the
  12097. taint effect to match. Empty means
  12098. match all taint effects. When specified,
  12099. allowed values are NoSchedule, PreferNoSchedule
  12100. and NoExecute.
  12101. type: string
  12102. key:
  12103. description: Key is the taint key
  12104. that the toleration applies to.
  12105. Empty means match all taint keys.
  12106. If the key is empty, operator must
  12107. be Exists; this combination means
  12108. to match all values and all keys.
  12109. type: string
  12110. operator:
  12111. description: Operator represents a
  12112. key's relationship to the value.
  12113. Valid operators are Exists and Equal.
  12114. Defaults to Equal. Exists is equivalent
  12115. to wildcard for value, so that a
  12116. pod can tolerate all taints of a
  12117. particular category.
  12118. type: string
  12119. tolerationSeconds:
  12120. description: TolerationSeconds represents
  12121. the period of time the toleration
  12122. (which must be of effect NoExecute,
  12123. otherwise this field is ignored)
  12124. tolerates the taint. By default,
  12125. it is not set, which means tolerate
  12126. the taint forever (do not evict).
  12127. Zero and negative values will be
  12128. treated as 0 (evict immediately)
  12129. by the system.
  12130. format: int64
  12131. type: integer
  12132. value:
  12133. description: Value is the taint value
  12134. the toleration matches to. If the
  12135. operator is Exists, the value should
  12136. be empty, otherwise just a regular
  12137. string.
  12138. type: string
  12139. type: object
  12140. type: array
  12141. type: object
  12142. type: object
  12143. serviceType:
  12144. description: Optional service type for Kubernetes
  12145. solver service
  12146. type: string
  12147. type: object
  12148. type: object
  12149. selector:
  12150. description: Selector selects a set of DNSNames on the Certificate
  12151. resource that should be solved using this challenge solver.
  12152. If not specified, the solver will be treated as the 'default'
  12153. solver with the lowest priority, i.e. if any other solver
  12154. has a more specific match, it will be used instead.
  12155. properties:
  12156. dnsNames:
  12157. description: List of DNSNames that this solver will
  12158. be used to solve. If specified and a match is found,
  12159. a dnsNames selector will take precedence over a dnsZones
  12160. selector. If multiple solvers match with the same
  12161. dnsNames value, the solver with the most matching
  12162. labels in matchLabels will be selected. If neither
  12163. has more matches, the solver defined earlier in the
  12164. list will be selected.
  12165. items:
  12166. type: string
  12167. type: array
  12168. dnsZones:
  12169. description: List of DNSZones that this solver will
  12170. be used to solve. The most specific DNS zone match
  12171. specified here will take precedence over other DNS
  12172. zone matches, so a solver specifying sys.example.com
  12173. will be selected over one specifying example.com for
  12174. the domain www.sys.example.com. If multiple solvers
  12175. match with the same dnsZones value, the solver with
  12176. the most matching labels in matchLabels will be selected.
  12177. If neither has more matches, the solver defined earlier
  12178. in the list will be selected.
  12179. items:
  12180. type: string
  12181. type: array
  12182. matchLabels:
  12183. additionalProperties:
  12184. type: string
  12185. description: A label selector that is used to refine
  12186. the set of certificate's that this challenge solver
  12187. will apply to.
  12188. type: object
  12189. type: object
  12190. type: object
  12191. type: array
  12192. required:
  12193. - privateKeySecretRef
  12194. - server
  12195. type: object
  12196. ca:
  12197. description: CA configures this issuer to sign certificates using
  12198. a signing CA keypair stored in a Secret resource. This is used to
  12199. build internal PKIs that are managed by cert-manager.
  12200. properties:
  12201. crlDistributionPoints:
  12202. description: The CRL distribution points is an X.509 v3 certificate
  12203. extension which identifies the location of the CRL from which
  12204. the revocation of this certificate can be checked. If not set,
  12205. certificates will be issued without distribution points set.
  12206. items:
  12207. type: string
  12208. type: array
  12209. secretName:
  12210. description: SecretName is the name of the secret used to sign
  12211. Certificates issued by this Issuer.
  12212. type: string
  12213. required:
  12214. - secretName
  12215. type: object
  12216. selfSigned:
  12217. description: SelfSigned configures this issuer to 'self sign' certificates
  12218. using the private key used to create the CertificateRequest object.
  12219. properties:
  12220. crlDistributionPoints:
  12221. description: The CRL distribution points is an X.509 v3 certificate
  12222. extension which identifies the location of the CRL from which
  12223. the revocation of this certificate can be checked. If not set
  12224. certificate will be issued without CDP. Values are strings.
  12225. items:
  12226. type: string
  12227. type: array
  12228. type: object
  12229. vault:
  12230. description: Vault configures this issuer to sign certificates using
  12231. a HashiCorp Vault PKI backend.
  12232. properties:
  12233. auth:
  12234. description: Auth configures how cert-manager authenticates with
  12235. the Vault server.
  12236. properties:
  12237. appRole:
  12238. description: AppRole authenticates with Vault using the App
  12239. Role auth mechanism, with the role and secret stored in
  12240. a Kubernetes Secret resource.
  12241. properties:
  12242. path:
  12243. description: 'Path where the App Role authentication backend
  12244. is mounted in Vault, e.g: "approle"'
  12245. type: string
  12246. roleId:
  12247. description: RoleID configured in the App Role authentication
  12248. backend when setting up the authentication backend in
  12249. Vault.
  12250. type: string
  12251. secretRef:
  12252. description: Reference to a key in a Secret that contains
  12253. the App Role secret used to authenticate with Vault.
  12254. The `key` field must be specified and denotes which
  12255. entry within the Secret resource is used as the app
  12256. role secret.
  12257. properties:
  12258. key:
  12259. description: The key of the entry in the Secret resource's
  12260. `data` field to be used. Some instances of this
  12261. field may be defaulted, in others it may be required.
  12262. type: string
  12263. name:
  12264. description: 'Name of the resource being referred
  12265. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12266. type: string
  12267. required:
  12268. - name
  12269. type: object
  12270. required:
  12271. - path
  12272. - roleId
  12273. - secretRef
  12274. type: object
  12275. kubernetes:
  12276. description: Kubernetes authenticates with Vault by passing
  12277. the ServiceAccount token stored in the named Secret resource
  12278. to the Vault server.
  12279. properties:
  12280. mountPath:
  12281. description: The Vault mountPath here is the mount path
  12282. to use when authenticating with Vault. For example,
  12283. setting a value to `/v1/auth/foo`, will use the path
  12284. `/v1/auth/foo/login` to authenticate with Vault. If
  12285. unspecified, the default value "/v1/auth/kubernetes"
  12286. will be used.
  12287. type: string
  12288. role:
  12289. description: A required field containing the Vault Role
  12290. to assume. A Role binds a Kubernetes ServiceAccount
  12291. with a set of Vault policies.
  12292. type: string
  12293. secretRef:
  12294. description: The required Secret field containing a Kubernetes
  12295. ServiceAccount JWT used for authenticating with Vault.
  12296. Use of 'ambient credentials' is not supported.
  12297. properties:
  12298. key:
  12299. description: The key of the entry in the Secret resource's
  12300. `data` field to be used. Some instances of this
  12301. field may be defaulted, in others it may be required.
  12302. type: string
  12303. name:
  12304. description: 'Name of the resource being referred
  12305. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12306. type: string
  12307. required:
  12308. - name
  12309. type: object
  12310. required:
  12311. - role
  12312. - secretRef
  12313. type: object
  12314. tokenSecretRef:
  12315. description: TokenSecretRef authenticates with Vault by presenting
  12316. a token.
  12317. properties:
  12318. key:
  12319. description: The key of the entry in the Secret resource's
  12320. `data` field to be used. Some instances of this field
  12321. may be defaulted, in others it may be required.
  12322. type: string
  12323. name:
  12324. description: 'Name of the resource being referred to.
  12325. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12326. type: string
  12327. required:
  12328. - name
  12329. type: object
  12330. type: object
  12331. caBundle:
  12332. description: PEM encoded CA bundle used to validate Vault server
  12333. certificate. Only used if the Server URL is using HTTPS protocol.
  12334. This parameter is ignored for plain HTTP protocol connection.
  12335. If not set the system root certificates are used to validate
  12336. the TLS connection.
  12337. format: byte
  12338. type: string
  12339. namespace:
  12340. description: 'Name of the vault namespace. Namespaces is a set
  12341. of features within Vault Enterprise that allows Vault environments
  12342. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  12343. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  12344. type: string
  12345. path:
  12346. description: 'Path is the mount path of the Vault PKI backend''s
  12347. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  12348. type: string
  12349. server:
  12350. description: 'Server is the connection address for the Vault server,
  12351. e.g: "https://vault.example.com:8200".'
  12352. type: string
  12353. required:
  12354. - auth
  12355. - path
  12356. - server
  12357. type: object
  12358. venafi:
  12359. description: Venafi configures this issuer to sign certificates using
  12360. a Venafi TPP or Venafi Cloud policy zone.
  12361. properties:
  12362. cloud:
  12363. description: Cloud specifies the Venafi cloud configuration settings.
  12364. Only one of TPP or Cloud may be specified.
  12365. properties:
  12366. apiTokenSecretRef:
  12367. description: APITokenSecretRef is a secret key selector for
  12368. the Venafi Cloud API token.
  12369. properties:
  12370. key:
  12371. description: The key of the entry in the Secret resource's
  12372. `data` field to be used. Some instances of this field
  12373. may be defaulted, in others it may be required.
  12374. type: string
  12375. name:
  12376. description: 'Name of the resource being referred to.
  12377. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12378. type: string
  12379. required:
  12380. - name
  12381. type: object
  12382. url:
  12383. description: URL is the base URL for Venafi Cloud. Defaults
  12384. to "https://api.venafi.cloud/v1".
  12385. type: string
  12386. required:
  12387. - apiTokenSecretRef
  12388. type: object
  12389. tpp:
  12390. description: TPP specifies Trust Protection Platform configuration
  12391. settings. Only one of TPP or Cloud may be specified.
  12392. properties:
  12393. caBundle:
  12394. description: CABundle is a PEM encoded TLS certificate to
  12395. use to verify connections to the TPP instance. If specified,
  12396. system roots will not be used and the issuing CA for the
  12397. TPP instance must be verifiable using the provided root.
  12398. If not specified, the connection will be verified using
  12399. the cert-manager system root certificates.
  12400. format: byte
  12401. type: string
  12402. credentialsRef:
  12403. description: CredentialsRef is a reference to a Secret containing
  12404. the username and password for the TPP server. The secret
  12405. must contain two keys, 'username' and 'password'.
  12406. properties:
  12407. name:
  12408. description: 'Name of the resource being referred to.
  12409. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12410. type: string
  12411. required:
  12412. - name
  12413. type: object
  12414. url:
  12415. description: 'URL is the base URL for the vedsdk endpoint
  12416. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  12417. type: string
  12418. required:
  12419. - credentialsRef
  12420. - url
  12421. type: object
  12422. zone:
  12423. description: Zone is the Venafi Policy Zone to use for this issuer.
  12424. All requests made to the Venafi platform will be restricted
  12425. by the named zone policy. This field is required.
  12426. type: string
  12427. required:
  12428. - zone
  12429. type: object
  12430. type: object
  12431. status:
  12432. description: Status of the ClusterIssuer. This is set and managed automatically.
  12433. properties:
  12434. acme:
  12435. description: ACME specific status options. This field should only
  12436. be set if the Issuer is configured to use an ACME server to issue
  12437. certificates.
  12438. properties:
  12439. lastRegisteredEmail:
  12440. description: LastRegisteredEmail is the email associated with
  12441. the latest registered ACME account, in order to track changes
  12442. made to registered account associated with the Issuer
  12443. type: string
  12444. uri:
  12445. description: URI is the unique account identifier, which can also
  12446. be used to retrieve account details from the CA
  12447. type: string
  12448. type: object
  12449. conditions:
  12450. description: List of status conditions to indicate the status of a
  12451. CertificateRequest. Known condition types are `Ready`.
  12452. items:
  12453. description: IssuerCondition contains condition information for
  12454. an Issuer.
  12455. properties:
  12456. lastTransitionTime:
  12457. description: LastTransitionTime is the timestamp corresponding
  12458. to the last status change of this condition.
  12459. format: date-time
  12460. type: string
  12461. message:
  12462. description: Message is a human readable description of the
  12463. details of the last transition, complementing reason.
  12464. type: string
  12465. reason:
  12466. description: Reason is a brief machine readable explanation
  12467. for the condition's last transition.
  12468. type: string
  12469. status:
  12470. description: Status of the condition, one of ('True', 'False',
  12471. 'Unknown').
  12472. enum:
  12473. - "True"
  12474. - "False"
  12475. - Unknown
  12476. type: string
  12477. type:
  12478. description: Type of the condition, known values are ('Ready').
  12479. type: string
  12480. required:
  12481. - status
  12482. - type
  12483. type: object
  12484. type: array
  12485. type: object
  12486. type: object
  12487. served: true
  12488. storage: false
  12489. subresources:
  12490. status: {}
  12491. - additionalPrinterColumns:
  12492. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  12493. name: Ready
  12494. type: string
  12495. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  12496. name: Status
  12497. priority: 1
  12498. type: string
  12499. - description: CreationTimestamp is a timestamp representing the server time when
  12500. this object was created. It is not guaranteed to be set in happens-before
  12501. order across separate operations. Clients may not set this value. It is represented
  12502. in RFC3339 form and is in UTC.
  12503. jsonPath: .metadata.creationTimestamp
  12504. name: Age
  12505. type: date
  12506. name: v1beta1
  12507. schema:
  12508. openAPIV3Schema:
  12509. description: A ClusterIssuer represents a certificate issuing authority which
  12510. can be referenced as part of `issuerRef` fields. It is similar to an Issuer,
  12511. however it is cluster-scoped and therefore can be referenced by resources
  12512. that exist in *any* namespace, not just the same namespace as the referent.
  12513. properties:
  12514. apiVersion:
  12515. description: 'APIVersion defines the versioned schema of this representation
  12516. of an object. Servers should convert recognized schemas to the latest
  12517. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  12518. type: string
  12519. kind:
  12520. description: 'Kind is a string value representing the REST resource this
  12521. object represents. Servers may infer this from the endpoint the client
  12522. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  12523. type: string
  12524. metadata:
  12525. type: object
  12526. spec:
  12527. description: Desired state of the ClusterIssuer resource.
  12528. properties:
  12529. acme:
  12530. description: ACME configures this issuer to communicate with a RFC8555
  12531. (ACME) server to obtain signed x509 certificates.
  12532. properties:
  12533. disableAccountKeyGeneration:
  12534. description: Enables or disables generating a new ACME account
  12535. key. If true, the Issuer resource will *not* request a new account
  12536. but will expect the account key to be supplied via an existing
  12537. secret. If false, the cert-manager system will generate a new
  12538. ACME account key for the Issuer. Defaults to false.
  12539. type: boolean
  12540. email:
  12541. description: Email is the email address to be associated with
  12542. the ACME account. This field is optional, but it is strongly
  12543. recommended to be set. It will be used to contact you in case
  12544. of issues with your account or certificates, including expiry
  12545. notification emails. This field may be updated after the account
  12546. is initially registered.
  12547. type: string
  12548. externalAccountBinding:
  12549. description: ExternalAccountBinding is a reference to a CA external
  12550. account of the ACME server. If set, upon registration cert-manager
  12551. will attempt to associate the given external account credentials
  12552. with the registered ACME account.
  12553. properties:
  12554. keyAlgorithm:
  12555. description: keyAlgorithm is the MAC key algorithm that the
  12556. key is used for. Valid values are "HS256", "HS384" and "HS512".
  12557. enum:
  12558. - HS256
  12559. - HS384
  12560. - HS512
  12561. type: string
  12562. keyID:
  12563. description: keyID is the ID of the CA key that the External
  12564. Account is bound to.
  12565. type: string
  12566. keySecretRef:
  12567. description: keySecretRef is a Secret Key Selector referencing
  12568. a data item in a Kubernetes Secret which holds the symmetric
  12569. MAC key of the External Account Binding. The `key` is the
  12570. index string that is paired with the key data in the Secret
  12571. and should not be confused with the key data itself, or
  12572. indeed with the External Account Binding keyID above. The
  12573. secret key stored in the Secret **must** be un-padded, base64
  12574. URL encoded data.
  12575. properties:
  12576. key:
  12577. description: The key of the entry in the Secret resource's
  12578. `data` field to be used. Some instances of this field
  12579. may be defaulted, in others it may be required.
  12580. type: string
  12581. name:
  12582. description: 'Name of the resource being referred to.
  12583. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12584. type: string
  12585. required:
  12586. - name
  12587. type: object
  12588. required:
  12589. - keyAlgorithm
  12590. - keyID
  12591. - keySecretRef
  12592. type: object
  12593. preferredChain:
  12594. description: 'PreferredChain is the chain to use if the ACME server
  12595. outputs multiple. PreferredChain is no guarantee that this one
  12596. gets delivered by the ACME endpoint. For example, for Let''s
  12597. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  12598. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  12599. picks the first certificate bundle in the ACME alternative chains
  12600. that has a certificate with this value as its issuer''s CN'
  12601. maxLength: 64
  12602. type: string
  12603. privateKeySecretRef:
  12604. description: PrivateKey is the name of a Kubernetes Secret resource
  12605. that will be used to store the automatically generated ACME
  12606. account private key. Optionally, a `key` may be specified to
  12607. select a specific entry within the named Secret resource. If
  12608. `key` is not specified, a default of `tls.key` will be used.
  12609. properties:
  12610. key:
  12611. description: The key of the entry in the Secret resource's
  12612. `data` field to be used. Some instances of this field may
  12613. be defaulted, in others it may be required.
  12614. type: string
  12615. name:
  12616. description: 'Name of the resource being referred to. More
  12617. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12618. type: string
  12619. required:
  12620. - name
  12621. type: object
  12622. server:
  12623. description: 'Server is the URL used to access the ACME server''s
  12624. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  12625. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  12626. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  12627. type: string
  12628. skipTLSVerify:
  12629. description: Enables or disables validation of the ACME server
  12630. TLS certificate. If true, requests to the ACME server will not
  12631. have their TLS certificate validated (i.e. insecure connections
  12632. will be allowed). Only enable this option in development environments.
  12633. The cert-manager system installed roots will be used to verify
  12634. connections to the ACME server if this is false. Defaults to
  12635. false.
  12636. type: boolean
  12637. solvers:
  12638. description: 'Solvers is a list of challenge solvers that will
  12639. be used to solve ACME challenges for the matching domains. Solver
  12640. configurations must be provided in order to obtain certificates
  12641. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  12642. items:
  12643. description: Configures an issuer to solve challenges using
  12644. the specified options. Only one of HTTP01 or DNS01 may be
  12645. provided.
  12646. properties:
  12647. dns01:
  12648. description: Configures cert-manager to attempt to complete
  12649. authorizations by performing the DNS01 challenge flow.
  12650. properties:
  12651. acmeDNS:
  12652. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  12653. API to manage DNS01 challenge records.
  12654. properties:
  12655. accountSecretRef:
  12656. description: A reference to a specific 'key' within
  12657. a Secret resource. In some instances, `key` is
  12658. a required field.
  12659. properties:
  12660. key:
  12661. description: The key of the entry in the Secret
  12662. resource's `data` field to be used. Some instances
  12663. of this field may be defaulted, in others
  12664. it may be required.
  12665. type: string
  12666. name:
  12667. description: 'Name of the resource being referred
  12668. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12669. type: string
  12670. required:
  12671. - name
  12672. type: object
  12673. host:
  12674. type: string
  12675. required:
  12676. - accountSecretRef
  12677. - host
  12678. type: object
  12679. akamai:
  12680. description: Use the Akamai DNS zone management API
  12681. to manage DNS01 challenge records.
  12682. properties:
  12683. accessTokenSecretRef:
  12684. description: A reference to a specific 'key' within
  12685. a Secret resource. In some instances, `key` is
  12686. a required field.
  12687. properties:
  12688. key:
  12689. description: The key of the entry in the Secret
  12690. resource's `data` field to be used. Some instances
  12691. of this field may be defaulted, in others
  12692. it may be required.
  12693. type: string
  12694. name:
  12695. description: 'Name of the resource being referred
  12696. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12697. type: string
  12698. required:
  12699. - name
  12700. type: object
  12701. clientSecretSecretRef:
  12702. description: A reference to a specific 'key' within
  12703. a Secret resource. In some instances, `key` is
  12704. a required field.
  12705. properties:
  12706. key:
  12707. description: The key of the entry in the Secret
  12708. resource's `data` field to be used. Some instances
  12709. of this field may be defaulted, in others
  12710. it may be required.
  12711. type: string
  12712. name:
  12713. description: 'Name of the resource being referred
  12714. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12715. type: string
  12716. required:
  12717. - name
  12718. type: object
  12719. clientTokenSecretRef:
  12720. description: A reference to a specific 'key' within
  12721. a Secret resource. In some instances, `key` is
  12722. a required field.
  12723. properties:
  12724. key:
  12725. description: The key of the entry in the Secret
  12726. resource's `data` field to be used. Some instances
  12727. of this field may be defaulted, in others
  12728. it may be required.
  12729. type: string
  12730. name:
  12731. description: 'Name of the resource being referred
  12732. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12733. type: string
  12734. required:
  12735. - name
  12736. type: object
  12737. serviceConsumerDomain:
  12738. type: string
  12739. required:
  12740. - accessTokenSecretRef
  12741. - clientSecretSecretRef
  12742. - clientTokenSecretRef
  12743. - serviceConsumerDomain
  12744. type: object
  12745. azureDNS:
  12746. description: Use the Microsoft Azure DNS API to manage
  12747. DNS01 challenge records.
  12748. properties:
  12749. clientID:
  12750. description: if both this and ClientSecret are left
  12751. unset MSI will be used
  12752. type: string
  12753. clientSecretSecretRef:
  12754. description: if both this and ClientID are left
  12755. unset MSI will be used
  12756. properties:
  12757. key:
  12758. description: The key of the entry in the Secret
  12759. resource's `data` field to be used. Some instances
  12760. of this field may be defaulted, in others
  12761. it may be required.
  12762. type: string
  12763. name:
  12764. description: 'Name of the resource being referred
  12765. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12766. type: string
  12767. required:
  12768. - name
  12769. type: object
  12770. environment:
  12771. enum:
  12772. - AzurePublicCloud
  12773. - AzureChinaCloud
  12774. - AzureGermanCloud
  12775. - AzureUSGovernmentCloud
  12776. type: string
  12777. hostedZoneName:
  12778. type: string
  12779. resourceGroupName:
  12780. type: string
  12781. subscriptionID:
  12782. type: string
  12783. tenantID:
  12784. description: when specifying ClientID and ClientSecret
  12785. then this field is also needed
  12786. type: string
  12787. required:
  12788. - resourceGroupName
  12789. - subscriptionID
  12790. type: object
  12791. cloudDNS:
  12792. description: Use the Google Cloud DNS API to manage
  12793. DNS01 challenge records.
  12794. properties:
  12795. hostedZoneName:
  12796. description: HostedZoneName is an optional field
  12797. that tells cert-manager in which Cloud DNS zone
  12798. the challenge record has to be created. If left
  12799. empty cert-manager will automatically choose a
  12800. zone.
  12801. type: string
  12802. project:
  12803. type: string
  12804. serviceAccountSecretRef:
  12805. description: A reference to a specific 'key' within
  12806. a Secret resource. In some instances, `key` is
  12807. a required field.
  12808. properties:
  12809. key:
  12810. description: The key of the entry in the Secret
  12811. resource's `data` field to be used. Some instances
  12812. of this field may be defaulted, in others
  12813. it may be required.
  12814. type: string
  12815. name:
  12816. description: 'Name of the resource being referred
  12817. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12818. type: string
  12819. required:
  12820. - name
  12821. type: object
  12822. required:
  12823. - project
  12824. type: object
  12825. cloudflare:
  12826. description: Use the Cloudflare API to manage DNS01
  12827. challenge records.
  12828. properties:
  12829. apiKeySecretRef:
  12830. description: 'API key to use to authenticate with
  12831. Cloudflare. Note: using an API token to authenticate
  12832. is now the recommended method as it allows greater
  12833. control of permissions.'
  12834. properties:
  12835. key:
  12836. description: The key of the entry in the Secret
  12837. resource's `data` field to be used. Some instances
  12838. of this field may be defaulted, in others
  12839. it may be required.
  12840. type: string
  12841. name:
  12842. description: 'Name of the resource being referred
  12843. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12844. type: string
  12845. required:
  12846. - name
  12847. type: object
  12848. apiTokenSecretRef:
  12849. description: API token used to authenticate with
  12850. Cloudflare.
  12851. properties:
  12852. key:
  12853. description: The key of the entry in the Secret
  12854. resource's `data` field to be used. Some instances
  12855. of this field may be defaulted, in others
  12856. it may be required.
  12857. type: string
  12858. name:
  12859. description: 'Name of the resource being referred
  12860. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12861. type: string
  12862. required:
  12863. - name
  12864. type: object
  12865. email:
  12866. description: Email of the account, only required
  12867. when using API key based authentication.
  12868. type: string
  12869. type: object
  12870. cnameStrategy:
  12871. description: CNAMEStrategy configures how the DNS01
  12872. provider should handle CNAME records when found in
  12873. DNS zones.
  12874. enum:
  12875. - None
  12876. - Follow
  12877. type: string
  12878. digitalocean:
  12879. description: Use the DigitalOcean DNS API to manage
  12880. DNS01 challenge records.
  12881. properties:
  12882. tokenSecretRef:
  12883. description: A reference to a specific 'key' within
  12884. a Secret resource. In some instances, `key` is
  12885. a required field.
  12886. properties:
  12887. key:
  12888. description: The key of the entry in the Secret
  12889. resource's `data` field to be used. Some instances
  12890. of this field may be defaulted, in others
  12891. it may be required.
  12892. type: string
  12893. name:
  12894. description: 'Name of the resource being referred
  12895. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12896. type: string
  12897. required:
  12898. - name
  12899. type: object
  12900. required:
  12901. - tokenSecretRef
  12902. type: object
  12903. rfc2136:
  12904. description: Use RFC2136 ("Dynamic Updates in the Domain
  12905. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  12906. to manage DNS01 challenge records.
  12907. properties:
  12908. nameserver:
  12909. description: The IP address or hostname of an authoritative
  12910. DNS server supporting RFC2136 in the form host:port.
  12911. If the host is an IPv6 address it must be enclosed
  12912. in square brackets (e.g [2001:db8::1]) ; port
  12913. is optional. This field is required.
  12914. type: string
  12915. tsigAlgorithm:
  12916. description: 'The TSIG Algorithm configured in the
  12917. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  12918. and ``tsigKeyName`` are defined. Supported values
  12919. are (case-insensitive): ``HMACMD5`` (default),
  12920. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  12921. type: string
  12922. tsigKeyName:
  12923. description: The TSIG Key name configured in the
  12924. DNS. If ``tsigSecretSecretRef`` is defined, this
  12925. field is required.
  12926. type: string
  12927. tsigSecretSecretRef:
  12928. description: The name of the secret containing the
  12929. TSIG value. If ``tsigKeyName`` is defined, this
  12930. field is required.
  12931. properties:
  12932. key:
  12933. description: The key of the entry in the Secret
  12934. resource's `data` field to be used. Some instances
  12935. of this field may be defaulted, in others
  12936. it may be required.
  12937. type: string
  12938. name:
  12939. description: 'Name of the resource being referred
  12940. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12941. type: string
  12942. required:
  12943. - name
  12944. type: object
  12945. required:
  12946. - nameserver
  12947. type: object
  12948. route53:
  12949. description: Use the AWS Route53 API to manage DNS01
  12950. challenge records.
  12951. properties:
  12952. accessKeyID:
  12953. description: 'The AccessKeyID is used for authentication.
  12954. If not set we fall-back to using env vars, shared
  12955. credentials file or AWS Instance metadata see:
  12956. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  12957. type: string
  12958. hostedZoneID:
  12959. description: If set, the provider will manage only
  12960. this zone in Route53 and will not do an lookup
  12961. using the route53:ListHostedZonesByName api call.
  12962. type: string
  12963. region:
  12964. description: Always set the region when using AccessKeyID
  12965. and SecretAccessKey
  12966. type: string
  12967. role:
  12968. description: Role is a Role ARN which the Route53
  12969. provider will assume using either the explicit
  12970. credentials AccessKeyID/SecretAccessKey or the
  12971. inferred credentials from environment variables,
  12972. shared credentials file or AWS Instance metadata
  12973. type: string
  12974. secretAccessKeySecretRef:
  12975. description: The SecretAccessKey is used for authentication.
  12976. If not set we fall-back to using env vars, shared
  12977. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  12978. properties:
  12979. key:
  12980. description: The key of the entry in the Secret
  12981. resource's `data` field to be used. Some instances
  12982. of this field may be defaulted, in others
  12983. it may be required.
  12984. type: string
  12985. name:
  12986. description: 'Name of the resource being referred
  12987. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12988. type: string
  12989. required:
  12990. - name
  12991. type: object
  12992. required:
  12993. - region
  12994. type: object
  12995. webhook:
  12996. description: Configure an external webhook based DNS01
  12997. challenge solver to manage DNS01 challenge records.
  12998. properties:
  12999. config:
  13000. description: Additional configuration that should
  13001. be passed to the webhook apiserver when challenges
  13002. are processed. This can contain arbitrary JSON
  13003. data. Secret values should not be specified in
  13004. this stanza. If secret values are needed (e.g.
  13005. credentials for a DNS service), you should use
  13006. a SecretKeySelector to reference a Secret resource.
  13007. For details on the schema of this field, consult
  13008. the webhook provider implementation's documentation.
  13009. x-kubernetes-preserve-unknown-fields: true
  13010. groupName:
  13011. description: The API group name that should be used
  13012. when POSTing ChallengePayload resources to the
  13013. webhook apiserver. This should be the same as
  13014. the GroupName specified in the webhook provider
  13015. implementation.
  13016. type: string
  13017. solverName:
  13018. description: The name of the solver to use, as defined
  13019. in the webhook provider implementation. This will
  13020. typically be the name of the provider, e.g. 'cloudflare'.
  13021. type: string
  13022. required:
  13023. - groupName
  13024. - solverName
  13025. type: object
  13026. type: object
  13027. http01:
  13028. description: Configures cert-manager to attempt to complete
  13029. authorizations by performing the HTTP01 challenge flow.
  13030. It is not possible to obtain certificates for wildcard
  13031. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  13032. mechanism.
  13033. properties:
  13034. ingress:
  13035. description: The ingress based HTTP01 challenge solver
  13036. will solve challenges by creating or modifying Ingress
  13037. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  13038. to 'challenge solver' pods that are provisioned by
  13039. cert-manager for each Challenge to be completed.
  13040. properties:
  13041. class:
  13042. description: The ingress class to use when creating
  13043. Ingress resources to solve ACME challenges that
  13044. use this challenge solver. Only one of 'class'
  13045. or 'name' may be specified.
  13046. type: string
  13047. ingressTemplate:
  13048. description: Optional ingress template used to configure
  13049. the ACME challenge solver ingress used for HTTP01
  13050. challenges
  13051. properties:
  13052. metadata:
  13053. description: ObjectMeta overrides for the ingress
  13054. used to solve HTTP01 challenges. Only the
  13055. 'labels' and 'annotations' fields may be set.
  13056. If labels or annotations overlap with in-built
  13057. values, the values here will override the
  13058. in-built values.
  13059. properties:
  13060. annotations:
  13061. additionalProperties:
  13062. type: string
  13063. description: Annotations that should be
  13064. added to the created ACME HTTP01 solver
  13065. ingress.
  13066. type: object
  13067. labels:
  13068. additionalProperties:
  13069. type: string
  13070. description: Labels that should be added
  13071. to the created ACME HTTP01 solver ingress.
  13072. type: object
  13073. type: object
  13074. type: object
  13075. name:
  13076. description: The name of the ingress resource that
  13077. should have ACME challenge solving routes inserted
  13078. into it in order to solve HTTP01 challenges. This
  13079. is typically used in conjunction with ingress
  13080. controllers like ingress-gce, which maintains
  13081. a 1:1 mapping between external IPs and ingress
  13082. resources.
  13083. type: string
  13084. podTemplate:
  13085. description: Optional pod template used to configure
  13086. the ACME challenge solver pods used for HTTP01
  13087. challenges
  13088. properties:
  13089. metadata:
  13090. description: ObjectMeta overrides for the pod
  13091. used to solve HTTP01 challenges. Only the
  13092. 'labels' and 'annotations' fields may be set.
  13093. If labels or annotations overlap with in-built
  13094. values, the values here will override the
  13095. in-built values.
  13096. properties:
  13097. annotations:
  13098. additionalProperties:
  13099. type: string
  13100. description: Annotations that should be
  13101. added to the create ACME HTTP01 solver
  13102. pods.
  13103. type: object
  13104. labels:
  13105. additionalProperties:
  13106. type: string
  13107. description: Labels that should be added
  13108. to the created ACME HTTP01 solver pods.
  13109. type: object
  13110. type: object
  13111. spec:
  13112. description: PodSpec defines overrides for the
  13113. HTTP01 challenge solver pod. Only the 'priorityClassName',
  13114. 'nodeSelector', 'affinity', 'serviceAccountName'
  13115. and 'tolerations' fields are supported currently.
  13116. All other fields will be ignored.
  13117. properties:
  13118. affinity:
  13119. description: If specified, the pod's scheduling
  13120. constraints
  13121. properties:
  13122. nodeAffinity:
  13123. description: Describes node affinity
  13124. scheduling rules for the pod.
  13125. properties:
  13126. preferredDuringSchedulingIgnoredDuringExecution:
  13127. description: The scheduler will
  13128. prefer to schedule pods to nodes
  13129. that satisfy the affinity expressions
  13130. specified by this field, but it
  13131. may choose a node that violates
  13132. one or more of the expressions.
  13133. The node that is most preferred
  13134. is the one with the greatest sum
  13135. of weights, i.e. for each node
  13136. that meets all of the scheduling
  13137. requirements (resource request,
  13138. requiredDuringScheduling affinity
  13139. expressions, etc.), compute a
  13140. sum by iterating through the elements
  13141. of this field and adding "weight"
  13142. to the sum if the node matches
  13143. the corresponding matchExpressions;
  13144. the node(s) with the highest sum
  13145. are the most preferred.
  13146. items:
  13147. description: An empty preferred
  13148. scheduling term matches all
  13149. objects with implicit weight
  13150. 0 (i.e. it's a no-op). A null
  13151. preferred scheduling term matches
  13152. no objects (i.e. is also a no-op).
  13153. properties:
  13154. preference:
  13155. description: A node selector
  13156. term, associated with the
  13157. corresponding weight.
  13158. properties:
  13159. matchExpressions:
  13160. description: A list of
  13161. node selector requirements
  13162. by node's labels.
  13163. items:
  13164. description: A node
  13165. selector requirement
  13166. is a selector that
  13167. contains values, a
  13168. key, and an operator
  13169. that relates the key
  13170. and values.
  13171. properties:
  13172. key:
  13173. description: The
  13174. label key that
  13175. the selector applies
  13176. to.
  13177. type: string
  13178. operator:
  13179. description: Represents
  13180. a key's relationship
  13181. to a set of values.
  13182. Valid operators
  13183. are In, NotIn,
  13184. Exists, DoesNotExist.
  13185. Gt, and Lt.
  13186. type: string
  13187. values:
  13188. description: An
  13189. array of string
  13190. values. If the
  13191. operator is In
  13192. or NotIn, the
  13193. values array must
  13194. be non-empty.
  13195. If the operator
  13196. is Exists or DoesNotExist,
  13197. the values array
  13198. must be empty.
  13199. If the operator
  13200. is Gt or Lt, the
  13201. values array must
  13202. have a single
  13203. element, which
  13204. will be interpreted
  13205. as an integer.
  13206. This array is
  13207. replaced during
  13208. a strategic merge
  13209. patch.
  13210. items:
  13211. type: string
  13212. type: array
  13213. required:
  13214. - key
  13215. - operator
  13216. type: object
  13217. type: array
  13218. matchFields:
  13219. description: A list of
  13220. node selector requirements
  13221. by node's fields.
  13222. items:
  13223. description: A node
  13224. selector requirement
  13225. is a selector that
  13226. contains values, a
  13227. key, and an operator
  13228. that relates the key
  13229. and values.
  13230. properties:
  13231. key:
  13232. description: The
  13233. label key that
  13234. the selector applies
  13235. to.
  13236. type: string
  13237. operator:
  13238. description: Represents
  13239. a key's relationship
  13240. to a set of values.
  13241. Valid operators
  13242. are In, NotIn,
  13243. Exists, DoesNotExist.
  13244. Gt, and Lt.
  13245. type: string
  13246. values:
  13247. description: An
  13248. array of string
  13249. values. If the
  13250. operator is In
  13251. or NotIn, the
  13252. values array must
  13253. be non-empty.
  13254. If the operator
  13255. is Exists or DoesNotExist,
  13256. the values array
  13257. must be empty.
  13258. If the operator
  13259. is Gt or Lt, the
  13260. values array must
  13261. have a single
  13262. element, which
  13263. will be interpreted
  13264. as an integer.
  13265. This array is
  13266. replaced during
  13267. a strategic merge
  13268. patch.
  13269. items:
  13270. type: string
  13271. type: array
  13272. required:
  13273. - key
  13274. - operator
  13275. type: object
  13276. type: array
  13277. type: object
  13278. weight:
  13279. description: Weight associated
  13280. with matching the corresponding
  13281. nodeSelectorTerm, in the
  13282. range 1-100.
  13283. format: int32
  13284. type: integer
  13285. required:
  13286. - preference
  13287. - weight
  13288. type: object
  13289. type: array
  13290. requiredDuringSchedulingIgnoredDuringExecution:
  13291. description: If the affinity requirements
  13292. specified by this field are not
  13293. met at scheduling time, the pod
  13294. will not be scheduled onto the
  13295. node. If the affinity requirements
  13296. specified by this field cease
  13297. to be met at some point during
  13298. pod execution (e.g. due to an
  13299. update), the system may or may
  13300. not try to eventually evict the
  13301. pod from its node.
  13302. properties:
  13303. nodeSelectorTerms:
  13304. description: Required. A list
  13305. of node selector terms. The
  13306. terms are ORed.
  13307. items:
  13308. description: A null or empty
  13309. node selector term matches
  13310. no objects. The requirements
  13311. of them are ANDed. The TopologySelectorTerm
  13312. type implements a subset
  13313. of the NodeSelectorTerm.
  13314. properties:
  13315. matchExpressions:
  13316. description: A list of
  13317. node selector requirements
  13318. by node's labels.
  13319. items:
  13320. description: A node
  13321. selector requirement
  13322. is a selector that
  13323. contains values, a
  13324. key, and an operator
  13325. that relates the key
  13326. and values.
  13327. properties:
  13328. key:
  13329. description: The
  13330. label key that
  13331. the selector applies
  13332. to.
  13333. type: string
  13334. operator:
  13335. description: Represents
  13336. a key's relationship
  13337. to a set of values.
  13338. Valid operators
  13339. are In, NotIn,
  13340. Exists, DoesNotExist.
  13341. Gt, and Lt.
  13342. type: string
  13343. values:
  13344. description: An
  13345. array of string
  13346. values. If the
  13347. operator is In
  13348. or NotIn, the
  13349. values array must
  13350. be non-empty.
  13351. If the operator
  13352. is Exists or DoesNotExist,
  13353. the values array
  13354. must be empty.
  13355. If the operator
  13356. is Gt or Lt, the
  13357. values array must
  13358. have a single
  13359. element, which
  13360. will be interpreted
  13361. as an integer.
  13362. This array is
  13363. replaced during
  13364. a strategic merge
  13365. patch.
  13366. items:
  13367. type: string
  13368. type: array
  13369. required:
  13370. - key
  13371. - operator
  13372. type: object
  13373. type: array
  13374. matchFields:
  13375. description: A list of
  13376. node selector requirements
  13377. by node's fields.
  13378. items:
  13379. description: A node
  13380. selector requirement
  13381. is a selector that
  13382. contains values, a
  13383. key, and an operator
  13384. that relates the key
  13385. and values.
  13386. properties:
  13387. key:
  13388. description: The
  13389. label key that
  13390. the selector applies
  13391. to.
  13392. type: string
  13393. operator:
  13394. description: Represents
  13395. a key's relationship
  13396. to a set of values.
  13397. Valid operators
  13398. are In, NotIn,
  13399. Exists, DoesNotExist.
  13400. Gt, and Lt.
  13401. type: string
  13402. values:
  13403. description: An
  13404. array of string
  13405. values. If the
  13406. operator is In
  13407. or NotIn, the
  13408. values array must
  13409. be non-empty.
  13410. If the operator
  13411. is Exists or DoesNotExist,
  13412. the values array
  13413. must be empty.
  13414. If the operator
  13415. is Gt or Lt, the
  13416. values array must
  13417. have a single
  13418. element, which
  13419. will be interpreted
  13420. as an integer.
  13421. This array is
  13422. replaced during
  13423. a strategic merge
  13424. patch.
  13425. items:
  13426. type: string
  13427. type: array
  13428. required:
  13429. - key
  13430. - operator
  13431. type: object
  13432. type: array
  13433. type: object
  13434. type: array
  13435. required:
  13436. - nodeSelectorTerms
  13437. type: object
  13438. type: object
  13439. podAffinity:
  13440. description: Describes pod affinity
  13441. scheduling rules (e.g. co-locate this
  13442. pod in the same node, zone, etc. as
  13443. some other pod(s)).
  13444. properties:
  13445. preferredDuringSchedulingIgnoredDuringExecution:
  13446. description: The scheduler will
  13447. prefer to schedule pods to nodes
  13448. that satisfy the affinity expressions
  13449. specified by this field, but it
  13450. may choose a node that violates
  13451. one or more of the expressions.
  13452. The node that is most preferred
  13453. is the one with the greatest sum
  13454. of weights, i.e. for each node
  13455. that meets all of the scheduling
  13456. requirements (resource request,
  13457. requiredDuringScheduling affinity
  13458. expressions, etc.), compute a
  13459. sum by iterating through the elements
  13460. of this field and adding "weight"
  13461. to the sum if the node has pods
  13462. which matches the corresponding
  13463. podAffinityTerm; the node(s) with
  13464. the highest sum are the most preferred.
  13465. items:
  13466. description: The weights of all
  13467. of the matched WeightedPodAffinityTerm
  13468. fields are added per-node to
  13469. find the most preferred node(s)
  13470. properties:
  13471. podAffinityTerm:
  13472. description: Required. A pod
  13473. affinity term, associated
  13474. with the corresponding weight.
  13475. properties:
  13476. labelSelector:
  13477. description: A label query
  13478. over a set of resources,
  13479. in this case pods.
  13480. properties:
  13481. matchExpressions:
  13482. description: matchExpressions
  13483. is a list of label
  13484. selector requirements.
  13485. The requirements
  13486. are ANDed.
  13487. items:
  13488. description: A label
  13489. selector requirement
  13490. is a selector
  13491. that contains
  13492. values, a key,
  13493. and an operator
  13494. that relates the
  13495. key and values.
  13496. properties:
  13497. key:
  13498. description: key
  13499. is the label
  13500. key that the
  13501. selector applies
  13502. to.
  13503. type: string
  13504. operator:
  13505. description: operator
  13506. represents
  13507. a key's relationship
  13508. to a set of
  13509. values. Valid
  13510. operators
  13511. are In, NotIn,
  13512. Exists and
  13513. DoesNotExist.
  13514. type: string
  13515. values:
  13516. description: values
  13517. is an array
  13518. of string
  13519. values. If
  13520. the operator
  13521. is In or NotIn,
  13522. the values
  13523. array must
  13524. be non-empty.
  13525. If the operator
  13526. is Exists
  13527. or DoesNotExist,
  13528. the values
  13529. array must
  13530. be empty.
  13531. This array
  13532. is replaced
  13533. during a strategic
  13534. merge patch.
  13535. items:
  13536. type: string
  13537. type: array
  13538. required:
  13539. - key
  13540. - operator
  13541. type: object
  13542. type: array
  13543. matchLabels:
  13544. additionalProperties:
  13545. type: string
  13546. description: matchLabels
  13547. is a map of {key,value}
  13548. pairs. A single
  13549. {key,value} in the
  13550. matchLabels map
  13551. is equivalent to
  13552. an element of matchExpressions,
  13553. whose key field
  13554. is "key", the operator
  13555. is "In", and the
  13556. values array contains
  13557. only "value". The
  13558. requirements are
  13559. ANDed.
  13560. type: object
  13561. type: object
  13562. namespaces:
  13563. description: namespaces
  13564. specifies which namespaces
  13565. the labelSelector applies
  13566. to (matches against);
  13567. null or empty list means
  13568. "this pod's namespace"
  13569. items:
  13570. type: string
  13571. type: array
  13572. topologyKey:
  13573. description: This pod
  13574. should be co-located
  13575. (affinity) or not co-located
  13576. (anti-affinity) with
  13577. the pods matching the
  13578. labelSelector in the
  13579. specified namespaces,
  13580. where co-located is
  13581. defined as running on
  13582. a node whose value of
  13583. the label with key topologyKey
  13584. matches that of any
  13585. node on which any of
  13586. the selected pods is
  13587. running. Empty topologyKey
  13588. is not allowed.
  13589. type: string
  13590. required:
  13591. - topologyKey
  13592. type: object
  13593. weight:
  13594. description: weight associated
  13595. with matching the corresponding
  13596. podAffinityTerm, in the
  13597. range 1-100.
  13598. format: int32
  13599. type: integer
  13600. required:
  13601. - podAffinityTerm
  13602. - weight
  13603. type: object
  13604. type: array
  13605. requiredDuringSchedulingIgnoredDuringExecution:
  13606. description: If the affinity requirements
  13607. specified by this field are not
  13608. met at scheduling time, the pod
  13609. will not be scheduled onto the
  13610. node. If the affinity requirements
  13611. specified by this field cease
  13612. to be met at some point during
  13613. pod execution (e.g. due to a pod
  13614. label update), the system may
  13615. or may not try to eventually evict
  13616. the pod from its node. When there
  13617. are multiple elements, the lists
  13618. of nodes corresponding to each
  13619. podAffinityTerm are intersected,
  13620. i.e. all terms must be satisfied.
  13621. items:
  13622. description: Defines a set of
  13623. pods (namely those matching
  13624. the labelSelector relative to
  13625. the given namespace(s)) that
  13626. this pod should be co-located
  13627. (affinity) or not co-located
  13628. (anti-affinity) with, where
  13629. co-located is defined as running
  13630. on a node whose value of the
  13631. label with key <topologyKey>
  13632. matches that of any node on
  13633. which a pod of the set of pods
  13634. is running
  13635. properties:
  13636. labelSelector:
  13637. description: A label query
  13638. over a set of resources,
  13639. in this case pods.
  13640. properties:
  13641. matchExpressions:
  13642. description: matchExpressions
  13643. is a list of label selector
  13644. requirements. The requirements
  13645. are ANDed.
  13646. items:
  13647. description: A label
  13648. selector requirement
  13649. is a selector that
  13650. contains values, a
  13651. key, and an operator
  13652. that relates the key
  13653. and values.
  13654. properties:
  13655. key:
  13656. description: key
  13657. is the label key
  13658. that the selector
  13659. applies to.
  13660. type: string
  13661. operator:
  13662. description: operator
  13663. represents a key's
  13664. relationship to
  13665. a set of values.
  13666. Valid operators
  13667. are In, NotIn,
  13668. Exists and DoesNotExist.
  13669. type: string
  13670. values:
  13671. description: values
  13672. is an array of
  13673. string values.
  13674. If the operator
  13675. is In or NotIn,
  13676. the values array
  13677. must be non-empty.
  13678. If the operator
  13679. is Exists or DoesNotExist,
  13680. the values array
  13681. must be empty.
  13682. This array is
  13683. replaced during
  13684. a strategic merge
  13685. patch.
  13686. items:
  13687. type: string
  13688. type: array
  13689. required:
  13690. - key
  13691. - operator
  13692. type: object
  13693. type: array
  13694. matchLabels:
  13695. additionalProperties:
  13696. type: string
  13697. description: matchLabels
  13698. is a map of {key,value}
  13699. pairs. A single {key,value}
  13700. in the matchLabels map
  13701. is equivalent to an
  13702. element of matchExpressions,
  13703. whose key field is "key",
  13704. the operator is "In",
  13705. and the values array
  13706. contains only "value".
  13707. The requirements are
  13708. ANDed.
  13709. type: object
  13710. type: object
  13711. namespaces:
  13712. description: namespaces specifies
  13713. which namespaces the labelSelector
  13714. applies to (matches against);
  13715. null or empty list means
  13716. "this pod's namespace"
  13717. items:
  13718. type: string
  13719. type: array
  13720. topologyKey:
  13721. description: This pod should
  13722. be co-located (affinity)
  13723. or not co-located (anti-affinity)
  13724. with the pods matching the
  13725. labelSelector in the specified
  13726. namespaces, where co-located
  13727. is defined as running on
  13728. a node whose value of the
  13729. label with key topologyKey
  13730. matches that of any node
  13731. on which any of the selected
  13732. pods is running. Empty topologyKey
  13733. is not allowed.
  13734. type: string
  13735. required:
  13736. - topologyKey
  13737. type: object
  13738. type: array
  13739. type: object
  13740. podAntiAffinity:
  13741. description: Describes pod anti-affinity
  13742. scheduling rules (e.g. avoid putting
  13743. this pod in the same node, zone, etc.
  13744. as some other pod(s)).
  13745. properties:
  13746. preferredDuringSchedulingIgnoredDuringExecution:
  13747. description: The scheduler will
  13748. prefer to schedule pods to nodes
  13749. that satisfy the anti-affinity
  13750. expressions specified by this
  13751. field, but it may choose a node
  13752. that violates one or more of the
  13753. expressions. The node that is
  13754. most preferred is the one with
  13755. the greatest sum of weights, i.e.
  13756. for each node that meets all of
  13757. the scheduling requirements (resource
  13758. request, requiredDuringScheduling
  13759. anti-affinity expressions, etc.),
  13760. compute a sum by iterating through
  13761. the elements of this field and
  13762. adding "weight" to the sum if
  13763. the node has pods which matches
  13764. the corresponding podAffinityTerm;
  13765. the node(s) with the highest sum
  13766. are the most preferred.
  13767. items:
  13768. description: The weights of all
  13769. of the matched WeightedPodAffinityTerm
  13770. fields are added per-node to
  13771. find the most preferred node(s)
  13772. properties:
  13773. podAffinityTerm:
  13774. description: Required. A pod
  13775. affinity term, associated
  13776. with the corresponding weight.
  13777. properties:
  13778. labelSelector:
  13779. description: A label query
  13780. over a set of resources,
  13781. in this case pods.
  13782. properties:
  13783. matchExpressions:
  13784. description: matchExpressions
  13785. is a list of label
  13786. selector requirements.
  13787. The requirements
  13788. are ANDed.
  13789. items:
  13790. description: A label
  13791. selector requirement
  13792. is a selector
  13793. that contains
  13794. values, a key,
  13795. and an operator
  13796. that relates the
  13797. key and values.
  13798. properties:
  13799. key:
  13800. description: key
  13801. is the label
  13802. key that the
  13803. selector applies
  13804. to.
  13805. type: string
  13806. operator:
  13807. description: operator
  13808. represents
  13809. a key's relationship
  13810. to a set of
  13811. values. Valid
  13812. operators
  13813. are In, NotIn,
  13814. Exists and
  13815. DoesNotExist.
  13816. type: string
  13817. values:
  13818. description: values
  13819. is an array
  13820. of string
  13821. values. If
  13822. the operator
  13823. is In or NotIn,
  13824. the values
  13825. array must
  13826. be non-empty.
  13827. If the operator
  13828. is Exists
  13829. or DoesNotExist,
  13830. the values
  13831. array must
  13832. be empty.
  13833. This array
  13834. is replaced
  13835. during a strategic
  13836. merge patch.
  13837. items:
  13838. type: string
  13839. type: array
  13840. required:
  13841. - key
  13842. - operator
  13843. type: object
  13844. type: array
  13845. matchLabels:
  13846. additionalProperties:
  13847. type: string
  13848. description: matchLabels
  13849. is a map of {key,value}
  13850. pairs. A single
  13851. {key,value} in the
  13852. matchLabels map
  13853. is equivalent to
  13854. an element of matchExpressions,
  13855. whose key field
  13856. is "key", the operator
  13857. is "In", and the
  13858. values array contains
  13859. only "value". The
  13860. requirements are
  13861. ANDed.
  13862. type: object
  13863. type: object
  13864. namespaces:
  13865. description: namespaces
  13866. specifies which namespaces
  13867. the labelSelector applies
  13868. to (matches against);
  13869. null or empty list means
  13870. "this pod's namespace"
  13871. items:
  13872. type: string
  13873. type: array
  13874. topologyKey:
  13875. description: This pod
  13876. should be co-located
  13877. (affinity) or not co-located
  13878. (anti-affinity) with
  13879. the pods matching the
  13880. labelSelector in the
  13881. specified namespaces,
  13882. where co-located is
  13883. defined as running on
  13884. a node whose value of
  13885. the label with key topologyKey
  13886. matches that of any
  13887. node on which any of
  13888. the selected pods is
  13889. running. Empty topologyKey
  13890. is not allowed.
  13891. type: string
  13892. required:
  13893. - topologyKey
  13894. type: object
  13895. weight:
  13896. description: weight associated
  13897. with matching the corresponding
  13898. podAffinityTerm, in the
  13899. range 1-100.
  13900. format: int32
  13901. type: integer
  13902. required:
  13903. - podAffinityTerm
  13904. - weight
  13905. type: object
  13906. type: array
  13907. requiredDuringSchedulingIgnoredDuringExecution:
  13908. description: If the anti-affinity
  13909. requirements specified by this
  13910. field are not met at scheduling
  13911. time, the pod will not be scheduled
  13912. onto the node. If the anti-affinity
  13913. requirements specified by this
  13914. field cease to be met at some
  13915. point during pod execution (e.g.
  13916. due to a pod label update), the
  13917. system may or may not try to eventually
  13918. evict the pod from its node. When
  13919. there are multiple elements, the
  13920. lists of nodes corresponding to
  13921. each podAffinityTerm are intersected,
  13922. i.e. all terms must be satisfied.
  13923. items:
  13924. description: Defines a set of
  13925. pods (namely those matching
  13926. the labelSelector relative to
  13927. the given namespace(s)) that
  13928. this pod should be co-located
  13929. (affinity) or not co-located
  13930. (anti-affinity) with, where
  13931. co-located is defined as running
  13932. on a node whose value of the
  13933. label with key <topologyKey>
  13934. matches that of any node on
  13935. which a pod of the set of pods
  13936. is running
  13937. properties:
  13938. labelSelector:
  13939. description: A label query
  13940. over a set of resources,
  13941. in this case pods.
  13942. properties:
  13943. matchExpressions:
  13944. description: matchExpressions
  13945. is a list of label selector
  13946. requirements. The requirements
  13947. are ANDed.
  13948. items:
  13949. description: A label
  13950. selector requirement
  13951. is a selector that
  13952. contains values, a
  13953. key, and an operator
  13954. that relates the key
  13955. and values.
  13956. properties:
  13957. key:
  13958. description: key
  13959. is the label key
  13960. that the selector
  13961. applies to.
  13962. type: string
  13963. operator:
  13964. description: operator
  13965. represents a key's
  13966. relationship to
  13967. a set of values.
  13968. Valid operators
  13969. are In, NotIn,
  13970. Exists and DoesNotExist.
  13971. type: string
  13972. values:
  13973. description: values
  13974. is an array of
  13975. string values.
  13976. If the operator
  13977. is In or NotIn,
  13978. the values array
  13979. must be non-empty.
  13980. If the operator
  13981. is Exists or DoesNotExist,
  13982. the values array
  13983. must be empty.
  13984. This array is
  13985. replaced during
  13986. a strategic merge
  13987. patch.
  13988. items:
  13989. type: string
  13990. type: array
  13991. required:
  13992. - key
  13993. - operator
  13994. type: object
  13995. type: array
  13996. matchLabels:
  13997. additionalProperties:
  13998. type: string
  13999. description: matchLabels
  14000. is a map of {key,value}
  14001. pairs. A single {key,value}
  14002. in the matchLabels map
  14003. is equivalent to an
  14004. element of matchExpressions,
  14005. whose key field is "key",
  14006. the operator is "In",
  14007. and the values array
  14008. contains only "value".
  14009. The requirements are
  14010. ANDed.
  14011. type: object
  14012. type: object
  14013. namespaces:
  14014. description: namespaces specifies
  14015. which namespaces the labelSelector
  14016. applies to (matches against);
  14017. null or empty list means
  14018. "this pod's namespace"
  14019. items:
  14020. type: string
  14021. type: array
  14022. topologyKey:
  14023. description: This pod should
  14024. be co-located (affinity)
  14025. or not co-located (anti-affinity)
  14026. with the pods matching the
  14027. labelSelector in the specified
  14028. namespaces, where co-located
  14029. is defined as running on
  14030. a node whose value of the
  14031. label with key topologyKey
  14032. matches that of any node
  14033. on which any of the selected
  14034. pods is running. Empty topologyKey
  14035. is not allowed.
  14036. type: string
  14037. required:
  14038. - topologyKey
  14039. type: object
  14040. type: array
  14041. type: object
  14042. type: object
  14043. nodeSelector:
  14044. additionalProperties:
  14045. type: string
  14046. description: 'NodeSelector is a selector
  14047. which must be true for the pod to fit
  14048. on a node. Selector which must match a
  14049. node''s labels for the pod to be scheduled
  14050. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  14051. type: object
  14052. priorityClassName:
  14053. description: If specified, the pod's priorityClassName.
  14054. type: string
  14055. serviceAccountName:
  14056. description: If specified, the pod's service
  14057. account
  14058. type: string
  14059. tolerations:
  14060. description: If specified, the pod's tolerations.
  14061. items:
  14062. description: The pod this Toleration is
  14063. attached to tolerates any taint that
  14064. matches the triple <key,value,effect>
  14065. using the matching operator <operator>.
  14066. properties:
  14067. effect:
  14068. description: Effect indicates the
  14069. taint effect to match. Empty means
  14070. match all taint effects. When specified,
  14071. allowed values are NoSchedule, PreferNoSchedule
  14072. and NoExecute.
  14073. type: string
  14074. key:
  14075. description: Key is the taint key
  14076. that the toleration applies to.
  14077. Empty means match all taint keys.
  14078. If the key is empty, operator must
  14079. be Exists; this combination means
  14080. to match all values and all keys.
  14081. type: string
  14082. operator:
  14083. description: Operator represents a
  14084. key's relationship to the value.
  14085. Valid operators are Exists and Equal.
  14086. Defaults to Equal. Exists is equivalent
  14087. to wildcard for value, so that a
  14088. pod can tolerate all taints of a
  14089. particular category.
  14090. type: string
  14091. tolerationSeconds:
  14092. description: TolerationSeconds represents
  14093. the period of time the toleration
  14094. (which must be of effect NoExecute,
  14095. otherwise this field is ignored)
  14096. tolerates the taint. By default,
  14097. it is not set, which means tolerate
  14098. the taint forever (do not evict).
  14099. Zero and negative values will be
  14100. treated as 0 (evict immediately)
  14101. by the system.
  14102. format: int64
  14103. type: integer
  14104. value:
  14105. description: Value is the taint value
  14106. the toleration matches to. If the
  14107. operator is Exists, the value should
  14108. be empty, otherwise just a regular
  14109. string.
  14110. type: string
  14111. type: object
  14112. type: array
  14113. type: object
  14114. type: object
  14115. serviceType:
  14116. description: Optional service type for Kubernetes
  14117. solver service
  14118. type: string
  14119. type: object
  14120. type: object
  14121. selector:
  14122. description: Selector selects a set of DNSNames on the Certificate
  14123. resource that should be solved using this challenge solver.
  14124. If not specified, the solver will be treated as the 'default'
  14125. solver with the lowest priority, i.e. if any other solver
  14126. has a more specific match, it will be used instead.
  14127. properties:
  14128. dnsNames:
  14129. description: List of DNSNames that this solver will
  14130. be used to solve. If specified and a match is found,
  14131. a dnsNames selector will take precedence over a dnsZones
  14132. selector. If multiple solvers match with the same
  14133. dnsNames value, the solver with the most matching
  14134. labels in matchLabels will be selected. If neither
  14135. has more matches, the solver defined earlier in the
  14136. list will be selected.
  14137. items:
  14138. type: string
  14139. type: array
  14140. dnsZones:
  14141. description: List of DNSZones that this solver will
  14142. be used to solve. The most specific DNS zone match
  14143. specified here will take precedence over other DNS
  14144. zone matches, so a solver specifying sys.example.com
  14145. will be selected over one specifying example.com for
  14146. the domain www.sys.example.com. If multiple solvers
  14147. match with the same dnsZones value, the solver with
  14148. the most matching labels in matchLabels will be selected.
  14149. If neither has more matches, the solver defined earlier
  14150. in the list will be selected.
  14151. items:
  14152. type: string
  14153. type: array
  14154. matchLabels:
  14155. additionalProperties:
  14156. type: string
  14157. description: A label selector that is used to refine
  14158. the set of certificate's that this challenge solver
  14159. will apply to.
  14160. type: object
  14161. type: object
  14162. type: object
  14163. type: array
  14164. required:
  14165. - privateKeySecretRef
  14166. - server
  14167. type: object
  14168. ca:
  14169. description: CA configures this issuer to sign certificates using
  14170. a signing CA keypair stored in a Secret resource. This is used to
  14171. build internal PKIs that are managed by cert-manager.
  14172. properties:
  14173. crlDistributionPoints:
  14174. description: The CRL distribution points is an X.509 v3 certificate
  14175. extension which identifies the location of the CRL from which
  14176. the revocation of this certificate can be checked. If not set,
  14177. certificates will be issued without distribution points set.
  14178. items:
  14179. type: string
  14180. type: array
  14181. secretName:
  14182. description: SecretName is the name of the secret used to sign
  14183. Certificates issued by this Issuer.
  14184. type: string
  14185. required:
  14186. - secretName
  14187. type: object
  14188. selfSigned:
  14189. description: SelfSigned configures this issuer to 'self sign' certificates
  14190. using the private key used to create the CertificateRequest object.
  14191. properties:
  14192. crlDistributionPoints:
  14193. description: The CRL distribution points is an X.509 v3 certificate
  14194. extension which identifies the location of the CRL from which
  14195. the revocation of this certificate can be checked. If not set
  14196. certificate will be issued without CDP. Values are strings.
  14197. items:
  14198. type: string
  14199. type: array
  14200. type: object
  14201. vault:
  14202. description: Vault configures this issuer to sign certificates using
  14203. a HashiCorp Vault PKI backend.
  14204. properties:
  14205. auth:
  14206. description: Auth configures how cert-manager authenticates with
  14207. the Vault server.
  14208. properties:
  14209. appRole:
  14210. description: AppRole authenticates with Vault using the App
  14211. Role auth mechanism, with the role and secret stored in
  14212. a Kubernetes Secret resource.
  14213. properties:
  14214. path:
  14215. description: 'Path where the App Role authentication backend
  14216. is mounted in Vault, e.g: "approle"'
  14217. type: string
  14218. roleId:
  14219. description: RoleID configured in the App Role authentication
  14220. backend when setting up the authentication backend in
  14221. Vault.
  14222. type: string
  14223. secretRef:
  14224. description: Reference to a key in a Secret that contains
  14225. the App Role secret used to authenticate with Vault.
  14226. The `key` field must be specified and denotes which
  14227. entry within the Secret resource is used as the app
  14228. role secret.
  14229. properties:
  14230. key:
  14231. description: The key of the entry in the Secret resource's
  14232. `data` field to be used. Some instances of this
  14233. field may be defaulted, in others it may be required.
  14234. type: string
  14235. name:
  14236. description: 'Name of the resource being referred
  14237. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14238. type: string
  14239. required:
  14240. - name
  14241. type: object
  14242. required:
  14243. - path
  14244. - roleId
  14245. - secretRef
  14246. type: object
  14247. kubernetes:
  14248. description: Kubernetes authenticates with Vault by passing
  14249. the ServiceAccount token stored in the named Secret resource
  14250. to the Vault server.
  14251. properties:
  14252. mountPath:
  14253. description: The Vault mountPath here is the mount path
  14254. to use when authenticating with Vault. For example,
  14255. setting a value to `/v1/auth/foo`, will use the path
  14256. `/v1/auth/foo/login` to authenticate with Vault. If
  14257. unspecified, the default value "/v1/auth/kubernetes"
  14258. will be used.
  14259. type: string
  14260. role:
  14261. description: A required field containing the Vault Role
  14262. to assume. A Role binds a Kubernetes ServiceAccount
  14263. with a set of Vault policies.
  14264. type: string
  14265. secretRef:
  14266. description: The required Secret field containing a Kubernetes
  14267. ServiceAccount JWT used for authenticating with Vault.
  14268. Use of 'ambient credentials' is not supported.
  14269. properties:
  14270. key:
  14271. description: The key of the entry in the Secret resource's
  14272. `data` field to be used. Some instances of this
  14273. field may be defaulted, in others it may be required.
  14274. type: string
  14275. name:
  14276. description: 'Name of the resource being referred
  14277. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14278. type: string
  14279. required:
  14280. - name
  14281. type: object
  14282. required:
  14283. - role
  14284. - secretRef
  14285. type: object
  14286. tokenSecretRef:
  14287. description: TokenSecretRef authenticates with Vault by presenting
  14288. a token.
  14289. properties:
  14290. key:
  14291. description: The key of the entry in the Secret resource's
  14292. `data` field to be used. Some instances of this field
  14293. may be defaulted, in others it may be required.
  14294. type: string
  14295. name:
  14296. description: 'Name of the resource being referred to.
  14297. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14298. type: string
  14299. required:
  14300. - name
  14301. type: object
  14302. type: object
  14303. caBundle:
  14304. description: PEM encoded CA bundle used to validate Vault server
  14305. certificate. Only used if the Server URL is using HTTPS protocol.
  14306. This parameter is ignored for plain HTTP protocol connection.
  14307. If not set the system root certificates are used to validate
  14308. the TLS connection.
  14309. format: byte
  14310. type: string
  14311. namespace:
  14312. description: 'Name of the vault namespace. Namespaces is a set
  14313. of features within Vault Enterprise that allows Vault environments
  14314. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  14315. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  14316. type: string
  14317. path:
  14318. description: 'Path is the mount path of the Vault PKI backend''s
  14319. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  14320. type: string
  14321. server:
  14322. description: 'Server is the connection address for the Vault server,
  14323. e.g: "https://vault.example.com:8200".'
  14324. type: string
  14325. required:
  14326. - auth
  14327. - path
  14328. - server
  14329. type: object
  14330. venafi:
  14331. description: Venafi configures this issuer to sign certificates using
  14332. a Venafi TPP or Venafi Cloud policy zone.
  14333. properties:
  14334. cloud:
  14335. description: Cloud specifies the Venafi cloud configuration settings.
  14336. Only one of TPP or Cloud may be specified.
  14337. properties:
  14338. apiTokenSecretRef:
  14339. description: APITokenSecretRef is a secret key selector for
  14340. the Venafi Cloud API token.
  14341. properties:
  14342. key:
  14343. description: The key of the entry in the Secret resource's
  14344. `data` field to be used. Some instances of this field
  14345. may be defaulted, in others it may be required.
  14346. type: string
  14347. name:
  14348. description: 'Name of the resource being referred to.
  14349. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14350. type: string
  14351. required:
  14352. - name
  14353. type: object
  14354. url:
  14355. description: URL is the base URL for Venafi Cloud. Defaults
  14356. to "https://api.venafi.cloud/v1".
  14357. type: string
  14358. required:
  14359. - apiTokenSecretRef
  14360. type: object
  14361. tpp:
  14362. description: TPP specifies Trust Protection Platform configuration
  14363. settings. Only one of TPP or Cloud may be specified.
  14364. properties:
  14365. caBundle:
  14366. description: CABundle is a PEM encoded TLS certificate to
  14367. use to verify connections to the TPP instance. If specified,
  14368. system roots will not be used and the issuing CA for the
  14369. TPP instance must be verifiable using the provided root.
  14370. If not specified, the connection will be verified using
  14371. the cert-manager system root certificates.
  14372. format: byte
  14373. type: string
  14374. credentialsRef:
  14375. description: CredentialsRef is a reference to a Secret containing
  14376. the username and password for the TPP server. The secret
  14377. must contain two keys, 'username' and 'password'.
  14378. properties:
  14379. name:
  14380. description: 'Name of the resource being referred to.
  14381. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14382. type: string
  14383. required:
  14384. - name
  14385. type: object
  14386. url:
  14387. description: 'URL is the base URL for the vedsdk endpoint
  14388. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  14389. type: string
  14390. required:
  14391. - credentialsRef
  14392. - url
  14393. type: object
  14394. zone:
  14395. description: Zone is the Venafi Policy Zone to use for this issuer.
  14396. All requests made to the Venafi platform will be restricted
  14397. by the named zone policy. This field is required.
  14398. type: string
  14399. required:
  14400. - zone
  14401. type: object
  14402. type: object
  14403. status:
  14404. description: Status of the ClusterIssuer. This is set and managed automatically.
  14405. properties:
  14406. acme:
  14407. description: ACME specific status options. This field should only
  14408. be set if the Issuer is configured to use an ACME server to issue
  14409. certificates.
  14410. properties:
  14411. lastRegisteredEmail:
  14412. description: LastRegisteredEmail is the email associated with
  14413. the latest registered ACME account, in order to track changes
  14414. made to registered account associated with the Issuer
  14415. type: string
  14416. uri:
  14417. description: URI is the unique account identifier, which can also
  14418. be used to retrieve account details from the CA
  14419. type: string
  14420. type: object
  14421. conditions:
  14422. description: List of status conditions to indicate the status of a
  14423. CertificateRequest. Known condition types are `Ready`.
  14424. items:
  14425. description: IssuerCondition contains condition information for
  14426. an Issuer.
  14427. properties:
  14428. lastTransitionTime:
  14429. description: LastTransitionTime is the timestamp corresponding
  14430. to the last status change of this condition.
  14431. format: date-time
  14432. type: string
  14433. message:
  14434. description: Message is a human readable description of the
  14435. details of the last transition, complementing reason.
  14436. type: string
  14437. reason:
  14438. description: Reason is a brief machine readable explanation
  14439. for the condition's last transition.
  14440. type: string
  14441. status:
  14442. description: Status of the condition, one of ('True', 'False',
  14443. 'Unknown').
  14444. enum:
  14445. - "True"
  14446. - "False"
  14447. - Unknown
  14448. type: string
  14449. type:
  14450. description: Type of the condition, known values are ('Ready').
  14451. type: string
  14452. required:
  14453. - status
  14454. - type
  14455. type: object
  14456. type: array
  14457. type: object
  14458. required:
  14459. - spec
  14460. type: object
  14461. served: true
  14462. storage: false
  14463. subresources:
  14464. status: {}
  14465. - additionalPrinterColumns:
  14466. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  14467. name: Ready
  14468. type: string
  14469. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  14470. name: Status
  14471. priority: 1
  14472. type: string
  14473. - description: CreationTimestamp is a timestamp representing the server time when
  14474. this object was created. It is not guaranteed to be set in happens-before
  14475. order across separate operations. Clients may not set this value. It is represented
  14476. in RFC3339 form and is in UTC.
  14477. jsonPath: .metadata.creationTimestamp
  14478. name: Age
  14479. type: date
  14480. name: v1
  14481. schema:
  14482. openAPIV3Schema:
  14483. description: A ClusterIssuer represents a certificate issuing authority which
  14484. can be referenced as part of `issuerRef` fields. It is similar to an Issuer,
  14485. however it is cluster-scoped and therefore can be referenced by resources
  14486. that exist in *any* namespace, not just the same namespace as the referent.
  14487. properties:
  14488. apiVersion:
  14489. description: 'APIVersion defines the versioned schema of this representation
  14490. of an object. Servers should convert recognized schemas to the latest
  14491. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  14492. type: string
  14493. kind:
  14494. description: 'Kind is a string value representing the REST resource this
  14495. object represents. Servers may infer this from the endpoint the client
  14496. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  14497. type: string
  14498. metadata:
  14499. type: object
  14500. spec:
  14501. description: Desired state of the ClusterIssuer resource.
  14502. properties:
  14503. acme:
  14504. description: ACME configures this issuer to communicate with a RFC8555
  14505. (ACME) server to obtain signed x509 certificates.
  14506. properties:
  14507. disableAccountKeyGeneration:
  14508. description: Enables or disables generating a new ACME account
  14509. key. If true, the Issuer resource will *not* request a new account
  14510. but will expect the account key to be supplied via an existing
  14511. secret. If false, the cert-manager system will generate a new
  14512. ACME account key for the Issuer. Defaults to false.
  14513. type: boolean
  14514. email:
  14515. description: Email is the email address to be associated with
  14516. the ACME account. This field is optional, but it is strongly
  14517. recommended to be set. It will be used to contact you in case
  14518. of issues with your account or certificates, including expiry
  14519. notification emails. This field may be updated after the account
  14520. is initially registered.
  14521. type: string
  14522. externalAccountBinding:
  14523. description: ExternalAccountBinding is a reference to a CA external
  14524. account of the ACME server. If set, upon registration cert-manager
  14525. will attempt to associate the given external account credentials
  14526. with the registered ACME account.
  14527. properties:
  14528. keyAlgorithm:
  14529. description: keyAlgorithm is the MAC key algorithm that the
  14530. key is used for. Valid values are "HS256", "HS384" and "HS512".
  14531. enum:
  14532. - HS256
  14533. - HS384
  14534. - HS512
  14535. type: string
  14536. keyID:
  14537. description: keyID is the ID of the CA key that the External
  14538. Account is bound to.
  14539. type: string
  14540. keySecretRef:
  14541. description: keySecretRef is a Secret Key Selector referencing
  14542. a data item in a Kubernetes Secret which holds the symmetric
  14543. MAC key of the External Account Binding. The `key` is the
  14544. index string that is paired with the key data in the Secret
  14545. and should not be confused with the key data itself, or
  14546. indeed with the External Account Binding keyID above. The
  14547. secret key stored in the Secret **must** be un-padded, base64
  14548. URL encoded data.
  14549. properties:
  14550. key:
  14551. description: The key of the entry in the Secret resource's
  14552. `data` field to be used. Some instances of this field
  14553. may be defaulted, in others it may be required.
  14554. type: string
  14555. name:
  14556. description: 'Name of the resource being referred to.
  14557. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14558. type: string
  14559. required:
  14560. - name
  14561. type: object
  14562. required:
  14563. - keyAlgorithm
  14564. - keyID
  14565. - keySecretRef
  14566. type: object
  14567. preferredChain:
  14568. description: 'PreferredChain is the chain to use if the ACME server
  14569. outputs multiple. PreferredChain is no guarantee that this one
  14570. gets delivered by the ACME endpoint. For example, for Let''s
  14571. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  14572. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  14573. picks the first certificate bundle in the ACME alternative chains
  14574. that has a certificate with this value as its issuer''s CN'
  14575. maxLength: 64
  14576. type: string
  14577. privateKeySecretRef:
  14578. description: PrivateKey is the name of a Kubernetes Secret resource
  14579. that will be used to store the automatically generated ACME
  14580. account private key. Optionally, a `key` may be specified to
  14581. select a specific entry within the named Secret resource. If
  14582. `key` is not specified, a default of `tls.key` will be used.
  14583. properties:
  14584. key:
  14585. description: The key of the entry in the Secret resource's
  14586. `data` field to be used. Some instances of this field may
  14587. be defaulted, in others it may be required.
  14588. type: string
  14589. name:
  14590. description: 'Name of the resource being referred to. More
  14591. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14592. type: string
  14593. required:
  14594. - name
  14595. type: object
  14596. server:
  14597. description: 'Server is the URL used to access the ACME server''s
  14598. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  14599. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  14600. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  14601. type: string
  14602. skipTLSVerify:
  14603. description: Enables or disables validation of the ACME server
  14604. TLS certificate. If true, requests to the ACME server will not
  14605. have their TLS certificate validated (i.e. insecure connections
  14606. will be allowed). Only enable this option in development environments.
  14607. The cert-manager system installed roots will be used to verify
  14608. connections to the ACME server if this is false. Defaults to
  14609. false.
  14610. type: boolean
  14611. solvers:
  14612. description: 'Solvers is a list of challenge solvers that will
  14613. be used to solve ACME challenges for the matching domains. Solver
  14614. configurations must be provided in order to obtain certificates
  14615. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  14616. items:
  14617. description: Configures an issuer to solve challenges using
  14618. the specified options. Only one of HTTP01 or DNS01 may be
  14619. provided.
  14620. properties:
  14621. dns01:
  14622. description: Configures cert-manager to attempt to complete
  14623. authorizations by performing the DNS01 challenge flow.
  14624. properties:
  14625. acmeDNS:
  14626. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  14627. API to manage DNS01 challenge records.
  14628. properties:
  14629. accountSecretRef:
  14630. description: A reference to a specific 'key' within
  14631. a Secret resource. In some instances, `key` is
  14632. a required field.
  14633. properties:
  14634. key:
  14635. description: The key of the entry in the Secret
  14636. resource's `data` field to be used. Some instances
  14637. of this field may be defaulted, in others
  14638. it may be required.
  14639. type: string
  14640. name:
  14641. description: 'Name of the resource being referred
  14642. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14643. type: string
  14644. required:
  14645. - name
  14646. type: object
  14647. host:
  14648. type: string
  14649. required:
  14650. - accountSecretRef
  14651. - host
  14652. type: object
  14653. akamai:
  14654. description: Use the Akamai DNS zone management API
  14655. to manage DNS01 challenge records.
  14656. properties:
  14657. accessTokenSecretRef:
  14658. description: A reference to a specific 'key' within
  14659. a Secret resource. In some instances, `key` is
  14660. a required field.
  14661. properties:
  14662. key:
  14663. description: The key of the entry in the Secret
  14664. resource's `data` field to be used. Some instances
  14665. of this field may be defaulted, in others
  14666. it may be required.
  14667. type: string
  14668. name:
  14669. description: 'Name of the resource being referred
  14670. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14671. type: string
  14672. required:
  14673. - name
  14674. type: object
  14675. clientSecretSecretRef:
  14676. description: A reference to a specific 'key' within
  14677. a Secret resource. In some instances, `key` is
  14678. a required field.
  14679. properties:
  14680. key:
  14681. description: The key of the entry in the Secret
  14682. resource's `data` field to be used. Some instances
  14683. of this field may be defaulted, in others
  14684. it may be required.
  14685. type: string
  14686. name:
  14687. description: 'Name of the resource being referred
  14688. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14689. type: string
  14690. required:
  14691. - name
  14692. type: object
  14693. clientTokenSecretRef:
  14694. description: A reference to a specific 'key' within
  14695. a Secret resource. In some instances, `key` is
  14696. a required field.
  14697. properties:
  14698. key:
  14699. description: The key of the entry in the Secret
  14700. resource's `data` field to be used. Some instances
  14701. of this field may be defaulted, in others
  14702. it may be required.
  14703. type: string
  14704. name:
  14705. description: 'Name of the resource being referred
  14706. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14707. type: string
  14708. required:
  14709. - name
  14710. type: object
  14711. serviceConsumerDomain:
  14712. type: string
  14713. required:
  14714. - accessTokenSecretRef
  14715. - clientSecretSecretRef
  14716. - clientTokenSecretRef
  14717. - serviceConsumerDomain
  14718. type: object
  14719. azureDNS:
  14720. description: Use the Microsoft Azure DNS API to manage
  14721. DNS01 challenge records.
  14722. properties:
  14723. clientID:
  14724. description: if both this and ClientSecret are left
  14725. unset MSI will be used
  14726. type: string
  14727. clientSecretSecretRef:
  14728. description: if both this and ClientID are left
  14729. unset MSI will be used
  14730. properties:
  14731. key:
  14732. description: The key of the entry in the Secret
  14733. resource's `data` field to be used. Some instances
  14734. of this field may be defaulted, in others
  14735. it may be required.
  14736. type: string
  14737. name:
  14738. description: 'Name of the resource being referred
  14739. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14740. type: string
  14741. required:
  14742. - name
  14743. type: object
  14744. environment:
  14745. enum:
  14746. - AzurePublicCloud
  14747. - AzureChinaCloud
  14748. - AzureGermanCloud
  14749. - AzureUSGovernmentCloud
  14750. type: string
  14751. hostedZoneName:
  14752. type: string
  14753. resourceGroupName:
  14754. type: string
  14755. subscriptionID:
  14756. type: string
  14757. tenantID:
  14758. description: when specifying ClientID and ClientSecret
  14759. then this field is also needed
  14760. type: string
  14761. required:
  14762. - resourceGroupName
  14763. - subscriptionID
  14764. type: object
  14765. cloudDNS:
  14766. description: Use the Google Cloud DNS API to manage
  14767. DNS01 challenge records.
  14768. properties:
  14769. hostedZoneName:
  14770. description: HostedZoneName is an optional field
  14771. that tells cert-manager in which Cloud DNS zone
  14772. the challenge record has to be created. If left
  14773. empty cert-manager will automatically choose a
  14774. zone.
  14775. type: string
  14776. project:
  14777. type: string
  14778. serviceAccountSecretRef:
  14779. description: A reference to a specific 'key' within
  14780. a Secret resource. In some instances, `key` is
  14781. a required field.
  14782. properties:
  14783. key:
  14784. description: The key of the entry in the Secret
  14785. resource's `data` field to be used. Some instances
  14786. of this field may be defaulted, in others
  14787. it may be required.
  14788. type: string
  14789. name:
  14790. description: 'Name of the resource being referred
  14791. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14792. type: string
  14793. required:
  14794. - name
  14795. type: object
  14796. required:
  14797. - project
  14798. type: object
  14799. cloudflare:
  14800. description: Use the Cloudflare API to manage DNS01
  14801. challenge records.
  14802. properties:
  14803. apiKeySecretRef:
  14804. description: 'API key to use to authenticate with
  14805. Cloudflare. Note: using an API token to authenticate
  14806. is now the recommended method as it allows greater
  14807. control of permissions.'
  14808. properties:
  14809. key:
  14810. description: The key of the entry in the Secret
  14811. resource's `data` field to be used. Some instances
  14812. of this field may be defaulted, in others
  14813. it may be required.
  14814. type: string
  14815. name:
  14816. description: 'Name of the resource being referred
  14817. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14818. type: string
  14819. required:
  14820. - name
  14821. type: object
  14822. apiTokenSecretRef:
  14823. description: API token used to authenticate with
  14824. Cloudflare.
  14825. properties:
  14826. key:
  14827. description: The key of the entry in the Secret
  14828. resource's `data` field to be used. Some instances
  14829. of this field may be defaulted, in others
  14830. it may be required.
  14831. type: string
  14832. name:
  14833. description: 'Name of the resource being referred
  14834. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14835. type: string
  14836. required:
  14837. - name
  14838. type: object
  14839. email:
  14840. description: Email of the account, only required
  14841. when using API key based authentication.
  14842. type: string
  14843. type: object
  14844. cnameStrategy:
  14845. description: CNAMEStrategy configures how the DNS01
  14846. provider should handle CNAME records when found in
  14847. DNS zones.
  14848. enum:
  14849. - None
  14850. - Follow
  14851. type: string
  14852. digitalocean:
  14853. description: Use the DigitalOcean DNS API to manage
  14854. DNS01 challenge records.
  14855. properties:
  14856. tokenSecretRef:
  14857. description: A reference to a specific 'key' within
  14858. a Secret resource. In some instances, `key` is
  14859. a required field.
  14860. properties:
  14861. key:
  14862. description: The key of the entry in the Secret
  14863. resource's `data` field to be used. Some instances
  14864. of this field may be defaulted, in others
  14865. it may be required.
  14866. type: string
  14867. name:
  14868. description: 'Name of the resource being referred
  14869. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14870. type: string
  14871. required:
  14872. - name
  14873. type: object
  14874. required:
  14875. - tokenSecretRef
  14876. type: object
  14877. rfc2136:
  14878. description: Use RFC2136 ("Dynamic Updates in the Domain
  14879. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  14880. to manage DNS01 challenge records.
  14881. properties:
  14882. nameserver:
  14883. description: The IP address or hostname of an authoritative
  14884. DNS server supporting RFC2136 in the form host:port.
  14885. If the host is an IPv6 address it must be enclosed
  14886. in square brackets (e.g [2001:db8::1]) ; port
  14887. is optional. This field is required.
  14888. type: string
  14889. tsigAlgorithm:
  14890. description: 'The TSIG Algorithm configured in the
  14891. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  14892. and ``tsigKeyName`` are defined. Supported values
  14893. are (case-insensitive): ``HMACMD5`` (default),
  14894. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  14895. type: string
  14896. tsigKeyName:
  14897. description: The TSIG Key name configured in the
  14898. DNS. If ``tsigSecretSecretRef`` is defined, this
  14899. field is required.
  14900. type: string
  14901. tsigSecretSecretRef:
  14902. description: The name of the secret containing the
  14903. TSIG value. If ``tsigKeyName`` is defined, this
  14904. field is required.
  14905. properties:
  14906. key:
  14907. description: The key of the entry in the Secret
  14908. resource's `data` field to be used. Some instances
  14909. of this field may be defaulted, in others
  14910. it may be required.
  14911. type: string
  14912. name:
  14913. description: 'Name of the resource being referred
  14914. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14915. type: string
  14916. required:
  14917. - name
  14918. type: object
  14919. required:
  14920. - nameserver
  14921. type: object
  14922. route53:
  14923. description: Use the AWS Route53 API to manage DNS01
  14924. challenge records.
  14925. properties:
  14926. accessKeyID:
  14927. description: 'The AccessKeyID is used for authentication.
  14928. If not set we fall-back to using env vars, shared
  14929. credentials file or AWS Instance metadata see:
  14930. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  14931. type: string
  14932. hostedZoneID:
  14933. description: If set, the provider will manage only
  14934. this zone in Route53 and will not do an lookup
  14935. using the route53:ListHostedZonesByName api call.
  14936. type: string
  14937. region:
  14938. description: Always set the region when using AccessKeyID
  14939. and SecretAccessKey
  14940. type: string
  14941. role:
  14942. description: Role is a Role ARN which the Route53
  14943. provider will assume using either the explicit
  14944. credentials AccessKeyID/SecretAccessKey or the
  14945. inferred credentials from environment variables,
  14946. shared credentials file or AWS Instance metadata
  14947. type: string
  14948. secretAccessKeySecretRef:
  14949. description: The SecretAccessKey is used for authentication.
  14950. If not set we fall-back to using env vars, shared
  14951. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  14952. properties:
  14953. key:
  14954. description: The key of the entry in the Secret
  14955. resource's `data` field to be used. Some instances
  14956. of this field may be defaulted, in others
  14957. it may be required.
  14958. type: string
  14959. name:
  14960. description: 'Name of the resource being referred
  14961. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14962. type: string
  14963. required:
  14964. - name
  14965. type: object
  14966. required:
  14967. - region
  14968. type: object
  14969. webhook:
  14970. description: Configure an external webhook based DNS01
  14971. challenge solver to manage DNS01 challenge records.
  14972. properties:
  14973. config:
  14974. description: Additional configuration that should
  14975. be passed to the webhook apiserver when challenges
  14976. are processed. This can contain arbitrary JSON
  14977. data. Secret values should not be specified in
  14978. this stanza. If secret values are needed (e.g.
  14979. credentials for a DNS service), you should use
  14980. a SecretKeySelector to reference a Secret resource.
  14981. For details on the schema of this field, consult
  14982. the webhook provider implementation's documentation.
  14983. x-kubernetes-preserve-unknown-fields: true
  14984. groupName:
  14985. description: The API group name that should be used
  14986. when POSTing ChallengePayload resources to the
  14987. webhook apiserver. This should be the same as
  14988. the GroupName specified in the webhook provider
  14989. implementation.
  14990. type: string
  14991. solverName:
  14992. description: The name of the solver to use, as defined
  14993. in the webhook provider implementation. This will
  14994. typically be the name of the provider, e.g. 'cloudflare'.
  14995. type: string
  14996. required:
  14997. - groupName
  14998. - solverName
  14999. type: object
  15000. type: object
  15001. http01:
  15002. description: Configures cert-manager to attempt to complete
  15003. authorizations by performing the HTTP01 challenge flow.
  15004. It is not possible to obtain certificates for wildcard
  15005. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  15006. mechanism.
  15007. properties:
  15008. ingress:
  15009. description: The ingress based HTTP01 challenge solver
  15010. will solve challenges by creating or modifying Ingress
  15011. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  15012. to 'challenge solver' pods that are provisioned by
  15013. cert-manager for each Challenge to be completed.
  15014. properties:
  15015. class:
  15016. description: The ingress class to use when creating
  15017. Ingress resources to solve ACME challenges that
  15018. use this challenge solver. Only one of 'class'
  15019. or 'name' may be specified.
  15020. type: string
  15021. ingressTemplate:
  15022. description: Optional ingress template used to configure
  15023. the ACME challenge solver ingress used for HTTP01
  15024. challenges
  15025. properties:
  15026. metadata:
  15027. description: ObjectMeta overrides for the ingress
  15028. used to solve HTTP01 challenges. Only the
  15029. 'labels' and 'annotations' fields may be set.
  15030. If labels or annotations overlap with in-built
  15031. values, the values here will override the
  15032. in-built values.
  15033. properties:
  15034. annotations:
  15035. additionalProperties:
  15036. type: string
  15037. description: Annotations that should be
  15038. added to the created ACME HTTP01 solver
  15039. ingress.
  15040. type: object
  15041. labels:
  15042. additionalProperties:
  15043. type: string
  15044. description: Labels that should be added
  15045. to the created ACME HTTP01 solver ingress.
  15046. type: object
  15047. type: object
  15048. type: object
  15049. name:
  15050. description: The name of the ingress resource that
  15051. should have ACME challenge solving routes inserted
  15052. into it in order to solve HTTP01 challenges. This
  15053. is typically used in conjunction with ingress
  15054. controllers like ingress-gce, which maintains
  15055. a 1:1 mapping between external IPs and ingress
  15056. resources.
  15057. type: string
  15058. podTemplate:
  15059. description: Optional pod template used to configure
  15060. the ACME challenge solver pods used for HTTP01
  15061. challenges
  15062. properties:
  15063. metadata:
  15064. description: ObjectMeta overrides for the pod
  15065. used to solve HTTP01 challenges. Only the
  15066. 'labels' and 'annotations' fields may be set.
  15067. If labels or annotations overlap with in-built
  15068. values, the values here will override the
  15069. in-built values.
  15070. properties:
  15071. annotations:
  15072. additionalProperties:
  15073. type: string
  15074. description: Annotations that should be
  15075. added to the create ACME HTTP01 solver
  15076. pods.
  15077. type: object
  15078. labels:
  15079. additionalProperties:
  15080. type: string
  15081. description: Labels that should be added
  15082. to the created ACME HTTP01 solver pods.
  15083. type: object
  15084. type: object
  15085. spec:
  15086. description: PodSpec defines overrides for the
  15087. HTTP01 challenge solver pod. Only the 'priorityClassName',
  15088. 'nodeSelector', 'affinity', 'serviceAccountName'
  15089. and 'tolerations' fields are supported currently.
  15090. All other fields will be ignored.
  15091. properties:
  15092. affinity:
  15093. description: If specified, the pod's scheduling
  15094. constraints
  15095. properties:
  15096. nodeAffinity:
  15097. description: Describes node affinity
  15098. scheduling rules for the pod.
  15099. properties:
  15100. preferredDuringSchedulingIgnoredDuringExecution:
  15101. description: The scheduler will
  15102. prefer to schedule pods to nodes
  15103. that satisfy the affinity expressions
  15104. specified by this field, but it
  15105. may choose a node that violates
  15106. one or more of the expressions.
  15107. The node that is most preferred
  15108. is the one with the greatest sum
  15109. of weights, i.e. for each node
  15110. that meets all of the scheduling
  15111. requirements (resource request,
  15112. requiredDuringScheduling affinity
  15113. expressions, etc.), compute a
  15114. sum by iterating through the elements
  15115. of this field and adding "weight"
  15116. to the sum if the node matches
  15117. the corresponding matchExpressions;
  15118. the node(s) with the highest sum
  15119. are the most preferred.
  15120. items:
  15121. description: An empty preferred
  15122. scheduling term matches all
  15123. objects with implicit weight
  15124. 0 (i.e. it's a no-op). A null
  15125. preferred scheduling term matches
  15126. no objects (i.e. is also a no-op).
  15127. properties:
  15128. preference:
  15129. description: A node selector
  15130. term, associated with the
  15131. corresponding weight.
  15132. properties:
  15133. matchExpressions:
  15134. description: A list of
  15135. node selector requirements
  15136. by node's labels.
  15137. items:
  15138. description: A node
  15139. selector requirement
  15140. is a selector that
  15141. contains values, a
  15142. key, and an operator
  15143. that relates the key
  15144. and values.
  15145. properties:
  15146. key:
  15147. description: The
  15148. label key that
  15149. the selector applies
  15150. to.
  15151. type: string
  15152. operator:
  15153. description: Represents
  15154. a key's relationship
  15155. to a set of values.
  15156. Valid operators
  15157. are In, NotIn,
  15158. Exists, DoesNotExist.
  15159. Gt, and Lt.
  15160. type: string
  15161. values:
  15162. description: An
  15163. array of string
  15164. values. If the
  15165. operator is In
  15166. or NotIn, the
  15167. values array must
  15168. be non-empty.
  15169. If the operator
  15170. is Exists or DoesNotExist,
  15171. the values array
  15172. must be empty.
  15173. If the operator
  15174. is Gt or Lt, the
  15175. values array must
  15176. have a single
  15177. element, which
  15178. will be interpreted
  15179. as an integer.
  15180. This array is
  15181. replaced during
  15182. a strategic merge
  15183. patch.
  15184. items:
  15185. type: string
  15186. type: array
  15187. required:
  15188. - key
  15189. - operator
  15190. type: object
  15191. type: array
  15192. matchFields:
  15193. description: A list of
  15194. node selector requirements
  15195. by node's fields.
  15196. items:
  15197. description: A node
  15198. selector requirement
  15199. is a selector that
  15200. contains values, a
  15201. key, and an operator
  15202. that relates the key
  15203. and values.
  15204. properties:
  15205. key:
  15206. description: The
  15207. label key that
  15208. the selector applies
  15209. to.
  15210. type: string
  15211. operator:
  15212. description: Represents
  15213. a key's relationship
  15214. to a set of values.
  15215. Valid operators
  15216. are In, NotIn,
  15217. Exists, DoesNotExist.
  15218. Gt, and Lt.
  15219. type: string
  15220. values:
  15221. description: An
  15222. array of string
  15223. values. If the
  15224. operator is In
  15225. or NotIn, the
  15226. values array must
  15227. be non-empty.
  15228. If the operator
  15229. is Exists or DoesNotExist,
  15230. the values array
  15231. must be empty.
  15232. If the operator
  15233. is Gt or Lt, the
  15234. values array must
  15235. have a single
  15236. element, which
  15237. will be interpreted
  15238. as an integer.
  15239. This array is
  15240. replaced during
  15241. a strategic merge
  15242. patch.
  15243. items:
  15244. type: string
  15245. type: array
  15246. required:
  15247. - key
  15248. - operator
  15249. type: object
  15250. type: array
  15251. type: object
  15252. weight:
  15253. description: Weight associated
  15254. with matching the corresponding
  15255. nodeSelectorTerm, in the
  15256. range 1-100.
  15257. format: int32
  15258. type: integer
  15259. required:
  15260. - preference
  15261. - weight
  15262. type: object
  15263. type: array
  15264. requiredDuringSchedulingIgnoredDuringExecution:
  15265. description: If the affinity requirements
  15266. specified by this field are not
  15267. met at scheduling time, the pod
  15268. will not be scheduled onto the
  15269. node. If the affinity requirements
  15270. specified by this field cease
  15271. to be met at some point during
  15272. pod execution (e.g. due to an
  15273. update), the system may or may
  15274. not try to eventually evict the
  15275. pod from its node.
  15276. properties:
  15277. nodeSelectorTerms:
  15278. description: Required. A list
  15279. of node selector terms. The
  15280. terms are ORed.
  15281. items:
  15282. description: A null or empty
  15283. node selector term matches
  15284. no objects. The requirements
  15285. of them are ANDed. The TopologySelectorTerm
  15286. type implements a subset
  15287. of the NodeSelectorTerm.
  15288. properties:
  15289. matchExpressions:
  15290. description: A list of
  15291. node selector requirements
  15292. by node's labels.
  15293. items:
  15294. description: A node
  15295. selector requirement
  15296. is a selector that
  15297. contains values, a
  15298. key, and an operator
  15299. that relates the key
  15300. and values.
  15301. properties:
  15302. key:
  15303. description: The
  15304. label key that
  15305. the selector applies
  15306. to.
  15307. type: string
  15308. operator:
  15309. description: Represents
  15310. a key's relationship
  15311. to a set of values.
  15312. Valid operators
  15313. are In, NotIn,
  15314. Exists, DoesNotExist.
  15315. Gt, and Lt.
  15316. type: string
  15317. values:
  15318. description: An
  15319. array of string
  15320. values. If the
  15321. operator is In
  15322. or NotIn, the
  15323. values array must
  15324. be non-empty.
  15325. If the operator
  15326. is Exists or DoesNotExist,
  15327. the values array
  15328. must be empty.
  15329. If the operator
  15330. is Gt or Lt, the
  15331. values array must
  15332. have a single
  15333. element, which
  15334. will be interpreted
  15335. as an integer.
  15336. This array is
  15337. replaced during
  15338. a strategic merge
  15339. patch.
  15340. items:
  15341. type: string
  15342. type: array
  15343. required:
  15344. - key
  15345. - operator
  15346. type: object
  15347. type: array
  15348. matchFields:
  15349. description: A list of
  15350. node selector requirements
  15351. by node's fields.
  15352. items:
  15353. description: A node
  15354. selector requirement
  15355. is a selector that
  15356. contains values, a
  15357. key, and an operator
  15358. that relates the key
  15359. and values.
  15360. properties:
  15361. key:
  15362. description: The
  15363. label key that
  15364. the selector applies
  15365. to.
  15366. type: string
  15367. operator:
  15368. description: Represents
  15369. a key's relationship
  15370. to a set of values.
  15371. Valid operators
  15372. are In, NotIn,
  15373. Exists, DoesNotExist.
  15374. Gt, and Lt.
  15375. type: string
  15376. values:
  15377. description: An
  15378. array of string
  15379. values. If the
  15380. operator is In
  15381. or NotIn, the
  15382. values array must
  15383. be non-empty.
  15384. If the operator
  15385. is Exists or DoesNotExist,
  15386. the values array
  15387. must be empty.
  15388. If the operator
  15389. is Gt or Lt, the
  15390. values array must
  15391. have a single
  15392. element, which
  15393. will be interpreted
  15394. as an integer.
  15395. This array is
  15396. replaced during
  15397. a strategic merge
  15398. patch.
  15399. items:
  15400. type: string
  15401. type: array
  15402. required:
  15403. - key
  15404. - operator
  15405. type: object
  15406. type: array
  15407. type: object
  15408. type: array
  15409. required:
  15410. - nodeSelectorTerms
  15411. type: object
  15412. type: object
  15413. podAffinity:
  15414. description: Describes pod affinity
  15415. scheduling rules (e.g. co-locate this
  15416. pod in the same node, zone, etc. as
  15417. some other pod(s)).
  15418. properties:
  15419. preferredDuringSchedulingIgnoredDuringExecution:
  15420. description: The scheduler will
  15421. prefer to schedule pods to nodes
  15422. that satisfy the affinity expressions
  15423. specified by this field, but it
  15424. may choose a node that violates
  15425. one or more of the expressions.
  15426. The node that is most preferred
  15427. is the one with the greatest sum
  15428. of weights, i.e. for each node
  15429. that meets all of the scheduling
  15430. requirements (resource request,
  15431. requiredDuringScheduling affinity
  15432. expressions, etc.), compute a
  15433. sum by iterating through the elements
  15434. of this field and adding "weight"
  15435. to the sum if the node has pods
  15436. which matches the corresponding
  15437. podAffinityTerm; the node(s) with
  15438. the highest sum are the most preferred.
  15439. items:
  15440. description: The weights of all
  15441. of the matched WeightedPodAffinityTerm
  15442. fields are added per-node to
  15443. find the most preferred node(s)
  15444. properties:
  15445. podAffinityTerm:
  15446. description: Required. A pod
  15447. affinity term, associated
  15448. with the corresponding weight.
  15449. properties:
  15450. labelSelector:
  15451. description: A label query
  15452. over a set of resources,
  15453. in this case pods.
  15454. properties:
  15455. matchExpressions:
  15456. description: matchExpressions
  15457. is a list of label
  15458. selector requirements.
  15459. The requirements
  15460. are ANDed.
  15461. items:
  15462. description: A label
  15463. selector requirement
  15464. is a selector
  15465. that contains
  15466. values, a key,
  15467. and an operator
  15468. that relates the
  15469. key and values.
  15470. properties:
  15471. key:
  15472. description: key
  15473. is the label
  15474. key that the
  15475. selector applies
  15476. to.
  15477. type: string
  15478. operator:
  15479. description: operator
  15480. represents
  15481. a key's relationship
  15482. to a set of
  15483. values. Valid
  15484. operators
  15485. are In, NotIn,
  15486. Exists and
  15487. DoesNotExist.
  15488. type: string
  15489. values:
  15490. description: values
  15491. is an array
  15492. of string
  15493. values. If
  15494. the operator
  15495. is In or NotIn,
  15496. the values
  15497. array must
  15498. be non-empty.
  15499. If the operator
  15500. is Exists
  15501. or DoesNotExist,
  15502. the values
  15503. array must
  15504. be empty.
  15505. This array
  15506. is replaced
  15507. during a strategic
  15508. merge patch.
  15509. items:
  15510. type: string
  15511. type: array
  15512. required:
  15513. - key
  15514. - operator
  15515. type: object
  15516. type: array
  15517. matchLabels:
  15518. additionalProperties:
  15519. type: string
  15520. description: matchLabels
  15521. is a map of {key,value}
  15522. pairs. A single
  15523. {key,value} in the
  15524. matchLabels map
  15525. is equivalent to
  15526. an element of matchExpressions,
  15527. whose key field
  15528. is "key", the operator
  15529. is "In", and the
  15530. values array contains
  15531. only "value". The
  15532. requirements are
  15533. ANDed.
  15534. type: object
  15535. type: object
  15536. namespaces:
  15537. description: namespaces
  15538. specifies which namespaces
  15539. the labelSelector applies
  15540. to (matches against);
  15541. null or empty list means
  15542. "this pod's namespace"
  15543. items:
  15544. type: string
  15545. type: array
  15546. topologyKey:
  15547. description: This pod
  15548. should be co-located
  15549. (affinity) or not co-located
  15550. (anti-affinity) with
  15551. the pods matching the
  15552. labelSelector in the
  15553. specified namespaces,
  15554. where co-located is
  15555. defined as running on
  15556. a node whose value of
  15557. the label with key topologyKey
  15558. matches that of any
  15559. node on which any of
  15560. the selected pods is
  15561. running. Empty topologyKey
  15562. is not allowed.
  15563. type: string
  15564. required:
  15565. - topologyKey
  15566. type: object
  15567. weight:
  15568. description: weight associated
  15569. with matching the corresponding
  15570. podAffinityTerm, in the
  15571. range 1-100.
  15572. format: int32
  15573. type: integer
  15574. required:
  15575. - podAffinityTerm
  15576. - weight
  15577. type: object
  15578. type: array
  15579. requiredDuringSchedulingIgnoredDuringExecution:
  15580. description: If the affinity requirements
  15581. specified by this field are not
  15582. met at scheduling time, the pod
  15583. will not be scheduled onto the
  15584. node. If the affinity requirements
  15585. specified by this field cease
  15586. to be met at some point during
  15587. pod execution (e.g. due to a pod
  15588. label update), the system may
  15589. or may not try to eventually evict
  15590. the pod from its node. When there
  15591. are multiple elements, the lists
  15592. of nodes corresponding to each
  15593. podAffinityTerm are intersected,
  15594. i.e. all terms must be satisfied.
  15595. items:
  15596. description: Defines a set of
  15597. pods (namely those matching
  15598. the labelSelector relative to
  15599. the given namespace(s)) that
  15600. this pod should be co-located
  15601. (affinity) or not co-located
  15602. (anti-affinity) with, where
  15603. co-located is defined as running
  15604. on a node whose value of the
  15605. label with key <topologyKey>
  15606. matches that of any node on
  15607. which a pod of the set of pods
  15608. is running
  15609. properties:
  15610. labelSelector:
  15611. description: A label query
  15612. over a set of resources,
  15613. in this case pods.
  15614. properties:
  15615. matchExpressions:
  15616. description: matchExpressions
  15617. is a list of label selector
  15618. requirements. The requirements
  15619. are ANDed.
  15620. items:
  15621. description: A label
  15622. selector requirement
  15623. is a selector that
  15624. contains values, a
  15625. key, and an operator
  15626. that relates the key
  15627. and values.
  15628. properties:
  15629. key:
  15630. description: key
  15631. is the label key
  15632. that the selector
  15633. applies to.
  15634. type: string
  15635. operator:
  15636. description: operator
  15637. represents a key's
  15638. relationship to
  15639. a set of values.
  15640. Valid operators
  15641. are In, NotIn,
  15642. Exists and DoesNotExist.
  15643. type: string
  15644. values:
  15645. description: values
  15646. is an array of
  15647. string values.
  15648. If the operator
  15649. is In or NotIn,
  15650. the values array
  15651. must be non-empty.
  15652. If the operator
  15653. is Exists or DoesNotExist,
  15654. the values array
  15655. must be empty.
  15656. This array is
  15657. replaced during
  15658. a strategic merge
  15659. patch.
  15660. items:
  15661. type: string
  15662. type: array
  15663. required:
  15664. - key
  15665. - operator
  15666. type: object
  15667. type: array
  15668. matchLabels:
  15669. additionalProperties:
  15670. type: string
  15671. description: matchLabels
  15672. is a map of {key,value}
  15673. pairs. A single {key,value}
  15674. in the matchLabels map
  15675. is equivalent to an
  15676. element of matchExpressions,
  15677. whose key field is "key",
  15678. the operator is "In",
  15679. and the values array
  15680. contains only "value".
  15681. The requirements are
  15682. ANDed.
  15683. type: object
  15684. type: object
  15685. namespaces:
  15686. description: namespaces specifies
  15687. which namespaces the labelSelector
  15688. applies to (matches against);
  15689. null or empty list means
  15690. "this pod's namespace"
  15691. items:
  15692. type: string
  15693. type: array
  15694. topologyKey:
  15695. description: This pod should
  15696. be co-located (affinity)
  15697. or not co-located (anti-affinity)
  15698. with the pods matching the
  15699. labelSelector in the specified
  15700. namespaces, where co-located
  15701. is defined as running on
  15702. a node whose value of the
  15703. label with key topologyKey
  15704. matches that of any node
  15705. on which any of the selected
  15706. pods is running. Empty topologyKey
  15707. is not allowed.
  15708. type: string
  15709. required:
  15710. - topologyKey
  15711. type: object
  15712. type: array
  15713. type: object
  15714. podAntiAffinity:
  15715. description: Describes pod anti-affinity
  15716. scheduling rules (e.g. avoid putting
  15717. this pod in the same node, zone, etc.
  15718. as some other pod(s)).
  15719. properties:
  15720. preferredDuringSchedulingIgnoredDuringExecution:
  15721. description: The scheduler will
  15722. prefer to schedule pods to nodes
  15723. that satisfy the anti-affinity
  15724. expressions specified by this
  15725. field, but it may choose a node
  15726. that violates one or more of the
  15727. expressions. The node that is
  15728. most preferred is the one with
  15729. the greatest sum of weights, i.e.
  15730. for each node that meets all of
  15731. the scheduling requirements (resource
  15732. request, requiredDuringScheduling
  15733. anti-affinity expressions, etc.),
  15734. compute a sum by iterating through
  15735. the elements of this field and
  15736. adding "weight" to the sum if
  15737. the node has pods which matches
  15738. the corresponding podAffinityTerm;
  15739. the node(s) with the highest sum
  15740. are the most preferred.
  15741. items:
  15742. description: The weights of all
  15743. of the matched WeightedPodAffinityTerm
  15744. fields are added per-node to
  15745. find the most preferred node(s)
  15746. properties:
  15747. podAffinityTerm:
  15748. description: Required. A pod
  15749. affinity term, associated
  15750. with the corresponding weight.
  15751. properties:
  15752. labelSelector:
  15753. description: A label query
  15754. over a set of resources,
  15755. in this case pods.
  15756. properties:
  15757. matchExpressions:
  15758. description: matchExpressions
  15759. is a list of label
  15760. selector requirements.
  15761. The requirements
  15762. are ANDed.
  15763. items:
  15764. description: A label
  15765. selector requirement
  15766. is a selector
  15767. that contains
  15768. values, a key,
  15769. and an operator
  15770. that relates the
  15771. key and values.
  15772. properties:
  15773. key:
  15774. description: key
  15775. is the label
  15776. key that the
  15777. selector applies
  15778. to.
  15779. type: string
  15780. operator:
  15781. description: operator
  15782. represents
  15783. a key's relationship
  15784. to a set of
  15785. values. Valid
  15786. operators
  15787. are In, NotIn,
  15788. Exists and
  15789. DoesNotExist.
  15790. type: string
  15791. values:
  15792. description: values
  15793. is an array
  15794. of string
  15795. values. If
  15796. the operator
  15797. is In or NotIn,
  15798. the values
  15799. array must
  15800. be non-empty.
  15801. If the operator
  15802. is Exists
  15803. or DoesNotExist,
  15804. the values
  15805. array must
  15806. be empty.
  15807. This array
  15808. is replaced
  15809. during a strategic
  15810. merge patch.
  15811. items:
  15812. type: string
  15813. type: array
  15814. required:
  15815. - key
  15816. - operator
  15817. type: object
  15818. type: array
  15819. matchLabels:
  15820. additionalProperties:
  15821. type: string
  15822. description: matchLabels
  15823. is a map of {key,value}
  15824. pairs. A single
  15825. {key,value} in the
  15826. matchLabels map
  15827. is equivalent to
  15828. an element of matchExpressions,
  15829. whose key field
  15830. is "key", the operator
  15831. is "In", and the
  15832. values array contains
  15833. only "value". The
  15834. requirements are
  15835. ANDed.
  15836. type: object
  15837. type: object
  15838. namespaces:
  15839. description: namespaces
  15840. specifies which namespaces
  15841. the labelSelector applies
  15842. to (matches against);
  15843. null or empty list means
  15844. "this pod's namespace"
  15845. items:
  15846. type: string
  15847. type: array
  15848. topologyKey:
  15849. description: This pod
  15850. should be co-located
  15851. (affinity) or not co-located
  15852. (anti-affinity) with
  15853. the pods matching the
  15854. labelSelector in the
  15855. specified namespaces,
  15856. where co-located is
  15857. defined as running on
  15858. a node whose value of
  15859. the label with key topologyKey
  15860. matches that of any
  15861. node on which any of
  15862. the selected pods is
  15863. running. Empty topologyKey
  15864. is not allowed.
  15865. type: string
  15866. required:
  15867. - topologyKey
  15868. type: object
  15869. weight:
  15870. description: weight associated
  15871. with matching the corresponding
  15872. podAffinityTerm, in the
  15873. range 1-100.
  15874. format: int32
  15875. type: integer
  15876. required:
  15877. - podAffinityTerm
  15878. - weight
  15879. type: object
  15880. type: array
  15881. requiredDuringSchedulingIgnoredDuringExecution:
  15882. description: If the anti-affinity
  15883. requirements specified by this
  15884. field are not met at scheduling
  15885. time, the pod will not be scheduled
  15886. onto the node. If the anti-affinity
  15887. requirements specified by this
  15888. field cease to be met at some
  15889. point during pod execution (e.g.
  15890. due to a pod label update), the
  15891. system may or may not try to eventually
  15892. evict the pod from its node. When
  15893. there are multiple elements, the
  15894. lists of nodes corresponding to
  15895. each podAffinityTerm are intersected,
  15896. i.e. all terms must be satisfied.
  15897. items:
  15898. description: Defines a set of
  15899. pods (namely those matching
  15900. the labelSelector relative to
  15901. the given namespace(s)) that
  15902. this pod should be co-located
  15903. (affinity) or not co-located
  15904. (anti-affinity) with, where
  15905. co-located is defined as running
  15906. on a node whose value of the
  15907. label with key <topologyKey>
  15908. matches that of any node on
  15909. which a pod of the set of pods
  15910. is running
  15911. properties:
  15912. labelSelector:
  15913. description: A label query
  15914. over a set of resources,
  15915. in this case pods.
  15916. properties:
  15917. matchExpressions:
  15918. description: matchExpressions
  15919. is a list of label selector
  15920. requirements. The requirements
  15921. are ANDed.
  15922. items:
  15923. description: A label
  15924. selector requirement
  15925. is a selector that
  15926. contains values, a
  15927. key, and an operator
  15928. that relates the key
  15929. and values.
  15930. properties:
  15931. key:
  15932. description: key
  15933. is the label key
  15934. that the selector
  15935. applies to.
  15936. type: string
  15937. operator:
  15938. description: operator
  15939. represents a key's
  15940. relationship to
  15941. a set of values.
  15942. Valid operators
  15943. are In, NotIn,
  15944. Exists and DoesNotExist.
  15945. type: string
  15946. values:
  15947. description: values
  15948. is an array of
  15949. string values.
  15950. If the operator
  15951. is In or NotIn,
  15952. the values array
  15953. must be non-empty.
  15954. If the operator
  15955. is Exists or DoesNotExist,
  15956. the values array
  15957. must be empty.
  15958. This array is
  15959. replaced during
  15960. a strategic merge
  15961. patch.
  15962. items:
  15963. type: string
  15964. type: array
  15965. required:
  15966. - key
  15967. - operator
  15968. type: object
  15969. type: array
  15970. matchLabels:
  15971. additionalProperties:
  15972. type: string
  15973. description: matchLabels
  15974. is a map of {key,value}
  15975. pairs. A single {key,value}
  15976. in the matchLabels map
  15977. is equivalent to an
  15978. element of matchExpressions,
  15979. whose key field is "key",
  15980. the operator is "In",
  15981. and the values array
  15982. contains only "value".
  15983. The requirements are
  15984. ANDed.
  15985. type: object
  15986. type: object
  15987. namespaces:
  15988. description: namespaces specifies
  15989. which namespaces the labelSelector
  15990. applies to (matches against);
  15991. null or empty list means
  15992. "this pod's namespace"
  15993. items:
  15994. type: string
  15995. type: array
  15996. topologyKey:
  15997. description: This pod should
  15998. be co-located (affinity)
  15999. or not co-located (anti-affinity)
  16000. with the pods matching the
  16001. labelSelector in the specified
  16002. namespaces, where co-located
  16003. is defined as running on
  16004. a node whose value of the
  16005. label with key topologyKey
  16006. matches that of any node
  16007. on which any of the selected
  16008. pods is running. Empty topologyKey
  16009. is not allowed.
  16010. type: string
  16011. required:
  16012. - topologyKey
  16013. type: object
  16014. type: array
  16015. type: object
  16016. type: object
  16017. nodeSelector:
  16018. additionalProperties:
  16019. type: string
  16020. description: 'NodeSelector is a selector
  16021. which must be true for the pod to fit
  16022. on a node. Selector which must match a
  16023. node''s labels for the pod to be scheduled
  16024. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  16025. type: object
  16026. priorityClassName:
  16027. description: If specified, the pod's priorityClassName.
  16028. type: string
  16029. serviceAccountName:
  16030. description: If specified, the pod's service
  16031. account
  16032. type: string
  16033. tolerations:
  16034. description: If specified, the pod's tolerations.
  16035. items:
  16036. description: The pod this Toleration is
  16037. attached to tolerates any taint that
  16038. matches the triple <key,value,effect>
  16039. using the matching operator <operator>.
  16040. properties:
  16041. effect:
  16042. description: Effect indicates the
  16043. taint effect to match. Empty means
  16044. match all taint effects. When specified,
  16045. allowed values are NoSchedule, PreferNoSchedule
  16046. and NoExecute.
  16047. type: string
  16048. key:
  16049. description: Key is the taint key
  16050. that the toleration applies to.
  16051. Empty means match all taint keys.
  16052. If the key is empty, operator must
  16053. be Exists; this combination means
  16054. to match all values and all keys.
  16055. type: string
  16056. operator:
  16057. description: Operator represents a
  16058. key's relationship to the value.
  16059. Valid operators are Exists and Equal.
  16060. Defaults to Equal. Exists is equivalent
  16061. to wildcard for value, so that a
  16062. pod can tolerate all taints of a
  16063. particular category.
  16064. type: string
  16065. tolerationSeconds:
  16066. description: TolerationSeconds represents
  16067. the period of time the toleration
  16068. (which must be of effect NoExecute,
  16069. otherwise this field is ignored)
  16070. tolerates the taint. By default,
  16071. it is not set, which means tolerate
  16072. the taint forever (do not evict).
  16073. Zero and negative values will be
  16074. treated as 0 (evict immediately)
  16075. by the system.
  16076. format: int64
  16077. type: integer
  16078. value:
  16079. description: Value is the taint value
  16080. the toleration matches to. If the
  16081. operator is Exists, the value should
  16082. be empty, otherwise just a regular
  16083. string.
  16084. type: string
  16085. type: object
  16086. type: array
  16087. type: object
  16088. type: object
  16089. serviceType:
  16090. description: Optional service type for Kubernetes
  16091. solver service
  16092. type: string
  16093. type: object
  16094. type: object
  16095. selector:
  16096. description: Selector selects a set of DNSNames on the Certificate
  16097. resource that should be solved using this challenge solver.
  16098. If not specified, the solver will be treated as the 'default'
  16099. solver with the lowest priority, i.e. if any other solver
  16100. has a more specific match, it will be used instead.
  16101. properties:
  16102. dnsNames:
  16103. description: List of DNSNames that this solver will
  16104. be used to solve. If specified and a match is found,
  16105. a dnsNames selector will take precedence over a dnsZones
  16106. selector. If multiple solvers match with the same
  16107. dnsNames value, the solver with the most matching
  16108. labels in matchLabels will be selected. If neither
  16109. has more matches, the solver defined earlier in the
  16110. list will be selected.
  16111. items:
  16112. type: string
  16113. type: array
  16114. dnsZones:
  16115. description: List of DNSZones that this solver will
  16116. be used to solve. The most specific DNS zone match
  16117. specified here will take precedence over other DNS
  16118. zone matches, so a solver specifying sys.example.com
  16119. will be selected over one specifying example.com for
  16120. the domain www.sys.example.com. If multiple solvers
  16121. match with the same dnsZones value, the solver with
  16122. the most matching labels in matchLabels will be selected.
  16123. If neither has more matches, the solver defined earlier
  16124. in the list will be selected.
  16125. items:
  16126. type: string
  16127. type: array
  16128. matchLabels:
  16129. additionalProperties:
  16130. type: string
  16131. description: A label selector that is used to refine
  16132. the set of certificate's that this challenge solver
  16133. will apply to.
  16134. type: object
  16135. type: object
  16136. type: object
  16137. type: array
  16138. required:
  16139. - privateKeySecretRef
  16140. - server
  16141. type: object
  16142. ca:
  16143. description: CA configures this issuer to sign certificates using
  16144. a signing CA keypair stored in a Secret resource. This is used to
  16145. build internal PKIs that are managed by cert-manager.
  16146. properties:
  16147. crlDistributionPoints:
  16148. description: The CRL distribution points is an X.509 v3 certificate
  16149. extension which identifies the location of the CRL from which
  16150. the revocation of this certificate can be checked. If not set,
  16151. certificates will be issued without distribution points set.
  16152. items:
  16153. type: string
  16154. type: array
  16155. secretName:
  16156. description: SecretName is the name of the secret used to sign
  16157. Certificates issued by this Issuer.
  16158. type: string
  16159. required:
  16160. - secretName
  16161. type: object
  16162. selfSigned:
  16163. description: SelfSigned configures this issuer to 'self sign' certificates
  16164. using the private key used to create the CertificateRequest object.
  16165. properties:
  16166. crlDistributionPoints:
  16167. description: The CRL distribution points is an X.509 v3 certificate
  16168. extension which identifies the location of the CRL from which
  16169. the revocation of this certificate can be checked. If not set
  16170. certificate will be issued without CDP. Values are strings.
  16171. items:
  16172. type: string
  16173. type: array
  16174. type: object
  16175. vault:
  16176. description: Vault configures this issuer to sign certificates using
  16177. a HashiCorp Vault PKI backend.
  16178. properties:
  16179. auth:
  16180. description: Auth configures how cert-manager authenticates with
  16181. the Vault server.
  16182. properties:
  16183. appRole:
  16184. description: AppRole authenticates with Vault using the App
  16185. Role auth mechanism, with the role and secret stored in
  16186. a Kubernetes Secret resource.
  16187. properties:
  16188. path:
  16189. description: 'Path where the App Role authentication backend
  16190. is mounted in Vault, e.g: "approle"'
  16191. type: string
  16192. roleId:
  16193. description: RoleID configured in the App Role authentication
  16194. backend when setting up the authentication backend in
  16195. Vault.
  16196. type: string
  16197. secretRef:
  16198. description: Reference to a key in a Secret that contains
  16199. the App Role secret used to authenticate with Vault.
  16200. The `key` field must be specified and denotes which
  16201. entry within the Secret resource is used as the app
  16202. role secret.
  16203. properties:
  16204. key:
  16205. description: The key of the entry in the Secret resource's
  16206. `data` field to be used. Some instances of this
  16207. field may be defaulted, in others it may be required.
  16208. type: string
  16209. name:
  16210. description: 'Name of the resource being referred
  16211. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16212. type: string
  16213. required:
  16214. - name
  16215. type: object
  16216. required:
  16217. - path
  16218. - roleId
  16219. - secretRef
  16220. type: object
  16221. kubernetes:
  16222. description: Kubernetes authenticates with Vault by passing
  16223. the ServiceAccount token stored in the named Secret resource
  16224. to the Vault server.
  16225. properties:
  16226. mountPath:
  16227. description: The Vault mountPath here is the mount path
  16228. to use when authenticating with Vault. For example,
  16229. setting a value to `/v1/auth/foo`, will use the path
  16230. `/v1/auth/foo/login` to authenticate with Vault. If
  16231. unspecified, the default value "/v1/auth/kubernetes"
  16232. will be used.
  16233. type: string
  16234. role:
  16235. description: A required field containing the Vault Role
  16236. to assume. A Role binds a Kubernetes ServiceAccount
  16237. with a set of Vault policies.
  16238. type: string
  16239. secretRef:
  16240. description: The required Secret field containing a Kubernetes
  16241. ServiceAccount JWT used for authenticating with Vault.
  16242. Use of 'ambient credentials' is not supported.
  16243. properties:
  16244. key:
  16245. description: The key of the entry in the Secret resource's
  16246. `data` field to be used. Some instances of this
  16247. field may be defaulted, in others it may be required.
  16248. type: string
  16249. name:
  16250. description: 'Name of the resource being referred
  16251. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16252. type: string
  16253. required:
  16254. - name
  16255. type: object
  16256. required:
  16257. - role
  16258. - secretRef
  16259. type: object
  16260. tokenSecretRef:
  16261. description: TokenSecretRef authenticates with Vault by presenting
  16262. a token.
  16263. properties:
  16264. key:
  16265. description: The key of the entry in the Secret resource's
  16266. `data` field to be used. Some instances of this field
  16267. may be defaulted, in others it may be required.
  16268. type: string
  16269. name:
  16270. description: 'Name of the resource being referred to.
  16271. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16272. type: string
  16273. required:
  16274. - name
  16275. type: object
  16276. type: object
  16277. caBundle:
  16278. description: PEM encoded CA bundle used to validate Vault server
  16279. certificate. Only used if the Server URL is using HTTPS protocol.
  16280. This parameter is ignored for plain HTTP protocol connection.
  16281. If not set the system root certificates are used to validate
  16282. the TLS connection.
  16283. format: byte
  16284. type: string
  16285. namespace:
  16286. description: 'Name of the vault namespace. Namespaces is a set
  16287. of features within Vault Enterprise that allows Vault environments
  16288. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  16289. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  16290. type: string
  16291. path:
  16292. description: 'Path is the mount path of the Vault PKI backend''s
  16293. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  16294. type: string
  16295. server:
  16296. description: 'Server is the connection address for the Vault server,
  16297. e.g: "https://vault.example.com:8200".'
  16298. type: string
  16299. required:
  16300. - auth
  16301. - path
  16302. - server
  16303. type: object
  16304. venafi:
  16305. description: Venafi configures this issuer to sign certificates using
  16306. a Venafi TPP or Venafi Cloud policy zone.
  16307. properties:
  16308. cloud:
  16309. description: Cloud specifies the Venafi cloud configuration settings.
  16310. Only one of TPP or Cloud may be specified.
  16311. properties:
  16312. apiTokenSecretRef:
  16313. description: APITokenSecretRef is a secret key selector for
  16314. the Venafi Cloud API token.
  16315. properties:
  16316. key:
  16317. description: The key of the entry in the Secret resource's
  16318. `data` field to be used. Some instances of this field
  16319. may be defaulted, in others it may be required.
  16320. type: string
  16321. name:
  16322. description: 'Name of the resource being referred to.
  16323. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16324. type: string
  16325. required:
  16326. - name
  16327. type: object
  16328. url:
  16329. description: URL is the base URL for Venafi Cloud. Defaults
  16330. to "https://api.venafi.cloud/v1".
  16331. type: string
  16332. required:
  16333. - apiTokenSecretRef
  16334. type: object
  16335. tpp:
  16336. description: TPP specifies Trust Protection Platform configuration
  16337. settings. Only one of TPP or Cloud may be specified.
  16338. properties:
  16339. caBundle:
  16340. description: CABundle is a PEM encoded TLS certificate to
  16341. use to verify connections to the TPP instance. If specified,
  16342. system roots will not be used and the issuing CA for the
  16343. TPP instance must be verifiable using the provided root.
  16344. If not specified, the connection will be verified using
  16345. the cert-manager system root certificates.
  16346. format: byte
  16347. type: string
  16348. credentialsRef:
  16349. description: CredentialsRef is a reference to a Secret containing
  16350. the username and password for the TPP server. The secret
  16351. must contain two keys, 'username' and 'password'.
  16352. properties:
  16353. name:
  16354. description: 'Name of the resource being referred to.
  16355. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16356. type: string
  16357. required:
  16358. - name
  16359. type: object
  16360. url:
  16361. description: 'URL is the base URL for the vedsdk endpoint
  16362. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  16363. type: string
  16364. required:
  16365. - credentialsRef
  16366. - url
  16367. type: object
  16368. zone:
  16369. description: Zone is the Venafi Policy Zone to use for this issuer.
  16370. All requests made to the Venafi platform will be restricted
  16371. by the named zone policy. This field is required.
  16372. type: string
  16373. required:
  16374. - zone
  16375. type: object
  16376. type: object
  16377. status:
  16378. description: Status of the ClusterIssuer. This is set and managed automatically.
  16379. properties:
  16380. acme:
  16381. description: ACME specific status options. This field should only
  16382. be set if the Issuer is configured to use an ACME server to issue
  16383. certificates.
  16384. properties:
  16385. lastRegisteredEmail:
  16386. description: LastRegisteredEmail is the email associated with
  16387. the latest registered ACME account, in order to track changes
  16388. made to registered account associated with the Issuer
  16389. type: string
  16390. uri:
  16391. description: URI is the unique account identifier, which can also
  16392. be used to retrieve account details from the CA
  16393. type: string
  16394. type: object
  16395. conditions:
  16396. description: List of status conditions to indicate the status of a
  16397. CertificateRequest. Known condition types are `Ready`.
  16398. items:
  16399. description: IssuerCondition contains condition information for
  16400. an Issuer.
  16401. properties:
  16402. lastTransitionTime:
  16403. description: LastTransitionTime is the timestamp corresponding
  16404. to the last status change of this condition.
  16405. format: date-time
  16406. type: string
  16407. message:
  16408. description: Message is a human readable description of the
  16409. details of the last transition, complementing reason.
  16410. type: string
  16411. reason:
  16412. description: Reason is a brief machine readable explanation
  16413. for the condition's last transition.
  16414. type: string
  16415. status:
  16416. description: Status of the condition, one of ('True', 'False',
  16417. 'Unknown').
  16418. enum:
  16419. - "True"
  16420. - "False"
  16421. - Unknown
  16422. type: string
  16423. type:
  16424. description: Type of the condition, known values are ('Ready').
  16425. type: string
  16426. required:
  16427. - status
  16428. - type
  16429. type: object
  16430. type: array
  16431. type: object
  16432. required:
  16433. - spec
  16434. type: object
  16435. served: true
  16436. storage: true
  16437. subresources:
  16438. status: {}
  16439. status:
  16440. acceptedNames:
  16441. kind: ""
  16442. plural: ""
  16443. conditions: []
  16444. storedVersions: []
  16445. ---
  16446. apiVersion: apiextensions.k8s.io/v1
  16447. kind: CustomResourceDefinition
  16448. metadata:
  16449. annotations:
  16450. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  16451. labels:
  16452. app: cert-manager
  16453. app.kubernetes.io/instance: cert-manager
  16454. app.kubernetes.io/name: cert-manager
  16455. name: issuers.cert-manager.io
  16456. spec:
  16457. conversion:
  16458. strategy: Webhook
  16459. webhook:
  16460. clientConfig:
  16461. service:
  16462. name: cert-manager-webhook
  16463. namespace: cert-manager
  16464. path: /convert
  16465. conversionReviewVersions:
  16466. - v1
  16467. - v1beta1
  16468. group: cert-manager.io
  16469. names:
  16470. kind: Issuer
  16471. listKind: IssuerList
  16472. plural: issuers
  16473. singular: issuer
  16474. scope: Namespaced
  16475. versions:
  16476. - additionalPrinterColumns:
  16477. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  16478. name: Ready
  16479. type: string
  16480. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  16481. name: Status
  16482. priority: 1
  16483. type: string
  16484. - description: CreationTimestamp is a timestamp representing the server time when
  16485. this object was created. It is not guaranteed to be set in happens-before
  16486. order across separate operations. Clients may not set this value. It is represented
  16487. in RFC3339 form and is in UTC.
  16488. jsonPath: .metadata.creationTimestamp
  16489. name: Age
  16490. type: date
  16491. name: v1alpha2
  16492. schema:
  16493. openAPIV3Schema:
  16494. description: An Issuer represents a certificate issuing authority which can
  16495. be referenced as part of `issuerRef` fields. It is scoped to a single namespace
  16496. and can therefore only be referenced by resources within the same namespace.
  16497. properties:
  16498. apiVersion:
  16499. description: 'APIVersion defines the versioned schema of this representation
  16500. of an object. Servers should convert recognized schemas to the latest
  16501. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  16502. type: string
  16503. kind:
  16504. description: 'Kind is a string value representing the REST resource this
  16505. object represents. Servers may infer this from the endpoint the client
  16506. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  16507. type: string
  16508. metadata:
  16509. type: object
  16510. spec:
  16511. description: Desired state of the Issuer resource.
  16512. properties:
  16513. acme:
  16514. description: ACME configures this issuer to communicate with a RFC8555
  16515. (ACME) server to obtain signed x509 certificates.
  16516. properties:
  16517. disableAccountKeyGeneration:
  16518. description: Enables or disables generating a new ACME account
  16519. key. If true, the Issuer resource will *not* request a new account
  16520. but will expect the account key to be supplied via an existing
  16521. secret. If false, the cert-manager system will generate a new
  16522. ACME account key for the Issuer. Defaults to false.
  16523. type: boolean
  16524. email:
  16525. description: Email is the email address to be associated with
  16526. the ACME account. This field is optional, but it is strongly
  16527. recommended to be set. It will be used to contact you in case
  16528. of issues with your account or certificates, including expiry
  16529. notification emails. This field may be updated after the account
  16530. is initially registered.
  16531. type: string
  16532. externalAccountBinding:
  16533. description: ExternalAccountBinding is a reference to a CA external
  16534. account of the ACME server. If set, upon registration cert-manager
  16535. will attempt to associate the given external account credentials
  16536. with the registered ACME account.
  16537. properties:
  16538. keyAlgorithm:
  16539. description: keyAlgorithm is the MAC key algorithm that the
  16540. key is used for. Valid values are "HS256", "HS384" and "HS512".
  16541. enum:
  16542. - HS256
  16543. - HS384
  16544. - HS512
  16545. type: string
  16546. keyID:
  16547. description: keyID is the ID of the CA key that the External
  16548. Account is bound to.
  16549. type: string
  16550. keySecretRef:
  16551. description: keySecretRef is a Secret Key Selector referencing
  16552. a data item in a Kubernetes Secret which holds the symmetric
  16553. MAC key of the External Account Binding. The `key` is the
  16554. index string that is paired with the key data in the Secret
  16555. and should not be confused with the key data itself, or
  16556. indeed with the External Account Binding keyID above. The
  16557. secret key stored in the Secret **must** be un-padded, base64
  16558. URL encoded data.
  16559. properties:
  16560. key:
  16561. description: The key of the entry in the Secret resource's
  16562. `data` field to be used. Some instances of this field
  16563. may be defaulted, in others it may be required.
  16564. type: string
  16565. name:
  16566. description: 'Name of the resource being referred to.
  16567. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16568. type: string
  16569. required:
  16570. - name
  16571. type: object
  16572. required:
  16573. - keyAlgorithm
  16574. - keyID
  16575. - keySecretRef
  16576. type: object
  16577. preferredChain:
  16578. description: 'PreferredChain is the chain to use if the ACME server
  16579. outputs multiple. PreferredChain is no guarantee that this one
  16580. gets delivered by the ACME endpoint. For example, for Let''s
  16581. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  16582. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  16583. picks the first certificate bundle in the ACME alternative chains
  16584. that has a certificate with this value as its issuer''s CN'
  16585. maxLength: 64
  16586. type: string
  16587. privateKeySecretRef:
  16588. description: PrivateKey is the name of a Kubernetes Secret resource
  16589. that will be used to store the automatically generated ACME
  16590. account private key. Optionally, a `key` may be specified to
  16591. select a specific entry within the named Secret resource. If
  16592. `key` is not specified, a default of `tls.key` will be used.
  16593. properties:
  16594. key:
  16595. description: The key of the entry in the Secret resource's
  16596. `data` field to be used. Some instances of this field may
  16597. be defaulted, in others it may be required.
  16598. type: string
  16599. name:
  16600. description: 'Name of the resource being referred to. More
  16601. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16602. type: string
  16603. required:
  16604. - name
  16605. type: object
  16606. server:
  16607. description: 'Server is the URL used to access the ACME server''s
  16608. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  16609. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  16610. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  16611. type: string
  16612. skipTLSVerify:
  16613. description: Enables or disables validation of the ACME server
  16614. TLS certificate. If true, requests to the ACME server will not
  16615. have their TLS certificate validated (i.e. insecure connections
  16616. will be allowed). Only enable this option in development environments.
  16617. The cert-manager system installed roots will be used to verify
  16618. connections to the ACME server if this is false. Defaults to
  16619. false.
  16620. type: boolean
  16621. solvers:
  16622. description: 'Solvers is a list of challenge solvers that will
  16623. be used to solve ACME challenges for the matching domains. Solver
  16624. configurations must be provided in order to obtain certificates
  16625. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  16626. items:
  16627. description: Configures an issuer to solve challenges using
  16628. the specified options. Only one of HTTP01 or DNS01 may be
  16629. provided.
  16630. properties:
  16631. dns01:
  16632. description: Configures cert-manager to attempt to complete
  16633. authorizations by performing the DNS01 challenge flow.
  16634. properties:
  16635. acmedns:
  16636. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  16637. API to manage DNS01 challenge records.
  16638. properties:
  16639. accountSecretRef:
  16640. description: A reference to a specific 'key' within
  16641. a Secret resource. In some instances, `key` is
  16642. a required field.
  16643. properties:
  16644. key:
  16645. description: The key of the entry in the Secret
  16646. resource's `data` field to be used. Some instances
  16647. of this field may be defaulted, in others
  16648. it may be required.
  16649. type: string
  16650. name:
  16651. description: 'Name of the resource being referred
  16652. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16653. type: string
  16654. required:
  16655. - name
  16656. type: object
  16657. host:
  16658. type: string
  16659. required:
  16660. - accountSecretRef
  16661. - host
  16662. type: object
  16663. akamai:
  16664. description: Use the Akamai DNS zone management API
  16665. to manage DNS01 challenge records.
  16666. properties:
  16667. accessTokenSecretRef:
  16668. description: A reference to a specific 'key' within
  16669. a Secret resource. In some instances, `key` is
  16670. a required field.
  16671. properties:
  16672. key:
  16673. description: The key of the entry in the Secret
  16674. resource's `data` field to be used. Some instances
  16675. of this field may be defaulted, in others
  16676. it may be required.
  16677. type: string
  16678. name:
  16679. description: 'Name of the resource being referred
  16680. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16681. type: string
  16682. required:
  16683. - name
  16684. type: object
  16685. clientSecretSecretRef:
  16686. description: A reference to a specific 'key' within
  16687. a Secret resource. In some instances, `key` is
  16688. a required field.
  16689. properties:
  16690. key:
  16691. description: The key of the entry in the Secret
  16692. resource's `data` field to be used. Some instances
  16693. of this field may be defaulted, in others
  16694. it may be required.
  16695. type: string
  16696. name:
  16697. description: 'Name of the resource being referred
  16698. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16699. type: string
  16700. required:
  16701. - name
  16702. type: object
  16703. clientTokenSecretRef:
  16704. description: A reference to a specific 'key' within
  16705. a Secret resource. In some instances, `key` is
  16706. a required field.
  16707. properties:
  16708. key:
  16709. description: The key of the entry in the Secret
  16710. resource's `data` field to be used. Some instances
  16711. of this field may be defaulted, in others
  16712. it may be required.
  16713. type: string
  16714. name:
  16715. description: 'Name of the resource being referred
  16716. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16717. type: string
  16718. required:
  16719. - name
  16720. type: object
  16721. serviceConsumerDomain:
  16722. type: string
  16723. required:
  16724. - accessTokenSecretRef
  16725. - clientSecretSecretRef
  16726. - clientTokenSecretRef
  16727. - serviceConsumerDomain
  16728. type: object
  16729. azuredns:
  16730. description: Use the Microsoft Azure DNS API to manage
  16731. DNS01 challenge records.
  16732. properties:
  16733. clientID:
  16734. description: if both this and ClientSecret are left
  16735. unset MSI will be used
  16736. type: string
  16737. clientSecretSecretRef:
  16738. description: if both this and ClientID are left
  16739. unset MSI will be used
  16740. properties:
  16741. key:
  16742. description: The key of the entry in the Secret
  16743. resource's `data` field to be used. Some instances
  16744. of this field may be defaulted, in others
  16745. it may be required.
  16746. type: string
  16747. name:
  16748. description: 'Name of the resource being referred
  16749. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16750. type: string
  16751. required:
  16752. - name
  16753. type: object
  16754. environment:
  16755. enum:
  16756. - AzurePublicCloud
  16757. - AzureChinaCloud
  16758. - AzureGermanCloud
  16759. - AzureUSGovernmentCloud
  16760. type: string
  16761. hostedZoneName:
  16762. type: string
  16763. resourceGroupName:
  16764. type: string
  16765. subscriptionID:
  16766. type: string
  16767. tenantID:
  16768. description: when specifying ClientID and ClientSecret
  16769. then this field is also needed
  16770. type: string
  16771. required:
  16772. - resourceGroupName
  16773. - subscriptionID
  16774. type: object
  16775. clouddns:
  16776. description: Use the Google Cloud DNS API to manage
  16777. DNS01 challenge records.
  16778. properties:
  16779. hostedZoneName:
  16780. description: HostedZoneName is an optional field
  16781. that tells cert-manager in which Cloud DNS zone
  16782. the challenge record has to be created. If left
  16783. empty cert-manager will automatically choose a
  16784. zone.
  16785. type: string
  16786. project:
  16787. type: string
  16788. serviceAccountSecretRef:
  16789. description: A reference to a specific 'key' within
  16790. a Secret resource. In some instances, `key` is
  16791. a required field.
  16792. properties:
  16793. key:
  16794. description: The key of the entry in the Secret
  16795. resource's `data` field to be used. Some instances
  16796. of this field may be defaulted, in others
  16797. it may be required.
  16798. type: string
  16799. name:
  16800. description: 'Name of the resource being referred
  16801. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16802. type: string
  16803. required:
  16804. - name
  16805. type: object
  16806. required:
  16807. - project
  16808. type: object
  16809. cloudflare:
  16810. description: Use the Cloudflare API to manage DNS01
  16811. challenge records.
  16812. properties:
  16813. apiKeySecretRef:
  16814. description: 'API key to use to authenticate with
  16815. Cloudflare. Note: using an API token to authenticate
  16816. is now the recommended method as it allows greater
  16817. control of permissions.'
  16818. properties:
  16819. key:
  16820. description: The key of the entry in the Secret
  16821. resource's `data` field to be used. Some instances
  16822. of this field may be defaulted, in others
  16823. it may be required.
  16824. type: string
  16825. name:
  16826. description: 'Name of the resource being referred
  16827. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16828. type: string
  16829. required:
  16830. - name
  16831. type: object
  16832. apiTokenSecretRef:
  16833. description: API token used to authenticate with
  16834. Cloudflare.
  16835. properties:
  16836. key:
  16837. description: The key of the entry in the Secret
  16838. resource's `data` field to be used. Some instances
  16839. of this field may be defaulted, in others
  16840. it may be required.
  16841. type: string
  16842. name:
  16843. description: 'Name of the resource being referred
  16844. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16845. type: string
  16846. required:
  16847. - name
  16848. type: object
  16849. email:
  16850. description: Email of the account, only required
  16851. when using API key based authentication.
  16852. type: string
  16853. type: object
  16854. cnameStrategy:
  16855. description: CNAMEStrategy configures how the DNS01
  16856. provider should handle CNAME records when found in
  16857. DNS zones.
  16858. enum:
  16859. - None
  16860. - Follow
  16861. type: string
  16862. digitalocean:
  16863. description: Use the DigitalOcean DNS API to manage
  16864. DNS01 challenge records.
  16865. properties:
  16866. tokenSecretRef:
  16867. description: A reference to a specific 'key' within
  16868. a Secret resource. In some instances, `key` is
  16869. a required field.
  16870. properties:
  16871. key:
  16872. description: The key of the entry in the Secret
  16873. resource's `data` field to be used. Some instances
  16874. of this field may be defaulted, in others
  16875. it may be required.
  16876. type: string
  16877. name:
  16878. description: 'Name of the resource being referred
  16879. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16880. type: string
  16881. required:
  16882. - name
  16883. type: object
  16884. required:
  16885. - tokenSecretRef
  16886. type: object
  16887. rfc2136:
  16888. description: Use RFC2136 ("Dynamic Updates in the Domain
  16889. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  16890. to manage DNS01 challenge records.
  16891. properties:
  16892. nameserver:
  16893. description: The IP address or hostname of an authoritative
  16894. DNS server supporting RFC2136 in the form host:port.
  16895. If the host is an IPv6 address it must be enclosed
  16896. in square brackets (e.g [2001:db8::1]) ; port
  16897. is optional. This field is required.
  16898. type: string
  16899. tsigAlgorithm:
  16900. description: 'The TSIG Algorithm configured in the
  16901. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  16902. and ``tsigKeyName`` are defined. Supported values
  16903. are (case-insensitive): ``HMACMD5`` (default),
  16904. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  16905. type: string
  16906. tsigKeyName:
  16907. description: The TSIG Key name configured in the
  16908. DNS. If ``tsigSecretSecretRef`` is defined, this
  16909. field is required.
  16910. type: string
  16911. tsigSecretSecretRef:
  16912. description: The name of the secret containing the
  16913. TSIG value. If ``tsigKeyName`` is defined, this
  16914. field is required.
  16915. properties:
  16916. key:
  16917. description: The key of the entry in the Secret
  16918. resource's `data` field to be used. Some instances
  16919. of this field may be defaulted, in others
  16920. it may be required.
  16921. type: string
  16922. name:
  16923. description: 'Name of the resource being referred
  16924. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16925. type: string
  16926. required:
  16927. - name
  16928. type: object
  16929. required:
  16930. - nameserver
  16931. type: object
  16932. route53:
  16933. description: Use the AWS Route53 API to manage DNS01
  16934. challenge records.
  16935. properties:
  16936. accessKeyID:
  16937. description: 'The AccessKeyID is used for authentication.
  16938. If not set we fall-back to using env vars, shared
  16939. credentials file or AWS Instance metadata see:
  16940. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  16941. type: string
  16942. hostedZoneID:
  16943. description: If set, the provider will manage only
  16944. this zone in Route53 and will not do an lookup
  16945. using the route53:ListHostedZonesByName api call.
  16946. type: string
  16947. region:
  16948. description: Always set the region when using AccessKeyID
  16949. and SecretAccessKey
  16950. type: string
  16951. role:
  16952. description: Role is a Role ARN which the Route53
  16953. provider will assume using either the explicit
  16954. credentials AccessKeyID/SecretAccessKey or the
  16955. inferred credentials from environment variables,
  16956. shared credentials file or AWS Instance metadata
  16957. type: string
  16958. secretAccessKeySecretRef:
  16959. description: The SecretAccessKey is used for authentication.
  16960. If not set we fall-back to using env vars, shared
  16961. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  16962. properties:
  16963. key:
  16964. description: The key of the entry in the Secret
  16965. resource's `data` field to be used. Some instances
  16966. of this field may be defaulted, in others
  16967. it may be required.
  16968. type: string
  16969. name:
  16970. description: 'Name of the resource being referred
  16971. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16972. type: string
  16973. required:
  16974. - name
  16975. type: object
  16976. required:
  16977. - region
  16978. type: object
  16979. webhook:
  16980. description: Configure an external webhook based DNS01
  16981. challenge solver to manage DNS01 challenge records.
  16982. properties:
  16983. config:
  16984. description: Additional configuration that should
  16985. be passed to the webhook apiserver when challenges
  16986. are processed. This can contain arbitrary JSON
  16987. data. Secret values should not be specified in
  16988. this stanza. If secret values are needed (e.g.
  16989. credentials for a DNS service), you should use
  16990. a SecretKeySelector to reference a Secret resource.
  16991. For details on the schema of this field, consult
  16992. the webhook provider implementation's documentation.
  16993. x-kubernetes-preserve-unknown-fields: true
  16994. groupName:
  16995. description: The API group name that should be used
  16996. when POSTing ChallengePayload resources to the
  16997. webhook apiserver. This should be the same as
  16998. the GroupName specified in the webhook provider
  16999. implementation.
  17000. type: string
  17001. solverName:
  17002. description: The name of the solver to use, as defined
  17003. in the webhook provider implementation. This will
  17004. typically be the name of the provider, e.g. 'cloudflare'.
  17005. type: string
  17006. required:
  17007. - groupName
  17008. - solverName
  17009. type: object
  17010. type: object
  17011. http01:
  17012. description: Configures cert-manager to attempt to complete
  17013. authorizations by performing the HTTP01 challenge flow.
  17014. It is not possible to obtain certificates for wildcard
  17015. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  17016. mechanism.
  17017. properties:
  17018. ingress:
  17019. description: The ingress based HTTP01 challenge solver
  17020. will solve challenges by creating or modifying Ingress
  17021. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  17022. to 'challenge solver' pods that are provisioned by
  17023. cert-manager for each Challenge to be completed.
  17024. properties:
  17025. class:
  17026. description: The ingress class to use when creating
  17027. Ingress resources to solve ACME challenges that
  17028. use this challenge solver. Only one of 'class'
  17029. or 'name' may be specified.
  17030. type: string
  17031. ingressTemplate:
  17032. description: Optional ingress template used to configure
  17033. the ACME challenge solver ingress used for HTTP01
  17034. challenges
  17035. properties:
  17036. metadata:
  17037. description: ObjectMeta overrides for the ingress
  17038. used to solve HTTP01 challenges. Only the
  17039. 'labels' and 'annotations' fields may be set.
  17040. If labels or annotations overlap with in-built
  17041. values, the values here will override the
  17042. in-built values.
  17043. properties:
  17044. annotations:
  17045. additionalProperties:
  17046. type: string
  17047. description: Annotations that should be
  17048. added to the created ACME HTTP01 solver
  17049. ingress.
  17050. type: object
  17051. labels:
  17052. additionalProperties:
  17053. type: string
  17054. description: Labels that should be added
  17055. to the created ACME HTTP01 solver ingress.
  17056. type: object
  17057. type: object
  17058. type: object
  17059. name:
  17060. description: The name of the ingress resource that
  17061. should have ACME challenge solving routes inserted
  17062. into it in order to solve HTTP01 challenges. This
  17063. is typically used in conjunction with ingress
  17064. controllers like ingress-gce, which maintains
  17065. a 1:1 mapping between external IPs and ingress
  17066. resources.
  17067. type: string
  17068. podTemplate:
  17069. description: Optional pod template used to configure
  17070. the ACME challenge solver pods used for HTTP01
  17071. challenges
  17072. properties:
  17073. metadata:
  17074. description: ObjectMeta overrides for the pod
  17075. used to solve HTTP01 challenges. Only the
  17076. 'labels' and 'annotations' fields may be set.
  17077. If labels or annotations overlap with in-built
  17078. values, the values here will override the
  17079. in-built values.
  17080. properties:
  17081. annotations:
  17082. additionalProperties:
  17083. type: string
  17084. description: Annotations that should be
  17085. added to the create ACME HTTP01 solver
  17086. pods.
  17087. type: object
  17088. labels:
  17089. additionalProperties:
  17090. type: string
  17091. description: Labels that should be added
  17092. to the created ACME HTTP01 solver pods.
  17093. type: object
  17094. type: object
  17095. spec:
  17096. description: PodSpec defines overrides for the
  17097. HTTP01 challenge solver pod. Only the 'priorityClassName',
  17098. 'nodeSelector', 'affinity', 'serviceAccountName'
  17099. and 'tolerations' fields are supported currently.
  17100. All other fields will be ignored.
  17101. properties:
  17102. affinity:
  17103. description: If specified, the pod's scheduling
  17104. constraints
  17105. properties:
  17106. nodeAffinity:
  17107. description: Describes node affinity
  17108. scheduling rules for the pod.
  17109. properties:
  17110. preferredDuringSchedulingIgnoredDuringExecution:
  17111. description: The scheduler will
  17112. prefer to schedule pods to nodes
  17113. that satisfy the affinity expressions
  17114. specified by this field, but it
  17115. may choose a node that violates
  17116. one or more of the expressions.
  17117. The node that is most preferred
  17118. is the one with the greatest sum
  17119. of weights, i.e. for each node
  17120. that meets all of the scheduling
  17121. requirements (resource request,
  17122. requiredDuringScheduling affinity
  17123. expressions, etc.), compute a
  17124. sum by iterating through the elements
  17125. of this field and adding "weight"
  17126. to the sum if the node matches
  17127. the corresponding matchExpressions;
  17128. the node(s) with the highest sum
  17129. are the most preferred.
  17130. items:
  17131. description: An empty preferred
  17132. scheduling term matches all
  17133. objects with implicit weight
  17134. 0 (i.e. it's a no-op). A null
  17135. preferred scheduling term matches
  17136. no objects (i.e. is also a no-op).
  17137. properties:
  17138. preference:
  17139. description: A node selector
  17140. term, associated with the
  17141. corresponding weight.
  17142. properties:
  17143. matchExpressions:
  17144. description: A list of
  17145. node selector requirements
  17146. by node's labels.
  17147. items:
  17148. description: A node
  17149. selector requirement
  17150. is a selector that
  17151. contains values, a
  17152. key, and an operator
  17153. that relates the key
  17154. and values.
  17155. properties:
  17156. key:
  17157. description: The
  17158. label key that
  17159. the selector applies
  17160. to.
  17161. type: string
  17162. operator:
  17163. description: Represents
  17164. a key's relationship
  17165. to a set of values.
  17166. Valid operators
  17167. are In, NotIn,
  17168. Exists, DoesNotExist.
  17169. Gt, and Lt.
  17170. type: string
  17171. values:
  17172. description: An
  17173. array of string
  17174. values. If the
  17175. operator is In
  17176. or NotIn, the
  17177. values array must
  17178. be non-empty.
  17179. If the operator
  17180. is Exists or DoesNotExist,
  17181. the values array
  17182. must be empty.
  17183. If the operator
  17184. is Gt or Lt, the
  17185. values array must
  17186. have a single
  17187. element, which
  17188. will be interpreted
  17189. as an integer.
  17190. This array is
  17191. replaced during
  17192. a strategic merge
  17193. patch.
  17194. items:
  17195. type: string
  17196. type: array
  17197. required:
  17198. - key
  17199. - operator
  17200. type: object
  17201. type: array
  17202. matchFields:
  17203. description: A list of
  17204. node selector requirements
  17205. by node's fields.
  17206. items:
  17207. description: A node
  17208. selector requirement
  17209. is a selector that
  17210. contains values, a
  17211. key, and an operator
  17212. that relates the key
  17213. and values.
  17214. properties:
  17215. key:
  17216. description: The
  17217. label key that
  17218. the selector applies
  17219. to.
  17220. type: string
  17221. operator:
  17222. description: Represents
  17223. a key's relationship
  17224. to a set of values.
  17225. Valid operators
  17226. are In, NotIn,
  17227. Exists, DoesNotExist.
  17228. Gt, and Lt.
  17229. type: string
  17230. values:
  17231. description: An
  17232. array of string
  17233. values. If the
  17234. operator is In
  17235. or NotIn, the
  17236. values array must
  17237. be non-empty.
  17238. If the operator
  17239. is Exists or DoesNotExist,
  17240. the values array
  17241. must be empty.
  17242. If the operator
  17243. is Gt or Lt, the
  17244. values array must
  17245. have a single
  17246. element, which
  17247. will be interpreted
  17248. as an integer.
  17249. This array is
  17250. replaced during
  17251. a strategic merge
  17252. patch.
  17253. items:
  17254. type: string
  17255. type: array
  17256. required:
  17257. - key
  17258. - operator
  17259. type: object
  17260. type: array
  17261. type: object
  17262. weight:
  17263. description: Weight associated
  17264. with matching the corresponding
  17265. nodeSelectorTerm, in the
  17266. range 1-100.
  17267. format: int32
  17268. type: integer
  17269. required:
  17270. - preference
  17271. - weight
  17272. type: object
  17273. type: array
  17274. requiredDuringSchedulingIgnoredDuringExecution:
  17275. description: If the affinity requirements
  17276. specified by this field are not
  17277. met at scheduling time, the pod
  17278. will not be scheduled onto the
  17279. node. If the affinity requirements
  17280. specified by this field cease
  17281. to be met at some point during
  17282. pod execution (e.g. due to an
  17283. update), the system may or may
  17284. not try to eventually evict the
  17285. pod from its node.
  17286. properties:
  17287. nodeSelectorTerms:
  17288. description: Required. A list
  17289. of node selector terms. The
  17290. terms are ORed.
  17291. items:
  17292. description: A null or empty
  17293. node selector term matches
  17294. no objects. The requirements
  17295. of them are ANDed. The TopologySelectorTerm
  17296. type implements a subset
  17297. of the NodeSelectorTerm.
  17298. properties:
  17299. matchExpressions:
  17300. description: A list of
  17301. node selector requirements
  17302. by node's labels.
  17303. items:
  17304. description: A node
  17305. selector requirement
  17306. is a selector that
  17307. contains values, a
  17308. key, and an operator
  17309. that relates the key
  17310. and values.
  17311. properties:
  17312. key:
  17313. description: The
  17314. label key that
  17315. the selector applies
  17316. to.
  17317. type: string
  17318. operator:
  17319. description: Represents
  17320. a key's relationship
  17321. to a set of values.
  17322. Valid operators
  17323. are In, NotIn,
  17324. Exists, DoesNotExist.
  17325. Gt, and Lt.
  17326. type: string
  17327. values:
  17328. description: An
  17329. array of string
  17330. values. If the
  17331. operator is In
  17332. or NotIn, the
  17333. values array must
  17334. be non-empty.
  17335. If the operator
  17336. is Exists or DoesNotExist,
  17337. the values array
  17338. must be empty.
  17339. If the operator
  17340. is Gt or Lt, the
  17341. values array must
  17342. have a single
  17343. element, which
  17344. will be interpreted
  17345. as an integer.
  17346. This array is
  17347. replaced during
  17348. a strategic merge
  17349. patch.
  17350. items:
  17351. type: string
  17352. type: array
  17353. required:
  17354. - key
  17355. - operator
  17356. type: object
  17357. type: array
  17358. matchFields:
  17359. description: A list of
  17360. node selector requirements
  17361. by node's fields.
  17362. items:
  17363. description: A node
  17364. selector requirement
  17365. is a selector that
  17366. contains values, a
  17367. key, and an operator
  17368. that relates the key
  17369. and values.
  17370. properties:
  17371. key:
  17372. description: The
  17373. label key that
  17374. the selector applies
  17375. to.
  17376. type: string
  17377. operator:
  17378. description: Represents
  17379. a key's relationship
  17380. to a set of values.
  17381. Valid operators
  17382. are In, NotIn,
  17383. Exists, DoesNotExist.
  17384. Gt, and Lt.
  17385. type: string
  17386. values:
  17387. description: An
  17388. array of string
  17389. values. If the
  17390. operator is In
  17391. or NotIn, the
  17392. values array must
  17393. be non-empty.
  17394. If the operator
  17395. is Exists or DoesNotExist,
  17396. the values array
  17397. must be empty.
  17398. If the operator
  17399. is Gt or Lt, the
  17400. values array must
  17401. have a single
  17402. element, which
  17403. will be interpreted
  17404. as an integer.
  17405. This array is
  17406. replaced during
  17407. a strategic merge
  17408. patch.
  17409. items:
  17410. type: string
  17411. type: array
  17412. required:
  17413. - key
  17414. - operator
  17415. type: object
  17416. type: array
  17417. type: object
  17418. type: array
  17419. required:
  17420. - nodeSelectorTerms
  17421. type: object
  17422. type: object
  17423. podAffinity:
  17424. description: Describes pod affinity
  17425. scheduling rules (e.g. co-locate this
  17426. pod in the same node, zone, etc. as
  17427. some other pod(s)).
  17428. properties:
  17429. preferredDuringSchedulingIgnoredDuringExecution:
  17430. description: The scheduler will
  17431. prefer to schedule pods to nodes
  17432. that satisfy the affinity expressions
  17433. specified by this field, but it
  17434. may choose a node that violates
  17435. one or more of the expressions.
  17436. The node that is most preferred
  17437. is the one with the greatest sum
  17438. of weights, i.e. for each node
  17439. that meets all of the scheduling
  17440. requirements (resource request,
  17441. requiredDuringScheduling affinity
  17442. expressions, etc.), compute a
  17443. sum by iterating through the elements
  17444. of this field and adding "weight"
  17445. to the sum if the node has pods
  17446. which matches the corresponding
  17447. podAffinityTerm; the node(s) with
  17448. the highest sum are the most preferred.
  17449. items:
  17450. description: The weights of all
  17451. of the matched WeightedPodAffinityTerm
  17452. fields are added per-node to
  17453. find the most preferred node(s)
  17454. properties:
  17455. podAffinityTerm:
  17456. description: Required. A pod
  17457. affinity term, associated
  17458. with the corresponding weight.
  17459. properties:
  17460. labelSelector:
  17461. description: A label query
  17462. over a set of resources,
  17463. in this case pods.
  17464. properties:
  17465. matchExpressions:
  17466. description: matchExpressions
  17467. is a list of label
  17468. selector requirements.
  17469. The requirements
  17470. are ANDed.
  17471. items:
  17472. description: A label
  17473. selector requirement
  17474. is a selector
  17475. that contains
  17476. values, a key,
  17477. and an operator
  17478. that relates the
  17479. key and values.
  17480. properties:
  17481. key:
  17482. description: key
  17483. is the label
  17484. key that the
  17485. selector applies
  17486. to.
  17487. type: string
  17488. operator:
  17489. description: operator
  17490. represents
  17491. a key's relationship
  17492. to a set of
  17493. values. Valid
  17494. operators
  17495. are In, NotIn,
  17496. Exists and
  17497. DoesNotExist.
  17498. type: string
  17499. values:
  17500. description: values
  17501. is an array
  17502. of string
  17503. values. If
  17504. the operator
  17505. is In or NotIn,
  17506. the values
  17507. array must
  17508. be non-empty.
  17509. If the operator
  17510. is Exists
  17511. or DoesNotExist,
  17512. the values
  17513. array must
  17514. be empty.
  17515. This array
  17516. is replaced
  17517. during a strategic
  17518. merge patch.
  17519. items:
  17520. type: string
  17521. type: array
  17522. required:
  17523. - key
  17524. - operator
  17525. type: object
  17526. type: array
  17527. matchLabels:
  17528. additionalProperties:
  17529. type: string
  17530. description: matchLabels
  17531. is a map of {key,value}
  17532. pairs. A single
  17533. {key,value} in the
  17534. matchLabels map
  17535. is equivalent to
  17536. an element of matchExpressions,
  17537. whose key field
  17538. is "key", the operator
  17539. is "In", and the
  17540. values array contains
  17541. only "value". The
  17542. requirements are
  17543. ANDed.
  17544. type: object
  17545. type: object
  17546. namespaces:
  17547. description: namespaces
  17548. specifies which namespaces
  17549. the labelSelector applies
  17550. to (matches against);
  17551. null or empty list means
  17552. "this pod's namespace"
  17553. items:
  17554. type: string
  17555. type: array
  17556. topologyKey:
  17557. description: This pod
  17558. should be co-located
  17559. (affinity) or not co-located
  17560. (anti-affinity) with
  17561. the pods matching the
  17562. labelSelector in the
  17563. specified namespaces,
  17564. where co-located is
  17565. defined as running on
  17566. a node whose value of
  17567. the label with key topologyKey
  17568. matches that of any
  17569. node on which any of
  17570. the selected pods is
  17571. running. Empty topologyKey
  17572. is not allowed.
  17573. type: string
  17574. required:
  17575. - topologyKey
  17576. type: object
  17577. weight:
  17578. description: weight associated
  17579. with matching the corresponding
  17580. podAffinityTerm, in the
  17581. range 1-100.
  17582. format: int32
  17583. type: integer
  17584. required:
  17585. - podAffinityTerm
  17586. - weight
  17587. type: object
  17588. type: array
  17589. requiredDuringSchedulingIgnoredDuringExecution:
  17590. description: If the affinity requirements
  17591. specified by this field are not
  17592. met at scheduling time, the pod
  17593. will not be scheduled onto the
  17594. node. If the affinity requirements
  17595. specified by this field cease
  17596. to be met at some point during
  17597. pod execution (e.g. due to a pod
  17598. label update), the system may
  17599. or may not try to eventually evict
  17600. the pod from its node. When there
  17601. are multiple elements, the lists
  17602. of nodes corresponding to each
  17603. podAffinityTerm are intersected,
  17604. i.e. all terms must be satisfied.
  17605. items:
  17606. description: Defines a set of
  17607. pods (namely those matching
  17608. the labelSelector relative to
  17609. the given namespace(s)) that
  17610. this pod should be co-located
  17611. (affinity) or not co-located
  17612. (anti-affinity) with, where
  17613. co-located is defined as running
  17614. on a node whose value of the
  17615. label with key <topologyKey>
  17616. matches that of any node on
  17617. which a pod of the set of pods
  17618. is running
  17619. properties:
  17620. labelSelector:
  17621. description: A label query
  17622. over a set of resources,
  17623. in this case pods.
  17624. properties:
  17625. matchExpressions:
  17626. description: matchExpressions
  17627. is a list of label selector
  17628. requirements. The requirements
  17629. are ANDed.
  17630. items:
  17631. description: A label
  17632. selector requirement
  17633. is a selector that
  17634. contains values, a
  17635. key, and an operator
  17636. that relates the key
  17637. and values.
  17638. properties:
  17639. key:
  17640. description: key
  17641. is the label key
  17642. that the selector
  17643. applies to.
  17644. type: string
  17645. operator:
  17646. description: operator
  17647. represents a key's
  17648. relationship to
  17649. a set of values.
  17650. Valid operators
  17651. are In, NotIn,
  17652. Exists and DoesNotExist.
  17653. type: string
  17654. values:
  17655. description: values
  17656. is an array of
  17657. string values.
  17658. If the operator
  17659. is In or NotIn,
  17660. the values array
  17661. must be non-empty.
  17662. If the operator
  17663. is Exists or DoesNotExist,
  17664. the values array
  17665. must be empty.
  17666. This array is
  17667. replaced during
  17668. a strategic merge
  17669. patch.
  17670. items:
  17671. type: string
  17672. type: array
  17673. required:
  17674. - key
  17675. - operator
  17676. type: object
  17677. type: array
  17678. matchLabels:
  17679. additionalProperties:
  17680. type: string
  17681. description: matchLabels
  17682. is a map of {key,value}
  17683. pairs. A single {key,value}
  17684. in the matchLabels map
  17685. is equivalent to an
  17686. element of matchExpressions,
  17687. whose key field is "key",
  17688. the operator is "In",
  17689. and the values array
  17690. contains only "value".
  17691. The requirements are
  17692. ANDed.
  17693. type: object
  17694. type: object
  17695. namespaces:
  17696. description: namespaces specifies
  17697. which namespaces the labelSelector
  17698. applies to (matches against);
  17699. null or empty list means
  17700. "this pod's namespace"
  17701. items:
  17702. type: string
  17703. type: array
  17704. topologyKey:
  17705. description: This pod should
  17706. be co-located (affinity)
  17707. or not co-located (anti-affinity)
  17708. with the pods matching the
  17709. labelSelector in the specified
  17710. namespaces, where co-located
  17711. is defined as running on
  17712. a node whose value of the
  17713. label with key topologyKey
  17714. matches that of any node
  17715. on which any of the selected
  17716. pods is running. Empty topologyKey
  17717. is not allowed.
  17718. type: string
  17719. required:
  17720. - topologyKey
  17721. type: object
  17722. type: array
  17723. type: object
  17724. podAntiAffinity:
  17725. description: Describes pod anti-affinity
  17726. scheduling rules (e.g. avoid putting
  17727. this pod in the same node, zone, etc.
  17728. as some other pod(s)).
  17729. properties:
  17730. preferredDuringSchedulingIgnoredDuringExecution:
  17731. description: The scheduler will
  17732. prefer to schedule pods to nodes
  17733. that satisfy the anti-affinity
  17734. expressions specified by this
  17735. field, but it may choose a node
  17736. that violates one or more of the
  17737. expressions. The node that is
  17738. most preferred is the one with
  17739. the greatest sum of weights, i.e.
  17740. for each node that meets all of
  17741. the scheduling requirements (resource
  17742. request, requiredDuringScheduling
  17743. anti-affinity expressions, etc.),
  17744. compute a sum by iterating through
  17745. the elements of this field and
  17746. adding "weight" to the sum if
  17747. the node has pods which matches
  17748. the corresponding podAffinityTerm;
  17749. the node(s) with the highest sum
  17750. are the most preferred.
  17751. items:
  17752. description: The weights of all
  17753. of the matched WeightedPodAffinityTerm
  17754. fields are added per-node to
  17755. find the most preferred node(s)
  17756. properties:
  17757. podAffinityTerm:
  17758. description: Required. A pod
  17759. affinity term, associated
  17760. with the corresponding weight.
  17761. properties:
  17762. labelSelector:
  17763. description: A label query
  17764. over a set of resources,
  17765. in this case pods.
  17766. properties:
  17767. matchExpressions:
  17768. description: matchExpressions
  17769. is a list of label
  17770. selector requirements.
  17771. The requirements
  17772. are ANDed.
  17773. items:
  17774. description: A label
  17775. selector requirement
  17776. is a selector
  17777. that contains
  17778. values, a key,
  17779. and an operator
  17780. that relates the
  17781. key and values.
  17782. properties:
  17783. key:
  17784. description: key
  17785. is the label
  17786. key that the
  17787. selector applies
  17788. to.
  17789. type: string
  17790. operator:
  17791. description: operator
  17792. represents
  17793. a key's relationship
  17794. to a set of
  17795. values. Valid
  17796. operators
  17797. are In, NotIn,
  17798. Exists and
  17799. DoesNotExist.
  17800. type: string
  17801. values:
  17802. description: values
  17803. is an array
  17804. of string
  17805. values. If
  17806. the operator
  17807. is In or NotIn,
  17808. the values
  17809. array must
  17810. be non-empty.
  17811. If the operator
  17812. is Exists
  17813. or DoesNotExist,
  17814. the values
  17815. array must
  17816. be empty.
  17817. This array
  17818. is replaced
  17819. during a strategic
  17820. merge patch.
  17821. items:
  17822. type: string
  17823. type: array
  17824. required:
  17825. - key
  17826. - operator
  17827. type: object
  17828. type: array
  17829. matchLabels:
  17830. additionalProperties:
  17831. type: string
  17832. description: matchLabels
  17833. is a map of {key,value}
  17834. pairs. A single
  17835. {key,value} in the
  17836. matchLabels map
  17837. is equivalent to
  17838. an element of matchExpressions,
  17839. whose key field
  17840. is "key", the operator
  17841. is "In", and the
  17842. values array contains
  17843. only "value". The
  17844. requirements are
  17845. ANDed.
  17846. type: object
  17847. type: object
  17848. namespaces:
  17849. description: namespaces
  17850. specifies which namespaces
  17851. the labelSelector applies
  17852. to (matches against);
  17853. null or empty list means
  17854. "this pod's namespace"
  17855. items:
  17856. type: string
  17857. type: array
  17858. topologyKey:
  17859. description: This pod
  17860. should be co-located
  17861. (affinity) or not co-located
  17862. (anti-affinity) with
  17863. the pods matching the
  17864. labelSelector in the
  17865. specified namespaces,
  17866. where co-located is
  17867. defined as running on
  17868. a node whose value of
  17869. the label with key topologyKey
  17870. matches that of any
  17871. node on which any of
  17872. the selected pods is
  17873. running. Empty topologyKey
  17874. is not allowed.
  17875. type: string
  17876. required:
  17877. - topologyKey
  17878. type: object
  17879. weight:
  17880. description: weight associated
  17881. with matching the corresponding
  17882. podAffinityTerm, in the
  17883. range 1-100.
  17884. format: int32
  17885. type: integer
  17886. required:
  17887. - podAffinityTerm
  17888. - weight
  17889. type: object
  17890. type: array
  17891. requiredDuringSchedulingIgnoredDuringExecution:
  17892. description: If the anti-affinity
  17893. requirements specified by this
  17894. field are not met at scheduling
  17895. time, the pod will not be scheduled
  17896. onto the node. If the anti-affinity
  17897. requirements specified by this
  17898. field cease to be met at some
  17899. point during pod execution (e.g.
  17900. due to a pod label update), the
  17901. system may or may not try to eventually
  17902. evict the pod from its node. When
  17903. there are multiple elements, the
  17904. lists of nodes corresponding to
  17905. each podAffinityTerm are intersected,
  17906. i.e. all terms must be satisfied.
  17907. items:
  17908. description: Defines a set of
  17909. pods (namely those matching
  17910. the labelSelector relative to
  17911. the given namespace(s)) that
  17912. this pod should be co-located
  17913. (affinity) or not co-located
  17914. (anti-affinity) with, where
  17915. co-located is defined as running
  17916. on a node whose value of the
  17917. label with key <topologyKey>
  17918. matches that of any node on
  17919. which a pod of the set of pods
  17920. is running
  17921. properties:
  17922. labelSelector:
  17923. description: A label query
  17924. over a set of resources,
  17925. in this case pods.
  17926. properties:
  17927. matchExpressions:
  17928. description: matchExpressions
  17929. is a list of label selector
  17930. requirements. The requirements
  17931. are ANDed.
  17932. items:
  17933. description: A label
  17934. selector requirement
  17935. is a selector that
  17936. contains values, a
  17937. key, and an operator
  17938. that relates the key
  17939. and values.
  17940. properties:
  17941. key:
  17942. description: key
  17943. is the label key
  17944. that the selector
  17945. applies to.
  17946. type: string
  17947. operator:
  17948. description: operator
  17949. represents a key's
  17950. relationship to
  17951. a set of values.
  17952. Valid operators
  17953. are In, NotIn,
  17954. Exists and DoesNotExist.
  17955. type: string
  17956. values:
  17957. description: values
  17958. is an array of
  17959. string values.
  17960. If the operator
  17961. is In or NotIn,
  17962. the values array
  17963. must be non-empty.
  17964. If the operator
  17965. is Exists or DoesNotExist,
  17966. the values array
  17967. must be empty.
  17968. This array is
  17969. replaced during
  17970. a strategic merge
  17971. patch.
  17972. items:
  17973. type: string
  17974. type: array
  17975. required:
  17976. - key
  17977. - operator
  17978. type: object
  17979. type: array
  17980. matchLabels:
  17981. additionalProperties:
  17982. type: string
  17983. description: matchLabels
  17984. is a map of {key,value}
  17985. pairs. A single {key,value}
  17986. in the matchLabels map
  17987. is equivalent to an
  17988. element of matchExpressions,
  17989. whose key field is "key",
  17990. the operator is "In",
  17991. and the values array
  17992. contains only "value".
  17993. The requirements are
  17994. ANDed.
  17995. type: object
  17996. type: object
  17997. namespaces:
  17998. description: namespaces specifies
  17999. which namespaces the labelSelector
  18000. applies to (matches against);
  18001. null or empty list means
  18002. "this pod's namespace"
  18003. items:
  18004. type: string
  18005. type: array
  18006. topologyKey:
  18007. description: This pod should
  18008. be co-located (affinity)
  18009. or not co-located (anti-affinity)
  18010. with the pods matching the
  18011. labelSelector in the specified
  18012. namespaces, where co-located
  18013. is defined as running on
  18014. a node whose value of the
  18015. label with key topologyKey
  18016. matches that of any node
  18017. on which any of the selected
  18018. pods is running. Empty topologyKey
  18019. is not allowed.
  18020. type: string
  18021. required:
  18022. - topologyKey
  18023. type: object
  18024. type: array
  18025. type: object
  18026. type: object
  18027. nodeSelector:
  18028. additionalProperties:
  18029. type: string
  18030. description: 'NodeSelector is a selector
  18031. which must be true for the pod to fit
  18032. on a node. Selector which must match a
  18033. node''s labels for the pod to be scheduled
  18034. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  18035. type: object
  18036. priorityClassName:
  18037. description: If specified, the pod's priorityClassName.
  18038. type: string
  18039. serviceAccountName:
  18040. description: If specified, the pod's service
  18041. account
  18042. type: string
  18043. tolerations:
  18044. description: If specified, the pod's tolerations.
  18045. items:
  18046. description: The pod this Toleration is
  18047. attached to tolerates any taint that
  18048. matches the triple <key,value,effect>
  18049. using the matching operator <operator>.
  18050. properties:
  18051. effect:
  18052. description: Effect indicates the
  18053. taint effect to match. Empty means
  18054. match all taint effects. When specified,
  18055. allowed values are NoSchedule, PreferNoSchedule
  18056. and NoExecute.
  18057. type: string
  18058. key:
  18059. description: Key is the taint key
  18060. that the toleration applies to.
  18061. Empty means match all taint keys.
  18062. If the key is empty, operator must
  18063. be Exists; this combination means
  18064. to match all values and all keys.
  18065. type: string
  18066. operator:
  18067. description: Operator represents a
  18068. key's relationship to the value.
  18069. Valid operators are Exists and Equal.
  18070. Defaults to Equal. Exists is equivalent
  18071. to wildcard for value, so that a
  18072. pod can tolerate all taints of a
  18073. particular category.
  18074. type: string
  18075. tolerationSeconds:
  18076. description: TolerationSeconds represents
  18077. the period of time the toleration
  18078. (which must be of effect NoExecute,
  18079. otherwise this field is ignored)
  18080. tolerates the taint. By default,
  18081. it is not set, which means tolerate
  18082. the taint forever (do not evict).
  18083. Zero and negative values will be
  18084. treated as 0 (evict immediately)
  18085. by the system.
  18086. format: int64
  18087. type: integer
  18088. value:
  18089. description: Value is the taint value
  18090. the toleration matches to. If the
  18091. operator is Exists, the value should
  18092. be empty, otherwise just a regular
  18093. string.
  18094. type: string
  18095. type: object
  18096. type: array
  18097. type: object
  18098. type: object
  18099. serviceType:
  18100. description: Optional service type for Kubernetes
  18101. solver service
  18102. type: string
  18103. type: object
  18104. type: object
  18105. selector:
  18106. description: Selector selects a set of DNSNames on the Certificate
  18107. resource that should be solved using this challenge solver.
  18108. If not specified, the solver will be treated as the 'default'
  18109. solver with the lowest priority, i.e. if any other solver
  18110. has a more specific match, it will be used instead.
  18111. properties:
  18112. dnsNames:
  18113. description: List of DNSNames that this solver will
  18114. be used to solve. If specified and a match is found,
  18115. a dnsNames selector will take precedence over a dnsZones
  18116. selector. If multiple solvers match with the same
  18117. dnsNames value, the solver with the most matching
  18118. labels in matchLabels will be selected. If neither
  18119. has more matches, the solver defined earlier in the
  18120. list will be selected.
  18121. items:
  18122. type: string
  18123. type: array
  18124. dnsZones:
  18125. description: List of DNSZones that this solver will
  18126. be used to solve. The most specific DNS zone match
  18127. specified here will take precedence over other DNS
  18128. zone matches, so a solver specifying sys.example.com
  18129. will be selected over one specifying example.com for
  18130. the domain www.sys.example.com. If multiple solvers
  18131. match with the same dnsZones value, the solver with
  18132. the most matching labels in matchLabels will be selected.
  18133. If neither has more matches, the solver defined earlier
  18134. in the list will be selected.
  18135. items:
  18136. type: string
  18137. type: array
  18138. matchLabels:
  18139. additionalProperties:
  18140. type: string
  18141. description: A label selector that is used to refine
  18142. the set of certificate's that this challenge solver
  18143. will apply to.
  18144. type: object
  18145. type: object
  18146. type: object
  18147. type: array
  18148. required:
  18149. - privateKeySecretRef
  18150. - server
  18151. type: object
  18152. ca:
  18153. description: CA configures this issuer to sign certificates using
  18154. a signing CA keypair stored in a Secret resource. This is used to
  18155. build internal PKIs that are managed by cert-manager.
  18156. properties:
  18157. crlDistributionPoints:
  18158. description: The CRL distribution points is an X.509 v3 certificate
  18159. extension which identifies the location of the CRL from which
  18160. the revocation of this certificate can be checked. If not set,
  18161. certificates will be issued without distribution points set.
  18162. items:
  18163. type: string
  18164. type: array
  18165. secretName:
  18166. description: SecretName is the name of the secret used to sign
  18167. Certificates issued by this Issuer.
  18168. type: string
  18169. required:
  18170. - secretName
  18171. type: object
  18172. selfSigned:
  18173. description: SelfSigned configures this issuer to 'self sign' certificates
  18174. using the private key used to create the CertificateRequest object.
  18175. properties:
  18176. crlDistributionPoints:
  18177. description: The CRL distribution points is an X.509 v3 certificate
  18178. extension which identifies the location of the CRL from which
  18179. the revocation of this certificate can be checked. If not set
  18180. certificate will be issued without CDP. Values are strings.
  18181. items:
  18182. type: string
  18183. type: array
  18184. type: object
  18185. vault:
  18186. description: Vault configures this issuer to sign certificates using
  18187. a HashiCorp Vault PKI backend.
  18188. properties:
  18189. auth:
  18190. description: Auth configures how cert-manager authenticates with
  18191. the Vault server.
  18192. properties:
  18193. appRole:
  18194. description: AppRole authenticates with Vault using the App
  18195. Role auth mechanism, with the role and secret stored in
  18196. a Kubernetes Secret resource.
  18197. properties:
  18198. path:
  18199. description: 'Path where the App Role authentication backend
  18200. is mounted in Vault, e.g: "approle"'
  18201. type: string
  18202. roleId:
  18203. description: RoleID configured in the App Role authentication
  18204. backend when setting up the authentication backend in
  18205. Vault.
  18206. type: string
  18207. secretRef:
  18208. description: Reference to a key in a Secret that contains
  18209. the App Role secret used to authenticate with Vault.
  18210. The `key` field must be specified and denotes which
  18211. entry within the Secret resource is used as the app
  18212. role secret.
  18213. properties:
  18214. key:
  18215. description: The key of the entry in the Secret resource's
  18216. `data` field to be used. Some instances of this
  18217. field may be defaulted, in others it may be required.
  18218. type: string
  18219. name:
  18220. description: 'Name of the resource being referred
  18221. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18222. type: string
  18223. required:
  18224. - name
  18225. type: object
  18226. required:
  18227. - path
  18228. - roleId
  18229. - secretRef
  18230. type: object
  18231. kubernetes:
  18232. description: Kubernetes authenticates with Vault by passing
  18233. the ServiceAccount token stored in the named Secret resource
  18234. to the Vault server.
  18235. properties:
  18236. mountPath:
  18237. description: The Vault mountPath here is the mount path
  18238. to use when authenticating with Vault. For example,
  18239. setting a value to `/v1/auth/foo`, will use the path
  18240. `/v1/auth/foo/login` to authenticate with Vault. If
  18241. unspecified, the default value "/v1/auth/kubernetes"
  18242. will be used.
  18243. type: string
  18244. role:
  18245. description: A required field containing the Vault Role
  18246. to assume. A Role binds a Kubernetes ServiceAccount
  18247. with a set of Vault policies.
  18248. type: string
  18249. secretRef:
  18250. description: The required Secret field containing a Kubernetes
  18251. ServiceAccount JWT used for authenticating with Vault.
  18252. Use of 'ambient credentials' is not supported.
  18253. properties:
  18254. key:
  18255. description: The key of the entry in the Secret resource's
  18256. `data` field to be used. Some instances of this
  18257. field may be defaulted, in others it may be required.
  18258. type: string
  18259. name:
  18260. description: 'Name of the resource being referred
  18261. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18262. type: string
  18263. required:
  18264. - name
  18265. type: object
  18266. required:
  18267. - role
  18268. - secretRef
  18269. type: object
  18270. tokenSecretRef:
  18271. description: TokenSecretRef authenticates with Vault by presenting
  18272. a token.
  18273. properties:
  18274. key:
  18275. description: The key of the entry in the Secret resource's
  18276. `data` field to be used. Some instances of this field
  18277. may be defaulted, in others it may be required.
  18278. type: string
  18279. name:
  18280. description: 'Name of the resource being referred to.
  18281. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18282. type: string
  18283. required:
  18284. - name
  18285. type: object
  18286. type: object
  18287. caBundle:
  18288. description: PEM encoded CA bundle used to validate Vault server
  18289. certificate. Only used if the Server URL is using HTTPS protocol.
  18290. This parameter is ignored for plain HTTP protocol connection.
  18291. If not set the system root certificates are used to validate
  18292. the TLS connection.
  18293. format: byte
  18294. type: string
  18295. namespace:
  18296. description: 'Name of the vault namespace. Namespaces is a set
  18297. of features within Vault Enterprise that allows Vault environments
  18298. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  18299. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  18300. type: string
  18301. path:
  18302. description: 'Path is the mount path of the Vault PKI backend''s
  18303. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  18304. type: string
  18305. server:
  18306. description: 'Server is the connection address for the Vault server,
  18307. e.g: "https://vault.example.com:8200".'
  18308. type: string
  18309. required:
  18310. - auth
  18311. - path
  18312. - server
  18313. type: object
  18314. venafi:
  18315. description: Venafi configures this issuer to sign certificates using
  18316. a Venafi TPP or Venafi Cloud policy zone.
  18317. properties:
  18318. cloud:
  18319. description: Cloud specifies the Venafi cloud configuration settings.
  18320. Only one of TPP or Cloud may be specified.
  18321. properties:
  18322. apiTokenSecretRef:
  18323. description: APITokenSecretRef is a secret key selector for
  18324. the Venafi Cloud API token.
  18325. properties:
  18326. key:
  18327. description: The key of the entry in the Secret resource's
  18328. `data` field to be used. Some instances of this field
  18329. may be defaulted, in others it may be required.
  18330. type: string
  18331. name:
  18332. description: 'Name of the resource being referred to.
  18333. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18334. type: string
  18335. required:
  18336. - name
  18337. type: object
  18338. url:
  18339. description: URL is the base URL for Venafi Cloud. Defaults
  18340. to "https://api.venafi.cloud/v1".
  18341. type: string
  18342. required:
  18343. - apiTokenSecretRef
  18344. type: object
  18345. tpp:
  18346. description: TPP specifies Trust Protection Platform configuration
  18347. settings. Only one of TPP or Cloud may be specified.
  18348. properties:
  18349. caBundle:
  18350. description: CABundle is a PEM encoded TLS certificate to
  18351. use to verify connections to the TPP instance. If specified,
  18352. system roots will not be used and the issuing CA for the
  18353. TPP instance must be verifiable using the provided root.
  18354. If not specified, the connection will be verified using
  18355. the cert-manager system root certificates.
  18356. format: byte
  18357. type: string
  18358. credentialsRef:
  18359. description: CredentialsRef is a reference to a Secret containing
  18360. the username and password for the TPP server. The secret
  18361. must contain two keys, 'username' and 'password'.
  18362. properties:
  18363. name:
  18364. description: 'Name of the resource being referred to.
  18365. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18366. type: string
  18367. required:
  18368. - name
  18369. type: object
  18370. url:
  18371. description: 'URL is the base URL for the vedsdk endpoint
  18372. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  18373. type: string
  18374. required:
  18375. - credentialsRef
  18376. - url
  18377. type: object
  18378. zone:
  18379. description: Zone is the Venafi Policy Zone to use for this issuer.
  18380. All requests made to the Venafi platform will be restricted
  18381. by the named zone policy. This field is required.
  18382. type: string
  18383. required:
  18384. - zone
  18385. type: object
  18386. type: object
  18387. status:
  18388. description: Status of the Issuer. This is set and managed automatically.
  18389. properties:
  18390. acme:
  18391. description: ACME specific status options. This field should only
  18392. be set if the Issuer is configured to use an ACME server to issue
  18393. certificates.
  18394. properties:
  18395. lastRegisteredEmail:
  18396. description: LastRegisteredEmail is the email associated with
  18397. the latest registered ACME account, in order to track changes
  18398. made to registered account associated with the Issuer
  18399. type: string
  18400. uri:
  18401. description: URI is the unique account identifier, which can also
  18402. be used to retrieve account details from the CA
  18403. type: string
  18404. type: object
  18405. conditions:
  18406. description: List of status conditions to indicate the status of a
  18407. CertificateRequest. Known condition types are `Ready`.
  18408. items:
  18409. description: IssuerCondition contains condition information for
  18410. an Issuer.
  18411. properties:
  18412. lastTransitionTime:
  18413. description: LastTransitionTime is the timestamp corresponding
  18414. to the last status change of this condition.
  18415. format: date-time
  18416. type: string
  18417. message:
  18418. description: Message is a human readable description of the
  18419. details of the last transition, complementing reason.
  18420. type: string
  18421. reason:
  18422. description: Reason is a brief machine readable explanation
  18423. for the condition's last transition.
  18424. type: string
  18425. status:
  18426. description: Status of the condition, one of ('True', 'False',
  18427. 'Unknown').
  18428. enum:
  18429. - "True"
  18430. - "False"
  18431. - Unknown
  18432. type: string
  18433. type:
  18434. description: Type of the condition, known values are ('Ready').
  18435. type: string
  18436. required:
  18437. - status
  18438. - type
  18439. type: object
  18440. type: array
  18441. type: object
  18442. type: object
  18443. served: true
  18444. storage: false
  18445. subresources:
  18446. status: {}
  18447. - additionalPrinterColumns:
  18448. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  18449. name: Ready
  18450. type: string
  18451. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  18452. name: Status
  18453. priority: 1
  18454. type: string
  18455. - description: CreationTimestamp is a timestamp representing the server time when
  18456. this object was created. It is not guaranteed to be set in happens-before
  18457. order across separate operations. Clients may not set this value. It is represented
  18458. in RFC3339 form and is in UTC.
  18459. jsonPath: .metadata.creationTimestamp
  18460. name: Age
  18461. type: date
  18462. name: v1alpha3
  18463. schema:
  18464. openAPIV3Schema:
  18465. description: An Issuer represents a certificate issuing authority which can
  18466. be referenced as part of `issuerRef` fields. It is scoped to a single namespace
  18467. and can therefore only be referenced by resources within the same namespace.
  18468. properties:
  18469. apiVersion:
  18470. description: 'APIVersion defines the versioned schema of this representation
  18471. of an object. Servers should convert recognized schemas to the latest
  18472. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  18473. type: string
  18474. kind:
  18475. description: 'Kind is a string value representing the REST resource this
  18476. object represents. Servers may infer this from the endpoint the client
  18477. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  18478. type: string
  18479. metadata:
  18480. type: object
  18481. spec:
  18482. description: Desired state of the Issuer resource.
  18483. properties:
  18484. acme:
  18485. description: ACME configures this issuer to communicate with a RFC8555
  18486. (ACME) server to obtain signed x509 certificates.
  18487. properties:
  18488. disableAccountKeyGeneration:
  18489. description: Enables or disables generating a new ACME account
  18490. key. If true, the Issuer resource will *not* request a new account
  18491. but will expect the account key to be supplied via an existing
  18492. secret. If false, the cert-manager system will generate a new
  18493. ACME account key for the Issuer. Defaults to false.
  18494. type: boolean
  18495. email:
  18496. description: Email is the email address to be associated with
  18497. the ACME account. This field is optional, but it is strongly
  18498. recommended to be set. It will be used to contact you in case
  18499. of issues with your account or certificates, including expiry
  18500. notification emails. This field may be updated after the account
  18501. is initially registered.
  18502. type: string
  18503. externalAccountBinding:
  18504. description: ExternalAccountBinding is a reference to a CA external
  18505. account of the ACME server. If set, upon registration cert-manager
  18506. will attempt to associate the given external account credentials
  18507. with the registered ACME account.
  18508. properties:
  18509. keyAlgorithm:
  18510. description: keyAlgorithm is the MAC key algorithm that the
  18511. key is used for. Valid values are "HS256", "HS384" and "HS512".
  18512. enum:
  18513. - HS256
  18514. - HS384
  18515. - HS512
  18516. type: string
  18517. keyID:
  18518. description: keyID is the ID of the CA key that the External
  18519. Account is bound to.
  18520. type: string
  18521. keySecretRef:
  18522. description: keySecretRef is a Secret Key Selector referencing
  18523. a data item in a Kubernetes Secret which holds the symmetric
  18524. MAC key of the External Account Binding. The `key` is the
  18525. index string that is paired with the key data in the Secret
  18526. and should not be confused with the key data itself, or
  18527. indeed with the External Account Binding keyID above. The
  18528. secret key stored in the Secret **must** be un-padded, base64
  18529. URL encoded data.
  18530. properties:
  18531. key:
  18532. description: The key of the entry in the Secret resource's
  18533. `data` field to be used. Some instances of this field
  18534. may be defaulted, in others it may be required.
  18535. type: string
  18536. name:
  18537. description: 'Name of the resource being referred to.
  18538. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18539. type: string
  18540. required:
  18541. - name
  18542. type: object
  18543. required:
  18544. - keyAlgorithm
  18545. - keyID
  18546. - keySecretRef
  18547. type: object
  18548. preferredChain:
  18549. description: 'PreferredChain is the chain to use if the ACME server
  18550. outputs multiple. PreferredChain is no guarantee that this one
  18551. gets delivered by the ACME endpoint. For example, for Let''s
  18552. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  18553. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  18554. picks the first certificate bundle in the ACME alternative chains
  18555. that has a certificate with this value as its issuer''s CN'
  18556. maxLength: 64
  18557. type: string
  18558. privateKeySecretRef:
  18559. description: PrivateKey is the name of a Kubernetes Secret resource
  18560. that will be used to store the automatically generated ACME
  18561. account private key. Optionally, a `key` may be specified to
  18562. select a specific entry within the named Secret resource. If
  18563. `key` is not specified, a default of `tls.key` will be used.
  18564. properties:
  18565. key:
  18566. description: The key of the entry in the Secret resource's
  18567. `data` field to be used. Some instances of this field may
  18568. be defaulted, in others it may be required.
  18569. type: string
  18570. name:
  18571. description: 'Name of the resource being referred to. More
  18572. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18573. type: string
  18574. required:
  18575. - name
  18576. type: object
  18577. server:
  18578. description: 'Server is the URL used to access the ACME server''s
  18579. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  18580. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  18581. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  18582. type: string
  18583. skipTLSVerify:
  18584. description: Enables or disables validation of the ACME server
  18585. TLS certificate. If true, requests to the ACME server will not
  18586. have their TLS certificate validated (i.e. insecure connections
  18587. will be allowed). Only enable this option in development environments.
  18588. The cert-manager system installed roots will be used to verify
  18589. connections to the ACME server if this is false. Defaults to
  18590. false.
  18591. type: boolean
  18592. solvers:
  18593. description: 'Solvers is a list of challenge solvers that will
  18594. be used to solve ACME challenges for the matching domains. Solver
  18595. configurations must be provided in order to obtain certificates
  18596. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  18597. items:
  18598. description: Configures an issuer to solve challenges using
  18599. the specified options. Only one of HTTP01 or DNS01 may be
  18600. provided.
  18601. properties:
  18602. dns01:
  18603. description: Configures cert-manager to attempt to complete
  18604. authorizations by performing the DNS01 challenge flow.
  18605. properties:
  18606. acmedns:
  18607. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  18608. API to manage DNS01 challenge records.
  18609. properties:
  18610. accountSecretRef:
  18611. description: A reference to a specific 'key' within
  18612. a Secret resource. In some instances, `key` is
  18613. a required field.
  18614. properties:
  18615. key:
  18616. description: The key of the entry in the Secret
  18617. resource's `data` field to be used. Some instances
  18618. of this field may be defaulted, in others
  18619. it may be required.
  18620. type: string
  18621. name:
  18622. description: 'Name of the resource being referred
  18623. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18624. type: string
  18625. required:
  18626. - name
  18627. type: object
  18628. host:
  18629. type: string
  18630. required:
  18631. - accountSecretRef
  18632. - host
  18633. type: object
  18634. akamai:
  18635. description: Use the Akamai DNS zone management API
  18636. to manage DNS01 challenge records.
  18637. properties:
  18638. accessTokenSecretRef:
  18639. description: A reference to a specific 'key' within
  18640. a Secret resource. In some instances, `key` is
  18641. a required field.
  18642. properties:
  18643. key:
  18644. description: The key of the entry in the Secret
  18645. resource's `data` field to be used. Some instances
  18646. of this field may be defaulted, in others
  18647. it may be required.
  18648. type: string
  18649. name:
  18650. description: 'Name of the resource being referred
  18651. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18652. type: string
  18653. required:
  18654. - name
  18655. type: object
  18656. clientSecretSecretRef:
  18657. description: A reference to a specific 'key' within
  18658. a Secret resource. In some instances, `key` is
  18659. a required field.
  18660. properties:
  18661. key:
  18662. description: The key of the entry in the Secret
  18663. resource's `data` field to be used. Some instances
  18664. of this field may be defaulted, in others
  18665. it may be required.
  18666. type: string
  18667. name:
  18668. description: 'Name of the resource being referred
  18669. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18670. type: string
  18671. required:
  18672. - name
  18673. type: object
  18674. clientTokenSecretRef:
  18675. description: A reference to a specific 'key' within
  18676. a Secret resource. In some instances, `key` is
  18677. a required field.
  18678. properties:
  18679. key:
  18680. description: The key of the entry in the Secret
  18681. resource's `data` field to be used. Some instances
  18682. of this field may be defaulted, in others
  18683. it may be required.
  18684. type: string
  18685. name:
  18686. description: 'Name of the resource being referred
  18687. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18688. type: string
  18689. required:
  18690. - name
  18691. type: object
  18692. serviceConsumerDomain:
  18693. type: string
  18694. required:
  18695. - accessTokenSecretRef
  18696. - clientSecretSecretRef
  18697. - clientTokenSecretRef
  18698. - serviceConsumerDomain
  18699. type: object
  18700. azuredns:
  18701. description: Use the Microsoft Azure DNS API to manage
  18702. DNS01 challenge records.
  18703. properties:
  18704. clientID:
  18705. description: if both this and ClientSecret are left
  18706. unset MSI will be used
  18707. type: string
  18708. clientSecretSecretRef:
  18709. description: if both this and ClientID are left
  18710. unset MSI will be used
  18711. properties:
  18712. key:
  18713. description: The key of the entry in the Secret
  18714. resource's `data` field to be used. Some instances
  18715. of this field may be defaulted, in others
  18716. it may be required.
  18717. type: string
  18718. name:
  18719. description: 'Name of the resource being referred
  18720. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18721. type: string
  18722. required:
  18723. - name
  18724. type: object
  18725. environment:
  18726. enum:
  18727. - AzurePublicCloud
  18728. - AzureChinaCloud
  18729. - AzureGermanCloud
  18730. - AzureUSGovernmentCloud
  18731. type: string
  18732. hostedZoneName:
  18733. type: string
  18734. resourceGroupName:
  18735. type: string
  18736. subscriptionID:
  18737. type: string
  18738. tenantID:
  18739. description: when specifying ClientID and ClientSecret
  18740. then this field is also needed
  18741. type: string
  18742. required:
  18743. - resourceGroupName
  18744. - subscriptionID
  18745. type: object
  18746. clouddns:
  18747. description: Use the Google Cloud DNS API to manage
  18748. DNS01 challenge records.
  18749. properties:
  18750. hostedZoneName:
  18751. description: HostedZoneName is an optional field
  18752. that tells cert-manager in which Cloud DNS zone
  18753. the challenge record has to be created. If left
  18754. empty cert-manager will automatically choose a
  18755. zone.
  18756. type: string
  18757. project:
  18758. type: string
  18759. serviceAccountSecretRef:
  18760. description: A reference to a specific 'key' within
  18761. a Secret resource. In some instances, `key` is
  18762. a required field.
  18763. properties:
  18764. key:
  18765. description: The key of the entry in the Secret
  18766. resource's `data` field to be used. Some instances
  18767. of this field may be defaulted, in others
  18768. it may be required.
  18769. type: string
  18770. name:
  18771. description: 'Name of the resource being referred
  18772. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18773. type: string
  18774. required:
  18775. - name
  18776. type: object
  18777. required:
  18778. - project
  18779. type: object
  18780. cloudflare:
  18781. description: Use the Cloudflare API to manage DNS01
  18782. challenge records.
  18783. properties:
  18784. apiKeySecretRef:
  18785. description: 'API key to use to authenticate with
  18786. Cloudflare. Note: using an API token to authenticate
  18787. is now the recommended method as it allows greater
  18788. control of permissions.'
  18789. properties:
  18790. key:
  18791. description: The key of the entry in the Secret
  18792. resource's `data` field to be used. Some instances
  18793. of this field may be defaulted, in others
  18794. it may be required.
  18795. type: string
  18796. name:
  18797. description: 'Name of the resource being referred
  18798. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18799. type: string
  18800. required:
  18801. - name
  18802. type: object
  18803. apiTokenSecretRef:
  18804. description: API token used to authenticate with
  18805. Cloudflare.
  18806. properties:
  18807. key:
  18808. description: The key of the entry in the Secret
  18809. resource's `data` field to be used. Some instances
  18810. of this field may be defaulted, in others
  18811. it may be required.
  18812. type: string
  18813. name:
  18814. description: 'Name of the resource being referred
  18815. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18816. type: string
  18817. required:
  18818. - name
  18819. type: object
  18820. email:
  18821. description: Email of the account, only required
  18822. when using API key based authentication.
  18823. type: string
  18824. type: object
  18825. cnameStrategy:
  18826. description: CNAMEStrategy configures how the DNS01
  18827. provider should handle CNAME records when found in
  18828. DNS zones.
  18829. enum:
  18830. - None
  18831. - Follow
  18832. type: string
  18833. digitalocean:
  18834. description: Use the DigitalOcean DNS API to manage
  18835. DNS01 challenge records.
  18836. properties:
  18837. tokenSecretRef:
  18838. description: A reference to a specific 'key' within
  18839. a Secret resource. In some instances, `key` is
  18840. a required field.
  18841. properties:
  18842. key:
  18843. description: The key of the entry in the Secret
  18844. resource's `data` field to be used. Some instances
  18845. of this field may be defaulted, in others
  18846. it may be required.
  18847. type: string
  18848. name:
  18849. description: 'Name of the resource being referred
  18850. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18851. type: string
  18852. required:
  18853. - name
  18854. type: object
  18855. required:
  18856. - tokenSecretRef
  18857. type: object
  18858. rfc2136:
  18859. description: Use RFC2136 ("Dynamic Updates in the Domain
  18860. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  18861. to manage DNS01 challenge records.
  18862. properties:
  18863. nameserver:
  18864. description: The IP address or hostname of an authoritative
  18865. DNS server supporting RFC2136 in the form host:port.
  18866. If the host is an IPv6 address it must be enclosed
  18867. in square brackets (e.g [2001:db8::1]) ; port
  18868. is optional. This field is required.
  18869. type: string
  18870. tsigAlgorithm:
  18871. description: 'The TSIG Algorithm configured in the
  18872. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  18873. and ``tsigKeyName`` are defined. Supported values
  18874. are (case-insensitive): ``HMACMD5`` (default),
  18875. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  18876. type: string
  18877. tsigKeyName:
  18878. description: The TSIG Key name configured in the
  18879. DNS. If ``tsigSecretSecretRef`` is defined, this
  18880. field is required.
  18881. type: string
  18882. tsigSecretSecretRef:
  18883. description: The name of the secret containing the
  18884. TSIG value. If ``tsigKeyName`` is defined, this
  18885. field is required.
  18886. properties:
  18887. key:
  18888. description: The key of the entry in the Secret
  18889. resource's `data` field to be used. Some instances
  18890. of this field may be defaulted, in others
  18891. it may be required.
  18892. type: string
  18893. name:
  18894. description: 'Name of the resource being referred
  18895. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18896. type: string
  18897. required:
  18898. - name
  18899. type: object
  18900. required:
  18901. - nameserver
  18902. type: object
  18903. route53:
  18904. description: Use the AWS Route53 API to manage DNS01
  18905. challenge records.
  18906. properties:
  18907. accessKeyID:
  18908. description: 'The AccessKeyID is used for authentication.
  18909. If not set we fall-back to using env vars, shared
  18910. credentials file or AWS Instance metadata see:
  18911. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  18912. type: string
  18913. hostedZoneID:
  18914. description: If set, the provider will manage only
  18915. this zone in Route53 and will not do an lookup
  18916. using the route53:ListHostedZonesByName api call.
  18917. type: string
  18918. region:
  18919. description: Always set the region when using AccessKeyID
  18920. and SecretAccessKey
  18921. type: string
  18922. role:
  18923. description: Role is a Role ARN which the Route53
  18924. provider will assume using either the explicit
  18925. credentials AccessKeyID/SecretAccessKey or the
  18926. inferred credentials from environment variables,
  18927. shared credentials file or AWS Instance metadata
  18928. type: string
  18929. secretAccessKeySecretRef:
  18930. description: The SecretAccessKey is used for authentication.
  18931. If not set we fall-back to using env vars, shared
  18932. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  18933. properties:
  18934. key:
  18935. description: The key of the entry in the Secret
  18936. resource's `data` field to be used. Some instances
  18937. of this field may be defaulted, in others
  18938. it may be required.
  18939. type: string
  18940. name:
  18941. description: 'Name of the resource being referred
  18942. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18943. type: string
  18944. required:
  18945. - name
  18946. type: object
  18947. required:
  18948. - region
  18949. type: object
  18950. webhook:
  18951. description: Configure an external webhook based DNS01
  18952. challenge solver to manage DNS01 challenge records.
  18953. properties:
  18954. config:
  18955. description: Additional configuration that should
  18956. be passed to the webhook apiserver when challenges
  18957. are processed. This can contain arbitrary JSON
  18958. data. Secret values should not be specified in
  18959. this stanza. If secret values are needed (e.g.
  18960. credentials for a DNS service), you should use
  18961. a SecretKeySelector to reference a Secret resource.
  18962. For details on the schema of this field, consult
  18963. the webhook provider implementation's documentation.
  18964. x-kubernetes-preserve-unknown-fields: true
  18965. groupName:
  18966. description: The API group name that should be used
  18967. when POSTing ChallengePayload resources to the
  18968. webhook apiserver. This should be the same as
  18969. the GroupName specified in the webhook provider
  18970. implementation.
  18971. type: string
  18972. solverName:
  18973. description: The name of the solver to use, as defined
  18974. in the webhook provider implementation. This will
  18975. typically be the name of the provider, e.g. 'cloudflare'.
  18976. type: string
  18977. required:
  18978. - groupName
  18979. - solverName
  18980. type: object
  18981. type: object
  18982. http01:
  18983. description: Configures cert-manager to attempt to complete
  18984. authorizations by performing the HTTP01 challenge flow.
  18985. It is not possible to obtain certificates for wildcard
  18986. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  18987. mechanism.
  18988. properties:
  18989. ingress:
  18990. description: The ingress based HTTP01 challenge solver
  18991. will solve challenges by creating or modifying Ingress
  18992. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  18993. to 'challenge solver' pods that are provisioned by
  18994. cert-manager for each Challenge to be completed.
  18995. properties:
  18996. class:
  18997. description: The ingress class to use when creating
  18998. Ingress resources to solve ACME challenges that
  18999. use this challenge solver. Only one of 'class'
  19000. or 'name' may be specified.
  19001. type: string
  19002. ingressTemplate:
  19003. description: Optional ingress template used to configure
  19004. the ACME challenge solver ingress used for HTTP01
  19005. challenges
  19006. properties:
  19007. metadata:
  19008. description: ObjectMeta overrides for the ingress
  19009. used to solve HTTP01 challenges. Only the
  19010. 'labels' and 'annotations' fields may be set.
  19011. If labels or annotations overlap with in-built
  19012. values, the values here will override the
  19013. in-built values.
  19014. properties:
  19015. annotations:
  19016. additionalProperties:
  19017. type: string
  19018. description: Annotations that should be
  19019. added to the created ACME HTTP01 solver
  19020. ingress.
  19021. type: object
  19022. labels:
  19023. additionalProperties:
  19024. type: string
  19025. description: Labels that should be added
  19026. to the created ACME HTTP01 solver ingress.
  19027. type: object
  19028. type: object
  19029. type: object
  19030. name:
  19031. description: The name of the ingress resource that
  19032. should have ACME challenge solving routes inserted
  19033. into it in order to solve HTTP01 challenges. This
  19034. is typically used in conjunction with ingress
  19035. controllers like ingress-gce, which maintains
  19036. a 1:1 mapping between external IPs and ingress
  19037. resources.
  19038. type: string
  19039. podTemplate:
  19040. description: Optional pod template used to configure
  19041. the ACME challenge solver pods used for HTTP01
  19042. challenges
  19043. properties:
  19044. metadata:
  19045. description: ObjectMeta overrides for the pod
  19046. used to solve HTTP01 challenges. Only the
  19047. 'labels' and 'annotations' fields may be set.
  19048. If labels or annotations overlap with in-built
  19049. values, the values here will override the
  19050. in-built values.
  19051. properties:
  19052. annotations:
  19053. additionalProperties:
  19054. type: string
  19055. description: Annotations that should be
  19056. added to the create ACME HTTP01 solver
  19057. pods.
  19058. type: object
  19059. labels:
  19060. additionalProperties:
  19061. type: string
  19062. description: Labels that should be added
  19063. to the created ACME HTTP01 solver pods.
  19064. type: object
  19065. type: object
  19066. spec:
  19067. description: PodSpec defines overrides for the
  19068. HTTP01 challenge solver pod. Only the 'priorityClassName',
  19069. 'nodeSelector', 'affinity', 'serviceAccountName'
  19070. and 'tolerations' fields are supported currently.
  19071. All other fields will be ignored.
  19072. properties:
  19073. affinity:
  19074. description: If specified, the pod's scheduling
  19075. constraints
  19076. properties:
  19077. nodeAffinity:
  19078. description: Describes node affinity
  19079. scheduling rules for the pod.
  19080. properties:
  19081. preferredDuringSchedulingIgnoredDuringExecution:
  19082. description: The scheduler will
  19083. prefer to schedule pods to nodes
  19084. that satisfy the affinity expressions
  19085. specified by this field, but it
  19086. may choose a node that violates
  19087. one or more of the expressions.
  19088. The node that is most preferred
  19089. is the one with the greatest sum
  19090. of weights, i.e. for each node
  19091. that meets all of the scheduling
  19092. requirements (resource request,
  19093. requiredDuringScheduling affinity
  19094. expressions, etc.), compute a
  19095. sum by iterating through the elements
  19096. of this field and adding "weight"
  19097. to the sum if the node matches
  19098. the corresponding matchExpressions;
  19099. the node(s) with the highest sum
  19100. are the most preferred.
  19101. items:
  19102. description: An empty preferred
  19103. scheduling term matches all
  19104. objects with implicit weight
  19105. 0 (i.e. it's a no-op). A null
  19106. preferred scheduling term matches
  19107. no objects (i.e. is also a no-op).
  19108. properties:
  19109. preference:
  19110. description: A node selector
  19111. term, associated with the
  19112. corresponding weight.
  19113. properties:
  19114. matchExpressions:
  19115. description: A list of
  19116. node selector requirements
  19117. by node's labels.
  19118. items:
  19119. description: A node
  19120. selector requirement
  19121. is a selector that
  19122. contains values, a
  19123. key, and an operator
  19124. that relates the key
  19125. and values.
  19126. properties:
  19127. key:
  19128. description: The
  19129. label key that
  19130. the selector applies
  19131. to.
  19132. type: string
  19133. operator:
  19134. description: Represents
  19135. a key's relationship
  19136. to a set of values.
  19137. Valid operators
  19138. are In, NotIn,
  19139. Exists, DoesNotExist.
  19140. Gt, and Lt.
  19141. type: string
  19142. values:
  19143. description: An
  19144. array of string
  19145. values. If the
  19146. operator is In
  19147. or NotIn, the
  19148. values array must
  19149. be non-empty.
  19150. If the operator
  19151. is Exists or DoesNotExist,
  19152. the values array
  19153. must be empty.
  19154. If the operator
  19155. is Gt or Lt, the
  19156. values array must
  19157. have a single
  19158. element, which
  19159. will be interpreted
  19160. as an integer.
  19161. This array is
  19162. replaced during
  19163. a strategic merge
  19164. patch.
  19165. items:
  19166. type: string
  19167. type: array
  19168. required:
  19169. - key
  19170. - operator
  19171. type: object
  19172. type: array
  19173. matchFields:
  19174. description: A list of
  19175. node selector requirements
  19176. by node's fields.
  19177. items:
  19178. description: A node
  19179. selector requirement
  19180. is a selector that
  19181. contains values, a
  19182. key, and an operator
  19183. that relates the key
  19184. and values.
  19185. properties:
  19186. key:
  19187. description: The
  19188. label key that
  19189. the selector applies
  19190. to.
  19191. type: string
  19192. operator:
  19193. description: Represents
  19194. a key's relationship
  19195. to a set of values.
  19196. Valid operators
  19197. are In, NotIn,
  19198. Exists, DoesNotExist.
  19199. Gt, and Lt.
  19200. type: string
  19201. values:
  19202. description: An
  19203. array of string
  19204. values. If the
  19205. operator is In
  19206. or NotIn, the
  19207. values array must
  19208. be non-empty.
  19209. If the operator
  19210. is Exists or DoesNotExist,
  19211. the values array
  19212. must be empty.
  19213. If the operator
  19214. is Gt or Lt, the
  19215. values array must
  19216. have a single
  19217. element, which
  19218. will be interpreted
  19219. as an integer.
  19220. This array is
  19221. replaced during
  19222. a strategic merge
  19223. patch.
  19224. items:
  19225. type: string
  19226. type: array
  19227. required:
  19228. - key
  19229. - operator
  19230. type: object
  19231. type: array
  19232. type: object
  19233. weight:
  19234. description: Weight associated
  19235. with matching the corresponding
  19236. nodeSelectorTerm, in the
  19237. range 1-100.
  19238. format: int32
  19239. type: integer
  19240. required:
  19241. - preference
  19242. - weight
  19243. type: object
  19244. type: array
  19245. requiredDuringSchedulingIgnoredDuringExecution:
  19246. description: If the affinity requirements
  19247. specified by this field are not
  19248. met at scheduling time, the pod
  19249. will not be scheduled onto the
  19250. node. If the affinity requirements
  19251. specified by this field cease
  19252. to be met at some point during
  19253. pod execution (e.g. due to an
  19254. update), the system may or may
  19255. not try to eventually evict the
  19256. pod from its node.
  19257. properties:
  19258. nodeSelectorTerms:
  19259. description: Required. A list
  19260. of node selector terms. The
  19261. terms are ORed.
  19262. items:
  19263. description: A null or empty
  19264. node selector term matches
  19265. no objects. The requirements
  19266. of them are ANDed. The TopologySelectorTerm
  19267. type implements a subset
  19268. of the NodeSelectorTerm.
  19269. properties:
  19270. matchExpressions:
  19271. description: A list of
  19272. node selector requirements
  19273. by node's labels.
  19274. items:
  19275. description: A node
  19276. selector requirement
  19277. is a selector that
  19278. contains values, a
  19279. key, and an operator
  19280. that relates the key
  19281. and values.
  19282. properties:
  19283. key:
  19284. description: The
  19285. label key that
  19286. the selector applies
  19287. to.
  19288. type: string
  19289. operator:
  19290. description: Represents
  19291. a key's relationship
  19292. to a set of values.
  19293. Valid operators
  19294. are In, NotIn,
  19295. Exists, DoesNotExist.
  19296. Gt, and Lt.
  19297. type: string
  19298. values:
  19299. description: An
  19300. array of string
  19301. values. If the
  19302. operator is In
  19303. or NotIn, the
  19304. values array must
  19305. be non-empty.
  19306. If the operator
  19307. is Exists or DoesNotExist,
  19308. the values array
  19309. must be empty.
  19310. If the operator
  19311. is Gt or Lt, the
  19312. values array must
  19313. have a single
  19314. element, which
  19315. will be interpreted
  19316. as an integer.
  19317. This array is
  19318. replaced during
  19319. a strategic merge
  19320. patch.
  19321. items:
  19322. type: string
  19323. type: array
  19324. required:
  19325. - key
  19326. - operator
  19327. type: object
  19328. type: array
  19329. matchFields:
  19330. description: A list of
  19331. node selector requirements
  19332. by node's fields.
  19333. items:
  19334. description: A node
  19335. selector requirement
  19336. is a selector that
  19337. contains values, a
  19338. key, and an operator
  19339. that relates the key
  19340. and values.
  19341. properties:
  19342. key:
  19343. description: The
  19344. label key that
  19345. the selector applies
  19346. to.
  19347. type: string
  19348. operator:
  19349. description: Represents
  19350. a key's relationship
  19351. to a set of values.
  19352. Valid operators
  19353. are In, NotIn,
  19354. Exists, DoesNotExist.
  19355. Gt, and Lt.
  19356. type: string
  19357. values:
  19358. description: An
  19359. array of string
  19360. values. If the
  19361. operator is In
  19362. or NotIn, the
  19363. values array must
  19364. be non-empty.
  19365. If the operator
  19366. is Exists or DoesNotExist,
  19367. the values array
  19368. must be empty.
  19369. If the operator
  19370. is Gt or Lt, the
  19371. values array must
  19372. have a single
  19373. element, which
  19374. will be interpreted
  19375. as an integer.
  19376. This array is
  19377. replaced during
  19378. a strategic merge
  19379. patch.
  19380. items:
  19381. type: string
  19382. type: array
  19383. required:
  19384. - key
  19385. - operator
  19386. type: object
  19387. type: array
  19388. type: object
  19389. type: array
  19390. required:
  19391. - nodeSelectorTerms
  19392. type: object
  19393. type: object
  19394. podAffinity:
  19395. description: Describes pod affinity
  19396. scheduling rules (e.g. co-locate this
  19397. pod in the same node, zone, etc. as
  19398. some other pod(s)).
  19399. properties:
  19400. preferredDuringSchedulingIgnoredDuringExecution:
  19401. description: The scheduler will
  19402. prefer to schedule pods to nodes
  19403. that satisfy the affinity expressions
  19404. specified by this field, but it
  19405. may choose a node that violates
  19406. one or more of the expressions.
  19407. The node that is most preferred
  19408. is the one with the greatest sum
  19409. of weights, i.e. for each node
  19410. that meets all of the scheduling
  19411. requirements (resource request,
  19412. requiredDuringScheduling affinity
  19413. expressions, etc.), compute a
  19414. sum by iterating through the elements
  19415. of this field and adding "weight"
  19416. to the sum if the node has pods
  19417. which matches the corresponding
  19418. podAffinityTerm; the node(s) with
  19419. the highest sum are the most preferred.
  19420. items:
  19421. description: The weights of all
  19422. of the matched WeightedPodAffinityTerm
  19423. fields are added per-node to
  19424. find the most preferred node(s)
  19425. properties:
  19426. podAffinityTerm:
  19427. description: Required. A pod
  19428. affinity term, associated
  19429. with the corresponding weight.
  19430. properties:
  19431. labelSelector:
  19432. description: A label query
  19433. over a set of resources,
  19434. in this case pods.
  19435. properties:
  19436. matchExpressions:
  19437. description: matchExpressions
  19438. is a list of label
  19439. selector requirements.
  19440. The requirements
  19441. are ANDed.
  19442. items:
  19443. description: A label
  19444. selector requirement
  19445. is a selector
  19446. that contains
  19447. values, a key,
  19448. and an operator
  19449. that relates the
  19450. key and values.
  19451. properties:
  19452. key:
  19453. description: key
  19454. is the label
  19455. key that the
  19456. selector applies
  19457. to.
  19458. type: string
  19459. operator:
  19460. description: operator
  19461. represents
  19462. a key's relationship
  19463. to a set of
  19464. values. Valid
  19465. operators
  19466. are In, NotIn,
  19467. Exists and
  19468. DoesNotExist.
  19469. type: string
  19470. values:
  19471. description: values
  19472. is an array
  19473. of string
  19474. values. If
  19475. the operator
  19476. is In or NotIn,
  19477. the values
  19478. array must
  19479. be non-empty.
  19480. If the operator
  19481. is Exists
  19482. or DoesNotExist,
  19483. the values
  19484. array must
  19485. be empty.
  19486. This array
  19487. is replaced
  19488. during a strategic
  19489. merge patch.
  19490. items:
  19491. type: string
  19492. type: array
  19493. required:
  19494. - key
  19495. - operator
  19496. type: object
  19497. type: array
  19498. matchLabels:
  19499. additionalProperties:
  19500. type: string
  19501. description: matchLabels
  19502. is a map of {key,value}
  19503. pairs. A single
  19504. {key,value} in the
  19505. matchLabels map
  19506. is equivalent to
  19507. an element of matchExpressions,
  19508. whose key field
  19509. is "key", the operator
  19510. is "In", and the
  19511. values array contains
  19512. only "value". The
  19513. requirements are
  19514. ANDed.
  19515. type: object
  19516. type: object
  19517. namespaces:
  19518. description: namespaces
  19519. specifies which namespaces
  19520. the labelSelector applies
  19521. to (matches against);
  19522. null or empty list means
  19523. "this pod's namespace"
  19524. items:
  19525. type: string
  19526. type: array
  19527. topologyKey:
  19528. description: This pod
  19529. should be co-located
  19530. (affinity) or not co-located
  19531. (anti-affinity) with
  19532. the pods matching the
  19533. labelSelector in the
  19534. specified namespaces,
  19535. where co-located is
  19536. defined as running on
  19537. a node whose value of
  19538. the label with key topologyKey
  19539. matches that of any
  19540. node on which any of
  19541. the selected pods is
  19542. running. Empty topologyKey
  19543. is not allowed.
  19544. type: string
  19545. required:
  19546. - topologyKey
  19547. type: object
  19548. weight:
  19549. description: weight associated
  19550. with matching the corresponding
  19551. podAffinityTerm, in the
  19552. range 1-100.
  19553. format: int32
  19554. type: integer
  19555. required:
  19556. - podAffinityTerm
  19557. - weight
  19558. type: object
  19559. type: array
  19560. requiredDuringSchedulingIgnoredDuringExecution:
  19561. description: If the affinity requirements
  19562. specified by this field are not
  19563. met at scheduling time, the pod
  19564. will not be scheduled onto the
  19565. node. If the affinity requirements
  19566. specified by this field cease
  19567. to be met at some point during
  19568. pod execution (e.g. due to a pod
  19569. label update), the system may
  19570. or may not try to eventually evict
  19571. the pod from its node. When there
  19572. are multiple elements, the lists
  19573. of nodes corresponding to each
  19574. podAffinityTerm are intersected,
  19575. i.e. all terms must be satisfied.
  19576. items:
  19577. description: Defines a set of
  19578. pods (namely those matching
  19579. the labelSelector relative to
  19580. the given namespace(s)) that
  19581. this pod should be co-located
  19582. (affinity) or not co-located
  19583. (anti-affinity) with, where
  19584. co-located is defined as running
  19585. on a node whose value of the
  19586. label with key <topologyKey>
  19587. matches that of any node on
  19588. which a pod of the set of pods
  19589. is running
  19590. properties:
  19591. labelSelector:
  19592. description: A label query
  19593. over a set of resources,
  19594. in this case pods.
  19595. properties:
  19596. matchExpressions:
  19597. description: matchExpressions
  19598. is a list of label selector
  19599. requirements. The requirements
  19600. are ANDed.
  19601. items:
  19602. description: A label
  19603. selector requirement
  19604. is a selector that
  19605. contains values, a
  19606. key, and an operator
  19607. that relates the key
  19608. and values.
  19609. properties:
  19610. key:
  19611. description: key
  19612. is the label key
  19613. that the selector
  19614. applies to.
  19615. type: string
  19616. operator:
  19617. description: operator
  19618. represents a key's
  19619. relationship to
  19620. a set of values.
  19621. Valid operators
  19622. are In, NotIn,
  19623. Exists and DoesNotExist.
  19624. type: string
  19625. values:
  19626. description: values
  19627. is an array of
  19628. string values.
  19629. If the operator
  19630. is In or NotIn,
  19631. the values array
  19632. must be non-empty.
  19633. If the operator
  19634. is Exists or DoesNotExist,
  19635. the values array
  19636. must be empty.
  19637. This array is
  19638. replaced during
  19639. a strategic merge
  19640. patch.
  19641. items:
  19642. type: string
  19643. type: array
  19644. required:
  19645. - key
  19646. - operator
  19647. type: object
  19648. type: array
  19649. matchLabels:
  19650. additionalProperties:
  19651. type: string
  19652. description: matchLabels
  19653. is a map of {key,value}
  19654. pairs. A single {key,value}
  19655. in the matchLabels map
  19656. is equivalent to an
  19657. element of matchExpressions,
  19658. whose key field is "key",
  19659. the operator is "In",
  19660. and the values array
  19661. contains only "value".
  19662. The requirements are
  19663. ANDed.
  19664. type: object
  19665. type: object
  19666. namespaces:
  19667. description: namespaces specifies
  19668. which namespaces the labelSelector
  19669. applies to (matches against);
  19670. null or empty list means
  19671. "this pod's namespace"
  19672. items:
  19673. type: string
  19674. type: array
  19675. topologyKey:
  19676. description: This pod should
  19677. be co-located (affinity)
  19678. or not co-located (anti-affinity)
  19679. with the pods matching the
  19680. labelSelector in the specified
  19681. namespaces, where co-located
  19682. is defined as running on
  19683. a node whose value of the
  19684. label with key topologyKey
  19685. matches that of any node
  19686. on which any of the selected
  19687. pods is running. Empty topologyKey
  19688. is not allowed.
  19689. type: string
  19690. required:
  19691. - topologyKey
  19692. type: object
  19693. type: array
  19694. type: object
  19695. podAntiAffinity:
  19696. description: Describes pod anti-affinity
  19697. scheduling rules (e.g. avoid putting
  19698. this pod in the same node, zone, etc.
  19699. as some other pod(s)).
  19700. properties:
  19701. preferredDuringSchedulingIgnoredDuringExecution:
  19702. description: The scheduler will
  19703. prefer to schedule pods to nodes
  19704. that satisfy the anti-affinity
  19705. expressions specified by this
  19706. field, but it may choose a node
  19707. that violates one or more of the
  19708. expressions. The node that is
  19709. most preferred is the one with
  19710. the greatest sum of weights, i.e.
  19711. for each node that meets all of
  19712. the scheduling requirements (resource
  19713. request, requiredDuringScheduling
  19714. anti-affinity expressions, etc.),
  19715. compute a sum by iterating through
  19716. the elements of this field and
  19717. adding "weight" to the sum if
  19718. the node has pods which matches
  19719. the corresponding podAffinityTerm;
  19720. the node(s) with the highest sum
  19721. are the most preferred.
  19722. items:
  19723. description: The weights of all
  19724. of the matched WeightedPodAffinityTerm
  19725. fields are added per-node to
  19726. find the most preferred node(s)
  19727. properties:
  19728. podAffinityTerm:
  19729. description: Required. A pod
  19730. affinity term, associated
  19731. with the corresponding weight.
  19732. properties:
  19733. labelSelector:
  19734. description: A label query
  19735. over a set of resources,
  19736. in this case pods.
  19737. properties:
  19738. matchExpressions:
  19739. description: matchExpressions
  19740. is a list of label
  19741. selector requirements.
  19742. The requirements
  19743. are ANDed.
  19744. items:
  19745. description: A label
  19746. selector requirement
  19747. is a selector
  19748. that contains
  19749. values, a key,
  19750. and an operator
  19751. that relates the
  19752. key and values.
  19753. properties:
  19754. key:
  19755. description: key
  19756. is the label
  19757. key that the
  19758. selector applies
  19759. to.
  19760. type: string
  19761. operator:
  19762. description: operator
  19763. represents
  19764. a key's relationship
  19765. to a set of
  19766. values. Valid
  19767. operators
  19768. are In, NotIn,
  19769. Exists and
  19770. DoesNotExist.
  19771. type: string
  19772. values:
  19773. description: values
  19774. is an array
  19775. of string
  19776. values. If
  19777. the operator
  19778. is In or NotIn,
  19779. the values
  19780. array must
  19781. be non-empty.
  19782. If the operator
  19783. is Exists
  19784. or DoesNotExist,
  19785. the values
  19786. array must
  19787. be empty.
  19788. This array
  19789. is replaced
  19790. during a strategic
  19791. merge patch.
  19792. items:
  19793. type: string
  19794. type: array
  19795. required:
  19796. - key
  19797. - operator
  19798. type: object
  19799. type: array
  19800. matchLabels:
  19801. additionalProperties:
  19802. type: string
  19803. description: matchLabels
  19804. is a map of {key,value}
  19805. pairs. A single
  19806. {key,value} in the
  19807. matchLabels map
  19808. is equivalent to
  19809. an element of matchExpressions,
  19810. whose key field
  19811. is "key", the operator
  19812. is "In", and the
  19813. values array contains
  19814. only "value". The
  19815. requirements are
  19816. ANDed.
  19817. type: object
  19818. type: object
  19819. namespaces:
  19820. description: namespaces
  19821. specifies which namespaces
  19822. the labelSelector applies
  19823. to (matches against);
  19824. null or empty list means
  19825. "this pod's namespace"
  19826. items:
  19827. type: string
  19828. type: array
  19829. topologyKey:
  19830. description: This pod
  19831. should be co-located
  19832. (affinity) or not co-located
  19833. (anti-affinity) with
  19834. the pods matching the
  19835. labelSelector in the
  19836. specified namespaces,
  19837. where co-located is
  19838. defined as running on
  19839. a node whose value of
  19840. the label with key topologyKey
  19841. matches that of any
  19842. node on which any of
  19843. the selected pods is
  19844. running. Empty topologyKey
  19845. is not allowed.
  19846. type: string
  19847. required:
  19848. - topologyKey
  19849. type: object
  19850. weight:
  19851. description: weight associated
  19852. with matching the corresponding
  19853. podAffinityTerm, in the
  19854. range 1-100.
  19855. format: int32
  19856. type: integer
  19857. required:
  19858. - podAffinityTerm
  19859. - weight
  19860. type: object
  19861. type: array
  19862. requiredDuringSchedulingIgnoredDuringExecution:
  19863. description: If the anti-affinity
  19864. requirements specified by this
  19865. field are not met at scheduling
  19866. time, the pod will not be scheduled
  19867. onto the node. If the anti-affinity
  19868. requirements specified by this
  19869. field cease to be met at some
  19870. point during pod execution (e.g.
  19871. due to a pod label update), the
  19872. system may or may not try to eventually
  19873. evict the pod from its node. When
  19874. there are multiple elements, the
  19875. lists of nodes corresponding to
  19876. each podAffinityTerm are intersected,
  19877. i.e. all terms must be satisfied.
  19878. items:
  19879. description: Defines a set of
  19880. pods (namely those matching
  19881. the labelSelector relative to
  19882. the given namespace(s)) that
  19883. this pod should be co-located
  19884. (affinity) or not co-located
  19885. (anti-affinity) with, where
  19886. co-located is defined as running
  19887. on a node whose value of the
  19888. label with key <topologyKey>
  19889. matches that of any node on
  19890. which a pod of the set of pods
  19891. is running
  19892. properties:
  19893. labelSelector:
  19894. description: A label query
  19895. over a set of resources,
  19896. in this case pods.
  19897. properties:
  19898. matchExpressions:
  19899. description: matchExpressions
  19900. is a list of label selector
  19901. requirements. The requirements
  19902. are ANDed.
  19903. items:
  19904. description: A label
  19905. selector requirement
  19906. is a selector that
  19907. contains values, a
  19908. key, and an operator
  19909. that relates the key
  19910. and values.
  19911. properties:
  19912. key:
  19913. description: key
  19914. is the label key
  19915. that the selector
  19916. applies to.
  19917. type: string
  19918. operator:
  19919. description: operator
  19920. represents a key's
  19921. relationship to
  19922. a set of values.
  19923. Valid operators
  19924. are In, NotIn,
  19925. Exists and DoesNotExist.
  19926. type: string
  19927. values:
  19928. description: values
  19929. is an array of
  19930. string values.
  19931. If the operator
  19932. is In or NotIn,
  19933. the values array
  19934. must be non-empty.
  19935. If the operator
  19936. is Exists or DoesNotExist,
  19937. the values array
  19938. must be empty.
  19939. This array is
  19940. replaced during
  19941. a strategic merge
  19942. patch.
  19943. items:
  19944. type: string
  19945. type: array
  19946. required:
  19947. - key
  19948. - operator
  19949. type: object
  19950. type: array
  19951. matchLabels:
  19952. additionalProperties:
  19953. type: string
  19954. description: matchLabels
  19955. is a map of {key,value}
  19956. pairs. A single {key,value}
  19957. in the matchLabels map
  19958. is equivalent to an
  19959. element of matchExpressions,
  19960. whose key field is "key",
  19961. the operator is "In",
  19962. and the values array
  19963. contains only "value".
  19964. The requirements are
  19965. ANDed.
  19966. type: object
  19967. type: object
  19968. namespaces:
  19969. description: namespaces specifies
  19970. which namespaces the labelSelector
  19971. applies to (matches against);
  19972. null or empty list means
  19973. "this pod's namespace"
  19974. items:
  19975. type: string
  19976. type: array
  19977. topologyKey:
  19978. description: This pod should
  19979. be co-located (affinity)
  19980. or not co-located (anti-affinity)
  19981. with the pods matching the
  19982. labelSelector in the specified
  19983. namespaces, where co-located
  19984. is defined as running on
  19985. a node whose value of the
  19986. label with key topologyKey
  19987. matches that of any node
  19988. on which any of the selected
  19989. pods is running. Empty topologyKey
  19990. is not allowed.
  19991. type: string
  19992. required:
  19993. - topologyKey
  19994. type: object
  19995. type: array
  19996. type: object
  19997. type: object
  19998. nodeSelector:
  19999. additionalProperties:
  20000. type: string
  20001. description: 'NodeSelector is a selector
  20002. which must be true for the pod to fit
  20003. on a node. Selector which must match a
  20004. node''s labels for the pod to be scheduled
  20005. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  20006. type: object
  20007. priorityClassName:
  20008. description: If specified, the pod's priorityClassName.
  20009. type: string
  20010. serviceAccountName:
  20011. description: If specified, the pod's service
  20012. account
  20013. type: string
  20014. tolerations:
  20015. description: If specified, the pod's tolerations.
  20016. items:
  20017. description: The pod this Toleration is
  20018. attached to tolerates any taint that
  20019. matches the triple <key,value,effect>
  20020. using the matching operator <operator>.
  20021. properties:
  20022. effect:
  20023. description: Effect indicates the
  20024. taint effect to match. Empty means
  20025. match all taint effects. When specified,
  20026. allowed values are NoSchedule, PreferNoSchedule
  20027. and NoExecute.
  20028. type: string
  20029. key:
  20030. description: Key is the taint key
  20031. that the toleration applies to.
  20032. Empty means match all taint keys.
  20033. If the key is empty, operator must
  20034. be Exists; this combination means
  20035. to match all values and all keys.
  20036. type: string
  20037. operator:
  20038. description: Operator represents a
  20039. key's relationship to the value.
  20040. Valid operators are Exists and Equal.
  20041. Defaults to Equal. Exists is equivalent
  20042. to wildcard for value, so that a
  20043. pod can tolerate all taints of a
  20044. particular category.
  20045. type: string
  20046. tolerationSeconds:
  20047. description: TolerationSeconds represents
  20048. the period of time the toleration
  20049. (which must be of effect NoExecute,
  20050. otherwise this field is ignored)
  20051. tolerates the taint. By default,
  20052. it is not set, which means tolerate
  20053. the taint forever (do not evict).
  20054. Zero and negative values will be
  20055. treated as 0 (evict immediately)
  20056. by the system.
  20057. format: int64
  20058. type: integer
  20059. value:
  20060. description: Value is the taint value
  20061. the toleration matches to. If the
  20062. operator is Exists, the value should
  20063. be empty, otherwise just a regular
  20064. string.
  20065. type: string
  20066. type: object
  20067. type: array
  20068. type: object
  20069. type: object
  20070. serviceType:
  20071. description: Optional service type for Kubernetes
  20072. solver service
  20073. type: string
  20074. type: object
  20075. type: object
  20076. selector:
  20077. description: Selector selects a set of DNSNames on the Certificate
  20078. resource that should be solved using this challenge solver.
  20079. If not specified, the solver will be treated as the 'default'
  20080. solver with the lowest priority, i.e. if any other solver
  20081. has a more specific match, it will be used instead.
  20082. properties:
  20083. dnsNames:
  20084. description: List of DNSNames that this solver will
  20085. be used to solve. If specified and a match is found,
  20086. a dnsNames selector will take precedence over a dnsZones
  20087. selector. If multiple solvers match with the same
  20088. dnsNames value, the solver with the most matching
  20089. labels in matchLabels will be selected. If neither
  20090. has more matches, the solver defined earlier in the
  20091. list will be selected.
  20092. items:
  20093. type: string
  20094. type: array
  20095. dnsZones:
  20096. description: List of DNSZones that this solver will
  20097. be used to solve. The most specific DNS zone match
  20098. specified here will take precedence over other DNS
  20099. zone matches, so a solver specifying sys.example.com
  20100. will be selected over one specifying example.com for
  20101. the domain www.sys.example.com. If multiple solvers
  20102. match with the same dnsZones value, the solver with
  20103. the most matching labels in matchLabels will be selected.
  20104. If neither has more matches, the solver defined earlier
  20105. in the list will be selected.
  20106. items:
  20107. type: string
  20108. type: array
  20109. matchLabels:
  20110. additionalProperties:
  20111. type: string
  20112. description: A label selector that is used to refine
  20113. the set of certificate's that this challenge solver
  20114. will apply to.
  20115. type: object
  20116. type: object
  20117. type: object
  20118. type: array
  20119. required:
  20120. - privateKeySecretRef
  20121. - server
  20122. type: object
  20123. ca:
  20124. description: CA configures this issuer to sign certificates using
  20125. a signing CA keypair stored in a Secret resource. This is used to
  20126. build internal PKIs that are managed by cert-manager.
  20127. properties:
  20128. crlDistributionPoints:
  20129. description: The CRL distribution points is an X.509 v3 certificate
  20130. extension which identifies the location of the CRL from which
  20131. the revocation of this certificate can be checked. If not set,
  20132. certificates will be issued without distribution points set.
  20133. items:
  20134. type: string
  20135. type: array
  20136. secretName:
  20137. description: SecretName is the name of the secret used to sign
  20138. Certificates issued by this Issuer.
  20139. type: string
  20140. required:
  20141. - secretName
  20142. type: object
  20143. selfSigned:
  20144. description: SelfSigned configures this issuer to 'self sign' certificates
  20145. using the private key used to create the CertificateRequest object.
  20146. properties:
  20147. crlDistributionPoints:
  20148. description: The CRL distribution points is an X.509 v3 certificate
  20149. extension which identifies the location of the CRL from which
  20150. the revocation of this certificate can be checked. If not set
  20151. certificate will be issued without CDP. Values are strings.
  20152. items:
  20153. type: string
  20154. type: array
  20155. type: object
  20156. vault:
  20157. description: Vault configures this issuer to sign certificates using
  20158. a HashiCorp Vault PKI backend.
  20159. properties:
  20160. auth:
  20161. description: Auth configures how cert-manager authenticates with
  20162. the Vault server.
  20163. properties:
  20164. appRole:
  20165. description: AppRole authenticates with Vault using the App
  20166. Role auth mechanism, with the role and secret stored in
  20167. a Kubernetes Secret resource.
  20168. properties:
  20169. path:
  20170. description: 'Path where the App Role authentication backend
  20171. is mounted in Vault, e.g: "approle"'
  20172. type: string
  20173. roleId:
  20174. description: RoleID configured in the App Role authentication
  20175. backend when setting up the authentication backend in
  20176. Vault.
  20177. type: string
  20178. secretRef:
  20179. description: Reference to a key in a Secret that contains
  20180. the App Role secret used to authenticate with Vault.
  20181. The `key` field must be specified and denotes which
  20182. entry within the Secret resource is used as the app
  20183. role secret.
  20184. properties:
  20185. key:
  20186. description: The key of the entry in the Secret resource's
  20187. `data` field to be used. Some instances of this
  20188. field may be defaulted, in others it may be required.
  20189. type: string
  20190. name:
  20191. description: 'Name of the resource being referred
  20192. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20193. type: string
  20194. required:
  20195. - name
  20196. type: object
  20197. required:
  20198. - path
  20199. - roleId
  20200. - secretRef
  20201. type: object
  20202. kubernetes:
  20203. description: Kubernetes authenticates with Vault by passing
  20204. the ServiceAccount token stored in the named Secret resource
  20205. to the Vault server.
  20206. properties:
  20207. mountPath:
  20208. description: The Vault mountPath here is the mount path
  20209. to use when authenticating with Vault. For example,
  20210. setting a value to `/v1/auth/foo`, will use the path
  20211. `/v1/auth/foo/login` to authenticate with Vault. If
  20212. unspecified, the default value "/v1/auth/kubernetes"
  20213. will be used.
  20214. type: string
  20215. role:
  20216. description: A required field containing the Vault Role
  20217. to assume. A Role binds a Kubernetes ServiceAccount
  20218. with a set of Vault policies.
  20219. type: string
  20220. secretRef:
  20221. description: The required Secret field containing a Kubernetes
  20222. ServiceAccount JWT used for authenticating with Vault.
  20223. Use of 'ambient credentials' is not supported.
  20224. properties:
  20225. key:
  20226. description: The key of the entry in the Secret resource's
  20227. `data` field to be used. Some instances of this
  20228. field may be defaulted, in others it may be required.
  20229. type: string
  20230. name:
  20231. description: 'Name of the resource being referred
  20232. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20233. type: string
  20234. required:
  20235. - name
  20236. type: object
  20237. required:
  20238. - role
  20239. - secretRef
  20240. type: object
  20241. tokenSecretRef:
  20242. description: TokenSecretRef authenticates with Vault by presenting
  20243. a token.
  20244. properties:
  20245. key:
  20246. description: The key of the entry in the Secret resource's
  20247. `data` field to be used. Some instances of this field
  20248. may be defaulted, in others it may be required.
  20249. type: string
  20250. name:
  20251. description: 'Name of the resource being referred to.
  20252. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20253. type: string
  20254. required:
  20255. - name
  20256. type: object
  20257. type: object
  20258. caBundle:
  20259. description: PEM encoded CA bundle used to validate Vault server
  20260. certificate. Only used if the Server URL is using HTTPS protocol.
  20261. This parameter is ignored for plain HTTP protocol connection.
  20262. If not set the system root certificates are used to validate
  20263. the TLS connection.
  20264. format: byte
  20265. type: string
  20266. namespace:
  20267. description: 'Name of the vault namespace. Namespaces is a set
  20268. of features within Vault Enterprise that allows Vault environments
  20269. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  20270. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  20271. type: string
  20272. path:
  20273. description: 'Path is the mount path of the Vault PKI backend''s
  20274. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  20275. type: string
  20276. server:
  20277. description: 'Server is the connection address for the Vault server,
  20278. e.g: "https://vault.example.com:8200".'
  20279. type: string
  20280. required:
  20281. - auth
  20282. - path
  20283. - server
  20284. type: object
  20285. venafi:
  20286. description: Venafi configures this issuer to sign certificates using
  20287. a Venafi TPP or Venafi Cloud policy zone.
  20288. properties:
  20289. cloud:
  20290. description: Cloud specifies the Venafi cloud configuration settings.
  20291. Only one of TPP or Cloud may be specified.
  20292. properties:
  20293. apiTokenSecretRef:
  20294. description: APITokenSecretRef is a secret key selector for
  20295. the Venafi Cloud API token.
  20296. properties:
  20297. key:
  20298. description: The key of the entry in the Secret resource's
  20299. `data` field to be used. Some instances of this field
  20300. may be defaulted, in others it may be required.
  20301. type: string
  20302. name:
  20303. description: 'Name of the resource being referred to.
  20304. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20305. type: string
  20306. required:
  20307. - name
  20308. type: object
  20309. url:
  20310. description: URL is the base URL for Venafi Cloud. Defaults
  20311. to "https://api.venafi.cloud/v1".
  20312. type: string
  20313. required:
  20314. - apiTokenSecretRef
  20315. type: object
  20316. tpp:
  20317. description: TPP specifies Trust Protection Platform configuration
  20318. settings. Only one of TPP or Cloud may be specified.
  20319. properties:
  20320. caBundle:
  20321. description: CABundle is a PEM encoded TLS certificate to
  20322. use to verify connections to the TPP instance. If specified,
  20323. system roots will not be used and the issuing CA for the
  20324. TPP instance must be verifiable using the provided root.
  20325. If not specified, the connection will be verified using
  20326. the cert-manager system root certificates.
  20327. format: byte
  20328. type: string
  20329. credentialsRef:
  20330. description: CredentialsRef is a reference to a Secret containing
  20331. the username and password for the TPP server. The secret
  20332. must contain two keys, 'username' and 'password'.
  20333. properties:
  20334. name:
  20335. description: 'Name of the resource being referred to.
  20336. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20337. type: string
  20338. required:
  20339. - name
  20340. type: object
  20341. url:
  20342. description: 'URL is the base URL for the vedsdk endpoint
  20343. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  20344. type: string
  20345. required:
  20346. - credentialsRef
  20347. - url
  20348. type: object
  20349. zone:
  20350. description: Zone is the Venafi Policy Zone to use for this issuer.
  20351. All requests made to the Venafi platform will be restricted
  20352. by the named zone policy. This field is required.
  20353. type: string
  20354. required:
  20355. - zone
  20356. type: object
  20357. type: object
  20358. status:
  20359. description: Status of the Issuer. This is set and managed automatically.
  20360. properties:
  20361. acme:
  20362. description: ACME specific status options. This field should only
  20363. be set if the Issuer is configured to use an ACME server to issue
  20364. certificates.
  20365. properties:
  20366. lastRegisteredEmail:
  20367. description: LastRegisteredEmail is the email associated with
  20368. the latest registered ACME account, in order to track changes
  20369. made to registered account associated with the Issuer
  20370. type: string
  20371. uri:
  20372. description: URI is the unique account identifier, which can also
  20373. be used to retrieve account details from the CA
  20374. type: string
  20375. type: object
  20376. conditions:
  20377. description: List of status conditions to indicate the status of a
  20378. CertificateRequest. Known condition types are `Ready`.
  20379. items:
  20380. description: IssuerCondition contains condition information for
  20381. an Issuer.
  20382. properties:
  20383. lastTransitionTime:
  20384. description: LastTransitionTime is the timestamp corresponding
  20385. to the last status change of this condition.
  20386. format: date-time
  20387. type: string
  20388. message:
  20389. description: Message is a human readable description of the
  20390. details of the last transition, complementing reason.
  20391. type: string
  20392. reason:
  20393. description: Reason is a brief machine readable explanation
  20394. for the condition's last transition.
  20395. type: string
  20396. status:
  20397. description: Status of the condition, one of ('True', 'False',
  20398. 'Unknown').
  20399. enum:
  20400. - "True"
  20401. - "False"
  20402. - Unknown
  20403. type: string
  20404. type:
  20405. description: Type of the condition, known values are ('Ready').
  20406. type: string
  20407. required:
  20408. - status
  20409. - type
  20410. type: object
  20411. type: array
  20412. type: object
  20413. type: object
  20414. served: true
  20415. storage: false
  20416. subresources:
  20417. status: {}
  20418. - additionalPrinterColumns:
  20419. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  20420. name: Ready
  20421. type: string
  20422. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  20423. name: Status
  20424. priority: 1
  20425. type: string
  20426. - description: CreationTimestamp is a timestamp representing the server time when
  20427. this object was created. It is not guaranteed to be set in happens-before
  20428. order across separate operations. Clients may not set this value. It is represented
  20429. in RFC3339 form and is in UTC.
  20430. jsonPath: .metadata.creationTimestamp
  20431. name: Age
  20432. type: date
  20433. name: v1beta1
  20434. schema:
  20435. openAPIV3Schema:
  20436. description: An Issuer represents a certificate issuing authority which can
  20437. be referenced as part of `issuerRef` fields. It is scoped to a single namespace
  20438. and can therefore only be referenced by resources within the same namespace.
  20439. properties:
  20440. apiVersion:
  20441. description: 'APIVersion defines the versioned schema of this representation
  20442. of an object. Servers should convert recognized schemas to the latest
  20443. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  20444. type: string
  20445. kind:
  20446. description: 'Kind is a string value representing the REST resource this
  20447. object represents. Servers may infer this from the endpoint the client
  20448. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  20449. type: string
  20450. metadata:
  20451. type: object
  20452. spec:
  20453. description: Desired state of the Issuer resource.
  20454. properties:
  20455. acme:
  20456. description: ACME configures this issuer to communicate with a RFC8555
  20457. (ACME) server to obtain signed x509 certificates.
  20458. properties:
  20459. disableAccountKeyGeneration:
  20460. description: Enables or disables generating a new ACME account
  20461. key. If true, the Issuer resource will *not* request a new account
  20462. but will expect the account key to be supplied via an existing
  20463. secret. If false, the cert-manager system will generate a new
  20464. ACME account key for the Issuer. Defaults to false.
  20465. type: boolean
  20466. email:
  20467. description: Email is the email address to be associated with
  20468. the ACME account. This field is optional, but it is strongly
  20469. recommended to be set. It will be used to contact you in case
  20470. of issues with your account or certificates, including expiry
  20471. notification emails. This field may be updated after the account
  20472. is initially registered.
  20473. type: string
  20474. externalAccountBinding:
  20475. description: ExternalAccountBinding is a reference to a CA external
  20476. account of the ACME server. If set, upon registration cert-manager
  20477. will attempt to associate the given external account credentials
  20478. with the registered ACME account.
  20479. properties:
  20480. keyAlgorithm:
  20481. description: keyAlgorithm is the MAC key algorithm that the
  20482. key is used for. Valid values are "HS256", "HS384" and "HS512".
  20483. enum:
  20484. - HS256
  20485. - HS384
  20486. - HS512
  20487. type: string
  20488. keyID:
  20489. description: keyID is the ID of the CA key that the External
  20490. Account is bound to.
  20491. type: string
  20492. keySecretRef:
  20493. description: keySecretRef is a Secret Key Selector referencing
  20494. a data item in a Kubernetes Secret which holds the symmetric
  20495. MAC key of the External Account Binding. The `key` is the
  20496. index string that is paired with the key data in the Secret
  20497. and should not be confused with the key data itself, or
  20498. indeed with the External Account Binding keyID above. The
  20499. secret key stored in the Secret **must** be un-padded, base64
  20500. URL encoded data.
  20501. properties:
  20502. key:
  20503. description: The key of the entry in the Secret resource's
  20504. `data` field to be used. Some instances of this field
  20505. may be defaulted, in others it may be required.
  20506. type: string
  20507. name:
  20508. description: 'Name of the resource being referred to.
  20509. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20510. type: string
  20511. required:
  20512. - name
  20513. type: object
  20514. required:
  20515. - keyAlgorithm
  20516. - keyID
  20517. - keySecretRef
  20518. type: object
  20519. preferredChain:
  20520. description: 'PreferredChain is the chain to use if the ACME server
  20521. outputs multiple. PreferredChain is no guarantee that this one
  20522. gets delivered by the ACME endpoint. For example, for Let''s
  20523. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  20524. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  20525. picks the first certificate bundle in the ACME alternative chains
  20526. that has a certificate with this value as its issuer''s CN'
  20527. maxLength: 64
  20528. type: string
  20529. privateKeySecretRef:
  20530. description: PrivateKey is the name of a Kubernetes Secret resource
  20531. that will be used to store the automatically generated ACME
  20532. account private key. Optionally, a `key` may be specified to
  20533. select a specific entry within the named Secret resource. If
  20534. `key` is not specified, a default of `tls.key` will be used.
  20535. properties:
  20536. key:
  20537. description: The key of the entry in the Secret resource's
  20538. `data` field to be used. Some instances of this field may
  20539. be defaulted, in others it may be required.
  20540. type: string
  20541. name:
  20542. description: 'Name of the resource being referred to. More
  20543. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20544. type: string
  20545. required:
  20546. - name
  20547. type: object
  20548. server:
  20549. description: 'Server is the URL used to access the ACME server''s
  20550. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  20551. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  20552. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  20553. type: string
  20554. skipTLSVerify:
  20555. description: Enables or disables validation of the ACME server
  20556. TLS certificate. If true, requests to the ACME server will not
  20557. have their TLS certificate validated (i.e. insecure connections
  20558. will be allowed). Only enable this option in development environments.
  20559. The cert-manager system installed roots will be used to verify
  20560. connections to the ACME server if this is false. Defaults to
  20561. false.
  20562. type: boolean
  20563. solvers:
  20564. description: 'Solvers is a list of challenge solvers that will
  20565. be used to solve ACME challenges for the matching domains. Solver
  20566. configurations must be provided in order to obtain certificates
  20567. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  20568. items:
  20569. description: Configures an issuer to solve challenges using
  20570. the specified options. Only one of HTTP01 or DNS01 may be
  20571. provided.
  20572. properties:
  20573. dns01:
  20574. description: Configures cert-manager to attempt to complete
  20575. authorizations by performing the DNS01 challenge flow.
  20576. properties:
  20577. acmeDNS:
  20578. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  20579. API to manage DNS01 challenge records.
  20580. properties:
  20581. accountSecretRef:
  20582. description: A reference to a specific 'key' within
  20583. a Secret resource. In some instances, `key` is
  20584. a required field.
  20585. properties:
  20586. key:
  20587. description: The key of the entry in the Secret
  20588. resource's `data` field to be used. Some instances
  20589. of this field may be defaulted, in others
  20590. it may be required.
  20591. type: string
  20592. name:
  20593. description: 'Name of the resource being referred
  20594. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20595. type: string
  20596. required:
  20597. - name
  20598. type: object
  20599. host:
  20600. type: string
  20601. required:
  20602. - accountSecretRef
  20603. - host
  20604. type: object
  20605. akamai:
  20606. description: Use the Akamai DNS zone management API
  20607. to manage DNS01 challenge records.
  20608. properties:
  20609. accessTokenSecretRef:
  20610. description: A reference to a specific 'key' within
  20611. a Secret resource. In some instances, `key` is
  20612. a required field.
  20613. properties:
  20614. key:
  20615. description: The key of the entry in the Secret
  20616. resource's `data` field to be used. Some instances
  20617. of this field may be defaulted, in others
  20618. it may be required.
  20619. type: string
  20620. name:
  20621. description: 'Name of the resource being referred
  20622. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20623. type: string
  20624. required:
  20625. - name
  20626. type: object
  20627. clientSecretSecretRef:
  20628. description: A reference to a specific 'key' within
  20629. a Secret resource. In some instances, `key` is
  20630. a required field.
  20631. properties:
  20632. key:
  20633. description: The key of the entry in the Secret
  20634. resource's `data` field to be used. Some instances
  20635. of this field may be defaulted, in others
  20636. it may be required.
  20637. type: string
  20638. name:
  20639. description: 'Name of the resource being referred
  20640. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20641. type: string
  20642. required:
  20643. - name
  20644. type: object
  20645. clientTokenSecretRef:
  20646. description: A reference to a specific 'key' within
  20647. a Secret resource. In some instances, `key` is
  20648. a required field.
  20649. properties:
  20650. key:
  20651. description: The key of the entry in the Secret
  20652. resource's `data` field to be used. Some instances
  20653. of this field may be defaulted, in others
  20654. it may be required.
  20655. type: string
  20656. name:
  20657. description: 'Name of the resource being referred
  20658. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20659. type: string
  20660. required:
  20661. - name
  20662. type: object
  20663. serviceConsumerDomain:
  20664. type: string
  20665. required:
  20666. - accessTokenSecretRef
  20667. - clientSecretSecretRef
  20668. - clientTokenSecretRef
  20669. - serviceConsumerDomain
  20670. type: object
  20671. azureDNS:
  20672. description: Use the Microsoft Azure DNS API to manage
  20673. DNS01 challenge records.
  20674. properties:
  20675. clientID:
  20676. description: if both this and ClientSecret are left
  20677. unset MSI will be used
  20678. type: string
  20679. clientSecretSecretRef:
  20680. description: if both this and ClientID are left
  20681. unset MSI will be used
  20682. properties:
  20683. key:
  20684. description: The key of the entry in the Secret
  20685. resource's `data` field to be used. Some instances
  20686. of this field may be defaulted, in others
  20687. it may be required.
  20688. type: string
  20689. name:
  20690. description: 'Name of the resource being referred
  20691. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20692. type: string
  20693. required:
  20694. - name
  20695. type: object
  20696. environment:
  20697. enum:
  20698. - AzurePublicCloud
  20699. - AzureChinaCloud
  20700. - AzureGermanCloud
  20701. - AzureUSGovernmentCloud
  20702. type: string
  20703. hostedZoneName:
  20704. type: string
  20705. resourceGroupName:
  20706. type: string
  20707. subscriptionID:
  20708. type: string
  20709. tenantID:
  20710. description: when specifying ClientID and ClientSecret
  20711. then this field is also needed
  20712. type: string
  20713. required:
  20714. - resourceGroupName
  20715. - subscriptionID
  20716. type: object
  20717. cloudDNS:
  20718. description: Use the Google Cloud DNS API to manage
  20719. DNS01 challenge records.
  20720. properties:
  20721. hostedZoneName:
  20722. description: HostedZoneName is an optional field
  20723. that tells cert-manager in which Cloud DNS zone
  20724. the challenge record has to be created. If left
  20725. empty cert-manager will automatically choose a
  20726. zone.
  20727. type: string
  20728. project:
  20729. type: string
  20730. serviceAccountSecretRef:
  20731. description: A reference to a specific 'key' within
  20732. a Secret resource. In some instances, `key` is
  20733. a required field.
  20734. properties:
  20735. key:
  20736. description: The key of the entry in the Secret
  20737. resource's `data` field to be used. Some instances
  20738. of this field may be defaulted, in others
  20739. it may be required.
  20740. type: string
  20741. name:
  20742. description: 'Name of the resource being referred
  20743. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20744. type: string
  20745. required:
  20746. - name
  20747. type: object
  20748. required:
  20749. - project
  20750. type: object
  20751. cloudflare:
  20752. description: Use the Cloudflare API to manage DNS01
  20753. challenge records.
  20754. properties:
  20755. apiKeySecretRef:
  20756. description: 'API key to use to authenticate with
  20757. Cloudflare. Note: using an API token to authenticate
  20758. is now the recommended method as it allows greater
  20759. control of permissions.'
  20760. properties:
  20761. key:
  20762. description: The key of the entry in the Secret
  20763. resource's `data` field to be used. Some instances
  20764. of this field may be defaulted, in others
  20765. it may be required.
  20766. type: string
  20767. name:
  20768. description: 'Name of the resource being referred
  20769. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20770. type: string
  20771. required:
  20772. - name
  20773. type: object
  20774. apiTokenSecretRef:
  20775. description: API token used to authenticate with
  20776. Cloudflare.
  20777. properties:
  20778. key:
  20779. description: The key of the entry in the Secret
  20780. resource's `data` field to be used. Some instances
  20781. of this field may be defaulted, in others
  20782. it may be required.
  20783. type: string
  20784. name:
  20785. description: 'Name of the resource being referred
  20786. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20787. type: string
  20788. required:
  20789. - name
  20790. type: object
  20791. email:
  20792. description: Email of the account, only required
  20793. when using API key based authentication.
  20794. type: string
  20795. type: object
  20796. cnameStrategy:
  20797. description: CNAMEStrategy configures how the DNS01
  20798. provider should handle CNAME records when found in
  20799. DNS zones.
  20800. enum:
  20801. - None
  20802. - Follow
  20803. type: string
  20804. digitalocean:
  20805. description: Use the DigitalOcean DNS API to manage
  20806. DNS01 challenge records.
  20807. properties:
  20808. tokenSecretRef:
  20809. description: A reference to a specific 'key' within
  20810. a Secret resource. In some instances, `key` is
  20811. a required field.
  20812. properties:
  20813. key:
  20814. description: The key of the entry in the Secret
  20815. resource's `data` field to be used. Some instances
  20816. of this field may be defaulted, in others
  20817. it may be required.
  20818. type: string
  20819. name:
  20820. description: 'Name of the resource being referred
  20821. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20822. type: string
  20823. required:
  20824. - name
  20825. type: object
  20826. required:
  20827. - tokenSecretRef
  20828. type: object
  20829. rfc2136:
  20830. description: Use RFC2136 ("Dynamic Updates in the Domain
  20831. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  20832. to manage DNS01 challenge records.
  20833. properties:
  20834. nameserver:
  20835. description: The IP address or hostname of an authoritative
  20836. DNS server supporting RFC2136 in the form host:port.
  20837. If the host is an IPv6 address it must be enclosed
  20838. in square brackets (e.g [2001:db8::1]) ; port
  20839. is optional. This field is required.
  20840. type: string
  20841. tsigAlgorithm:
  20842. description: 'The TSIG Algorithm configured in the
  20843. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  20844. and ``tsigKeyName`` are defined. Supported values
  20845. are (case-insensitive): ``HMACMD5`` (default),
  20846. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  20847. type: string
  20848. tsigKeyName:
  20849. description: The TSIG Key name configured in the
  20850. DNS. If ``tsigSecretSecretRef`` is defined, this
  20851. field is required.
  20852. type: string
  20853. tsigSecretSecretRef:
  20854. description: The name of the secret containing the
  20855. TSIG value. If ``tsigKeyName`` is defined, this
  20856. field is required.
  20857. properties:
  20858. key:
  20859. description: The key of the entry in the Secret
  20860. resource's `data` field to be used. Some instances
  20861. of this field may be defaulted, in others
  20862. it may be required.
  20863. type: string
  20864. name:
  20865. description: 'Name of the resource being referred
  20866. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20867. type: string
  20868. required:
  20869. - name
  20870. type: object
  20871. required:
  20872. - nameserver
  20873. type: object
  20874. route53:
  20875. description: Use the AWS Route53 API to manage DNS01
  20876. challenge records.
  20877. properties:
  20878. accessKeyID:
  20879. description: 'The AccessKeyID is used for authentication.
  20880. If not set we fall-back to using env vars, shared
  20881. credentials file or AWS Instance metadata see:
  20882. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  20883. type: string
  20884. hostedZoneID:
  20885. description: If set, the provider will manage only
  20886. this zone in Route53 and will not do an lookup
  20887. using the route53:ListHostedZonesByName api call.
  20888. type: string
  20889. region:
  20890. description: Always set the region when using AccessKeyID
  20891. and SecretAccessKey
  20892. type: string
  20893. role:
  20894. description: Role is a Role ARN which the Route53
  20895. provider will assume using either the explicit
  20896. credentials AccessKeyID/SecretAccessKey or the
  20897. inferred credentials from environment variables,
  20898. shared credentials file or AWS Instance metadata
  20899. type: string
  20900. secretAccessKeySecretRef:
  20901. description: The SecretAccessKey is used for authentication.
  20902. If not set we fall-back to using env vars, shared
  20903. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  20904. properties:
  20905. key:
  20906. description: The key of the entry in the Secret
  20907. resource's `data` field to be used. Some instances
  20908. of this field may be defaulted, in others
  20909. it may be required.
  20910. type: string
  20911. name:
  20912. description: 'Name of the resource being referred
  20913. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20914. type: string
  20915. required:
  20916. - name
  20917. type: object
  20918. required:
  20919. - region
  20920. type: object
  20921. webhook:
  20922. description: Configure an external webhook based DNS01
  20923. challenge solver to manage DNS01 challenge records.
  20924. properties:
  20925. config:
  20926. description: Additional configuration that should
  20927. be passed to the webhook apiserver when challenges
  20928. are processed. This can contain arbitrary JSON
  20929. data. Secret values should not be specified in
  20930. this stanza. If secret values are needed (e.g.
  20931. credentials for a DNS service), you should use
  20932. a SecretKeySelector to reference a Secret resource.
  20933. For details on the schema of this field, consult
  20934. the webhook provider implementation's documentation.
  20935. x-kubernetes-preserve-unknown-fields: true
  20936. groupName:
  20937. description: The API group name that should be used
  20938. when POSTing ChallengePayload resources to the
  20939. webhook apiserver. This should be the same as
  20940. the GroupName specified in the webhook provider
  20941. implementation.
  20942. type: string
  20943. solverName:
  20944. description: The name of the solver to use, as defined
  20945. in the webhook provider implementation. This will
  20946. typically be the name of the provider, e.g. 'cloudflare'.
  20947. type: string
  20948. required:
  20949. - groupName
  20950. - solverName
  20951. type: object
  20952. type: object
  20953. http01:
  20954. description: Configures cert-manager to attempt to complete
  20955. authorizations by performing the HTTP01 challenge flow.
  20956. It is not possible to obtain certificates for wildcard
  20957. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  20958. mechanism.
  20959. properties:
  20960. ingress:
  20961. description: The ingress based HTTP01 challenge solver
  20962. will solve challenges by creating or modifying Ingress
  20963. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  20964. to 'challenge solver' pods that are provisioned by
  20965. cert-manager for each Challenge to be completed.
  20966. properties:
  20967. class:
  20968. description: The ingress class to use when creating
  20969. Ingress resources to solve ACME challenges that
  20970. use this challenge solver. Only one of 'class'
  20971. or 'name' may be specified.
  20972. type: string
  20973. ingressTemplate:
  20974. description: Optional ingress template used to configure
  20975. the ACME challenge solver ingress used for HTTP01
  20976. challenges
  20977. properties:
  20978. metadata:
  20979. description: ObjectMeta overrides for the ingress
  20980. used to solve HTTP01 challenges. Only the
  20981. 'labels' and 'annotations' fields may be set.
  20982. If labels or annotations overlap with in-built
  20983. values, the values here will override the
  20984. in-built values.
  20985. properties:
  20986. annotations:
  20987. additionalProperties:
  20988. type: string
  20989. description: Annotations that should be
  20990. added to the created ACME HTTP01 solver
  20991. ingress.
  20992. type: object
  20993. labels:
  20994. additionalProperties:
  20995. type: string
  20996. description: Labels that should be added
  20997. to the created ACME HTTP01 solver ingress.
  20998. type: object
  20999. type: object
  21000. type: object
  21001. name:
  21002. description: The name of the ingress resource that
  21003. should have ACME challenge solving routes inserted
  21004. into it in order to solve HTTP01 challenges. This
  21005. is typically used in conjunction with ingress
  21006. controllers like ingress-gce, which maintains
  21007. a 1:1 mapping between external IPs and ingress
  21008. resources.
  21009. type: string
  21010. podTemplate:
  21011. description: Optional pod template used to configure
  21012. the ACME challenge solver pods used for HTTP01
  21013. challenges
  21014. properties:
  21015. metadata:
  21016. description: ObjectMeta overrides for the pod
  21017. used to solve HTTP01 challenges. Only the
  21018. 'labels' and 'annotations' fields may be set.
  21019. If labels or annotations overlap with in-built
  21020. values, the values here will override the
  21021. in-built values.
  21022. properties:
  21023. annotations:
  21024. additionalProperties:
  21025. type: string
  21026. description: Annotations that should be
  21027. added to the create ACME HTTP01 solver
  21028. pods.
  21029. type: object
  21030. labels:
  21031. additionalProperties:
  21032. type: string
  21033. description: Labels that should be added
  21034. to the created ACME HTTP01 solver pods.
  21035. type: object
  21036. type: object
  21037. spec:
  21038. description: PodSpec defines overrides for the
  21039. HTTP01 challenge solver pod. Only the 'priorityClassName',
  21040. 'nodeSelector', 'affinity', 'serviceAccountName'
  21041. and 'tolerations' fields are supported currently.
  21042. All other fields will be ignored.
  21043. properties:
  21044. affinity:
  21045. description: If specified, the pod's scheduling
  21046. constraints
  21047. properties:
  21048. nodeAffinity:
  21049. description: Describes node affinity
  21050. scheduling rules for the pod.
  21051. properties:
  21052. preferredDuringSchedulingIgnoredDuringExecution:
  21053. description: The scheduler will
  21054. prefer to schedule pods to nodes
  21055. that satisfy the affinity expressions
  21056. specified by this field, but it
  21057. may choose a node that violates
  21058. one or more of the expressions.
  21059. The node that is most preferred
  21060. is the one with the greatest sum
  21061. of weights, i.e. for each node
  21062. that meets all of the scheduling
  21063. requirements (resource request,
  21064. requiredDuringScheduling affinity
  21065. expressions, etc.), compute a
  21066. sum by iterating through the elements
  21067. of this field and adding "weight"
  21068. to the sum if the node matches
  21069. the corresponding matchExpressions;
  21070. the node(s) with the highest sum
  21071. are the most preferred.
  21072. items:
  21073. description: An empty preferred
  21074. scheduling term matches all
  21075. objects with implicit weight
  21076. 0 (i.e. it's a no-op). A null
  21077. preferred scheduling term matches
  21078. no objects (i.e. is also a no-op).
  21079. properties:
  21080. preference:
  21081. description: A node selector
  21082. term, associated with the
  21083. corresponding weight.
  21084. properties:
  21085. matchExpressions:
  21086. description: A list of
  21087. node selector requirements
  21088. by node's labels.
  21089. items:
  21090. description: A node
  21091. selector requirement
  21092. is a selector that
  21093. contains values, a
  21094. key, and an operator
  21095. that relates the key
  21096. and values.
  21097. properties:
  21098. key:
  21099. description: The
  21100. label key that
  21101. the selector applies
  21102. to.
  21103. type: string
  21104. operator:
  21105. description: Represents
  21106. a key's relationship
  21107. to a set of values.
  21108. Valid operators
  21109. are In, NotIn,
  21110. Exists, DoesNotExist.
  21111. Gt, and Lt.
  21112. type: string
  21113. values:
  21114. description: An
  21115. array of string
  21116. values. If the
  21117. operator is In
  21118. or NotIn, the
  21119. values array must
  21120. be non-empty.
  21121. If the operator
  21122. is Exists or DoesNotExist,
  21123. the values array
  21124. must be empty.
  21125. If the operator
  21126. is Gt or Lt, the
  21127. values array must
  21128. have a single
  21129. element, which
  21130. will be interpreted
  21131. as an integer.
  21132. This array is
  21133. replaced during
  21134. a strategic merge
  21135. patch.
  21136. items:
  21137. type: string
  21138. type: array
  21139. required:
  21140. - key
  21141. - operator
  21142. type: object
  21143. type: array
  21144. matchFields:
  21145. description: A list of
  21146. node selector requirements
  21147. by node's fields.
  21148. items:
  21149. description: A node
  21150. selector requirement
  21151. is a selector that
  21152. contains values, a
  21153. key, and an operator
  21154. that relates the key
  21155. and values.
  21156. properties:
  21157. key:
  21158. description: The
  21159. label key that
  21160. the selector applies
  21161. to.
  21162. type: string
  21163. operator:
  21164. description: Represents
  21165. a key's relationship
  21166. to a set of values.
  21167. Valid operators
  21168. are In, NotIn,
  21169. Exists, DoesNotExist.
  21170. Gt, and Lt.
  21171. type: string
  21172. values:
  21173. description: An
  21174. array of string
  21175. values. If the
  21176. operator is In
  21177. or NotIn, the
  21178. values array must
  21179. be non-empty.
  21180. If the operator
  21181. is Exists or DoesNotExist,
  21182. the values array
  21183. must be empty.
  21184. If the operator
  21185. is Gt or Lt, the
  21186. values array must
  21187. have a single
  21188. element, which
  21189. will be interpreted
  21190. as an integer.
  21191. This array is
  21192. replaced during
  21193. a strategic merge
  21194. patch.
  21195. items:
  21196. type: string
  21197. type: array
  21198. required:
  21199. - key
  21200. - operator
  21201. type: object
  21202. type: array
  21203. type: object
  21204. weight:
  21205. description: Weight associated
  21206. with matching the corresponding
  21207. nodeSelectorTerm, in the
  21208. range 1-100.
  21209. format: int32
  21210. type: integer
  21211. required:
  21212. - preference
  21213. - weight
  21214. type: object
  21215. type: array
  21216. requiredDuringSchedulingIgnoredDuringExecution:
  21217. description: If the affinity requirements
  21218. specified by this field are not
  21219. met at scheduling time, the pod
  21220. will not be scheduled onto the
  21221. node. If the affinity requirements
  21222. specified by this field cease
  21223. to be met at some point during
  21224. pod execution (e.g. due to an
  21225. update), the system may or may
  21226. not try to eventually evict the
  21227. pod from its node.
  21228. properties:
  21229. nodeSelectorTerms:
  21230. description: Required. A list
  21231. of node selector terms. The
  21232. terms are ORed.
  21233. items:
  21234. description: A null or empty
  21235. node selector term matches
  21236. no objects. The requirements
  21237. of them are ANDed. The TopologySelectorTerm
  21238. type implements a subset
  21239. of the NodeSelectorTerm.
  21240. properties:
  21241. matchExpressions:
  21242. description: A list of
  21243. node selector requirements
  21244. by node's labels.
  21245. items:
  21246. description: A node
  21247. selector requirement
  21248. is a selector that
  21249. contains values, a
  21250. key, and an operator
  21251. that relates the key
  21252. and values.
  21253. properties:
  21254. key:
  21255. description: The
  21256. label key that
  21257. the selector applies
  21258. to.
  21259. type: string
  21260. operator:
  21261. description: Represents
  21262. a key's relationship
  21263. to a set of values.
  21264. Valid operators
  21265. are In, NotIn,
  21266. Exists, DoesNotExist.
  21267. Gt, and Lt.
  21268. type: string
  21269. values:
  21270. description: An
  21271. array of string
  21272. values. If the
  21273. operator is In
  21274. or NotIn, the
  21275. values array must
  21276. be non-empty.
  21277. If the operator
  21278. is Exists or DoesNotExist,
  21279. the values array
  21280. must be empty.
  21281. If the operator
  21282. is Gt or Lt, the
  21283. values array must
  21284. have a single
  21285. element, which
  21286. will be interpreted
  21287. as an integer.
  21288. This array is
  21289. replaced during
  21290. a strategic merge
  21291. patch.
  21292. items:
  21293. type: string
  21294. type: array
  21295. required:
  21296. - key
  21297. - operator
  21298. type: object
  21299. type: array
  21300. matchFields:
  21301. description: A list of
  21302. node selector requirements
  21303. by node's fields.
  21304. items:
  21305. description: A node
  21306. selector requirement
  21307. is a selector that
  21308. contains values, a
  21309. key, and an operator
  21310. that relates the key
  21311. and values.
  21312. properties:
  21313. key:
  21314. description: The
  21315. label key that
  21316. the selector applies
  21317. to.
  21318. type: string
  21319. operator:
  21320. description: Represents
  21321. a key's relationship
  21322. to a set of values.
  21323. Valid operators
  21324. are In, NotIn,
  21325. Exists, DoesNotExist.
  21326. Gt, and Lt.
  21327. type: string
  21328. values:
  21329. description: An
  21330. array of string
  21331. values. If the
  21332. operator is In
  21333. or NotIn, the
  21334. values array must
  21335. be non-empty.
  21336. If the operator
  21337. is Exists or DoesNotExist,
  21338. the values array
  21339. must be empty.
  21340. If the operator
  21341. is Gt or Lt, the
  21342. values array must
  21343. have a single
  21344. element, which
  21345. will be interpreted
  21346. as an integer.
  21347. This array is
  21348. replaced during
  21349. a strategic merge
  21350. patch.
  21351. items:
  21352. type: string
  21353. type: array
  21354. required:
  21355. - key
  21356. - operator
  21357. type: object
  21358. type: array
  21359. type: object
  21360. type: array
  21361. required:
  21362. - nodeSelectorTerms
  21363. type: object
  21364. type: object
  21365. podAffinity:
  21366. description: Describes pod affinity
  21367. scheduling rules (e.g. co-locate this
  21368. pod in the same node, zone, etc. as
  21369. some other pod(s)).
  21370. properties:
  21371. preferredDuringSchedulingIgnoredDuringExecution:
  21372. description: The scheduler will
  21373. prefer to schedule pods to nodes
  21374. that satisfy the affinity expressions
  21375. specified by this field, but it
  21376. may choose a node that violates
  21377. one or more of the expressions.
  21378. The node that is most preferred
  21379. is the one with the greatest sum
  21380. of weights, i.e. for each node
  21381. that meets all of the scheduling
  21382. requirements (resource request,
  21383. requiredDuringScheduling affinity
  21384. expressions, etc.), compute a
  21385. sum by iterating through the elements
  21386. of this field and adding "weight"
  21387. to the sum if the node has pods
  21388. which matches the corresponding
  21389. podAffinityTerm; the node(s) with
  21390. the highest sum are the most preferred.
  21391. items:
  21392. description: The weights of all
  21393. of the matched WeightedPodAffinityTerm
  21394. fields are added per-node to
  21395. find the most preferred node(s)
  21396. properties:
  21397. podAffinityTerm:
  21398. description: Required. A pod
  21399. affinity term, associated
  21400. with the corresponding weight.
  21401. properties:
  21402. labelSelector:
  21403. description: A label query
  21404. over a set of resources,
  21405. in this case pods.
  21406. properties:
  21407. matchExpressions:
  21408. description: matchExpressions
  21409. is a list of label
  21410. selector requirements.
  21411. The requirements
  21412. are ANDed.
  21413. items:
  21414. description: A label
  21415. selector requirement
  21416. is a selector
  21417. that contains
  21418. values, a key,
  21419. and an operator
  21420. that relates the
  21421. key and values.
  21422. properties:
  21423. key:
  21424. description: key
  21425. is the label
  21426. key that the
  21427. selector applies
  21428. to.
  21429. type: string
  21430. operator:
  21431. description: operator
  21432. represents
  21433. a key's relationship
  21434. to a set of
  21435. values. Valid
  21436. operators
  21437. are In, NotIn,
  21438. Exists and
  21439. DoesNotExist.
  21440. type: string
  21441. values:
  21442. description: values
  21443. is an array
  21444. of string
  21445. values. If
  21446. the operator
  21447. is In or NotIn,
  21448. the values
  21449. array must
  21450. be non-empty.
  21451. If the operator
  21452. is Exists
  21453. or DoesNotExist,
  21454. the values
  21455. array must
  21456. be empty.
  21457. This array
  21458. is replaced
  21459. during a strategic
  21460. merge patch.
  21461. items:
  21462. type: string
  21463. type: array
  21464. required:
  21465. - key
  21466. - operator
  21467. type: object
  21468. type: array
  21469. matchLabels:
  21470. additionalProperties:
  21471. type: string
  21472. description: matchLabels
  21473. is a map of {key,value}
  21474. pairs. A single
  21475. {key,value} in the
  21476. matchLabels map
  21477. is equivalent to
  21478. an element of matchExpressions,
  21479. whose key field
  21480. is "key", the operator
  21481. is "In", and the
  21482. values array contains
  21483. only "value". The
  21484. requirements are
  21485. ANDed.
  21486. type: object
  21487. type: object
  21488. namespaces:
  21489. description: namespaces
  21490. specifies which namespaces
  21491. the labelSelector applies
  21492. to (matches against);
  21493. null or empty list means
  21494. "this pod's namespace"
  21495. items:
  21496. type: string
  21497. type: array
  21498. topologyKey:
  21499. description: This pod
  21500. should be co-located
  21501. (affinity) or not co-located
  21502. (anti-affinity) with
  21503. the pods matching the
  21504. labelSelector in the
  21505. specified namespaces,
  21506. where co-located is
  21507. defined as running on
  21508. a node whose value of
  21509. the label with key topologyKey
  21510. matches that of any
  21511. node on which any of
  21512. the selected pods is
  21513. running. Empty topologyKey
  21514. is not allowed.
  21515. type: string
  21516. required:
  21517. - topologyKey
  21518. type: object
  21519. weight:
  21520. description: weight associated
  21521. with matching the corresponding
  21522. podAffinityTerm, in the
  21523. range 1-100.
  21524. format: int32
  21525. type: integer
  21526. required:
  21527. - podAffinityTerm
  21528. - weight
  21529. type: object
  21530. type: array
  21531. requiredDuringSchedulingIgnoredDuringExecution:
  21532. description: If the affinity requirements
  21533. specified by this field are not
  21534. met at scheduling time, the pod
  21535. will not be scheduled onto the
  21536. node. If the affinity requirements
  21537. specified by this field cease
  21538. to be met at some point during
  21539. pod execution (e.g. due to a pod
  21540. label update), the system may
  21541. or may not try to eventually evict
  21542. the pod from its node. When there
  21543. are multiple elements, the lists
  21544. of nodes corresponding to each
  21545. podAffinityTerm are intersected,
  21546. i.e. all terms must be satisfied.
  21547. items:
  21548. description: Defines a set of
  21549. pods (namely those matching
  21550. the labelSelector relative to
  21551. the given namespace(s)) that
  21552. this pod should be co-located
  21553. (affinity) or not co-located
  21554. (anti-affinity) with, where
  21555. co-located is defined as running
  21556. on a node whose value of the
  21557. label with key <topologyKey>
  21558. matches that of any node on
  21559. which a pod of the set of pods
  21560. is running
  21561. properties:
  21562. labelSelector:
  21563. description: A label query
  21564. over a set of resources,
  21565. in this case pods.
  21566. properties:
  21567. matchExpressions:
  21568. description: matchExpressions
  21569. is a list of label selector
  21570. requirements. The requirements
  21571. are ANDed.
  21572. items:
  21573. description: A label
  21574. selector requirement
  21575. is a selector that
  21576. contains values, a
  21577. key, and an operator
  21578. that relates the key
  21579. and values.
  21580. properties:
  21581. key:
  21582. description: key
  21583. is the label key
  21584. that the selector
  21585. applies to.
  21586. type: string
  21587. operator:
  21588. description: operator
  21589. represents a key's
  21590. relationship to
  21591. a set of values.
  21592. Valid operators
  21593. are In, NotIn,
  21594. Exists and DoesNotExist.
  21595. type: string
  21596. values:
  21597. description: values
  21598. is an array of
  21599. string values.
  21600. If the operator
  21601. is In or NotIn,
  21602. the values array
  21603. must be non-empty.
  21604. If the operator
  21605. is Exists or DoesNotExist,
  21606. the values array
  21607. must be empty.
  21608. This array is
  21609. replaced during
  21610. a strategic merge
  21611. patch.
  21612. items:
  21613. type: string
  21614. type: array
  21615. required:
  21616. - key
  21617. - operator
  21618. type: object
  21619. type: array
  21620. matchLabels:
  21621. additionalProperties:
  21622. type: string
  21623. description: matchLabels
  21624. is a map of {key,value}
  21625. pairs. A single {key,value}
  21626. in the matchLabels map
  21627. is equivalent to an
  21628. element of matchExpressions,
  21629. whose key field is "key",
  21630. the operator is "In",
  21631. and the values array
  21632. contains only "value".
  21633. The requirements are
  21634. ANDed.
  21635. type: object
  21636. type: object
  21637. namespaces:
  21638. description: namespaces specifies
  21639. which namespaces the labelSelector
  21640. applies to (matches against);
  21641. null or empty list means
  21642. "this pod's namespace"
  21643. items:
  21644. type: string
  21645. type: array
  21646. topologyKey:
  21647. description: This pod should
  21648. be co-located (affinity)
  21649. or not co-located (anti-affinity)
  21650. with the pods matching the
  21651. labelSelector in the specified
  21652. namespaces, where co-located
  21653. is defined as running on
  21654. a node whose value of the
  21655. label with key topologyKey
  21656. matches that of any node
  21657. on which any of the selected
  21658. pods is running. Empty topologyKey
  21659. is not allowed.
  21660. type: string
  21661. required:
  21662. - topologyKey
  21663. type: object
  21664. type: array
  21665. type: object
  21666. podAntiAffinity:
  21667. description: Describes pod anti-affinity
  21668. scheduling rules (e.g. avoid putting
  21669. this pod in the same node, zone, etc.
  21670. as some other pod(s)).
  21671. properties:
  21672. preferredDuringSchedulingIgnoredDuringExecution:
  21673. description: The scheduler will
  21674. prefer to schedule pods to nodes
  21675. that satisfy the anti-affinity
  21676. expressions specified by this
  21677. field, but it may choose a node
  21678. that violates one or more of the
  21679. expressions. The node that is
  21680. most preferred is the one with
  21681. the greatest sum of weights, i.e.
  21682. for each node that meets all of
  21683. the scheduling requirements (resource
  21684. request, requiredDuringScheduling
  21685. anti-affinity expressions, etc.),
  21686. compute a sum by iterating through
  21687. the elements of this field and
  21688. adding "weight" to the sum if
  21689. the node has pods which matches
  21690. the corresponding podAffinityTerm;
  21691. the node(s) with the highest sum
  21692. are the most preferred.
  21693. items:
  21694. description: The weights of all
  21695. of the matched WeightedPodAffinityTerm
  21696. fields are added per-node to
  21697. find the most preferred node(s)
  21698. properties:
  21699. podAffinityTerm:
  21700. description: Required. A pod
  21701. affinity term, associated
  21702. with the corresponding weight.
  21703. properties:
  21704. labelSelector:
  21705. description: A label query
  21706. over a set of resources,
  21707. in this case pods.
  21708. properties:
  21709. matchExpressions:
  21710. description: matchExpressions
  21711. is a list of label
  21712. selector requirements.
  21713. The requirements
  21714. are ANDed.
  21715. items:
  21716. description: A label
  21717. selector requirement
  21718. is a selector
  21719. that contains
  21720. values, a key,
  21721. and an operator
  21722. that relates the
  21723. key and values.
  21724. properties:
  21725. key:
  21726. description: key
  21727. is the label
  21728. key that the
  21729. selector applies
  21730. to.
  21731. type: string
  21732. operator:
  21733. description: operator
  21734. represents
  21735. a key's relationship
  21736. to a set of
  21737. values. Valid
  21738. operators
  21739. are In, NotIn,
  21740. Exists and
  21741. DoesNotExist.
  21742. type: string
  21743. values:
  21744. description: values
  21745. is an array
  21746. of string
  21747. values. If
  21748. the operator
  21749. is In or NotIn,
  21750. the values
  21751. array must
  21752. be non-empty.
  21753. If the operator
  21754. is Exists
  21755. or DoesNotExist,
  21756. the values
  21757. array must
  21758. be empty.
  21759. This array
  21760. is replaced
  21761. during a strategic
  21762. merge patch.
  21763. items:
  21764. type: string
  21765. type: array
  21766. required:
  21767. - key
  21768. - operator
  21769. type: object
  21770. type: array
  21771. matchLabels:
  21772. additionalProperties:
  21773. type: string
  21774. description: matchLabels
  21775. is a map of {key,value}
  21776. pairs. A single
  21777. {key,value} in the
  21778. matchLabels map
  21779. is equivalent to
  21780. an element of matchExpressions,
  21781. whose key field
  21782. is "key", the operator
  21783. is "In", and the
  21784. values array contains
  21785. only "value". The
  21786. requirements are
  21787. ANDed.
  21788. type: object
  21789. type: object
  21790. namespaces:
  21791. description: namespaces
  21792. specifies which namespaces
  21793. the labelSelector applies
  21794. to (matches against);
  21795. null or empty list means
  21796. "this pod's namespace"
  21797. items:
  21798. type: string
  21799. type: array
  21800. topologyKey:
  21801. description: This pod
  21802. should be co-located
  21803. (affinity) or not co-located
  21804. (anti-affinity) with
  21805. the pods matching the
  21806. labelSelector in the
  21807. specified namespaces,
  21808. where co-located is
  21809. defined as running on
  21810. a node whose value of
  21811. the label with key topologyKey
  21812. matches that of any
  21813. node on which any of
  21814. the selected pods is
  21815. running. Empty topologyKey
  21816. is not allowed.
  21817. type: string
  21818. required:
  21819. - topologyKey
  21820. type: object
  21821. weight:
  21822. description: weight associated
  21823. with matching the corresponding
  21824. podAffinityTerm, in the
  21825. range 1-100.
  21826. format: int32
  21827. type: integer
  21828. required:
  21829. - podAffinityTerm
  21830. - weight
  21831. type: object
  21832. type: array
  21833. requiredDuringSchedulingIgnoredDuringExecution:
  21834. description: If the anti-affinity
  21835. requirements specified by this
  21836. field are not met at scheduling
  21837. time, the pod will not be scheduled
  21838. onto the node. If the anti-affinity
  21839. requirements specified by this
  21840. field cease to be met at some
  21841. point during pod execution (e.g.
  21842. due to a pod label update), the
  21843. system may or may not try to eventually
  21844. evict the pod from its node. When
  21845. there are multiple elements, the
  21846. lists of nodes corresponding to
  21847. each podAffinityTerm are intersected,
  21848. i.e. all terms must be satisfied.
  21849. items:
  21850. description: Defines a set of
  21851. pods (namely those matching
  21852. the labelSelector relative to
  21853. the given namespace(s)) that
  21854. this pod should be co-located
  21855. (affinity) or not co-located
  21856. (anti-affinity) with, where
  21857. co-located is defined as running
  21858. on a node whose value of the
  21859. label with key <topologyKey>
  21860. matches that of any node on
  21861. which a pod of the set of pods
  21862. is running
  21863. properties:
  21864. labelSelector:
  21865. description: A label query
  21866. over a set of resources,
  21867. in this case pods.
  21868. properties:
  21869. matchExpressions:
  21870. description: matchExpressions
  21871. is a list of label selector
  21872. requirements. The requirements
  21873. are ANDed.
  21874. items:
  21875. description: A label
  21876. selector requirement
  21877. is a selector that
  21878. contains values, a
  21879. key, and an operator
  21880. that relates the key
  21881. and values.
  21882. properties:
  21883. key:
  21884. description: key
  21885. is the label key
  21886. that the selector
  21887. applies to.
  21888. type: string
  21889. operator:
  21890. description: operator
  21891. represents a key's
  21892. relationship to
  21893. a set of values.
  21894. Valid operators
  21895. are In, NotIn,
  21896. Exists and DoesNotExist.
  21897. type: string
  21898. values:
  21899. description: values
  21900. is an array of
  21901. string values.
  21902. If the operator
  21903. is In or NotIn,
  21904. the values array
  21905. must be non-empty.
  21906. If the operator
  21907. is Exists or DoesNotExist,
  21908. the values array
  21909. must be empty.
  21910. This array is
  21911. replaced during
  21912. a strategic merge
  21913. patch.
  21914. items:
  21915. type: string
  21916. type: array
  21917. required:
  21918. - key
  21919. - operator
  21920. type: object
  21921. type: array
  21922. matchLabels:
  21923. additionalProperties:
  21924. type: string
  21925. description: matchLabels
  21926. is a map of {key,value}
  21927. pairs. A single {key,value}
  21928. in the matchLabels map
  21929. is equivalent to an
  21930. element of matchExpressions,
  21931. whose key field is "key",
  21932. the operator is "In",
  21933. and the values array
  21934. contains only "value".
  21935. The requirements are
  21936. ANDed.
  21937. type: object
  21938. type: object
  21939. namespaces:
  21940. description: namespaces specifies
  21941. which namespaces the labelSelector
  21942. applies to (matches against);
  21943. null or empty list means
  21944. "this pod's namespace"
  21945. items:
  21946. type: string
  21947. type: array
  21948. topologyKey:
  21949. description: This pod should
  21950. be co-located (affinity)
  21951. or not co-located (anti-affinity)
  21952. with the pods matching the
  21953. labelSelector in the specified
  21954. namespaces, where co-located
  21955. is defined as running on
  21956. a node whose value of the
  21957. label with key topologyKey
  21958. matches that of any node
  21959. on which any of the selected
  21960. pods is running. Empty topologyKey
  21961. is not allowed.
  21962. type: string
  21963. required:
  21964. - topologyKey
  21965. type: object
  21966. type: array
  21967. type: object
  21968. type: object
  21969. nodeSelector:
  21970. additionalProperties:
  21971. type: string
  21972. description: 'NodeSelector is a selector
  21973. which must be true for the pod to fit
  21974. on a node. Selector which must match a
  21975. node''s labels for the pod to be scheduled
  21976. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  21977. type: object
  21978. priorityClassName:
  21979. description: If specified, the pod's priorityClassName.
  21980. type: string
  21981. serviceAccountName:
  21982. description: If specified, the pod's service
  21983. account
  21984. type: string
  21985. tolerations:
  21986. description: If specified, the pod's tolerations.
  21987. items:
  21988. description: The pod this Toleration is
  21989. attached to tolerates any taint that
  21990. matches the triple <key,value,effect>
  21991. using the matching operator <operator>.
  21992. properties:
  21993. effect:
  21994. description: Effect indicates the
  21995. taint effect to match. Empty means
  21996. match all taint effects. When specified,
  21997. allowed values are NoSchedule, PreferNoSchedule
  21998. and NoExecute.
  21999. type: string
  22000. key:
  22001. description: Key is the taint key
  22002. that the toleration applies to.
  22003. Empty means match all taint keys.
  22004. If the key is empty, operator must
  22005. be Exists; this combination means
  22006. to match all values and all keys.
  22007. type: string
  22008. operator:
  22009. description: Operator represents a
  22010. key's relationship to the value.
  22011. Valid operators are Exists and Equal.
  22012. Defaults to Equal. Exists is equivalent
  22013. to wildcard for value, so that a
  22014. pod can tolerate all taints of a
  22015. particular category.
  22016. type: string
  22017. tolerationSeconds:
  22018. description: TolerationSeconds represents
  22019. the period of time the toleration
  22020. (which must be of effect NoExecute,
  22021. otherwise this field is ignored)
  22022. tolerates the taint. By default,
  22023. it is not set, which means tolerate
  22024. the taint forever (do not evict).
  22025. Zero and negative values will be
  22026. treated as 0 (evict immediately)
  22027. by the system.
  22028. format: int64
  22029. type: integer
  22030. value:
  22031. description: Value is the taint value
  22032. the toleration matches to. If the
  22033. operator is Exists, the value should
  22034. be empty, otherwise just a regular
  22035. string.
  22036. type: string
  22037. type: object
  22038. type: array
  22039. type: object
  22040. type: object
  22041. serviceType:
  22042. description: Optional service type for Kubernetes
  22043. solver service
  22044. type: string
  22045. type: object
  22046. type: object
  22047. selector:
  22048. description: Selector selects a set of DNSNames on the Certificate
  22049. resource that should be solved using this challenge solver.
  22050. If not specified, the solver will be treated as the 'default'
  22051. solver with the lowest priority, i.e. if any other solver
  22052. has a more specific match, it will be used instead.
  22053. properties:
  22054. dnsNames:
  22055. description: List of DNSNames that this solver will
  22056. be used to solve. If specified and a match is found,
  22057. a dnsNames selector will take precedence over a dnsZones
  22058. selector. If multiple solvers match with the same
  22059. dnsNames value, the solver with the most matching
  22060. labels in matchLabels will be selected. If neither
  22061. has more matches, the solver defined earlier in the
  22062. list will be selected.
  22063. items:
  22064. type: string
  22065. type: array
  22066. dnsZones:
  22067. description: List of DNSZones that this solver will
  22068. be used to solve. The most specific DNS zone match
  22069. specified here will take precedence over other DNS
  22070. zone matches, so a solver specifying sys.example.com
  22071. will be selected over one specifying example.com for
  22072. the domain www.sys.example.com. If multiple solvers
  22073. match with the same dnsZones value, the solver with
  22074. the most matching labels in matchLabels will be selected.
  22075. If neither has more matches, the solver defined earlier
  22076. in the list will be selected.
  22077. items:
  22078. type: string
  22079. type: array
  22080. matchLabels:
  22081. additionalProperties:
  22082. type: string
  22083. description: A label selector that is used to refine
  22084. the set of certificate's that this challenge solver
  22085. will apply to.
  22086. type: object
  22087. type: object
  22088. type: object
  22089. type: array
  22090. required:
  22091. - privateKeySecretRef
  22092. - server
  22093. type: object
  22094. ca:
  22095. description: CA configures this issuer to sign certificates using
  22096. a signing CA keypair stored in a Secret resource. This is used to
  22097. build internal PKIs that are managed by cert-manager.
  22098. properties:
  22099. crlDistributionPoints:
  22100. description: The CRL distribution points is an X.509 v3 certificate
  22101. extension which identifies the location of the CRL from which
  22102. the revocation of this certificate can be checked. If not set,
  22103. certificates will be issued without distribution points set.
  22104. items:
  22105. type: string
  22106. type: array
  22107. secretName:
  22108. description: SecretName is the name of the secret used to sign
  22109. Certificates issued by this Issuer.
  22110. type: string
  22111. required:
  22112. - secretName
  22113. type: object
  22114. selfSigned:
  22115. description: SelfSigned configures this issuer to 'self sign' certificates
  22116. using the private key used to create the CertificateRequest object.
  22117. properties:
  22118. crlDistributionPoints:
  22119. description: The CRL distribution points is an X.509 v3 certificate
  22120. extension which identifies the location of the CRL from which
  22121. the revocation of this certificate can be checked. If not set
  22122. certificate will be issued without CDP. Values are strings.
  22123. items:
  22124. type: string
  22125. type: array
  22126. type: object
  22127. vault:
  22128. description: Vault configures this issuer to sign certificates using
  22129. a HashiCorp Vault PKI backend.
  22130. properties:
  22131. auth:
  22132. description: Auth configures how cert-manager authenticates with
  22133. the Vault server.
  22134. properties:
  22135. appRole:
  22136. description: AppRole authenticates with Vault using the App
  22137. Role auth mechanism, with the role and secret stored in
  22138. a Kubernetes Secret resource.
  22139. properties:
  22140. path:
  22141. description: 'Path where the App Role authentication backend
  22142. is mounted in Vault, e.g: "approle"'
  22143. type: string
  22144. roleId:
  22145. description: RoleID configured in the App Role authentication
  22146. backend when setting up the authentication backend in
  22147. Vault.
  22148. type: string
  22149. secretRef:
  22150. description: Reference to a key in a Secret that contains
  22151. the App Role secret used to authenticate with Vault.
  22152. The `key` field must be specified and denotes which
  22153. entry within the Secret resource is used as the app
  22154. role secret.
  22155. properties:
  22156. key:
  22157. description: The key of the entry in the Secret resource's
  22158. `data` field to be used. Some instances of this
  22159. field may be defaulted, in others it may be required.
  22160. type: string
  22161. name:
  22162. description: 'Name of the resource being referred
  22163. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22164. type: string
  22165. required:
  22166. - name
  22167. type: object
  22168. required:
  22169. - path
  22170. - roleId
  22171. - secretRef
  22172. type: object
  22173. kubernetes:
  22174. description: Kubernetes authenticates with Vault by passing
  22175. the ServiceAccount token stored in the named Secret resource
  22176. to the Vault server.
  22177. properties:
  22178. mountPath:
  22179. description: The Vault mountPath here is the mount path
  22180. to use when authenticating with Vault. For example,
  22181. setting a value to `/v1/auth/foo`, will use the path
  22182. `/v1/auth/foo/login` to authenticate with Vault. If
  22183. unspecified, the default value "/v1/auth/kubernetes"
  22184. will be used.
  22185. type: string
  22186. role:
  22187. description: A required field containing the Vault Role
  22188. to assume. A Role binds a Kubernetes ServiceAccount
  22189. with a set of Vault policies.
  22190. type: string
  22191. secretRef:
  22192. description: The required Secret field containing a Kubernetes
  22193. ServiceAccount JWT used for authenticating with Vault.
  22194. Use of 'ambient credentials' is not supported.
  22195. properties:
  22196. key:
  22197. description: The key of the entry in the Secret resource's
  22198. `data` field to be used. Some instances of this
  22199. field may be defaulted, in others it may be required.
  22200. type: string
  22201. name:
  22202. description: 'Name of the resource being referred
  22203. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22204. type: string
  22205. required:
  22206. - name
  22207. type: object
  22208. required:
  22209. - role
  22210. - secretRef
  22211. type: object
  22212. tokenSecretRef:
  22213. description: TokenSecretRef authenticates with Vault by presenting
  22214. a token.
  22215. properties:
  22216. key:
  22217. description: The key of the entry in the Secret resource's
  22218. `data` field to be used. Some instances of this field
  22219. may be defaulted, in others it may be required.
  22220. type: string
  22221. name:
  22222. description: 'Name of the resource being referred to.
  22223. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22224. type: string
  22225. required:
  22226. - name
  22227. type: object
  22228. type: object
  22229. caBundle:
  22230. description: PEM encoded CA bundle used to validate Vault server
  22231. certificate. Only used if the Server URL is using HTTPS protocol.
  22232. This parameter is ignored for plain HTTP protocol connection.
  22233. If not set the system root certificates are used to validate
  22234. the TLS connection.
  22235. format: byte
  22236. type: string
  22237. namespace:
  22238. description: 'Name of the vault namespace. Namespaces is a set
  22239. of features within Vault Enterprise that allows Vault environments
  22240. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  22241. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  22242. type: string
  22243. path:
  22244. description: 'Path is the mount path of the Vault PKI backend''s
  22245. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  22246. type: string
  22247. server:
  22248. description: 'Server is the connection address for the Vault server,
  22249. e.g: "https://vault.example.com:8200".'
  22250. type: string
  22251. required:
  22252. - auth
  22253. - path
  22254. - server
  22255. type: object
  22256. venafi:
  22257. description: Venafi configures this issuer to sign certificates using
  22258. a Venafi TPP or Venafi Cloud policy zone.
  22259. properties:
  22260. cloud:
  22261. description: Cloud specifies the Venafi cloud configuration settings.
  22262. Only one of TPP or Cloud may be specified.
  22263. properties:
  22264. apiTokenSecretRef:
  22265. description: APITokenSecretRef is a secret key selector for
  22266. the Venafi Cloud API token.
  22267. properties:
  22268. key:
  22269. description: The key of the entry in the Secret resource's
  22270. `data` field to be used. Some instances of this field
  22271. may be defaulted, in others it may be required.
  22272. type: string
  22273. name:
  22274. description: 'Name of the resource being referred to.
  22275. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22276. type: string
  22277. required:
  22278. - name
  22279. type: object
  22280. url:
  22281. description: URL is the base URL for Venafi Cloud. Defaults
  22282. to "https://api.venafi.cloud/v1".
  22283. type: string
  22284. required:
  22285. - apiTokenSecretRef
  22286. type: object
  22287. tpp:
  22288. description: TPP specifies Trust Protection Platform configuration
  22289. settings. Only one of TPP or Cloud may be specified.
  22290. properties:
  22291. caBundle:
  22292. description: CABundle is a PEM encoded TLS certificate to
  22293. use to verify connections to the TPP instance. If specified,
  22294. system roots will not be used and the issuing CA for the
  22295. TPP instance must be verifiable using the provided root.
  22296. If not specified, the connection will be verified using
  22297. the cert-manager system root certificates.
  22298. format: byte
  22299. type: string
  22300. credentialsRef:
  22301. description: CredentialsRef is a reference to a Secret containing
  22302. the username and password for the TPP server. The secret
  22303. must contain two keys, 'username' and 'password'.
  22304. properties:
  22305. name:
  22306. description: 'Name of the resource being referred to.
  22307. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22308. type: string
  22309. required:
  22310. - name
  22311. type: object
  22312. url:
  22313. description: 'URL is the base URL for the vedsdk endpoint
  22314. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  22315. type: string
  22316. required:
  22317. - credentialsRef
  22318. - url
  22319. type: object
  22320. zone:
  22321. description: Zone is the Venafi Policy Zone to use for this issuer.
  22322. All requests made to the Venafi platform will be restricted
  22323. by the named zone policy. This field is required.
  22324. type: string
  22325. required:
  22326. - zone
  22327. type: object
  22328. type: object
  22329. status:
  22330. description: Status of the Issuer. This is set and managed automatically.
  22331. properties:
  22332. acme:
  22333. description: ACME specific status options. This field should only
  22334. be set if the Issuer is configured to use an ACME server to issue
  22335. certificates.
  22336. properties:
  22337. lastRegisteredEmail:
  22338. description: LastRegisteredEmail is the email associated with
  22339. the latest registered ACME account, in order to track changes
  22340. made to registered account associated with the Issuer
  22341. type: string
  22342. uri:
  22343. description: URI is the unique account identifier, which can also
  22344. be used to retrieve account details from the CA
  22345. type: string
  22346. type: object
  22347. conditions:
  22348. description: List of status conditions to indicate the status of a
  22349. CertificateRequest. Known condition types are `Ready`.
  22350. items:
  22351. description: IssuerCondition contains condition information for
  22352. an Issuer.
  22353. properties:
  22354. lastTransitionTime:
  22355. description: LastTransitionTime is the timestamp corresponding
  22356. to the last status change of this condition.
  22357. format: date-time
  22358. type: string
  22359. message:
  22360. description: Message is a human readable description of the
  22361. details of the last transition, complementing reason.
  22362. type: string
  22363. reason:
  22364. description: Reason is a brief machine readable explanation
  22365. for the condition's last transition.
  22366. type: string
  22367. status:
  22368. description: Status of the condition, one of ('True', 'False',
  22369. 'Unknown').
  22370. enum:
  22371. - "True"
  22372. - "False"
  22373. - Unknown
  22374. type: string
  22375. type:
  22376. description: Type of the condition, known values are ('Ready').
  22377. type: string
  22378. required:
  22379. - status
  22380. - type
  22381. type: object
  22382. type: array
  22383. type: object
  22384. required:
  22385. - spec
  22386. type: object
  22387. served: true
  22388. storage: false
  22389. subresources:
  22390. status: {}
  22391. - additionalPrinterColumns:
  22392. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  22393. name: Ready
  22394. type: string
  22395. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  22396. name: Status
  22397. priority: 1
  22398. type: string
  22399. - description: CreationTimestamp is a timestamp representing the server time when
  22400. this object was created. It is not guaranteed to be set in happens-before
  22401. order across separate operations. Clients may not set this value. It is represented
  22402. in RFC3339 form and is in UTC.
  22403. jsonPath: .metadata.creationTimestamp
  22404. name: Age
  22405. type: date
  22406. name: v1
  22407. schema:
  22408. openAPIV3Schema:
  22409. description: An Issuer represents a certificate issuing authority which can
  22410. be referenced as part of `issuerRef` fields. It is scoped to a single namespace
  22411. and can therefore only be referenced by resources within the same namespace.
  22412. properties:
  22413. apiVersion:
  22414. description: 'APIVersion defines the versioned schema of this representation
  22415. of an object. Servers should convert recognized schemas to the latest
  22416. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  22417. type: string
  22418. kind:
  22419. description: 'Kind is a string value representing the REST resource this
  22420. object represents. Servers may infer this from the endpoint the client
  22421. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  22422. type: string
  22423. metadata:
  22424. type: object
  22425. spec:
  22426. description: Desired state of the Issuer resource.
  22427. properties:
  22428. acme:
  22429. description: ACME configures this issuer to communicate with a RFC8555
  22430. (ACME) server to obtain signed x509 certificates.
  22431. properties:
  22432. disableAccountKeyGeneration:
  22433. description: Enables or disables generating a new ACME account
  22434. key. If true, the Issuer resource will *not* request a new account
  22435. but will expect the account key to be supplied via an existing
  22436. secret. If false, the cert-manager system will generate a new
  22437. ACME account key for the Issuer. Defaults to false.
  22438. type: boolean
  22439. email:
  22440. description: Email is the email address to be associated with
  22441. the ACME account. This field is optional, but it is strongly
  22442. recommended to be set. It will be used to contact you in case
  22443. of issues with your account or certificates, including expiry
  22444. notification emails. This field may be updated after the account
  22445. is initially registered.
  22446. type: string
  22447. externalAccountBinding:
  22448. description: ExternalAccountBinding is a reference to a CA external
  22449. account of the ACME server. If set, upon registration cert-manager
  22450. will attempt to associate the given external account credentials
  22451. with the registered ACME account.
  22452. properties:
  22453. keyAlgorithm:
  22454. description: keyAlgorithm is the MAC key algorithm that the
  22455. key is used for. Valid values are "HS256", "HS384" and "HS512".
  22456. enum:
  22457. - HS256
  22458. - HS384
  22459. - HS512
  22460. type: string
  22461. keyID:
  22462. description: keyID is the ID of the CA key that the External
  22463. Account is bound to.
  22464. type: string
  22465. keySecretRef:
  22466. description: keySecretRef is a Secret Key Selector referencing
  22467. a data item in a Kubernetes Secret which holds the symmetric
  22468. MAC key of the External Account Binding. The `key` is the
  22469. index string that is paired with the key data in the Secret
  22470. and should not be confused with the key data itself, or
  22471. indeed with the External Account Binding keyID above. The
  22472. secret key stored in the Secret **must** be un-padded, base64
  22473. URL encoded data.
  22474. properties:
  22475. key:
  22476. description: The key of the entry in the Secret resource's
  22477. `data` field to be used. Some instances of this field
  22478. may be defaulted, in others it may be required.
  22479. type: string
  22480. name:
  22481. description: 'Name of the resource being referred to.
  22482. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22483. type: string
  22484. required:
  22485. - name
  22486. type: object
  22487. required:
  22488. - keyAlgorithm
  22489. - keyID
  22490. - keySecretRef
  22491. type: object
  22492. preferredChain:
  22493. description: 'PreferredChain is the chain to use if the ACME server
  22494. outputs multiple. PreferredChain is no guarantee that this one
  22495. gets delivered by the ACME endpoint. For example, for Let''s
  22496. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  22497. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  22498. picks the first certificate bundle in the ACME alternative chains
  22499. that has a certificate with this value as its issuer''s CN'
  22500. maxLength: 64
  22501. type: string
  22502. privateKeySecretRef:
  22503. description: PrivateKey is the name of a Kubernetes Secret resource
  22504. that will be used to store the automatically generated ACME
  22505. account private key. Optionally, a `key` may be specified to
  22506. select a specific entry within the named Secret resource. If
  22507. `key` is not specified, a default of `tls.key` will be used.
  22508. properties:
  22509. key:
  22510. description: The key of the entry in the Secret resource's
  22511. `data` field to be used. Some instances of this field may
  22512. be defaulted, in others it may be required.
  22513. type: string
  22514. name:
  22515. description: 'Name of the resource being referred to. More
  22516. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22517. type: string
  22518. required:
  22519. - name
  22520. type: object
  22521. server:
  22522. description: 'Server is the URL used to access the ACME server''s
  22523. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  22524. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  22525. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  22526. type: string
  22527. skipTLSVerify:
  22528. description: Enables or disables validation of the ACME server
  22529. TLS certificate. If true, requests to the ACME server will not
  22530. have their TLS certificate validated (i.e. insecure connections
  22531. will be allowed). Only enable this option in development environments.
  22532. The cert-manager system installed roots will be used to verify
  22533. connections to the ACME server if this is false. Defaults to
  22534. false.
  22535. type: boolean
  22536. solvers:
  22537. description: 'Solvers is a list of challenge solvers that will
  22538. be used to solve ACME challenges for the matching domains. Solver
  22539. configurations must be provided in order to obtain certificates
  22540. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  22541. items:
  22542. description: Configures an issuer to solve challenges using
  22543. the specified options. Only one of HTTP01 or DNS01 may be
  22544. provided.
  22545. properties:
  22546. dns01:
  22547. description: Configures cert-manager to attempt to complete
  22548. authorizations by performing the DNS01 challenge flow.
  22549. properties:
  22550. acmeDNS:
  22551. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  22552. API to manage DNS01 challenge records.
  22553. properties:
  22554. accountSecretRef:
  22555. description: A reference to a specific 'key' within
  22556. a Secret resource. In some instances, `key` is
  22557. a required field.
  22558. properties:
  22559. key:
  22560. description: The key of the entry in the Secret
  22561. resource's `data` field to be used. Some instances
  22562. of this field may be defaulted, in others
  22563. it may be required.
  22564. type: string
  22565. name:
  22566. description: 'Name of the resource being referred
  22567. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22568. type: string
  22569. required:
  22570. - name
  22571. type: object
  22572. host:
  22573. type: string
  22574. required:
  22575. - accountSecretRef
  22576. - host
  22577. type: object
  22578. akamai:
  22579. description: Use the Akamai DNS zone management API
  22580. to manage DNS01 challenge records.
  22581. properties:
  22582. accessTokenSecretRef:
  22583. description: A reference to a specific 'key' within
  22584. a Secret resource. In some instances, `key` is
  22585. a required field.
  22586. properties:
  22587. key:
  22588. description: The key of the entry in the Secret
  22589. resource's `data` field to be used. Some instances
  22590. of this field may be defaulted, in others
  22591. it may be required.
  22592. type: string
  22593. name:
  22594. description: 'Name of the resource being referred
  22595. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22596. type: string
  22597. required:
  22598. - name
  22599. type: object
  22600. clientSecretSecretRef:
  22601. description: A reference to a specific 'key' within
  22602. a Secret resource. In some instances, `key` is
  22603. a required field.
  22604. properties:
  22605. key:
  22606. description: The key of the entry in the Secret
  22607. resource's `data` field to be used. Some instances
  22608. of this field may be defaulted, in others
  22609. it may be required.
  22610. type: string
  22611. name:
  22612. description: 'Name of the resource being referred
  22613. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22614. type: string
  22615. required:
  22616. - name
  22617. type: object
  22618. clientTokenSecretRef:
  22619. description: A reference to a specific 'key' within
  22620. a Secret resource. In some instances, `key` is
  22621. a required field.
  22622. properties:
  22623. key:
  22624. description: The key of the entry in the Secret
  22625. resource's `data` field to be used. Some instances
  22626. of this field may be defaulted, in others
  22627. it may be required.
  22628. type: string
  22629. name:
  22630. description: 'Name of the resource being referred
  22631. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22632. type: string
  22633. required:
  22634. - name
  22635. type: object
  22636. serviceConsumerDomain:
  22637. type: string
  22638. required:
  22639. - accessTokenSecretRef
  22640. - clientSecretSecretRef
  22641. - clientTokenSecretRef
  22642. - serviceConsumerDomain
  22643. type: object
  22644. azureDNS:
  22645. description: Use the Microsoft Azure DNS API to manage
  22646. DNS01 challenge records.
  22647. properties:
  22648. clientID:
  22649. description: if both this and ClientSecret are left
  22650. unset MSI will be used
  22651. type: string
  22652. clientSecretSecretRef:
  22653. description: if both this and ClientID are left
  22654. unset MSI will be used
  22655. properties:
  22656. key:
  22657. description: The key of the entry in the Secret
  22658. resource's `data` field to be used. Some instances
  22659. of this field may be defaulted, in others
  22660. it may be required.
  22661. type: string
  22662. name:
  22663. description: 'Name of the resource being referred
  22664. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22665. type: string
  22666. required:
  22667. - name
  22668. type: object
  22669. environment:
  22670. enum:
  22671. - AzurePublicCloud
  22672. - AzureChinaCloud
  22673. - AzureGermanCloud
  22674. - AzureUSGovernmentCloud
  22675. type: string
  22676. hostedZoneName:
  22677. type: string
  22678. resourceGroupName:
  22679. type: string
  22680. subscriptionID:
  22681. type: string
  22682. tenantID:
  22683. description: when specifying ClientID and ClientSecret
  22684. then this field is also needed
  22685. type: string
  22686. required:
  22687. - resourceGroupName
  22688. - subscriptionID
  22689. type: object
  22690. cloudDNS:
  22691. description: Use the Google Cloud DNS API to manage
  22692. DNS01 challenge records.
  22693. properties:
  22694. hostedZoneName:
  22695. description: HostedZoneName is an optional field
  22696. that tells cert-manager in which Cloud DNS zone
  22697. the challenge record has to be created. If left
  22698. empty cert-manager will automatically choose a
  22699. zone.
  22700. type: string
  22701. project:
  22702. type: string
  22703. serviceAccountSecretRef:
  22704. description: A reference to a specific 'key' within
  22705. a Secret resource. In some instances, `key` is
  22706. a required field.
  22707. properties:
  22708. key:
  22709. description: The key of the entry in the Secret
  22710. resource's `data` field to be used. Some instances
  22711. of this field may be defaulted, in others
  22712. it may be required.
  22713. type: string
  22714. name:
  22715. description: 'Name of the resource being referred
  22716. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22717. type: string
  22718. required:
  22719. - name
  22720. type: object
  22721. required:
  22722. - project
  22723. type: object
  22724. cloudflare:
  22725. description: Use the Cloudflare API to manage DNS01
  22726. challenge records.
  22727. properties:
  22728. apiKeySecretRef:
  22729. description: 'API key to use to authenticate with
  22730. Cloudflare. Note: using an API token to authenticate
  22731. is now the recommended method as it allows greater
  22732. control of permissions.'
  22733. properties:
  22734. key:
  22735. description: The key of the entry in the Secret
  22736. resource's `data` field to be used. Some instances
  22737. of this field may be defaulted, in others
  22738. it may be required.
  22739. type: string
  22740. name:
  22741. description: 'Name of the resource being referred
  22742. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22743. type: string
  22744. required:
  22745. - name
  22746. type: object
  22747. apiTokenSecretRef:
  22748. description: API token used to authenticate with
  22749. Cloudflare.
  22750. properties:
  22751. key:
  22752. description: The key of the entry in the Secret
  22753. resource's `data` field to be used. Some instances
  22754. of this field may be defaulted, in others
  22755. it may be required.
  22756. type: string
  22757. name:
  22758. description: 'Name of the resource being referred
  22759. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22760. type: string
  22761. required:
  22762. - name
  22763. type: object
  22764. email:
  22765. description: Email of the account, only required
  22766. when using API key based authentication.
  22767. type: string
  22768. type: object
  22769. cnameStrategy:
  22770. description: CNAMEStrategy configures how the DNS01
  22771. provider should handle CNAME records when found in
  22772. DNS zones.
  22773. enum:
  22774. - None
  22775. - Follow
  22776. type: string
  22777. digitalocean:
  22778. description: Use the DigitalOcean DNS API to manage
  22779. DNS01 challenge records.
  22780. properties:
  22781. tokenSecretRef:
  22782. description: A reference to a specific 'key' within
  22783. a Secret resource. In some instances, `key` is
  22784. a required field.
  22785. properties:
  22786. key:
  22787. description: The key of the entry in the Secret
  22788. resource's `data` field to be used. Some instances
  22789. of this field may be defaulted, in others
  22790. it may be required.
  22791. type: string
  22792. name:
  22793. description: 'Name of the resource being referred
  22794. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22795. type: string
  22796. required:
  22797. - name
  22798. type: object
  22799. required:
  22800. - tokenSecretRef
  22801. type: object
  22802. rfc2136:
  22803. description: Use RFC2136 ("Dynamic Updates in the Domain
  22804. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  22805. to manage DNS01 challenge records.
  22806. properties:
  22807. nameserver:
  22808. description: The IP address or hostname of an authoritative
  22809. DNS server supporting RFC2136 in the form host:port.
  22810. If the host is an IPv6 address it must be enclosed
  22811. in square brackets (e.g [2001:db8::1]) ; port
  22812. is optional. This field is required.
  22813. type: string
  22814. tsigAlgorithm:
  22815. description: 'The TSIG Algorithm configured in the
  22816. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  22817. and ``tsigKeyName`` are defined. Supported values
  22818. are (case-insensitive): ``HMACMD5`` (default),
  22819. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  22820. type: string
  22821. tsigKeyName:
  22822. description: The TSIG Key name configured in the
  22823. DNS. If ``tsigSecretSecretRef`` is defined, this
  22824. field is required.
  22825. type: string
  22826. tsigSecretSecretRef:
  22827. description: The name of the secret containing the
  22828. TSIG value. If ``tsigKeyName`` is defined, this
  22829. field is required.
  22830. properties:
  22831. key:
  22832. description: The key of the entry in the Secret
  22833. resource's `data` field to be used. Some instances
  22834. of this field may be defaulted, in others
  22835. it may be required.
  22836. type: string
  22837. name:
  22838. description: 'Name of the resource being referred
  22839. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22840. type: string
  22841. required:
  22842. - name
  22843. type: object
  22844. required:
  22845. - nameserver
  22846. type: object
  22847. route53:
  22848. description: Use the AWS Route53 API to manage DNS01
  22849. challenge records.
  22850. properties:
  22851. accessKeyID:
  22852. description: 'The AccessKeyID is used for authentication.
  22853. If not set we fall-back to using env vars, shared
  22854. credentials file or AWS Instance metadata see:
  22855. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  22856. type: string
  22857. hostedZoneID:
  22858. description: If set, the provider will manage only
  22859. this zone in Route53 and will not do an lookup
  22860. using the route53:ListHostedZonesByName api call.
  22861. type: string
  22862. region:
  22863. description: Always set the region when using AccessKeyID
  22864. and SecretAccessKey
  22865. type: string
  22866. role:
  22867. description: Role is a Role ARN which the Route53
  22868. provider will assume using either the explicit
  22869. credentials AccessKeyID/SecretAccessKey or the
  22870. inferred credentials from environment variables,
  22871. shared credentials file or AWS Instance metadata
  22872. type: string
  22873. secretAccessKeySecretRef:
  22874. description: The SecretAccessKey is used for authentication.
  22875. If not set we fall-back to using env vars, shared
  22876. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  22877. properties:
  22878. key:
  22879. description: The key of the entry in the Secret
  22880. resource's `data` field to be used. Some instances
  22881. of this field may be defaulted, in others
  22882. it may be required.
  22883. type: string
  22884. name:
  22885. description: 'Name of the resource being referred
  22886. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22887. type: string
  22888. required:
  22889. - name
  22890. type: object
  22891. required:
  22892. - region
  22893. type: object
  22894. webhook:
  22895. description: Configure an external webhook based DNS01
  22896. challenge solver to manage DNS01 challenge records.
  22897. properties:
  22898. config:
  22899. description: Additional configuration that should
  22900. be passed to the webhook apiserver when challenges
  22901. are processed. This can contain arbitrary JSON
  22902. data. Secret values should not be specified in
  22903. this stanza. If secret values are needed (e.g.
  22904. credentials for a DNS service), you should use
  22905. a SecretKeySelector to reference a Secret resource.
  22906. For details on the schema of this field, consult
  22907. the webhook provider implementation's documentation.
  22908. x-kubernetes-preserve-unknown-fields: true
  22909. groupName:
  22910. description: The API group name that should be used
  22911. when POSTing ChallengePayload resources to the
  22912. webhook apiserver. This should be the same as
  22913. the GroupName specified in the webhook provider
  22914. implementation.
  22915. type: string
  22916. solverName:
  22917. description: The name of the solver to use, as defined
  22918. in the webhook provider implementation. This will
  22919. typically be the name of the provider, e.g. 'cloudflare'.
  22920. type: string
  22921. required:
  22922. - groupName
  22923. - solverName
  22924. type: object
  22925. type: object
  22926. http01:
  22927. description: Configures cert-manager to attempt to complete
  22928. authorizations by performing the HTTP01 challenge flow.
  22929. It is not possible to obtain certificates for wildcard
  22930. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  22931. mechanism.
  22932. properties:
  22933. ingress:
  22934. description: The ingress based HTTP01 challenge solver
  22935. will solve challenges by creating or modifying Ingress
  22936. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  22937. to 'challenge solver' pods that are provisioned by
  22938. cert-manager for each Challenge to be completed.
  22939. properties:
  22940. class:
  22941. description: The ingress class to use when creating
  22942. Ingress resources to solve ACME challenges that
  22943. use this challenge solver. Only one of 'class'
  22944. or 'name' may be specified.
  22945. type: string
  22946. ingressTemplate:
  22947. description: Optional ingress template used to configure
  22948. the ACME challenge solver ingress used for HTTP01
  22949. challenges
  22950. properties:
  22951. metadata:
  22952. description: ObjectMeta overrides for the ingress
  22953. used to solve HTTP01 challenges. Only the
  22954. 'labels' and 'annotations' fields may be set.
  22955. If labels or annotations overlap with in-built
  22956. values, the values here will override the
  22957. in-built values.
  22958. properties:
  22959. annotations:
  22960. additionalProperties:
  22961. type: string
  22962. description: Annotations that should be
  22963. added to the created ACME HTTP01 solver
  22964. ingress.
  22965. type: object
  22966. labels:
  22967. additionalProperties:
  22968. type: string
  22969. description: Labels that should be added
  22970. to the created ACME HTTP01 solver ingress.
  22971. type: object
  22972. type: object
  22973. type: object
  22974. name:
  22975. description: The name of the ingress resource that
  22976. should have ACME challenge solving routes inserted
  22977. into it in order to solve HTTP01 challenges. This
  22978. is typically used in conjunction with ingress
  22979. controllers like ingress-gce, which maintains
  22980. a 1:1 mapping between external IPs and ingress
  22981. resources.
  22982. type: string
  22983. podTemplate:
  22984. description: Optional pod template used to configure
  22985. the ACME challenge solver pods used for HTTP01
  22986. challenges
  22987. properties:
  22988. metadata:
  22989. description: ObjectMeta overrides for the pod
  22990. used to solve HTTP01 challenges. Only the
  22991. 'labels' and 'annotations' fields may be set.
  22992. If labels or annotations overlap with in-built
  22993. values, the values here will override the
  22994. in-built values.
  22995. properties:
  22996. annotations:
  22997. additionalProperties:
  22998. type: string
  22999. description: Annotations that should be
  23000. added to the create ACME HTTP01 solver
  23001. pods.
  23002. type: object
  23003. labels:
  23004. additionalProperties:
  23005. type: string
  23006. description: Labels that should be added
  23007. to the created ACME HTTP01 solver pods.
  23008. type: object
  23009. type: object
  23010. spec:
  23011. description: PodSpec defines overrides for the
  23012. HTTP01 challenge solver pod. Only the 'priorityClassName',
  23013. 'nodeSelector', 'affinity', 'serviceAccountName'
  23014. and 'tolerations' fields are supported currently.
  23015. All other fields will be ignored.
  23016. properties:
  23017. affinity:
  23018. description: If specified, the pod's scheduling
  23019. constraints
  23020. properties:
  23021. nodeAffinity:
  23022. description: Describes node affinity
  23023. scheduling rules for the pod.
  23024. properties:
  23025. preferredDuringSchedulingIgnoredDuringExecution:
  23026. description: The scheduler will
  23027. prefer to schedule pods to nodes
  23028. that satisfy the affinity expressions
  23029. specified by this field, but it
  23030. may choose a node that violates
  23031. one or more of the expressions.
  23032. The node that is most preferred
  23033. is the one with the greatest sum
  23034. of weights, i.e. for each node
  23035. that meets all of the scheduling
  23036. requirements (resource request,
  23037. requiredDuringScheduling affinity
  23038. expressions, etc.), compute a
  23039. sum by iterating through the elements
  23040. of this field and adding "weight"
  23041. to the sum if the node matches
  23042. the corresponding matchExpressions;
  23043. the node(s) with the highest sum
  23044. are the most preferred.
  23045. items:
  23046. description: An empty preferred
  23047. scheduling term matches all
  23048. objects with implicit weight
  23049. 0 (i.e. it's a no-op). A null
  23050. preferred scheduling term matches
  23051. no objects (i.e. is also a no-op).
  23052. properties:
  23053. preference:
  23054. description: A node selector
  23055. term, associated with the
  23056. corresponding weight.
  23057. properties:
  23058. matchExpressions:
  23059. description: A list of
  23060. node selector requirements
  23061. by node's labels.
  23062. items:
  23063. description: A node
  23064. selector requirement
  23065. is a selector that
  23066. contains values, a
  23067. key, and an operator
  23068. that relates the key
  23069. and values.
  23070. properties:
  23071. key:
  23072. description: The
  23073. label key that
  23074. the selector applies
  23075. to.
  23076. type: string
  23077. operator:
  23078. description: Represents
  23079. a key's relationship
  23080. to a set of values.
  23081. Valid operators
  23082. are In, NotIn,
  23083. Exists, DoesNotExist.
  23084. Gt, and Lt.
  23085. type: string
  23086. values:
  23087. description: An
  23088. array of string
  23089. values. If the
  23090. operator is In
  23091. or NotIn, the
  23092. values array must
  23093. be non-empty.
  23094. If the operator
  23095. is Exists or DoesNotExist,
  23096. the values array
  23097. must be empty.
  23098. If the operator
  23099. is Gt or Lt, the
  23100. values array must
  23101. have a single
  23102. element, which
  23103. will be interpreted
  23104. as an integer.
  23105. This array is
  23106. replaced during
  23107. a strategic merge
  23108. patch.
  23109. items:
  23110. type: string
  23111. type: array
  23112. required:
  23113. - key
  23114. - operator
  23115. type: object
  23116. type: array
  23117. matchFields:
  23118. description: A list of
  23119. node selector requirements
  23120. by node's fields.
  23121. items:
  23122. description: A node
  23123. selector requirement
  23124. is a selector that
  23125. contains values, a
  23126. key, and an operator
  23127. that relates the key
  23128. and values.
  23129. properties:
  23130. key:
  23131. description: The
  23132. label key that
  23133. the selector applies
  23134. to.
  23135. type: string
  23136. operator:
  23137. description: Represents
  23138. a key's relationship
  23139. to a set of values.
  23140. Valid operators
  23141. are In, NotIn,
  23142. Exists, DoesNotExist.
  23143. Gt, and Lt.
  23144. type: string
  23145. values:
  23146. description: An
  23147. array of string
  23148. values. If the
  23149. operator is In
  23150. or NotIn, the
  23151. values array must
  23152. be non-empty.
  23153. If the operator
  23154. is Exists or DoesNotExist,
  23155. the values array
  23156. must be empty.
  23157. If the operator
  23158. is Gt or Lt, the
  23159. values array must
  23160. have a single
  23161. element, which
  23162. will be interpreted
  23163. as an integer.
  23164. This array is
  23165. replaced during
  23166. a strategic merge
  23167. patch.
  23168. items:
  23169. type: string
  23170. type: array
  23171. required:
  23172. - key
  23173. - operator
  23174. type: object
  23175. type: array
  23176. type: object
  23177. weight:
  23178. description: Weight associated
  23179. with matching the corresponding
  23180. nodeSelectorTerm, in the
  23181. range 1-100.
  23182. format: int32
  23183. type: integer
  23184. required:
  23185. - preference
  23186. - weight
  23187. type: object
  23188. type: array
  23189. requiredDuringSchedulingIgnoredDuringExecution:
  23190. description: If the affinity requirements
  23191. specified by this field are not
  23192. met at scheduling time, the pod
  23193. will not be scheduled onto the
  23194. node. If the affinity requirements
  23195. specified by this field cease
  23196. to be met at some point during
  23197. pod execution (e.g. due to an
  23198. update), the system may or may
  23199. not try to eventually evict the
  23200. pod from its node.
  23201. properties:
  23202. nodeSelectorTerms:
  23203. description: Required. A list
  23204. of node selector terms. The
  23205. terms are ORed.
  23206. items:
  23207. description: A null or empty
  23208. node selector term matches
  23209. no objects. The requirements
  23210. of them are ANDed. The TopologySelectorTerm
  23211. type implements a subset
  23212. of the NodeSelectorTerm.
  23213. properties:
  23214. matchExpressions:
  23215. description: A list of
  23216. node selector requirements
  23217. by node's labels.
  23218. items:
  23219. description: A node
  23220. selector requirement
  23221. is a selector that
  23222. contains values, a
  23223. key, and an operator
  23224. that relates the key
  23225. and values.
  23226. properties:
  23227. key:
  23228. description: The
  23229. label key that
  23230. the selector applies
  23231. to.
  23232. type: string
  23233. operator:
  23234. description: Represents
  23235. a key's relationship
  23236. to a set of values.
  23237. Valid operators
  23238. are In, NotIn,
  23239. Exists, DoesNotExist.
  23240. Gt, and Lt.
  23241. type: string
  23242. values:
  23243. description: An
  23244. array of string
  23245. values. If the
  23246. operator is In
  23247. or NotIn, the
  23248. values array must
  23249. be non-empty.
  23250. If the operator
  23251. is Exists or DoesNotExist,
  23252. the values array
  23253. must be empty.
  23254. If the operator
  23255. is Gt or Lt, the
  23256. values array must
  23257. have a single
  23258. element, which
  23259. will be interpreted
  23260. as an integer.
  23261. This array is
  23262. replaced during
  23263. a strategic merge
  23264. patch.
  23265. items:
  23266. type: string
  23267. type: array
  23268. required:
  23269. - key
  23270. - operator
  23271. type: object
  23272. type: array
  23273. matchFields:
  23274. description: A list of
  23275. node selector requirements
  23276. by node's fields.
  23277. items:
  23278. description: A node
  23279. selector requirement
  23280. is a selector that
  23281. contains values, a
  23282. key, and an operator
  23283. that relates the key
  23284. and values.
  23285. properties:
  23286. key:
  23287. description: The
  23288. label key that
  23289. the selector applies
  23290. to.
  23291. type: string
  23292. operator:
  23293. description: Represents
  23294. a key's relationship
  23295. to a set of values.
  23296. Valid operators
  23297. are In, NotIn,
  23298. Exists, DoesNotExist.
  23299. Gt, and Lt.
  23300. type: string
  23301. values:
  23302. description: An
  23303. array of string
  23304. values. If the
  23305. operator is In
  23306. or NotIn, the
  23307. values array must
  23308. be non-empty.
  23309. If the operator
  23310. is Exists or DoesNotExist,
  23311. the values array
  23312. must be empty.
  23313. If the operator
  23314. is Gt or Lt, the
  23315. values array must
  23316. have a single
  23317. element, which
  23318. will be interpreted
  23319. as an integer.
  23320. This array is
  23321. replaced during
  23322. a strategic merge
  23323. patch.
  23324. items:
  23325. type: string
  23326. type: array
  23327. required:
  23328. - key
  23329. - operator
  23330. type: object
  23331. type: array
  23332. type: object
  23333. type: array
  23334. required:
  23335. - nodeSelectorTerms
  23336. type: object
  23337. type: object
  23338. podAffinity:
  23339. description: Describes pod affinity
  23340. scheduling rules (e.g. co-locate this
  23341. pod in the same node, zone, etc. as
  23342. some other pod(s)).
  23343. properties:
  23344. preferredDuringSchedulingIgnoredDuringExecution:
  23345. description: The scheduler will
  23346. prefer to schedule pods to nodes
  23347. that satisfy the affinity expressions
  23348. specified by this field, but it
  23349. may choose a node that violates
  23350. one or more of the expressions.
  23351. The node that is most preferred
  23352. is the one with the greatest sum
  23353. of weights, i.e. for each node
  23354. that meets all of the scheduling
  23355. requirements (resource request,
  23356. requiredDuringScheduling affinity
  23357. expressions, etc.), compute a
  23358. sum by iterating through the elements
  23359. of this field and adding "weight"
  23360. to the sum if the node has pods
  23361. which matches the corresponding
  23362. podAffinityTerm; the node(s) with
  23363. the highest sum are the most preferred.
  23364. items:
  23365. description: The weights of all
  23366. of the matched WeightedPodAffinityTerm
  23367. fields are added per-node to
  23368. find the most preferred node(s)
  23369. properties:
  23370. podAffinityTerm:
  23371. description: Required. A pod
  23372. affinity term, associated
  23373. with the corresponding weight.
  23374. properties:
  23375. labelSelector:
  23376. description: A label query
  23377. over a set of resources,
  23378. in this case pods.
  23379. properties:
  23380. matchExpressions:
  23381. description: matchExpressions
  23382. is a list of label
  23383. selector requirements.
  23384. The requirements
  23385. are ANDed.
  23386. items:
  23387. description: A label
  23388. selector requirement
  23389. is a selector
  23390. that contains
  23391. values, a key,
  23392. and an operator
  23393. that relates the
  23394. key and values.
  23395. properties:
  23396. key:
  23397. description: key
  23398. is the label
  23399. key that the
  23400. selector applies
  23401. to.
  23402. type: string
  23403. operator:
  23404. description: operator
  23405. represents
  23406. a key's relationship
  23407. to a set of
  23408. values. Valid
  23409. operators
  23410. are In, NotIn,
  23411. Exists and
  23412. DoesNotExist.
  23413. type: string
  23414. values:
  23415. description: values
  23416. is an array
  23417. of string
  23418. values. If
  23419. the operator
  23420. is In or NotIn,
  23421. the values
  23422. array must
  23423. be non-empty.
  23424. If the operator
  23425. is Exists
  23426. or DoesNotExist,
  23427. the values
  23428. array must
  23429. be empty.
  23430. This array
  23431. is replaced
  23432. during a strategic
  23433. merge patch.
  23434. items:
  23435. type: string
  23436. type: array
  23437. required:
  23438. - key
  23439. - operator
  23440. type: object
  23441. type: array
  23442. matchLabels:
  23443. additionalProperties:
  23444. type: string
  23445. description: matchLabels
  23446. is a map of {key,value}
  23447. pairs. A single
  23448. {key,value} in the
  23449. matchLabels map
  23450. is equivalent to
  23451. an element of matchExpressions,
  23452. whose key field
  23453. is "key", the operator
  23454. is "In", and the
  23455. values array contains
  23456. only "value". The
  23457. requirements are
  23458. ANDed.
  23459. type: object
  23460. type: object
  23461. namespaces:
  23462. description: namespaces
  23463. specifies which namespaces
  23464. the labelSelector applies
  23465. to (matches against);
  23466. null or empty list means
  23467. "this pod's namespace"
  23468. items:
  23469. type: string
  23470. type: array
  23471. topologyKey:
  23472. description: This pod
  23473. should be co-located
  23474. (affinity) or not co-located
  23475. (anti-affinity) with
  23476. the pods matching the
  23477. labelSelector in the
  23478. specified namespaces,
  23479. where co-located is
  23480. defined as running on
  23481. a node whose value of
  23482. the label with key topologyKey
  23483. matches that of any
  23484. node on which any of
  23485. the selected pods is
  23486. running. Empty topologyKey
  23487. is not allowed.
  23488. type: string
  23489. required:
  23490. - topologyKey
  23491. type: object
  23492. weight:
  23493. description: weight associated
  23494. with matching the corresponding
  23495. podAffinityTerm, in the
  23496. range 1-100.
  23497. format: int32
  23498. type: integer
  23499. required:
  23500. - podAffinityTerm
  23501. - weight
  23502. type: object
  23503. type: array
  23504. requiredDuringSchedulingIgnoredDuringExecution:
  23505. description: If the affinity requirements
  23506. specified by this field are not
  23507. met at scheduling time, the pod
  23508. will not be scheduled onto the
  23509. node. If the affinity requirements
  23510. specified by this field cease
  23511. to be met at some point during
  23512. pod execution (e.g. due to a pod
  23513. label update), the system may
  23514. or may not try to eventually evict
  23515. the pod from its node. When there
  23516. are multiple elements, the lists
  23517. of nodes corresponding to each
  23518. podAffinityTerm are intersected,
  23519. i.e. all terms must be satisfied.
  23520. items:
  23521. description: Defines a set of
  23522. pods (namely those matching
  23523. the labelSelector relative to
  23524. the given namespace(s)) that
  23525. this pod should be co-located
  23526. (affinity) or not co-located
  23527. (anti-affinity) with, where
  23528. co-located is defined as running
  23529. on a node whose value of the
  23530. label with key <topologyKey>
  23531. matches that of any node on
  23532. which a pod of the set of pods
  23533. is running
  23534. properties:
  23535. labelSelector:
  23536. description: A label query
  23537. over a set of resources,
  23538. in this case pods.
  23539. properties:
  23540. matchExpressions:
  23541. description: matchExpressions
  23542. is a list of label selector
  23543. requirements. The requirements
  23544. are ANDed.
  23545. items:
  23546. description: A label
  23547. selector requirement
  23548. is a selector that
  23549. contains values, a
  23550. key, and an operator
  23551. that relates the key
  23552. and values.
  23553. properties:
  23554. key:
  23555. description: key
  23556. is the label key
  23557. that the selector
  23558. applies to.
  23559. type: string
  23560. operator:
  23561. description: operator
  23562. represents a key's
  23563. relationship to
  23564. a set of values.
  23565. Valid operators
  23566. are In, NotIn,
  23567. Exists and DoesNotExist.
  23568. type: string
  23569. values:
  23570. description: values
  23571. is an array of
  23572. string values.
  23573. If the operator
  23574. is In or NotIn,
  23575. the values array
  23576. must be non-empty.
  23577. If the operator
  23578. is Exists or DoesNotExist,
  23579. the values array
  23580. must be empty.
  23581. This array is
  23582. replaced during
  23583. a strategic merge
  23584. patch.
  23585. items:
  23586. type: string
  23587. type: array
  23588. required:
  23589. - key
  23590. - operator
  23591. type: object
  23592. type: array
  23593. matchLabels:
  23594. additionalProperties:
  23595. type: string
  23596. description: matchLabels
  23597. is a map of {key,value}
  23598. pairs. A single {key,value}
  23599. in the matchLabels map
  23600. is equivalent to an
  23601. element of matchExpressions,
  23602. whose key field is "key",
  23603. the operator is "In",
  23604. and the values array
  23605. contains only "value".
  23606. The requirements are
  23607. ANDed.
  23608. type: object
  23609. type: object
  23610. namespaces:
  23611. description: namespaces specifies
  23612. which namespaces the labelSelector
  23613. applies to (matches against);
  23614. null or empty list means
  23615. "this pod's namespace"
  23616. items:
  23617. type: string
  23618. type: array
  23619. topologyKey:
  23620. description: This pod should
  23621. be co-located (affinity)
  23622. or not co-located (anti-affinity)
  23623. with the pods matching the
  23624. labelSelector in the specified
  23625. namespaces, where co-located
  23626. is defined as running on
  23627. a node whose value of the
  23628. label with key topologyKey
  23629. matches that of any node
  23630. on which any of the selected
  23631. pods is running. Empty topologyKey
  23632. is not allowed.
  23633. type: string
  23634. required:
  23635. - topologyKey
  23636. type: object
  23637. type: array
  23638. type: object
  23639. podAntiAffinity:
  23640. description: Describes pod anti-affinity
  23641. scheduling rules (e.g. avoid putting
  23642. this pod in the same node, zone, etc.
  23643. as some other pod(s)).
  23644. properties:
  23645. preferredDuringSchedulingIgnoredDuringExecution:
  23646. description: The scheduler will
  23647. prefer to schedule pods to nodes
  23648. that satisfy the anti-affinity
  23649. expressions specified by this
  23650. field, but it may choose a node
  23651. that violates one or more of the
  23652. expressions. The node that is
  23653. most preferred is the one with
  23654. the greatest sum of weights, i.e.
  23655. for each node that meets all of
  23656. the scheduling requirements (resource
  23657. request, requiredDuringScheduling
  23658. anti-affinity expressions, etc.),
  23659. compute a sum by iterating through
  23660. the elements of this field and
  23661. adding "weight" to the sum if
  23662. the node has pods which matches
  23663. the corresponding podAffinityTerm;
  23664. the node(s) with the highest sum
  23665. are the most preferred.
  23666. items:
  23667. description: The weights of all
  23668. of the matched WeightedPodAffinityTerm
  23669. fields are added per-node to
  23670. find the most preferred node(s)
  23671. properties:
  23672. podAffinityTerm:
  23673. description: Required. A pod
  23674. affinity term, associated
  23675. with the corresponding weight.
  23676. properties:
  23677. labelSelector:
  23678. description: A label query
  23679. over a set of resources,
  23680. in this case pods.
  23681. properties:
  23682. matchExpressions:
  23683. description: matchExpressions
  23684. is a list of label
  23685. selector requirements.
  23686. The requirements
  23687. are ANDed.
  23688. items:
  23689. description: A label
  23690. selector requirement
  23691. is a selector
  23692. that contains
  23693. values, a key,
  23694. and an operator
  23695. that relates the
  23696. key and values.
  23697. properties:
  23698. key:
  23699. description: key
  23700. is the label
  23701. key that the
  23702. selector applies
  23703. to.
  23704. type: string
  23705. operator:
  23706. description: operator
  23707. represents
  23708. a key's relationship
  23709. to a set of
  23710. values. Valid
  23711. operators
  23712. are In, NotIn,
  23713. Exists and
  23714. DoesNotExist.
  23715. type: string
  23716. values:
  23717. description: values
  23718. is an array
  23719. of string
  23720. values. If
  23721. the operator
  23722. is In or NotIn,
  23723. the values
  23724. array must
  23725. be non-empty.
  23726. If the operator
  23727. is Exists
  23728. or DoesNotExist,
  23729. the values
  23730. array must
  23731. be empty.
  23732. This array
  23733. is replaced
  23734. during a strategic
  23735. merge patch.
  23736. items:
  23737. type: string
  23738. type: array
  23739. required:
  23740. - key
  23741. - operator
  23742. type: object
  23743. type: array
  23744. matchLabels:
  23745. additionalProperties:
  23746. type: string
  23747. description: matchLabels
  23748. is a map of {key,value}
  23749. pairs. A single
  23750. {key,value} in the
  23751. matchLabels map
  23752. is equivalent to
  23753. an element of matchExpressions,
  23754. whose key field
  23755. is "key", the operator
  23756. is "In", and the
  23757. values array contains
  23758. only "value". The
  23759. requirements are
  23760. ANDed.
  23761. type: object
  23762. type: object
  23763. namespaces:
  23764. description: namespaces
  23765. specifies which namespaces
  23766. the labelSelector applies
  23767. to (matches against);
  23768. null or empty list means
  23769. "this pod's namespace"
  23770. items:
  23771. type: string
  23772. type: array
  23773. topologyKey:
  23774. description: This pod
  23775. should be co-located
  23776. (affinity) or not co-located
  23777. (anti-affinity) with
  23778. the pods matching the
  23779. labelSelector in the
  23780. specified namespaces,
  23781. where co-located is
  23782. defined as running on
  23783. a node whose value of
  23784. the label with key topologyKey
  23785. matches that of any
  23786. node on which any of
  23787. the selected pods is
  23788. running. Empty topologyKey
  23789. is not allowed.
  23790. type: string
  23791. required:
  23792. - topologyKey
  23793. type: object
  23794. weight:
  23795. description: weight associated
  23796. with matching the corresponding
  23797. podAffinityTerm, in the
  23798. range 1-100.
  23799. format: int32
  23800. type: integer
  23801. required:
  23802. - podAffinityTerm
  23803. - weight
  23804. type: object
  23805. type: array
  23806. requiredDuringSchedulingIgnoredDuringExecution:
  23807. description: If the anti-affinity
  23808. requirements specified by this
  23809. field are not met at scheduling
  23810. time, the pod will not be scheduled
  23811. onto the node. If the anti-affinity
  23812. requirements specified by this
  23813. field cease to be met at some
  23814. point during pod execution (e.g.
  23815. due to a pod label update), the
  23816. system may or may not try to eventually
  23817. evict the pod from its node. When
  23818. there are multiple elements, the
  23819. lists of nodes corresponding to
  23820. each podAffinityTerm are intersected,
  23821. i.e. all terms must be satisfied.
  23822. items:
  23823. description: Defines a set of
  23824. pods (namely those matching
  23825. the labelSelector relative to
  23826. the given namespace(s)) that
  23827. this pod should be co-located
  23828. (affinity) or not co-located
  23829. (anti-affinity) with, where
  23830. co-located is defined as running
  23831. on a node whose value of the
  23832. label with key <topologyKey>
  23833. matches that of any node on
  23834. which a pod of the set of pods
  23835. is running
  23836. properties:
  23837. labelSelector:
  23838. description: A label query
  23839. over a set of resources,
  23840. in this case pods.
  23841. properties:
  23842. matchExpressions:
  23843. description: matchExpressions
  23844. is a list of label selector
  23845. requirements. The requirements
  23846. are ANDed.
  23847. items:
  23848. description: A label
  23849. selector requirement
  23850. is a selector that
  23851. contains values, a
  23852. key, and an operator
  23853. that relates the key
  23854. and values.
  23855. properties:
  23856. key:
  23857. description: key
  23858. is the label key
  23859. that the selector
  23860. applies to.
  23861. type: string
  23862. operator:
  23863. description: operator
  23864. represents a key's
  23865. relationship to
  23866. a set of values.
  23867. Valid operators
  23868. are In, NotIn,
  23869. Exists and DoesNotExist.
  23870. type: string
  23871. values:
  23872. description: values
  23873. is an array of
  23874. string values.
  23875. If the operator
  23876. is In or NotIn,
  23877. the values array
  23878. must be non-empty.
  23879. If the operator
  23880. is Exists or DoesNotExist,
  23881. the values array
  23882. must be empty.
  23883. This array is
  23884. replaced during
  23885. a strategic merge
  23886. patch.
  23887. items:
  23888. type: string
  23889. type: array
  23890. required:
  23891. - key
  23892. - operator
  23893. type: object
  23894. type: array
  23895. matchLabels:
  23896. additionalProperties:
  23897. type: string
  23898. description: matchLabels
  23899. is a map of {key,value}
  23900. pairs. A single {key,value}
  23901. in the matchLabels map
  23902. is equivalent to an
  23903. element of matchExpressions,
  23904. whose key field is "key",
  23905. the operator is "In",
  23906. and the values array
  23907. contains only "value".
  23908. The requirements are
  23909. ANDed.
  23910. type: object
  23911. type: object
  23912. namespaces:
  23913. description: namespaces specifies
  23914. which namespaces the labelSelector
  23915. applies to (matches against);
  23916. null or empty list means
  23917. "this pod's namespace"
  23918. items:
  23919. type: string
  23920. type: array
  23921. topologyKey:
  23922. description: This pod should
  23923. be co-located (affinity)
  23924. or not co-located (anti-affinity)
  23925. with the pods matching the
  23926. labelSelector in the specified
  23927. namespaces, where co-located
  23928. is defined as running on
  23929. a node whose value of the
  23930. label with key topologyKey
  23931. matches that of any node
  23932. on which any of the selected
  23933. pods is running. Empty topologyKey
  23934. is not allowed.
  23935. type: string
  23936. required:
  23937. - topologyKey
  23938. type: object
  23939. type: array
  23940. type: object
  23941. type: object
  23942. nodeSelector:
  23943. additionalProperties:
  23944. type: string
  23945. description: 'NodeSelector is a selector
  23946. which must be true for the pod to fit
  23947. on a node. Selector which must match a
  23948. node''s labels for the pod to be scheduled
  23949. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  23950. type: object
  23951. priorityClassName:
  23952. description: If specified, the pod's priorityClassName.
  23953. type: string
  23954. serviceAccountName:
  23955. description: If specified, the pod's service
  23956. account
  23957. type: string
  23958. tolerations:
  23959. description: If specified, the pod's tolerations.
  23960. items:
  23961. description: The pod this Toleration is
  23962. attached to tolerates any taint that
  23963. matches the triple <key,value,effect>
  23964. using the matching operator <operator>.
  23965. properties:
  23966. effect:
  23967. description: Effect indicates the
  23968. taint effect to match. Empty means
  23969. match all taint effects. When specified,
  23970. allowed values are NoSchedule, PreferNoSchedule
  23971. and NoExecute.
  23972. type: string
  23973. key:
  23974. description: Key is the taint key
  23975. that the toleration applies to.
  23976. Empty means match all taint keys.
  23977. If the key is empty, operator must
  23978. be Exists; this combination means
  23979. to match all values and all keys.
  23980. type: string
  23981. operator:
  23982. description: Operator represents a
  23983. key's relationship to the value.
  23984. Valid operators are Exists and Equal.
  23985. Defaults to Equal. Exists is equivalent
  23986. to wildcard for value, so that a
  23987. pod can tolerate all taints of a
  23988. particular category.
  23989. type: string
  23990. tolerationSeconds:
  23991. description: TolerationSeconds represents
  23992. the period of time the toleration
  23993. (which must be of effect NoExecute,
  23994. otherwise this field is ignored)
  23995. tolerates the taint. By default,
  23996. it is not set, which means tolerate
  23997. the taint forever (do not evict).
  23998. Zero and negative values will be
  23999. treated as 0 (evict immediately)
  24000. by the system.
  24001. format: int64
  24002. type: integer
  24003. value:
  24004. description: Value is the taint value
  24005. the toleration matches to. If the
  24006. operator is Exists, the value should
  24007. be empty, otherwise just a regular
  24008. string.
  24009. type: string
  24010. type: object
  24011. type: array
  24012. type: object
  24013. type: object
  24014. serviceType:
  24015. description: Optional service type for Kubernetes
  24016. solver service
  24017. type: string
  24018. type: object
  24019. type: object
  24020. selector:
  24021. description: Selector selects a set of DNSNames on the Certificate
  24022. resource that should be solved using this challenge solver.
  24023. If not specified, the solver will be treated as the 'default'
  24024. solver with the lowest priority, i.e. if any other solver
  24025. has a more specific match, it will be used instead.
  24026. properties:
  24027. dnsNames:
  24028. description: List of DNSNames that this solver will
  24029. be used to solve. If specified and a match is found,
  24030. a dnsNames selector will take precedence over a dnsZones
  24031. selector. If multiple solvers match with the same
  24032. dnsNames value, the solver with the most matching
  24033. labels in matchLabels will be selected. If neither
  24034. has more matches, the solver defined earlier in the
  24035. list will be selected.
  24036. items:
  24037. type: string
  24038. type: array
  24039. dnsZones:
  24040. description: List of DNSZones that this solver will
  24041. be used to solve. The most specific DNS zone match
  24042. specified here will take precedence over other DNS
  24043. zone matches, so a solver specifying sys.example.com
  24044. will be selected over one specifying example.com for
  24045. the domain www.sys.example.com. If multiple solvers
  24046. match with the same dnsZones value, the solver with
  24047. the most matching labels in matchLabels will be selected.
  24048. If neither has more matches, the solver defined earlier
  24049. in the list will be selected.
  24050. items:
  24051. type: string
  24052. type: array
  24053. matchLabels:
  24054. additionalProperties:
  24055. type: string
  24056. description: A label selector that is used to refine
  24057. the set of certificate's that this challenge solver
  24058. will apply to.
  24059. type: object
  24060. type: object
  24061. type: object
  24062. type: array
  24063. required:
  24064. - privateKeySecretRef
  24065. - server
  24066. type: object
  24067. ca:
  24068. description: CA configures this issuer to sign certificates using
  24069. a signing CA keypair stored in a Secret resource. This is used to
  24070. build internal PKIs that are managed by cert-manager.
  24071. properties:
  24072. crlDistributionPoints:
  24073. description: The CRL distribution points is an X.509 v3 certificate
  24074. extension which identifies the location of the CRL from which
  24075. the revocation of this certificate can be checked. If not set,
  24076. certificates will be issued without distribution points set.
  24077. items:
  24078. type: string
  24079. type: array
  24080. secretName:
  24081. description: SecretName is the name of the secret used to sign
  24082. Certificates issued by this Issuer.
  24083. type: string
  24084. required:
  24085. - secretName
  24086. type: object
  24087. selfSigned:
  24088. description: SelfSigned configures this issuer to 'self sign' certificates
  24089. using the private key used to create the CertificateRequest object.
  24090. properties:
  24091. crlDistributionPoints:
  24092. description: The CRL distribution points is an X.509 v3 certificate
  24093. extension which identifies the location of the CRL from which
  24094. the revocation of this certificate can be checked. If not set
  24095. certificate will be issued without CDP. Values are strings.
  24096. items:
  24097. type: string
  24098. type: array
  24099. type: object
  24100. vault:
  24101. description: Vault configures this issuer to sign certificates using
  24102. a HashiCorp Vault PKI backend.
  24103. properties:
  24104. auth:
  24105. description: Auth configures how cert-manager authenticates with
  24106. the Vault server.
  24107. properties:
  24108. appRole:
  24109. description: AppRole authenticates with Vault using the App
  24110. Role auth mechanism, with the role and secret stored in
  24111. a Kubernetes Secret resource.
  24112. properties:
  24113. path:
  24114. description: 'Path where the App Role authentication backend
  24115. is mounted in Vault, e.g: "approle"'
  24116. type: string
  24117. roleId:
  24118. description: RoleID configured in the App Role authentication
  24119. backend when setting up the authentication backend in
  24120. Vault.
  24121. type: string
  24122. secretRef:
  24123. description: Reference to a key in a Secret that contains
  24124. the App Role secret used to authenticate with Vault.
  24125. The `key` field must be specified and denotes which
  24126. entry within the Secret resource is used as the app
  24127. role secret.
  24128. properties:
  24129. key:
  24130. description: The key of the entry in the Secret resource's
  24131. `data` field to be used. Some instances of this
  24132. field may be defaulted, in others it may be required.
  24133. type: string
  24134. name:
  24135. description: 'Name of the resource being referred
  24136. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24137. type: string
  24138. required:
  24139. - name
  24140. type: object
  24141. required:
  24142. - path
  24143. - roleId
  24144. - secretRef
  24145. type: object
  24146. kubernetes:
  24147. description: Kubernetes authenticates with Vault by passing
  24148. the ServiceAccount token stored in the named Secret resource
  24149. to the Vault server.
  24150. properties:
  24151. mountPath:
  24152. description: The Vault mountPath here is the mount path
  24153. to use when authenticating with Vault. For example,
  24154. setting a value to `/v1/auth/foo`, will use the path
  24155. `/v1/auth/foo/login` to authenticate with Vault. If
  24156. unspecified, the default value "/v1/auth/kubernetes"
  24157. will be used.
  24158. type: string
  24159. role:
  24160. description: A required field containing the Vault Role
  24161. to assume. A Role binds a Kubernetes ServiceAccount
  24162. with a set of Vault policies.
  24163. type: string
  24164. secretRef:
  24165. description: The required Secret field containing a Kubernetes
  24166. ServiceAccount JWT used for authenticating with Vault.
  24167. Use of 'ambient credentials' is not supported.
  24168. properties:
  24169. key:
  24170. description: The key of the entry in the Secret resource's
  24171. `data` field to be used. Some instances of this
  24172. field may be defaulted, in others it may be required.
  24173. type: string
  24174. name:
  24175. description: 'Name of the resource being referred
  24176. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24177. type: string
  24178. required:
  24179. - name
  24180. type: object
  24181. required:
  24182. - role
  24183. - secretRef
  24184. type: object
  24185. tokenSecretRef:
  24186. description: TokenSecretRef authenticates with Vault by presenting
  24187. a token.
  24188. properties:
  24189. key:
  24190. description: The key of the entry in the Secret resource's
  24191. `data` field to be used. Some instances of this field
  24192. may be defaulted, in others it may be required.
  24193. type: string
  24194. name:
  24195. description: 'Name of the resource being referred to.
  24196. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24197. type: string
  24198. required:
  24199. - name
  24200. type: object
  24201. type: object
  24202. caBundle:
  24203. description: PEM encoded CA bundle used to validate Vault server
  24204. certificate. Only used if the Server URL is using HTTPS protocol.
  24205. This parameter is ignored for plain HTTP protocol connection.
  24206. If not set the system root certificates are used to validate
  24207. the TLS connection.
  24208. format: byte
  24209. type: string
  24210. namespace:
  24211. description: 'Name of the vault namespace. Namespaces is a set
  24212. of features within Vault Enterprise that allows Vault environments
  24213. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  24214. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  24215. type: string
  24216. path:
  24217. description: 'Path is the mount path of the Vault PKI backend''s
  24218. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  24219. type: string
  24220. server:
  24221. description: 'Server is the connection address for the Vault server,
  24222. e.g: "https://vault.example.com:8200".'
  24223. type: string
  24224. required:
  24225. - auth
  24226. - path
  24227. - server
  24228. type: object
  24229. venafi:
  24230. description: Venafi configures this issuer to sign certificates using
  24231. a Venafi TPP or Venafi Cloud policy zone.
  24232. properties:
  24233. cloud:
  24234. description: Cloud specifies the Venafi cloud configuration settings.
  24235. Only one of TPP or Cloud may be specified.
  24236. properties:
  24237. apiTokenSecretRef:
  24238. description: APITokenSecretRef is a secret key selector for
  24239. the Venafi Cloud API token.
  24240. properties:
  24241. key:
  24242. description: The key of the entry in the Secret resource's
  24243. `data` field to be used. Some instances of this field
  24244. may be defaulted, in others it may be required.
  24245. type: string
  24246. name:
  24247. description: 'Name of the resource being referred to.
  24248. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24249. type: string
  24250. required:
  24251. - name
  24252. type: object
  24253. url:
  24254. description: URL is the base URL for Venafi Cloud. Defaults
  24255. to "https://api.venafi.cloud/v1".
  24256. type: string
  24257. required:
  24258. - apiTokenSecretRef
  24259. type: object
  24260. tpp:
  24261. description: TPP specifies Trust Protection Platform configuration
  24262. settings. Only one of TPP or Cloud may be specified.
  24263. properties:
  24264. caBundle:
  24265. description: CABundle is a PEM encoded TLS certificate to
  24266. use to verify connections to the TPP instance. If specified,
  24267. system roots will not be used and the issuing CA for the
  24268. TPP instance must be verifiable using the provided root.
  24269. If not specified, the connection will be verified using
  24270. the cert-manager system root certificates.
  24271. format: byte
  24272. type: string
  24273. credentialsRef:
  24274. description: CredentialsRef is a reference to a Secret containing
  24275. the username and password for the TPP server. The secret
  24276. must contain two keys, 'username' and 'password'.
  24277. properties:
  24278. name:
  24279. description: 'Name of the resource being referred to.
  24280. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24281. type: string
  24282. required:
  24283. - name
  24284. type: object
  24285. url:
  24286. description: 'URL is the base URL for the vedsdk endpoint
  24287. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  24288. type: string
  24289. required:
  24290. - credentialsRef
  24291. - url
  24292. type: object
  24293. zone:
  24294. description: Zone is the Venafi Policy Zone to use for this issuer.
  24295. All requests made to the Venafi platform will be restricted
  24296. by the named zone policy. This field is required.
  24297. type: string
  24298. required:
  24299. - zone
  24300. type: object
  24301. type: object
  24302. status:
  24303. description: Status of the Issuer. This is set and managed automatically.
  24304. properties:
  24305. acme:
  24306. description: ACME specific status options. This field should only
  24307. be set if the Issuer is configured to use an ACME server to issue
  24308. certificates.
  24309. properties:
  24310. lastRegisteredEmail:
  24311. description: LastRegisteredEmail is the email associated with
  24312. the latest registered ACME account, in order to track changes
  24313. made to registered account associated with the Issuer
  24314. type: string
  24315. uri:
  24316. description: URI is the unique account identifier, which can also
  24317. be used to retrieve account details from the CA
  24318. type: string
  24319. type: object
  24320. conditions:
  24321. description: List of status conditions to indicate the status of a
  24322. CertificateRequest. Known condition types are `Ready`.
  24323. items:
  24324. description: IssuerCondition contains condition information for
  24325. an Issuer.
  24326. properties:
  24327. lastTransitionTime:
  24328. description: LastTransitionTime is the timestamp corresponding
  24329. to the last status change of this condition.
  24330. format: date-time
  24331. type: string
  24332. message:
  24333. description: Message is a human readable description of the
  24334. details of the last transition, complementing reason.
  24335. type: string
  24336. reason:
  24337. description: Reason is a brief machine readable explanation
  24338. for the condition's last transition.
  24339. type: string
  24340. status:
  24341. description: Status of the condition, one of ('True', 'False',
  24342. 'Unknown').
  24343. enum:
  24344. - "True"
  24345. - "False"
  24346. - Unknown
  24347. type: string
  24348. type:
  24349. description: Type of the condition, known values are ('Ready').
  24350. type: string
  24351. required:
  24352. - status
  24353. - type
  24354. type: object
  24355. type: array
  24356. type: object
  24357. required:
  24358. - spec
  24359. type: object
  24360. served: true
  24361. storage: true
  24362. subresources:
  24363. status: {}
  24364. status:
  24365. acceptedNames:
  24366. kind: ""
  24367. plural: ""
  24368. conditions: []
  24369. storedVersions: []
  24370. ---
  24371. apiVersion: apiextensions.k8s.io/v1
  24372. kind: CustomResourceDefinition
  24373. metadata:
  24374. annotations:
  24375. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  24376. labels:
  24377. app: cert-manager
  24378. app.kubernetes.io/instance: cert-manager
  24379. app.kubernetes.io/name: cert-manager
  24380. name: orders.acme.cert-manager.io
  24381. spec:
  24382. conversion:
  24383. strategy: Webhook
  24384. webhook:
  24385. clientConfig:
  24386. service:
  24387. name: cert-manager-webhook
  24388. namespace: cert-manager
  24389. path: /convert
  24390. conversionReviewVersions:
  24391. - v1
  24392. - v1beta1
  24393. group: acme.cert-manager.io
  24394. names:
  24395. kind: Order
  24396. listKind: OrderList
  24397. plural: orders
  24398. singular: order
  24399. scope: Namespaced
  24400. versions:
  24401. - additionalPrinterColumns:
  24402. - jsonPath: .status.state
  24403. name: State
  24404. type: string
  24405. - jsonPath: .spec.issuerRef.name
  24406. name: Issuer
  24407. priority: 1
  24408. type: string
  24409. - jsonPath: .status.reason
  24410. name: Reason
  24411. priority: 1
  24412. type: string
  24413. - description: CreationTimestamp is a timestamp representing the server time when
  24414. this object was created. It is not guaranteed to be set in happens-before
  24415. order across separate operations. Clients may not set this value. It is represented
  24416. in RFC3339 form and is in UTC.
  24417. jsonPath: .metadata.creationTimestamp
  24418. name: Age
  24419. type: date
  24420. name: v1alpha2
  24421. schema:
  24422. openAPIV3Schema:
  24423. description: Order is a type to represent an Order with an ACME server
  24424. properties:
  24425. apiVersion:
  24426. description: 'APIVersion defines the versioned schema of this representation
  24427. of an object. Servers should convert recognized schemas to the latest
  24428. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  24429. type: string
  24430. kind:
  24431. description: 'Kind is a string value representing the REST resource this
  24432. object represents. Servers may infer this from the endpoint the client
  24433. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  24434. type: string
  24435. metadata:
  24436. type: object
  24437. spec:
  24438. properties:
  24439. commonName:
  24440. description: CommonName is the common name as specified on the DER
  24441. encoded CSR. If specified, this value must also be present in `dnsNames`.
  24442. This field must match the corresponding field on the DER encoded
  24443. CSR.
  24444. type: string
  24445. csr:
  24446. description: Certificate signing request bytes in DER encoding. This
  24447. will be used when finalizing the order. This field must be set on
  24448. the order.
  24449. format: byte
  24450. type: string
  24451. dnsNames:
  24452. description: DNSNames is a list of DNS names that should be included
  24453. as part of the Order validation process. This field must match the
  24454. corresponding field on the DER encoded CSR.
  24455. items:
  24456. type: string
  24457. type: array
  24458. issuerRef:
  24459. description: IssuerRef references a properly configured ACME-type
  24460. Issuer which should be used to create this Order. If the Issuer
  24461. does not exist, processing will be retried. If the Issuer is not
  24462. an 'ACME' Issuer, an error will be returned and the Order will be
  24463. marked as failed.
  24464. properties:
  24465. group:
  24466. description: Group of the resource being referred to.
  24467. type: string
  24468. kind:
  24469. description: Kind of the resource being referred to.
  24470. type: string
  24471. name:
  24472. description: Name of the resource being referred to.
  24473. type: string
  24474. required:
  24475. - name
  24476. type: object
  24477. required:
  24478. - csr
  24479. - dnsNames
  24480. - issuerRef
  24481. type: object
  24482. status:
  24483. properties:
  24484. authorizations:
  24485. description: Authorizations contains data returned from the ACME server
  24486. on what authorizations must be completed in order to validate the
  24487. DNS names specified on the Order.
  24488. items:
  24489. description: ACMEAuthorization contains data returned from the ACME
  24490. server on an authorization that must be completed in order validate
  24491. a DNS name on an ACME Order resource.
  24492. properties:
  24493. challenges:
  24494. description: Challenges specifies the challenge types offered
  24495. by the ACME server. One of these challenge types will be selected
  24496. when validating the DNS name and an appropriate Challenge
  24497. resource will be created to perform the ACME challenge process.
  24498. items:
  24499. description: Challenge specifies a challenge offered by the
  24500. ACME server for an Order. An appropriate Challenge resource
  24501. can be created to perform the ACME challenge process.
  24502. properties:
  24503. token:
  24504. description: Token is the token that must be presented
  24505. for this challenge. This is used to compute the 'key'
  24506. that must also be presented.
  24507. type: string
  24508. type:
  24509. description: Type is the type of challenge being offered,
  24510. e.g. 'http-01', 'dns-01', 'tls-sni-01', etc. This is
  24511. the raw value retrieved from the ACME server. Only 'http-01'
  24512. and 'dns-01' are supported by cert-manager, other values
  24513. will be ignored.
  24514. type: string
  24515. url:
  24516. description: URL is the URL of this challenge. It can
  24517. be used to retrieve additional metadata about the Challenge
  24518. from the ACME server.
  24519. type: string
  24520. required:
  24521. - token
  24522. - type
  24523. - url
  24524. type: object
  24525. type: array
  24526. identifier:
  24527. description: Identifier is the DNS name to be validated as part
  24528. of this authorization
  24529. type: string
  24530. initialState:
  24531. description: InitialState is the initial state of the ACME authorization
  24532. when first fetched from the ACME server. If an Authorization
  24533. is already 'valid', the Order controller will not create a
  24534. Challenge resource for the authorization. This will occur
  24535. when working with an ACME server that enables 'authz reuse'
  24536. (such as Let's Encrypt's production endpoint). If not set
  24537. and 'identifier' is set, the state is assumed to be pending
  24538. and a Challenge will be created.
  24539. enum:
  24540. - valid
  24541. - ready
  24542. - pending
  24543. - processing
  24544. - invalid
  24545. - expired
  24546. - errored
  24547. type: string
  24548. url:
  24549. description: URL is the URL of the Authorization that must be
  24550. completed
  24551. type: string
  24552. wildcard:
  24553. description: Wildcard will be true if this authorization is
  24554. for a wildcard DNS name. If this is true, the identifier will
  24555. be the *non-wildcard* version of the DNS name. For example,
  24556. if '*.example.com' is the DNS name being validated, this field
  24557. will be 'true' and the 'identifier' field will be 'example.com'.
  24558. type: boolean
  24559. required:
  24560. - url
  24561. type: object
  24562. type: array
  24563. certificate:
  24564. description: Certificate is a copy of the PEM encoded certificate
  24565. for this Order. This field will be populated after the order has
  24566. been successfully finalized with the ACME server, and the order
  24567. has transitioned to the 'valid' state.
  24568. format: byte
  24569. type: string
  24570. failureTime:
  24571. description: FailureTime stores the time that this order failed. This
  24572. is used to influence garbage collection and back-off.
  24573. format: date-time
  24574. type: string
  24575. finalizeURL:
  24576. description: FinalizeURL of the Order. This is used to obtain certificates
  24577. for this order once it has been completed.
  24578. type: string
  24579. reason:
  24580. description: Reason optionally provides more information about a why
  24581. the order is in the current state.
  24582. type: string
  24583. state:
  24584. description: State contains the current state of this Order resource.
  24585. States 'success' and 'expired' are 'final'
  24586. enum:
  24587. - valid
  24588. - ready
  24589. - pending
  24590. - processing
  24591. - invalid
  24592. - expired
  24593. - errored
  24594. type: string
  24595. url:
  24596. description: URL of the Order. This will initially be empty when the
  24597. resource is first created. The Order controller will populate this
  24598. field when the Order is first processed. This field will be immutable
  24599. after it is initially set.
  24600. type: string
  24601. type: object
  24602. required:
  24603. - metadata
  24604. type: object
  24605. served: true
  24606. storage: false
  24607. subresources:
  24608. status: {}
  24609. - additionalPrinterColumns:
  24610. - jsonPath: .status.state
  24611. name: State
  24612. type: string
  24613. - jsonPath: .spec.issuerRef.name
  24614. name: Issuer
  24615. priority: 1
  24616. type: string
  24617. - jsonPath: .status.reason
  24618. name: Reason
  24619. priority: 1
  24620. type: string
  24621. - description: CreationTimestamp is a timestamp representing the server time when
  24622. this object was created. It is not guaranteed to be set in happens-before
  24623. order across separate operations. Clients may not set this value. It is represented
  24624. in RFC3339 form and is in UTC.
  24625. jsonPath: .metadata.creationTimestamp
  24626. name: Age
  24627. type: date
  24628. name: v1alpha3
  24629. schema:
  24630. openAPIV3Schema:
  24631. description: Order is a type to represent an Order with an ACME server
  24632. properties:
  24633. apiVersion:
  24634. description: 'APIVersion defines the versioned schema of this representation
  24635. of an object. Servers should convert recognized schemas to the latest
  24636. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  24637. type: string
  24638. kind:
  24639. description: 'Kind is a string value representing the REST resource this
  24640. object represents. Servers may infer this from the endpoint the client
  24641. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  24642. type: string
  24643. metadata:
  24644. type: object
  24645. spec:
  24646. properties:
  24647. commonName:
  24648. description: CommonName is the common name as specified on the DER
  24649. encoded CSR. If specified, this value must also be present in `dnsNames`.
  24650. This field must match the corresponding field on the DER encoded
  24651. CSR.
  24652. type: string
  24653. csr:
  24654. description: Certificate signing request bytes in DER encoding. This
  24655. will be used when finalizing the order. This field must be set on
  24656. the order.
  24657. format: byte
  24658. type: string
  24659. dnsNames:
  24660. description: DNSNames is a list of DNS names that should be included
  24661. as part of the Order validation process. This field must match the
  24662. corresponding field on the DER encoded CSR.
  24663. items:
  24664. type: string
  24665. type: array
  24666. issuerRef:
  24667. description: IssuerRef references a properly configured ACME-type
  24668. Issuer which should be used to create this Order. If the Issuer
  24669. does not exist, processing will be retried. If the Issuer is not
  24670. an 'ACME' Issuer, an error will be returned and the Order will be
  24671. marked as failed.
  24672. properties:
  24673. group:
  24674. description: Group of the resource being referred to.
  24675. type: string
  24676. kind:
  24677. description: Kind of the resource being referred to.
  24678. type: string
  24679. name:
  24680. description: Name of the resource being referred to.
  24681. type: string
  24682. required:
  24683. - name
  24684. type: object
  24685. required:
  24686. - csr
  24687. - dnsNames
  24688. - issuerRef
  24689. type: object
  24690. status:
  24691. properties:
  24692. authorizations:
  24693. description: Authorizations contains data returned from the ACME server
  24694. on what authorizations must be completed in order to validate the
  24695. DNS names specified on the Order.
  24696. items:
  24697. description: ACMEAuthorization contains data returned from the ACME
  24698. server on an authorization that must be completed in order validate
  24699. a DNS name on an ACME Order resource.
  24700. properties:
  24701. challenges:
  24702. description: Challenges specifies the challenge types offered
  24703. by the ACME server. One of these challenge types will be selected
  24704. when validating the DNS name and an appropriate Challenge
  24705. resource will be created to perform the ACME challenge process.
  24706. items:
  24707. description: Challenge specifies a challenge offered by the
  24708. ACME server for an Order. An appropriate Challenge resource
  24709. can be created to perform the ACME challenge process.
  24710. properties:
  24711. token:
  24712. description: Token is the token that must be presented
  24713. for this challenge. This is used to compute the 'key'
  24714. that must also be presented.
  24715. type: string
  24716. type:
  24717. description: Type is the type of challenge being offered,
  24718. e.g. 'http-01', 'dns-01', 'tls-sni-01', etc. This is
  24719. the raw value retrieved from the ACME server. Only 'http-01'
  24720. and 'dns-01' are supported by cert-manager, other values
  24721. will be ignored.
  24722. type: string
  24723. url:
  24724. description: URL is the URL of this challenge. It can
  24725. be used to retrieve additional metadata about the Challenge
  24726. from the ACME server.
  24727. type: string
  24728. required:
  24729. - token
  24730. - type
  24731. - url
  24732. type: object
  24733. type: array
  24734. identifier:
  24735. description: Identifier is the DNS name to be validated as part
  24736. of this authorization
  24737. type: string
  24738. initialState:
  24739. description: InitialState is the initial state of the ACME authorization
  24740. when first fetched from the ACME server. If an Authorization
  24741. is already 'valid', the Order controller will not create a
  24742. Challenge resource for the authorization. This will occur
  24743. when working with an ACME server that enables 'authz reuse'
  24744. (such as Let's Encrypt's production endpoint). If not set
  24745. and 'identifier' is set, the state is assumed to be pending
  24746. and a Challenge will be created.
  24747. enum:
  24748. - valid
  24749. - ready
  24750. - pending
  24751. - processing
  24752. - invalid
  24753. - expired
  24754. - errored
  24755. type: string
  24756. url:
  24757. description: URL is the URL of the Authorization that must be
  24758. completed
  24759. type: string
  24760. wildcard:
  24761. description: Wildcard will be true if this authorization is
  24762. for a wildcard DNS name. If this is true, the identifier will
  24763. be the *non-wildcard* version of the DNS name. For example,
  24764. if '*.example.com' is the DNS name being validated, this field
  24765. will be 'true' and the 'identifier' field will be 'example.com'.
  24766. type: boolean
  24767. required:
  24768. - url
  24769. type: object
  24770. type: array
  24771. certificate:
  24772. description: Certificate is a copy of the PEM encoded certificate
  24773. for this Order. This field will be populated after the order has
  24774. been successfully finalized with the ACME server, and the order
  24775. has transitioned to the 'valid' state.
  24776. format: byte
  24777. type: string
  24778. failureTime:
  24779. description: FailureTime stores the time that this order failed. This
  24780. is used to influence garbage collection and back-off.
  24781. format: date-time
  24782. type: string
  24783. finalizeURL:
  24784. description: FinalizeURL of the Order. This is used to obtain certificates
  24785. for this order once it has been completed.
  24786. type: string
  24787. reason:
  24788. description: Reason optionally provides more information about a why
  24789. the order is in the current state.
  24790. type: string
  24791. state:
  24792. description: State contains the current state of this Order resource.
  24793. States 'success' and 'expired' are 'final'
  24794. enum:
  24795. - valid
  24796. - ready
  24797. - pending
  24798. - processing
  24799. - invalid
  24800. - expired
  24801. - errored
  24802. type: string
  24803. url:
  24804. description: URL of the Order. This will initially be empty when the
  24805. resource is first created. The Order controller will populate this
  24806. field when the Order is first processed. This field will be immutable
  24807. after it is initially set.
  24808. type: string
  24809. type: object
  24810. required:
  24811. - metadata
  24812. type: object
  24813. served: true
  24814. storage: false
  24815. subresources:
  24816. status: {}
  24817. - additionalPrinterColumns:
  24818. - jsonPath: .status.state
  24819. name: State
  24820. type: string
  24821. - jsonPath: .spec.issuerRef.name
  24822. name: Issuer
  24823. priority: 1
  24824. type: string
  24825. - jsonPath: .status.reason
  24826. name: Reason
  24827. priority: 1
  24828. type: string
  24829. - description: CreationTimestamp is a timestamp representing the server time when
  24830. this object was created. It is not guaranteed to be set in happens-before
  24831. order across separate operations. Clients may not set this value. It is represented
  24832. in RFC3339 form and is in UTC.
  24833. jsonPath: .metadata.creationTimestamp
  24834. name: Age
  24835. type: date
  24836. name: v1beta1
  24837. schema:
  24838. openAPIV3Schema:
  24839. description: Order is a type to represent an Order with an ACME server
  24840. properties:
  24841. apiVersion:
  24842. description: 'APIVersion defines the versioned schema of this representation
  24843. of an object. Servers should convert recognized schemas to the latest
  24844. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  24845. type: string
  24846. kind:
  24847. description: 'Kind is a string value representing the REST resource this
  24848. object represents. Servers may infer this from the endpoint the client
  24849. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  24850. type: string
  24851. metadata:
  24852. type: object
  24853. spec:
  24854. properties:
  24855. commonName:
  24856. description: CommonName is the common name as specified on the DER
  24857. encoded CSR. If specified, this value must also be present in `dnsNames`.
  24858. This field must match the corresponding field on the DER encoded
  24859. CSR.
  24860. type: string
  24861. dnsNames:
  24862. description: DNSNames is a list of DNS names that should be included
  24863. as part of the Order validation process. This field must match the
  24864. corresponding field on the DER encoded CSR.
  24865. items:
  24866. type: string
  24867. type: array
  24868. issuerRef:
  24869. description: IssuerRef references a properly configured ACME-type
  24870. Issuer which should be used to create this Order. If the Issuer
  24871. does not exist, processing will be retried. If the Issuer is not
  24872. an 'ACME' Issuer, an error will be returned and the Order will be
  24873. marked as failed.
  24874. properties:
  24875. group:
  24876. description: Group of the resource being referred to.
  24877. type: string
  24878. kind:
  24879. description: Kind of the resource being referred to.
  24880. type: string
  24881. name:
  24882. description: Name of the resource being referred to.
  24883. type: string
  24884. required:
  24885. - name
  24886. type: object
  24887. request:
  24888. description: Certificate signing request bytes in DER encoding. This
  24889. will be used when finalizing the order. This field must be set on
  24890. the order.
  24891. format: byte
  24892. type: string
  24893. required:
  24894. - dnsNames
  24895. - issuerRef
  24896. - request
  24897. type: object
  24898. status:
  24899. properties:
  24900. authorizations:
  24901. description: Authorizations contains data returned from the ACME server
  24902. on what authorizations must be completed in order to validate the
  24903. DNS names specified on the Order.
  24904. items:
  24905. description: ACMEAuthorization contains data returned from the ACME
  24906. server on an authorization that must be completed in order validate
  24907. a DNS name on an ACME Order resource.
  24908. properties:
  24909. challenges:
  24910. description: Challenges specifies the challenge types offered
  24911. by the ACME server. One of these challenge types will be selected
  24912. when validating the DNS name and an appropriate Challenge
  24913. resource will be created to perform the ACME challenge process.
  24914. items:
  24915. description: Challenge specifies a challenge offered by the
  24916. ACME server for an Order. An appropriate Challenge resource
  24917. can be created to perform the ACME challenge process.
  24918. properties:
  24919. token:
  24920. description: Token is the token that must be presented
  24921. for this challenge. This is used to compute the 'key'
  24922. that must also be presented.
  24923. type: string
  24924. type:
  24925. description: Type is the type of challenge being offered,
  24926. e.g. 'http-01', 'dns-01', 'tls-sni-01', etc. This is
  24927. the raw value retrieved from the ACME server. Only 'http-01'
  24928. and 'dns-01' are supported by cert-manager, other values
  24929. will be ignored.
  24930. type: string
  24931. url:
  24932. description: URL is the URL of this challenge. It can
  24933. be used to retrieve additional metadata about the Challenge
  24934. from the ACME server.
  24935. type: string
  24936. required:
  24937. - token
  24938. - type
  24939. - url
  24940. type: object
  24941. type: array
  24942. identifier:
  24943. description: Identifier is the DNS name to be validated as part
  24944. of this authorization
  24945. type: string
  24946. initialState:
  24947. description: InitialState is the initial state of the ACME authorization
  24948. when first fetched from the ACME server. If an Authorization
  24949. is already 'valid', the Order controller will not create a
  24950. Challenge resource for the authorization. This will occur
  24951. when working with an ACME server that enables 'authz reuse'
  24952. (such as Let's Encrypt's production endpoint). If not set
  24953. and 'identifier' is set, the state is assumed to be pending
  24954. and a Challenge will be created.
  24955. enum:
  24956. - valid
  24957. - ready
  24958. - pending
  24959. - processing
  24960. - invalid
  24961. - expired
  24962. - errored
  24963. type: string
  24964. url:
  24965. description: URL is the URL of the Authorization that must be
  24966. completed
  24967. type: string
  24968. wildcard:
  24969. description: Wildcard will be true if this authorization is
  24970. for a wildcard DNS name. If this is true, the identifier will
  24971. be the *non-wildcard* version of the DNS name. For example,
  24972. if '*.example.com' is the DNS name being validated, this field
  24973. will be 'true' and the 'identifier' field will be 'example.com'.
  24974. type: boolean
  24975. required:
  24976. - url
  24977. type: object
  24978. type: array
  24979. certificate:
  24980. description: Certificate is a copy of the PEM encoded certificate
  24981. for this Order. This field will be populated after the order has
  24982. been successfully finalized with the ACME server, and the order
  24983. has transitioned to the 'valid' state.
  24984. format: byte
  24985. type: string
  24986. failureTime:
  24987. description: FailureTime stores the time that this order failed. This
  24988. is used to influence garbage collection and back-off.
  24989. format: date-time
  24990. type: string
  24991. finalizeURL:
  24992. description: FinalizeURL of the Order. This is used to obtain certificates
  24993. for this order once it has been completed.
  24994. type: string
  24995. reason:
  24996. description: Reason optionally provides more information about a why
  24997. the order is in the current state.
  24998. type: string
  24999. state:
  25000. description: State contains the current state of this Order resource.
  25001. States 'success' and 'expired' are 'final'
  25002. enum:
  25003. - valid
  25004. - ready
  25005. - pending
  25006. - processing
  25007. - invalid
  25008. - expired
  25009. - errored
  25010. type: string
  25011. url:
  25012. description: URL of the Order. This will initially be empty when the
  25013. resource is first created. The Order controller will populate this
  25014. field when the Order is first processed. This field will be immutable
  25015. after it is initially set.
  25016. type: string
  25017. type: object
  25018. required:
  25019. - metadata
  25020. - spec
  25021. type: object
  25022. served: true
  25023. storage: false
  25024. subresources:
  25025. status: {}
  25026. - additionalPrinterColumns:
  25027. - jsonPath: .status.state
  25028. name: State
  25029. type: string
  25030. - jsonPath: .spec.issuerRef.name
  25031. name: Issuer
  25032. priority: 1
  25033. type: string
  25034. - jsonPath: .status.reason
  25035. name: Reason
  25036. priority: 1
  25037. type: string
  25038. - description: CreationTimestamp is a timestamp representing the server time when
  25039. this object was created. It is not guaranteed to be set in happens-before
  25040. order across separate operations. Clients may not set this value. It is represented
  25041. in RFC3339 form and is in UTC.
  25042. jsonPath: .metadata.creationTimestamp
  25043. name: Age
  25044. type: date
  25045. name: v1
  25046. schema:
  25047. openAPIV3Schema:
  25048. description: Order is a type to represent an Order with an ACME server
  25049. properties:
  25050. apiVersion:
  25051. description: 'APIVersion defines the versioned schema of this representation
  25052. of an object. Servers should convert recognized schemas to the latest
  25053. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  25054. type: string
  25055. kind:
  25056. description: 'Kind is a string value representing the REST resource this
  25057. object represents. Servers may infer this from the endpoint the client
  25058. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  25059. type: string
  25060. metadata:
  25061. type: object
  25062. spec:
  25063. properties:
  25064. commonName:
  25065. description: CommonName is the common name as specified on the DER
  25066. encoded CSR. If specified, this value must also be present in `dnsNames`.
  25067. This field must match the corresponding field on the DER encoded
  25068. CSR.
  25069. type: string
  25070. dnsNames:
  25071. description: DNSNames is a list of DNS names that should be included
  25072. as part of the Order validation process. This field must match the
  25073. corresponding field on the DER encoded CSR.
  25074. items:
  25075. type: string
  25076. type: array
  25077. issuerRef:
  25078. description: IssuerRef references a properly configured ACME-type
  25079. Issuer which should be used to create this Order. If the Issuer
  25080. does not exist, processing will be retried. If the Issuer is not
  25081. an 'ACME' Issuer, an error will be returned and the Order will be
  25082. marked as failed.
  25083. properties:
  25084. group:
  25085. description: Group of the resource being referred to.
  25086. type: string
  25087. kind:
  25088. description: Kind of the resource being referred to.
  25089. type: string
  25090. name:
  25091. description: Name of the resource being referred to.
  25092. type: string
  25093. required:
  25094. - name
  25095. type: object
  25096. request:
  25097. description: Certificate signing request bytes in DER encoding. This
  25098. will be used when finalizing the order. This field must be set on
  25099. the order.
  25100. format: byte
  25101. type: string
  25102. required:
  25103. - dnsNames
  25104. - issuerRef
  25105. - request
  25106. type: object
  25107. status:
  25108. properties:
  25109. authorizations:
  25110. description: Authorizations contains data returned from the ACME server
  25111. on what authorizations must be completed in order to validate the
  25112. DNS names specified on the Order.
  25113. items:
  25114. description: ACMEAuthorization contains data returned from the ACME
  25115. server on an authorization that must be completed in order validate
  25116. a DNS name on an ACME Order resource.
  25117. properties:
  25118. challenges:
  25119. description: Challenges specifies the challenge types offered
  25120. by the ACME server. One of these challenge types will be selected
  25121. when validating the DNS name and an appropriate Challenge
  25122. resource will be created to perform the ACME challenge process.
  25123. items:
  25124. description: Challenge specifies a challenge offered by the
  25125. ACME server for an Order. An appropriate Challenge resource
  25126. can be created to perform the ACME challenge process.
  25127. properties:
  25128. token:
  25129. description: Token is the token that must be presented
  25130. for this challenge. This is used to compute the 'key'
  25131. that must also be presented.
  25132. type: string
  25133. type:
  25134. description: Type is the type of challenge being offered,
  25135. e.g. 'http-01', 'dns-01', 'tls-sni-01', etc. This is
  25136. the raw value retrieved from the ACME server. Only 'http-01'
  25137. and 'dns-01' are supported by cert-manager, other values
  25138. will be ignored.
  25139. type: string
  25140. url:
  25141. description: URL is the URL of this challenge. It can
  25142. be used to retrieve additional metadata about the Challenge
  25143. from the ACME server.
  25144. type: string
  25145. required:
  25146. - token
  25147. - type
  25148. - url
  25149. type: object
  25150. type: array
  25151. identifier:
  25152. description: Identifier is the DNS name to be validated as part
  25153. of this authorization
  25154. type: string
  25155. initialState:
  25156. description: InitialState is the initial state of the ACME authorization
  25157. when first fetched from the ACME server. If an Authorization
  25158. is already 'valid', the Order controller will not create a
  25159. Challenge resource for the authorization. This will occur
  25160. when working with an ACME server that enables 'authz reuse'
  25161. (such as Let's Encrypt's production endpoint). If not set
  25162. and 'identifier' is set, the state is assumed to be pending
  25163. and a Challenge will be created.
  25164. enum:
  25165. - valid
  25166. - ready
  25167. - pending
  25168. - processing
  25169. - invalid
  25170. - expired
  25171. - errored
  25172. type: string
  25173. url:
  25174. description: URL is the URL of the Authorization that must be
  25175. completed
  25176. type: string
  25177. wildcard:
  25178. description: Wildcard will be true if this authorization is
  25179. for a wildcard DNS name. If this is true, the identifier will
  25180. be the *non-wildcard* version of the DNS name. For example,
  25181. if '*.example.com' is the DNS name being validated, this field
  25182. will be 'true' and the 'identifier' field will be 'example.com'.
  25183. type: boolean
  25184. required:
  25185. - url
  25186. type: object
  25187. type: array
  25188. certificate:
  25189. description: Certificate is a copy of the PEM encoded certificate
  25190. for this Order. This field will be populated after the order has
  25191. been successfully finalized with the ACME server, and the order
  25192. has transitioned to the 'valid' state.
  25193. format: byte
  25194. type: string
  25195. failureTime:
  25196. description: FailureTime stores the time that this order failed. This
  25197. is used to influence garbage collection and back-off.
  25198. format: date-time
  25199. type: string
  25200. finalizeURL:
  25201. description: FinalizeURL of the Order. This is used to obtain certificates
  25202. for this order once it has been completed.
  25203. type: string
  25204. reason:
  25205. description: Reason optionally provides more information about a why
  25206. the order is in the current state.
  25207. type: string
  25208. state:
  25209. description: State contains the current state of this Order resource.
  25210. States 'success' and 'expired' are 'final'
  25211. enum:
  25212. - valid
  25213. - ready
  25214. - pending
  25215. - processing
  25216. - invalid
  25217. - expired
  25218. - errored
  25219. type: string
  25220. url:
  25221. description: URL of the Order. This will initially be empty when the
  25222. resource is first created. The Order controller will populate this
  25223. field when the Order is first processed. This field will be immutable
  25224. after it is initially set.
  25225. type: string
  25226. type: object
  25227. required:
  25228. - metadata
  25229. - spec
  25230. type: object
  25231. served: true
  25232. storage: true
  25233. subresources:
  25234. status: {}
  25235. status:
  25236. acceptedNames:
  25237. kind: ""
  25238. plural: ""
  25239. conditions: []
  25240. storedVersions: []
  25241. ---
  25242. apiVersion: v1
  25243. kind: Namespace
  25244. metadata:
  25245. name: cert-manager
  25246. ---
  25247. apiVersion: v1
  25248. kind: ServiceAccount
  25249. metadata:
  25250. labels:
  25251. app: cainjector
  25252. app.kubernetes.io/component: cainjector
  25253. app.kubernetes.io/instance: cert-manager
  25254. app.kubernetes.io/name: cainjector
  25255. name: cert-manager-cainjector
  25256. namespace: cert-manager
  25257. ---
  25258. apiVersion: v1
  25259. kind: ServiceAccount
  25260. metadata:
  25261. labels:
  25262. app: cert-manager
  25263. app.kubernetes.io/component: controller
  25264. app.kubernetes.io/instance: cert-manager
  25265. app.kubernetes.io/name: cert-manager
  25266. name: cert-manager
  25267. namespace: cert-manager
  25268. ---
  25269. apiVersion: v1
  25270. kind: ServiceAccount
  25271. metadata:
  25272. labels:
  25273. app: webhook
  25274. app.kubernetes.io/component: webhook
  25275. app.kubernetes.io/instance: cert-manager
  25276. app.kubernetes.io/name: webhook
  25277. name: cert-manager-webhook
  25278. namespace: cert-manager
  25279. ---
  25280. apiVersion: rbac.authorization.k8s.io/v1
  25281. kind: ClusterRole
  25282. metadata:
  25283. labels:
  25284. app: cainjector
  25285. app.kubernetes.io/component: cainjector
  25286. app.kubernetes.io/instance: cert-manager
  25287. app.kubernetes.io/name: cainjector
  25288. name: cert-manager-cainjector
  25289. rules:
  25290. - apiGroups:
  25291. - cert-manager.io
  25292. resources:
  25293. - certificates
  25294. verbs:
  25295. - get
  25296. - list
  25297. - watch
  25298. - apiGroups:
  25299. - ""
  25300. resources:
  25301. - secrets
  25302. verbs:
  25303. - get
  25304. - list
  25305. - watch
  25306. - apiGroups:
  25307. - ""
  25308. resources:
  25309. - events
  25310. verbs:
  25311. - get
  25312. - create
  25313. - update
  25314. - patch
  25315. - apiGroups:
  25316. - admissionregistration.k8s.io
  25317. resources:
  25318. - validatingwebhookconfigurations
  25319. - mutatingwebhookconfigurations
  25320. verbs:
  25321. - get
  25322. - list
  25323. - watch
  25324. - update
  25325. - apiGroups:
  25326. - apiregistration.k8s.io
  25327. resources:
  25328. - apiservices
  25329. verbs:
  25330. - get
  25331. - list
  25332. - watch
  25333. - update
  25334. - apiGroups:
  25335. - apiextensions.k8s.io
  25336. resources:
  25337. - customresourcedefinitions
  25338. verbs:
  25339. - get
  25340. - list
  25341. - watch
  25342. - update
  25343. - apiGroups:
  25344. - auditregistration.k8s.io
  25345. resources:
  25346. - auditsinks
  25347. verbs:
  25348. - get
  25349. - list
  25350. - watch
  25351. - update
  25352. ---
  25353. apiVersion: rbac.authorization.k8s.io/v1
  25354. kind: ClusterRole
  25355. metadata:
  25356. labels:
  25357. app: cert-manager
  25358. app.kubernetes.io/component: controller
  25359. app.kubernetes.io/instance: cert-manager
  25360. app.kubernetes.io/name: cert-manager
  25361. name: cert-manager-controller-issuers
  25362. rules:
  25363. - apiGroups:
  25364. - cert-manager.io
  25365. resources:
  25366. - issuers
  25367. - issuers/status
  25368. verbs:
  25369. - update
  25370. - apiGroups:
  25371. - cert-manager.io
  25372. resources:
  25373. - issuers
  25374. verbs:
  25375. - get
  25376. - list
  25377. - watch
  25378. - apiGroups:
  25379. - ""
  25380. resources:
  25381. - secrets
  25382. verbs:
  25383. - get
  25384. - list
  25385. - watch
  25386. - create
  25387. - update
  25388. - delete
  25389. - apiGroups:
  25390. - ""
  25391. resources:
  25392. - events
  25393. verbs:
  25394. - create
  25395. - patch
  25396. ---
  25397. apiVersion: rbac.authorization.k8s.io/v1
  25398. kind: ClusterRole
  25399. metadata:
  25400. labels:
  25401. app: cert-manager
  25402. app.kubernetes.io/component: controller
  25403. app.kubernetes.io/instance: cert-manager
  25404. app.kubernetes.io/name: cert-manager
  25405. name: cert-manager-controller-clusterissuers
  25406. rules:
  25407. - apiGroups:
  25408. - cert-manager.io
  25409. resources:
  25410. - clusterissuers
  25411. - clusterissuers/status
  25412. verbs:
  25413. - update
  25414. - apiGroups:
  25415. - cert-manager.io
  25416. resources:
  25417. - clusterissuers
  25418. verbs:
  25419. - get
  25420. - list
  25421. - watch
  25422. - apiGroups:
  25423. - ""
  25424. resources:
  25425. - secrets
  25426. verbs:
  25427. - get
  25428. - list
  25429. - watch
  25430. - create
  25431. - update
  25432. - delete
  25433. - apiGroups:
  25434. - ""
  25435. resources:
  25436. - events
  25437. verbs:
  25438. - create
  25439. - patch
  25440. ---
  25441. apiVersion: rbac.authorization.k8s.io/v1
  25442. kind: ClusterRole
  25443. metadata:
  25444. labels:
  25445. app: cert-manager
  25446. app.kubernetes.io/component: controller
  25447. app.kubernetes.io/instance: cert-manager
  25448. app.kubernetes.io/name: cert-manager
  25449. name: cert-manager-controller-certificates
  25450. rules:
  25451. - apiGroups:
  25452. - cert-manager.io
  25453. resources:
  25454. - certificates
  25455. - certificates/status
  25456. - certificaterequests
  25457. - certificaterequests/status
  25458. verbs:
  25459. - update
  25460. - apiGroups:
  25461. - cert-manager.io
  25462. resources:
  25463. - certificates
  25464. - certificaterequests
  25465. - clusterissuers
  25466. - issuers
  25467. verbs:
  25468. - get
  25469. - list
  25470. - watch
  25471. - apiGroups:
  25472. - cert-manager.io
  25473. resources:
  25474. - certificates/finalizers
  25475. - certificaterequests/finalizers
  25476. verbs:
  25477. - update
  25478. - apiGroups:
  25479. - acme.cert-manager.io
  25480. resources:
  25481. - orders
  25482. verbs:
  25483. - create
  25484. - delete
  25485. - get
  25486. - list
  25487. - watch
  25488. - apiGroups:
  25489. - ""
  25490. resources:
  25491. - secrets
  25492. verbs:
  25493. - get
  25494. - list
  25495. - watch
  25496. - create
  25497. - update
  25498. - delete
  25499. - apiGroups:
  25500. - ""
  25501. resources:
  25502. - events
  25503. verbs:
  25504. - create
  25505. - patch
  25506. ---
  25507. apiVersion: rbac.authorization.k8s.io/v1
  25508. kind: ClusterRole
  25509. metadata:
  25510. labels:
  25511. app: cert-manager
  25512. app.kubernetes.io/component: controller
  25513. app.kubernetes.io/instance: cert-manager
  25514. app.kubernetes.io/name: cert-manager
  25515. name: cert-manager-controller-orders
  25516. rules:
  25517. - apiGroups:
  25518. - acme.cert-manager.io
  25519. resources:
  25520. - orders
  25521. - orders/status
  25522. verbs:
  25523. - update
  25524. - apiGroups:
  25525. - acme.cert-manager.io
  25526. resources:
  25527. - orders
  25528. - challenges
  25529. verbs:
  25530. - get
  25531. - list
  25532. - watch
  25533. - apiGroups:
  25534. - cert-manager.io
  25535. resources:
  25536. - clusterissuers
  25537. - issuers
  25538. verbs:
  25539. - get
  25540. - list
  25541. - watch
  25542. - apiGroups:
  25543. - acme.cert-manager.io
  25544. resources:
  25545. - challenges
  25546. verbs:
  25547. - create
  25548. - delete
  25549. - apiGroups:
  25550. - acme.cert-manager.io
  25551. resources:
  25552. - orders/finalizers
  25553. verbs:
  25554. - update
  25555. - apiGroups:
  25556. - ""
  25557. resources:
  25558. - secrets
  25559. verbs:
  25560. - get
  25561. - list
  25562. - watch
  25563. - apiGroups:
  25564. - ""
  25565. resources:
  25566. - events
  25567. verbs:
  25568. - create
  25569. - patch
  25570. ---
  25571. apiVersion: rbac.authorization.k8s.io/v1
  25572. kind: ClusterRole
  25573. metadata:
  25574. labels:
  25575. app: cert-manager
  25576. app.kubernetes.io/component: controller
  25577. app.kubernetes.io/instance: cert-manager
  25578. app.kubernetes.io/name: cert-manager
  25579. name: cert-manager-controller-challenges
  25580. rules:
  25581. - apiGroups:
  25582. - acme.cert-manager.io
  25583. resources:
  25584. - challenges
  25585. - challenges/status
  25586. verbs:
  25587. - update
  25588. - apiGroups:
  25589. - acme.cert-manager.io
  25590. resources:
  25591. - challenges
  25592. verbs:
  25593. - get
  25594. - list
  25595. - watch
  25596. - apiGroups:
  25597. - cert-manager.io
  25598. resources:
  25599. - issuers
  25600. - clusterissuers
  25601. verbs:
  25602. - get
  25603. - list
  25604. - watch
  25605. - apiGroups:
  25606. - ""
  25607. resources:
  25608. - secrets
  25609. verbs:
  25610. - get
  25611. - list
  25612. - watch
  25613. - apiGroups:
  25614. - ""
  25615. resources:
  25616. - events
  25617. verbs:
  25618. - create
  25619. - patch
  25620. - apiGroups:
  25621. - ""
  25622. resources:
  25623. - pods
  25624. - services
  25625. verbs:
  25626. - get
  25627. - list
  25628. - watch
  25629. - create
  25630. - delete
  25631. - apiGroups:
  25632. - extensions
  25633. resources:
  25634. - ingresses
  25635. verbs:
  25636. - get
  25637. - list
  25638. - watch
  25639. - create
  25640. - delete
  25641. - update
  25642. - apiGroups:
  25643. - route.openshift.io
  25644. resources:
  25645. - routes/custom-host
  25646. verbs:
  25647. - create
  25648. - apiGroups:
  25649. - acme.cert-manager.io
  25650. resources:
  25651. - challenges/finalizers
  25652. verbs:
  25653. - update
  25654. - apiGroups:
  25655. - ""
  25656. resources:
  25657. - secrets
  25658. verbs:
  25659. - get
  25660. - list
  25661. - watch
  25662. ---
  25663. apiVersion: rbac.authorization.k8s.io/v1
  25664. kind: ClusterRole
  25665. metadata:
  25666. labels:
  25667. app: cert-manager
  25668. app.kubernetes.io/component: controller
  25669. app.kubernetes.io/instance: cert-manager
  25670. app.kubernetes.io/name: cert-manager
  25671. name: cert-manager-controller-ingress-shim
  25672. rules:
  25673. - apiGroups:
  25674. - cert-manager.io
  25675. resources:
  25676. - certificates
  25677. - certificaterequests
  25678. verbs:
  25679. - create
  25680. - update
  25681. - delete
  25682. - apiGroups:
  25683. - cert-manager.io
  25684. resources:
  25685. - certificates
  25686. - certificaterequests
  25687. - issuers
  25688. - clusterissuers
  25689. verbs:
  25690. - get
  25691. - list
  25692. - watch
  25693. - apiGroups:
  25694. - extensions
  25695. resources:
  25696. - ingresses
  25697. verbs:
  25698. - get
  25699. - list
  25700. - watch
  25701. - apiGroups:
  25702. - extensions
  25703. resources:
  25704. - ingresses/finalizers
  25705. verbs:
  25706. - update
  25707. - apiGroups:
  25708. - ""
  25709. resources:
  25710. - events
  25711. verbs:
  25712. - create
  25713. - patch
  25714. ---
  25715. apiVersion: rbac.authorization.k8s.io/v1
  25716. kind: ClusterRole
  25717. metadata:
  25718. labels:
  25719. app: cert-manager
  25720. app.kubernetes.io/component: controller
  25721. app.kubernetes.io/instance: cert-manager
  25722. app.kubernetes.io/name: cert-manager
  25723. rbac.authorization.k8s.io/aggregate-to-admin: "true"
  25724. rbac.authorization.k8s.io/aggregate-to-edit: "true"
  25725. rbac.authorization.k8s.io/aggregate-to-view: "true"
  25726. name: cert-manager-view
  25727. rules:
  25728. - apiGroups:
  25729. - cert-manager.io
  25730. resources:
  25731. - certificates
  25732. - certificaterequests
  25733. - issuers
  25734. verbs:
  25735. - get
  25736. - list
  25737. - watch
  25738. ---
  25739. apiVersion: rbac.authorization.k8s.io/v1
  25740. kind: ClusterRole
  25741. metadata:
  25742. labels:
  25743. app: cert-manager
  25744. app.kubernetes.io/component: controller
  25745. app.kubernetes.io/instance: cert-manager
  25746. app.kubernetes.io/name: cert-manager
  25747. rbac.authorization.k8s.io/aggregate-to-admin: "true"
  25748. rbac.authorization.k8s.io/aggregate-to-edit: "true"
  25749. name: cert-manager-edit
  25750. rules:
  25751. - apiGroups:
  25752. - cert-manager.io
  25753. resources:
  25754. - certificates
  25755. - certificaterequests
  25756. - issuers
  25757. verbs:
  25758. - create
  25759. - delete
  25760. - deletecollection
  25761. - patch
  25762. - update
  25763. ---
  25764. apiVersion: rbac.authorization.k8s.io/v1
  25765. kind: ClusterRoleBinding
  25766. metadata:
  25767. labels:
  25768. app: cainjector
  25769. app.kubernetes.io/component: cainjector
  25770. app.kubernetes.io/instance: cert-manager
  25771. app.kubernetes.io/name: cainjector
  25772. name: cert-manager-cainjector
  25773. roleRef:
  25774. apiGroup: rbac.authorization.k8s.io
  25775. kind: ClusterRole
  25776. name: cert-manager-cainjector
  25777. subjects:
  25778. - kind: ServiceAccount
  25779. name: cert-manager-cainjector
  25780. namespace: cert-manager
  25781. ---
  25782. apiVersion: rbac.authorization.k8s.io/v1
  25783. kind: ClusterRoleBinding
  25784. metadata:
  25785. labels:
  25786. app: cert-manager
  25787. app.kubernetes.io/component: controller
  25788. app.kubernetes.io/instance: cert-manager
  25789. app.kubernetes.io/name: cert-manager
  25790. name: cert-manager-controller-issuers
  25791. roleRef:
  25792. apiGroup: rbac.authorization.k8s.io
  25793. kind: ClusterRole
  25794. name: cert-manager-controller-issuers
  25795. subjects:
  25796. - kind: ServiceAccount
  25797. name: cert-manager
  25798. namespace: cert-manager
  25799. ---
  25800. apiVersion: rbac.authorization.k8s.io/v1
  25801. kind: ClusterRoleBinding
  25802. metadata:
  25803. labels:
  25804. app: cert-manager
  25805. app.kubernetes.io/component: controller
  25806. app.kubernetes.io/instance: cert-manager
  25807. app.kubernetes.io/name: cert-manager
  25808. name: cert-manager-controller-clusterissuers
  25809. roleRef:
  25810. apiGroup: rbac.authorization.k8s.io
  25811. kind: ClusterRole
  25812. name: cert-manager-controller-clusterissuers
  25813. subjects:
  25814. - kind: ServiceAccount
  25815. name: cert-manager
  25816. namespace: cert-manager
  25817. ---
  25818. apiVersion: rbac.authorization.k8s.io/v1
  25819. kind: ClusterRoleBinding
  25820. metadata:
  25821. labels:
  25822. app: cert-manager
  25823. app.kubernetes.io/component: controller
  25824. app.kubernetes.io/instance: cert-manager
  25825. app.kubernetes.io/name: cert-manager
  25826. name: cert-manager-controller-certificates
  25827. roleRef:
  25828. apiGroup: rbac.authorization.k8s.io
  25829. kind: ClusterRole
  25830. name: cert-manager-controller-certificates
  25831. subjects:
  25832. - kind: ServiceAccount
  25833. name: cert-manager
  25834. namespace: cert-manager
  25835. ---
  25836. apiVersion: rbac.authorization.k8s.io/v1
  25837. kind: ClusterRoleBinding
  25838. metadata:
  25839. labels:
  25840. app: cert-manager
  25841. app.kubernetes.io/component: controller
  25842. app.kubernetes.io/instance: cert-manager
  25843. app.kubernetes.io/name: cert-manager
  25844. name: cert-manager-controller-orders
  25845. roleRef:
  25846. apiGroup: rbac.authorization.k8s.io
  25847. kind: ClusterRole
  25848. name: cert-manager-controller-orders
  25849. subjects:
  25850. - kind: ServiceAccount
  25851. name: cert-manager
  25852. namespace: cert-manager
  25853. ---
  25854. apiVersion: rbac.authorization.k8s.io/v1
  25855. kind: ClusterRoleBinding
  25856. metadata:
  25857. labels:
  25858. app: cert-manager
  25859. app.kubernetes.io/component: controller
  25860. app.kubernetes.io/instance: cert-manager
  25861. app.kubernetes.io/name: cert-manager
  25862. name: cert-manager-controller-challenges
  25863. roleRef:
  25864. apiGroup: rbac.authorization.k8s.io
  25865. kind: ClusterRole
  25866. name: cert-manager-controller-challenges
  25867. subjects:
  25868. - kind: ServiceAccount
  25869. name: cert-manager
  25870. namespace: cert-manager
  25871. ---
  25872. apiVersion: rbac.authorization.k8s.io/v1
  25873. kind: ClusterRoleBinding
  25874. metadata:
  25875. labels:
  25876. app: cert-manager
  25877. app.kubernetes.io/component: controller
  25878. app.kubernetes.io/instance: cert-manager
  25879. app.kubernetes.io/name: cert-manager
  25880. name: cert-manager-controller-ingress-shim
  25881. roleRef:
  25882. apiGroup: rbac.authorization.k8s.io
  25883. kind: ClusterRole
  25884. name: cert-manager-controller-ingress-shim
  25885. subjects:
  25886. - kind: ServiceAccount
  25887. name: cert-manager
  25888. namespace: cert-manager
  25889. ---
  25890. apiVersion: rbac.authorization.k8s.io/v1
  25891. kind: Role
  25892. metadata:
  25893. labels:
  25894. app: cainjector
  25895. app.kubernetes.io/component: cainjector
  25896. app.kubernetes.io/instance: cert-manager
  25897. app.kubernetes.io/name: cainjector
  25898. name: cert-manager-cainjector:leaderelection
  25899. namespace: kube-system
  25900. rules:
  25901. - apiGroups:
  25902. - ""
  25903. resourceNames:
  25904. - cert-manager-cainjector-leader-election
  25905. - cert-manager-cainjector-leader-election-core
  25906. resources:
  25907. - configmaps
  25908. verbs:
  25909. - get
  25910. - update
  25911. - patch
  25912. - apiGroups:
  25913. - ""
  25914. resources:
  25915. - configmaps
  25916. verbs:
  25917. - create
  25918. ---
  25919. apiVersion: rbac.authorization.k8s.io/v1
  25920. kind: Role
  25921. metadata:
  25922. labels:
  25923. app: cert-manager
  25924. app.kubernetes.io/component: controller
  25925. app.kubernetes.io/instance: cert-manager
  25926. app.kubernetes.io/name: cert-manager
  25927. name: cert-manager:leaderelection
  25928. namespace: kube-system
  25929. rules:
  25930. - apiGroups:
  25931. - ""
  25932. resourceNames:
  25933. - cert-manager-controller
  25934. resources:
  25935. - configmaps
  25936. verbs:
  25937. - get
  25938. - update
  25939. - patch
  25940. - apiGroups:
  25941. - ""
  25942. resources:
  25943. - configmaps
  25944. verbs:
  25945. - create
  25946. ---
  25947. apiVersion: rbac.authorization.k8s.io/v1
  25948. kind: Role
  25949. metadata:
  25950. labels:
  25951. app: webhook
  25952. app.kubernetes.io/component: webhook
  25953. app.kubernetes.io/instance: cert-manager
  25954. app.kubernetes.io/name: webhook
  25955. name: cert-manager-webhook:dynamic-serving
  25956. namespace: cert-manager
  25957. rules:
  25958. - apiGroups:
  25959. - ""
  25960. resourceNames:
  25961. - cert-manager-webhook-ca
  25962. resources:
  25963. - secrets
  25964. verbs:
  25965. - get
  25966. - list
  25967. - watch
  25968. - update
  25969. - apiGroups:
  25970. - ""
  25971. resources:
  25972. - secrets
  25973. verbs:
  25974. - create
  25975. ---
  25976. apiVersion: rbac.authorization.k8s.io/v1
  25977. kind: RoleBinding
  25978. metadata:
  25979. labels:
  25980. app: cainjector
  25981. app.kubernetes.io/component: cainjector
  25982. app.kubernetes.io/instance: cert-manager
  25983. app.kubernetes.io/name: cainjector
  25984. name: cert-manager-cainjector:leaderelection
  25985. namespace: kube-system
  25986. roleRef:
  25987. apiGroup: rbac.authorization.k8s.io
  25988. kind: Role
  25989. name: cert-manager-cainjector:leaderelection
  25990. subjects:
  25991. - kind: ServiceAccount
  25992. name: cert-manager-cainjector
  25993. namespace: cert-manager
  25994. ---
  25995. apiVersion: rbac.authorization.k8s.io/v1
  25996. kind: RoleBinding
  25997. metadata:
  25998. labels:
  25999. app: cert-manager
  26000. app.kubernetes.io/component: controller
  26001. app.kubernetes.io/instance: cert-manager
  26002. app.kubernetes.io/name: cert-manager
  26003. name: cert-manager:leaderelection
  26004. namespace: kube-system
  26005. roleRef:
  26006. apiGroup: rbac.authorization.k8s.io
  26007. kind: Role
  26008. name: cert-manager:leaderelection
  26009. subjects:
  26010. - apiGroup: ""
  26011. kind: ServiceAccount
  26012. name: cert-manager
  26013. namespace: cert-manager
  26014. ---
  26015. apiVersion: rbac.authorization.k8s.io/v1
  26016. kind: RoleBinding
  26017. metadata:
  26018. labels:
  26019. app: webhook
  26020. app.kubernetes.io/component: webhook
  26021. app.kubernetes.io/instance: cert-manager
  26022. app.kubernetes.io/name: webhook
  26023. name: cert-manager-webhook:dynamic-serving
  26024. namespace: cert-manager
  26025. roleRef:
  26026. apiGroup: rbac.authorization.k8s.io
  26027. kind: Role
  26028. name: cert-manager-webhook:dynamic-serving
  26029. subjects:
  26030. - apiGroup: ""
  26031. kind: ServiceAccount
  26032. name: cert-manager-webhook
  26033. namespace: cert-manager
  26034. ---
  26035. apiVersion: v1
  26036. kind: Service
  26037. metadata:
  26038. labels:
  26039. app: cert-manager
  26040. app.kubernetes.io/component: controller
  26041. app.kubernetes.io/instance: cert-manager
  26042. app.kubernetes.io/name: cert-manager
  26043. name: cert-manager
  26044. namespace: cert-manager
  26045. spec:
  26046. ports:
  26047. - port: 9402
  26048. protocol: TCP
  26049. targetPort: 9402
  26050. selector:
  26051. app.kubernetes.io/component: controller
  26052. app.kubernetes.io/instance: cert-manager
  26053. app.kubernetes.io/name: cert-manager
  26054. type: ClusterIP
  26055. ---
  26056. apiVersion: v1
  26057. kind: Service
  26058. metadata:
  26059. labels:
  26060. app: webhook
  26061. app.kubernetes.io/component: webhook
  26062. app.kubernetes.io/instance: cert-manager
  26063. app.kubernetes.io/name: webhook
  26064. name: cert-manager-webhook
  26065. namespace: cert-manager
  26066. spec:
  26067. ports:
  26068. - name: https
  26069. port: 443
  26070. targetPort: 10250
  26071. selector:
  26072. app.kubernetes.io/component: webhook
  26073. app.kubernetes.io/instance: cert-manager
  26074. app.kubernetes.io/name: webhook
  26075. type: ClusterIP
  26076. ---
  26077. apiVersion: apps/v1
  26078. kind: Deployment
  26079. metadata:
  26080. labels:
  26081. app: cainjector
  26082. app.kubernetes.io/component: cainjector
  26083. app.kubernetes.io/instance: cert-manager
  26084. app.kubernetes.io/name: cainjector
  26085. name: cert-manager-cainjector
  26086. namespace: cert-manager
  26087. spec:
  26088. replicas: 1
  26089. selector:
  26090. matchLabels:
  26091. app.kubernetes.io/component: cainjector
  26092. app.kubernetes.io/instance: cert-manager
  26093. app.kubernetes.io/name: cainjector
  26094. template:
  26095. metadata:
  26096. labels:
  26097. app: cainjector
  26098. app.kubernetes.io/component: cainjector
  26099. app.kubernetes.io/instance: cert-manager
  26100. app.kubernetes.io/name: cainjector
  26101. spec:
  26102. containers:
  26103. - args:
  26104. - --v=2
  26105. - --leader-election-namespace=kube-system
  26106. env:
  26107. - name: POD_NAMESPACE
  26108. valueFrom:
  26109. fieldRef:
  26110. fieldPath: metadata.namespace
  26111. image: quay.io/jetstack/cert-manager-cainjector:v1.0.1
  26112. imagePullPolicy: IfNotPresent
  26113. name: cert-manager
  26114. resources: {}
  26115. serviceAccountName: cert-manager-cainjector
  26116. ---
  26117. apiVersion: apps/v1
  26118. kind: Deployment
  26119. metadata:
  26120. labels:
  26121. app: cert-manager
  26122. app.kubernetes.io/component: controller
  26123. app.kubernetes.io/instance: cert-manager
  26124. app.kubernetes.io/name: cert-manager
  26125. name: cert-manager
  26126. namespace: cert-manager
  26127. spec:
  26128. replicas: 1
  26129. selector:
  26130. matchLabels:
  26131. app.kubernetes.io/component: controller
  26132. app.kubernetes.io/instance: cert-manager
  26133. app.kubernetes.io/name: cert-manager
  26134. template:
  26135. metadata:
  26136. annotations:
  26137. prometheus.io/path: /metrics
  26138. prometheus.io/port: "9402"
  26139. prometheus.io/scrape: "true"
  26140. labels:
  26141. app: cert-manager
  26142. app.kubernetes.io/component: controller
  26143. app.kubernetes.io/instance: cert-manager
  26144. app.kubernetes.io/name: cert-manager
  26145. spec:
  26146. containers:
  26147. - args:
  26148. - --v=2
  26149. - --cluster-resource-namespace=$(POD_NAMESPACE)
  26150. - --leader-election-namespace=kube-system
  26151. env:
  26152. - name: POD_NAMESPACE
  26153. valueFrom:
  26154. fieldRef:
  26155. fieldPath: metadata.namespace
  26156. image: quay.io/jetstack/cert-manager-controller:v1.0.1
  26157. imagePullPolicy: IfNotPresent
  26158. name: cert-manager
  26159. ports:
  26160. - containerPort: 9402
  26161. protocol: TCP
  26162. resources: {}
  26163. serviceAccountName: cert-manager
  26164. ---
  26165. apiVersion: apps/v1
  26166. kind: Deployment
  26167. metadata:
  26168. labels:
  26169. app: webhook
  26170. app.kubernetes.io/component: webhook
  26171. app.kubernetes.io/instance: cert-manager
  26172. app.kubernetes.io/name: webhook
  26173. name: cert-manager-webhook
  26174. namespace: cert-manager
  26175. spec:
  26176. replicas: 1
  26177. selector:
  26178. matchLabels:
  26179. app.kubernetes.io/component: webhook
  26180. app.kubernetes.io/instance: cert-manager
  26181. app.kubernetes.io/name: webhook
  26182. template:
  26183. metadata:
  26184. labels:
  26185. app: webhook
  26186. app.kubernetes.io/component: webhook
  26187. app.kubernetes.io/instance: cert-manager
  26188. app.kubernetes.io/name: webhook
  26189. spec:
  26190. containers:
  26191. - args:
  26192. - --v=2
  26193. - --secure-port=10250
  26194. - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
  26195. - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
  26196. - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.cert-manager,cert-manager-webhook.cert-manager.svc
  26197. env:
  26198. - name: POD_NAMESPACE
  26199. valueFrom:
  26200. fieldRef:
  26201. fieldPath: metadata.namespace
  26202. image: quay.io/jetstack/cert-manager-webhook:v1.0.1
  26203. imagePullPolicy: IfNotPresent
  26204. livenessProbe:
  26205. failureThreshold: 3
  26206. httpGet:
  26207. path: /livez
  26208. port: 6080
  26209. scheme: HTTP
  26210. initialDelaySeconds: 60
  26211. periodSeconds: 10
  26212. successThreshold: 1
  26213. timeoutSeconds: 1
  26214. name: cert-manager
  26215. ports:
  26216. - containerPort: 10250
  26217. name: https
  26218. readinessProbe:
  26219. failureThreshold: 3
  26220. httpGet:
  26221. path: /healthz
  26222. port: 6080
  26223. scheme: HTTP
  26224. initialDelaySeconds: 5
  26225. periodSeconds: 5
  26226. successThreshold: 1
  26227. timeoutSeconds: 1
  26228. resources: {}
  26229. serviceAccountName: cert-manager-webhook
  26230. ---
  26231. apiVersion: admissionregistration.k8s.io/v1
  26232. kind: MutatingWebhookConfiguration
  26233. metadata:
  26234. annotations:
  26235. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  26236. labels:
  26237. app: webhook
  26238. app.kubernetes.io/component: webhook
  26239. app.kubernetes.io/instance: cert-manager
  26240. app.kubernetes.io/name: webhook
  26241. name: cert-manager-webhook
  26242. webhooks:
  26243. - admissionReviewVersions:
  26244. - v1
  26245. - v1beta1
  26246. clientConfig:
  26247. service:
  26248. name: cert-manager-webhook
  26249. namespace: cert-manager
  26250. path: /mutate
  26251. failurePolicy: Fail
  26252. name: webhook.cert-manager.io
  26253. rules:
  26254. - apiGroups:
  26255. - cert-manager.io
  26256. - acme.cert-manager.io
  26257. apiVersions:
  26258. - '*'
  26259. operations:
  26260. - CREATE
  26261. - UPDATE
  26262. resources:
  26263. - '*/*'
  26264. sideEffects: None
  26265. ---
  26266. apiVersion: admissionregistration.k8s.io/v1
  26267. kind: ValidatingWebhookConfiguration
  26268. metadata:
  26269. annotations:
  26270. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  26271. labels:
  26272. app: webhook
  26273. app.kubernetes.io/component: webhook
  26274. app.kubernetes.io/instance: cert-manager
  26275. app.kubernetes.io/name: webhook
  26276. name: cert-manager-webhook
  26277. webhooks:
  26278. - admissionReviewVersions:
  26279. - v1
  26280. - v1beta1
  26281. clientConfig:
  26282. service:
  26283. name: cert-manager-webhook
  26284. namespace: cert-manager
  26285. path: /validate
  26286. failurePolicy: Fail
  26287. name: webhook.cert-manager.io
  26288. namespaceSelector:
  26289. matchExpressions:
  26290. - key: cert-manager.io/disable-validation
  26291. operator: NotIn
  26292. values:
  26293. - "true"
  26294. - key: name
  26295. operator: NotIn
  26296. values:
  26297. - cert-manager
  26298. rules:
  26299. - apiGroups:
  26300. - cert-manager.io
  26301. - acme.cert-manager.io
  26302. apiVersions:
  26303. - '*'
  26304. operations:
  26305. - CREATE
  26306. - UPDATE
  26307. resources:
  26308. - '*/*'
  26309. sideEffects: None