cert-manager.yaml.old 1.7 MB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659116601166111662116631166411665116661166711668116691167011671116721167311674116751167611677116781167911680116811168211683116841168511686116871168811689116901169111692116931169411695116961169711698116991170011701117021170311704117051170611707117081170911710117111171211713117141171511716117171171811719117201172111722117231172411725117261172711728117291173011731117321173311734117351173611737117381173911740117411174211743117441174511746117471174811749117501175111752117531175411755117561175711758117591176011761117621176311764117651176611767117681176911770117711177211773117741177511776117771177811779117801178111782117831178411785117861178711788117891179011791117921179311794117951179611797117981179911800118011180211803118041180511806118071180811809118101181111812118131181411815118161181711818118191182011821118221182311824118251182611827118281182911830118311183211833118341183511836118371183811839118401184111842118431184411845118461184711848118491185011851118521185311854118551185611857118581185911860118611186211863118641186511866118671186811869118701187111872118731187411875118761187711878118791188011881118821188311884118851188611887118881188911890118911189211893118941189511896118971189811899119001190111902119031190411905119061190711908119091191011911119121191311914119151191611917119181191911920119211192211923119241192511926119271192811929119301193111932119331193411935119361193711938119391194011941119421194311944119451194611947119481194911950119511195211953119541195511956119571195811959119601196111962119631196411965119661196711968119691197011971119721197311974119751197611977119781197911980119811198211983119841198511986119871198811989119901199111992119931199411995119961199711998119991200012001120021200312004120051200612007120081200912010120111201212013120141201512016120171201812019120201202112022120231202412025120261202712028120291203012031120321203312034120351203612037120381203912040120411204212043120441204512046120471204812049120501205112052120531205412055120561205712058120591206012061120621206312064120651206612067120681206912070120711207212073120741207512076120771207812079120801208112082120831208412085120861208712088120891209012091120921209312094120951209612097120981209912100121011210212103121041210512106121071210812109121101211112112121131211412115121161211712118121191212012121121221212312124121251212612127121281212912130121311213212133121341213512136121371213812139121401214112142121431214412145121461214712148121491215012151121521215312154121551215612157121581215912160121611216212163121641216512166121671216812169121701217112172121731217412175121761217712178121791218012181121821218312184121851218612187121881218912190121911219212193121941219512196121971219812199122001220112202122031220412205122061220712208122091221012211122121221312214122151221612217122181221912220122211222212223122241222512226122271222812229122301223112232122331223412235122361223712238122391224012241122421224312244122451224612247122481224912250122511225212253122541225512256122571225812259122601226112262122631226412265122661226712268122691227012271122721227312274122751227612277122781227912280122811228212283122841228512286122871228812289122901229112292122931229412295122961229712298122991230012301123021230312304123051230612307123081230912310123111231212313123141231512316123171231812319123201232112322123231232412325123261232712328123291233012331123321233312334123351233612337123381233912340123411234212343123441234512346123471234812349123501235112352123531235412355123561235712358123591236012361123621236312364123651236612367123681236912370123711237212373123741237512376123771237812379123801238112382123831238412385123861238712388123891239012391123921239312394123951239612397123981239912400124011240212403124041240512406124071240812409124101241112412124131241412415124161241712418124191242012421124221242312424124251242612427124281242912430124311243212433124341243512436124371243812439124401244112442124431244412445124461244712448124491245012451124521245312454124551245612457124581245912460124611246212463124641246512466124671246812469124701247112472124731247412475124761247712478124791248012481124821248312484124851248612487124881248912490124911249212493124941249512496124971249812499125001250112502125031250412505125061250712508125091251012511125121251312514125151251612517125181251912520125211252212523125241252512526125271252812529125301253112532125331253412535125361253712538125391254012541125421254312544125451254612547125481254912550125511255212553125541255512556125571255812559125601256112562125631256412565125661256712568125691257012571125721257312574125751257612577125781257912580125811258212583125841258512586125871258812589125901259112592125931259412595125961259712598125991260012601126021260312604126051260612607126081260912610126111261212613126141261512616126171261812619126201262112622126231262412625126261262712628126291263012631126321263312634126351263612637126381263912640126411264212643126441264512646126471264812649126501265112652126531265412655126561265712658126591266012661126621266312664126651266612667126681266912670126711267212673126741267512676126771267812679126801268112682126831268412685126861268712688126891269012691126921269312694126951269612697126981269912700127011270212703127041270512706127071270812709127101271112712127131271412715127161271712718127191272012721127221272312724127251272612727127281272912730127311273212733127341273512736127371273812739127401274112742127431274412745127461274712748127491275012751127521275312754127551275612757127581275912760127611276212763127641276512766127671276812769127701277112772127731277412775127761277712778127791278012781127821278312784127851278612787127881278912790127911279212793127941279512796127971279812799128001280112802128031280412805128061280712808128091281012811128121281312814128151281612817128181281912820128211282212823128241282512826128271282812829128301283112832128331283412835128361283712838128391284012841128421284312844128451284612847128481284912850128511285212853128541285512856128571285812859128601286112862128631286412865128661286712868128691287012871128721287312874128751287612877128781287912880128811288212883128841288512886128871288812889128901289112892128931289412895128961289712898128991290012901129021290312904129051290612907129081290912910129111291212913129141291512916129171291812919129201292112922129231292412925129261292712928129291293012931129321293312934129351293612937129381293912940129411294212943129441294512946129471294812949129501295112952129531295412955129561295712958129591296012961129621296312964129651296612967129681296912970129711297212973129741297512976129771297812979129801298112982129831298412985129861298712988129891299012991129921299312994129951299612997129981299913000130011300213003130041300513006130071300813009130101301113012130131301413015130161301713018130191302013021130221302313024130251302613027130281302913030130311303213033130341303513036130371303813039130401304113042130431304413045130461304713048130491305013051130521305313054130551305613057130581305913060130611306213063130641306513066130671306813069130701307113072130731307413075130761307713078130791308013081130821308313084130851308613087130881308913090130911309213093130941309513096130971309813099131001310113102131031310413105131061310713108131091311013111131121311313114131151311613117131181311913120131211312213123131241312513126131271312813129131301313113132131331313413135131361313713138131391314013141131421314313144131451314613147131481314913150131511315213153131541315513156131571315813159131601316113162131631316413165131661316713168131691317013171131721317313174131751317613177131781317913180131811318213183131841318513186131871318813189131901319113192131931319413195131961319713198131991320013201132021320313204132051320613207132081320913210132111321213213132141321513216132171321813219132201322113222132231322413225132261322713228132291323013231132321323313234132351323613237132381323913240132411324213243132441324513246132471324813249132501325113252132531325413255132561325713258132591326013261132621326313264132651326613267132681326913270132711327213273132741327513276132771327813279132801328113282132831328413285132861328713288132891329013291132921329313294132951329613297132981329913300133011330213303133041330513306133071330813309133101331113312133131331413315133161331713318133191332013321133221332313324133251332613327133281332913330133311333213333133341333513336133371333813339133401334113342133431334413345133461334713348133491335013351133521335313354133551335613357133581335913360133611336213363133641336513366133671336813369133701337113372133731337413375133761337713378133791338013381133821338313384133851338613387133881338913390133911339213393133941339513396133971339813399134001340113402134031340413405134061340713408134091341013411134121341313414134151341613417134181341913420134211342213423134241342513426134271342813429134301343113432134331343413435134361343713438134391344013441134421344313444134451344613447134481344913450134511345213453134541345513456134571345813459134601346113462134631346413465134661346713468134691347013471134721347313474134751347613477134781347913480134811348213483134841348513486134871348813489134901349113492134931349413495134961349713498134991350013501135021350313504135051350613507135081350913510135111351213513135141351513516135171351813519135201352113522135231352413525135261352713528135291353013531135321353313534135351353613537135381353913540135411354213543135441354513546135471354813549135501355113552135531355413555135561355713558135591356013561135621356313564135651356613567135681356913570135711357213573135741357513576135771357813579135801358113582135831358413585135861358713588135891359013591135921359313594135951359613597135981359913600136011360213603136041360513606136071360813609136101361113612136131361413615136161361713618136191362013621136221362313624136251362613627136281362913630136311363213633136341363513636136371363813639136401364113642136431364413645136461364713648136491365013651136521365313654136551365613657136581365913660136611366213663136641366513666136671366813669136701367113672136731367413675136761367713678136791368013681136821368313684136851368613687136881368913690136911369213693136941369513696136971369813699137001370113702137031370413705137061370713708137091371013711137121371313714137151371613717137181371913720137211372213723137241372513726137271372813729137301373113732137331373413735137361373713738137391374013741137421374313744137451374613747137481374913750137511375213753137541375513756137571375813759137601376113762137631376413765137661376713768137691377013771137721377313774137751377613777137781377913780137811378213783137841378513786137871378813789137901379113792137931379413795137961379713798137991380013801138021380313804138051380613807138081380913810138111381213813138141381513816138171381813819138201382113822138231382413825138261382713828138291383013831138321383313834138351383613837138381383913840138411384213843138441384513846138471384813849138501385113852138531385413855138561385713858138591386013861138621386313864138651386613867138681386913870138711387213873138741387513876138771387813879138801388113882138831388413885138861388713888138891389013891138921389313894138951389613897138981389913900139011390213903139041390513906139071390813909139101391113912139131391413915139161391713918139191392013921139221392313924139251392613927139281392913930139311393213933139341393513936139371393813939139401394113942139431394413945139461394713948139491395013951139521395313954139551395613957139581395913960139611396213963139641396513966139671396813969139701397113972139731397413975139761397713978139791398013981139821398313984139851398613987139881398913990139911399213993139941399513996139971399813999140001400114002140031400414005140061400714008140091401014011140121401314014140151401614017140181401914020140211402214023140241402514026140271402814029140301403114032140331403414035140361403714038140391404014041140421404314044140451404614047140481404914050140511405214053140541405514056140571405814059140601406114062140631406414065140661406714068140691407014071140721407314074140751407614077140781407914080140811408214083140841408514086140871408814089140901409114092140931409414095140961409714098140991410014101141021410314104141051410614107141081410914110141111411214113141141411514116141171411814119141201412114122141231412414125141261412714128141291413014131141321413314134141351413614137141381413914140141411414214143141441414514146141471414814149141501415114152141531415414155141561415714158141591416014161141621416314164141651416614167141681416914170141711417214173141741417514176141771417814179141801418114182141831418414185141861418714188141891419014191141921419314194141951419614197141981419914200142011420214203142041420514206142071420814209142101421114212142131421414215142161421714218142191422014221142221422314224142251422614227142281422914230142311423214233142341423514236142371423814239142401424114242142431424414245142461424714248142491425014251142521425314254142551425614257142581425914260142611426214263142641426514266142671426814269142701427114272142731427414275142761427714278142791428014281142821428314284142851428614287142881428914290142911429214293142941429514296142971429814299143001430114302143031430414305143061430714308143091431014311143121431314314143151431614317143181431914320143211432214323143241432514326143271432814329143301433114332143331433414335143361433714338143391434014341143421434314344143451434614347143481434914350143511435214353143541435514356143571435814359143601436114362143631436414365143661436714368143691437014371143721437314374143751437614377143781437914380143811438214383143841438514386143871438814389143901439114392143931439414395143961439714398143991440014401144021440314404144051440614407144081440914410144111441214413144141441514416144171441814419144201442114422144231442414425144261442714428144291443014431144321443314434144351443614437144381443914440144411444214443144441444514446144471444814449144501445114452144531445414455144561445714458144591446014461144621446314464144651446614467144681446914470144711447214473144741447514476144771447814479144801448114482144831448414485144861448714488144891449014491144921449314494144951449614497144981449914500145011450214503145041450514506145071450814509145101451114512145131451414515145161451714518145191452014521145221452314524145251452614527145281452914530145311453214533145341453514536145371453814539145401454114542145431454414545145461454714548145491455014551145521455314554145551455614557145581455914560145611456214563145641456514566145671456814569145701457114572145731457414575145761457714578145791458014581145821458314584145851458614587145881458914590145911459214593145941459514596145971459814599146001460114602146031460414605146061460714608146091461014611146121461314614146151461614617146181461914620146211462214623146241462514626146271462814629146301463114632146331463414635146361463714638146391464014641146421464314644146451464614647146481464914650146511465214653146541465514656146571465814659146601466114662146631466414665146661466714668146691467014671146721467314674146751467614677146781467914680146811468214683146841468514686146871468814689146901469114692146931469414695146961469714698146991470014701147021470314704147051470614707147081470914710147111471214713147141471514716147171471814719147201472114722147231472414725147261472714728147291473014731147321473314734147351473614737147381473914740147411474214743147441474514746147471474814749147501475114752147531475414755147561475714758147591476014761147621476314764147651476614767147681476914770147711477214773147741477514776147771477814779147801478114782147831478414785147861478714788147891479014791147921479314794147951479614797147981479914800148011480214803148041480514806148071480814809148101481114812148131481414815148161481714818148191482014821148221482314824148251482614827148281482914830148311483214833148341483514836148371483814839148401484114842148431484414845148461484714848148491485014851148521485314854148551485614857148581485914860148611486214863148641486514866148671486814869148701487114872148731487414875148761487714878148791488014881148821488314884148851488614887148881488914890148911489214893148941489514896148971489814899149001490114902149031490414905149061490714908149091491014911149121491314914149151491614917149181491914920149211492214923149241492514926149271492814929149301493114932149331493414935149361493714938149391494014941149421494314944149451494614947149481494914950149511495214953149541495514956149571495814959149601496114962149631496414965149661496714968149691497014971149721497314974149751497614977149781497914980149811498214983149841498514986149871498814989149901499114992149931499414995149961499714998149991500015001150021500315004150051500615007150081500915010150111501215013150141501515016150171501815019150201502115022150231502415025150261502715028150291503015031150321503315034150351503615037150381503915040150411504215043150441504515046150471504815049150501505115052150531505415055150561505715058150591506015061150621506315064150651506615067150681506915070150711507215073150741507515076150771507815079150801508115082150831508415085150861508715088150891509015091150921509315094150951509615097150981509915100151011510215103151041510515106151071510815109151101511115112151131511415115151161511715118151191512015121151221512315124151251512615127151281512915130151311513215133151341513515136151371513815139151401514115142151431514415145151461514715148151491515015151151521515315154151551515615157151581515915160151611516215163151641516515166151671516815169151701517115172151731517415175151761517715178151791518015181151821518315184151851518615187151881518915190151911519215193151941519515196151971519815199152001520115202152031520415205152061520715208152091521015211152121521315214152151521615217152181521915220152211522215223152241522515226152271522815229152301523115232152331523415235152361523715238152391524015241152421524315244152451524615247152481524915250152511525215253152541525515256152571525815259152601526115262152631526415265152661526715268152691527015271152721527315274152751527615277152781527915280152811528215283152841528515286152871528815289152901529115292152931529415295152961529715298152991530015301153021530315304153051530615307153081530915310153111531215313153141531515316153171531815319153201532115322153231532415325153261532715328153291533015331153321533315334153351533615337153381533915340153411534215343153441534515346153471534815349153501535115352153531535415355153561535715358153591536015361153621536315364153651536615367153681536915370153711537215373153741537515376153771537815379153801538115382153831538415385153861538715388153891539015391153921539315394153951539615397153981539915400154011540215403154041540515406154071540815409154101541115412154131541415415154161541715418154191542015421154221542315424154251542615427154281542915430154311543215433154341543515436154371543815439154401544115442154431544415445154461544715448154491545015451154521545315454154551545615457154581545915460154611546215463154641546515466154671546815469154701547115472154731547415475154761547715478154791548015481154821548315484154851548615487154881548915490154911549215493154941549515496154971549815499155001550115502155031550415505155061550715508155091551015511155121551315514155151551615517155181551915520155211552215523155241552515526155271552815529155301553115532155331553415535155361553715538155391554015541155421554315544155451554615547155481554915550155511555215553155541555515556155571555815559155601556115562155631556415565155661556715568155691557015571155721557315574155751557615577155781557915580155811558215583155841558515586155871558815589155901559115592155931559415595155961559715598155991560015601156021560315604156051560615607156081560915610156111561215613156141561515616156171561815619156201562115622156231562415625156261562715628156291563015631156321563315634156351563615637156381563915640156411564215643156441564515646156471564815649156501565115652156531565415655156561565715658156591566015661156621566315664156651566615667156681566915670156711567215673156741567515676156771567815679156801568115682156831568415685156861568715688156891569015691156921569315694156951569615697156981569915700157011570215703157041570515706157071570815709157101571115712157131571415715157161571715718157191572015721157221572315724157251572615727157281572915730157311573215733157341573515736157371573815739157401574115742157431574415745157461574715748157491575015751157521575315754157551575615757157581575915760157611576215763157641576515766157671576815769157701577115772157731577415775157761577715778157791578015781157821578315784157851578615787157881578915790157911579215793157941579515796157971579815799158001580115802158031580415805158061580715808158091581015811158121581315814158151581615817158181581915820158211582215823158241582515826158271582815829158301583115832158331583415835158361583715838158391584015841158421584315844158451584615847158481584915850158511585215853158541585515856158571585815859158601586115862158631586415865158661586715868158691587015871158721587315874158751587615877158781587915880158811588215883158841588515886158871588815889158901589115892158931589415895158961589715898158991590015901159021590315904159051590615907159081590915910159111591215913159141591515916159171591815919159201592115922159231592415925159261592715928159291593015931159321593315934159351593615937159381593915940159411594215943159441594515946159471594815949159501595115952159531595415955159561595715958159591596015961159621596315964159651596615967159681596915970159711597215973159741597515976159771597815979159801598115982159831598415985159861598715988159891599015991159921599315994159951599615997159981599916000160011600216003160041600516006160071600816009160101601116012160131601416015160161601716018160191602016021160221602316024160251602616027160281602916030160311603216033160341603516036160371603816039160401604116042160431604416045160461604716048160491605016051160521605316054160551605616057160581605916060160611606216063160641606516066160671606816069160701607116072160731607416075160761607716078160791608016081160821608316084160851608616087160881608916090160911609216093160941609516096160971609816099161001610116102161031610416105161061610716108161091611016111161121611316114161151611616117161181611916120161211612216123161241612516126161271612816129161301613116132161331613416135161361613716138161391614016141161421614316144161451614616147161481614916150161511615216153161541615516156161571615816159161601616116162161631616416165161661616716168161691617016171161721617316174161751617616177161781617916180161811618216183161841618516186161871618816189161901619116192161931619416195161961619716198161991620016201162021620316204162051620616207162081620916210162111621216213162141621516216162171621816219162201622116222162231622416225162261622716228162291623016231162321623316234162351623616237162381623916240162411624216243162441624516246162471624816249162501625116252162531625416255162561625716258162591626016261162621626316264162651626616267162681626916270162711627216273162741627516276162771627816279162801628116282162831628416285162861628716288162891629016291162921629316294162951629616297162981629916300163011630216303163041630516306163071630816309163101631116312163131631416315163161631716318163191632016321163221632316324163251632616327163281632916330163311633216333163341633516336163371633816339163401634116342163431634416345163461634716348163491635016351163521635316354163551635616357163581635916360163611636216363163641636516366163671636816369163701637116372163731637416375163761637716378163791638016381163821638316384163851638616387163881638916390163911639216393163941639516396163971639816399164001640116402164031640416405164061640716408164091641016411164121641316414164151641616417164181641916420164211642216423164241642516426164271642816429164301643116432164331643416435164361643716438164391644016441164421644316444164451644616447164481644916450164511645216453164541645516456164571645816459164601646116462164631646416465164661646716468164691647016471164721647316474164751647616477164781647916480164811648216483164841648516486164871648816489164901649116492164931649416495164961649716498164991650016501165021650316504165051650616507165081650916510165111651216513165141651516516165171651816519165201652116522165231652416525165261652716528165291653016531165321653316534165351653616537165381653916540165411654216543165441654516546165471654816549165501655116552165531655416555165561655716558165591656016561165621656316564165651656616567165681656916570165711657216573165741657516576165771657816579165801658116582165831658416585165861658716588165891659016591165921659316594165951659616597165981659916600166011660216603166041660516606166071660816609166101661116612166131661416615166161661716618166191662016621166221662316624166251662616627166281662916630166311663216633166341663516636166371663816639166401664116642166431664416645166461664716648166491665016651166521665316654166551665616657166581665916660166611666216663166641666516666166671666816669166701667116672166731667416675166761667716678166791668016681166821668316684166851668616687166881668916690166911669216693166941669516696166971669816699167001670116702167031670416705167061670716708167091671016711167121671316714167151671616717167181671916720167211672216723167241672516726167271672816729167301673116732167331673416735167361673716738167391674016741167421674316744167451674616747167481674916750167511675216753167541675516756167571675816759167601676116762167631676416765167661676716768167691677016771167721677316774167751677616777167781677916780167811678216783167841678516786167871678816789167901679116792167931679416795167961679716798167991680016801168021680316804168051680616807168081680916810168111681216813168141681516816168171681816819168201682116822168231682416825168261682716828168291683016831168321683316834168351683616837168381683916840168411684216843168441684516846168471684816849168501685116852168531685416855168561685716858168591686016861168621686316864168651686616867168681686916870168711687216873168741687516876168771687816879168801688116882168831688416885168861688716888168891689016891168921689316894168951689616897168981689916900169011690216903169041690516906169071690816909169101691116912169131691416915169161691716918169191692016921169221692316924169251692616927169281692916930169311693216933169341693516936169371693816939169401694116942169431694416945169461694716948169491695016951169521695316954169551695616957169581695916960169611696216963169641696516966169671696816969169701697116972169731697416975169761697716978169791698016981169821698316984169851698616987169881698916990169911699216993169941699516996169971699816999170001700117002170031700417005170061700717008170091701017011170121701317014170151701617017170181701917020170211702217023170241702517026170271702817029170301703117032170331703417035170361703717038170391704017041170421704317044170451704617047170481704917050170511705217053170541705517056170571705817059170601706117062170631706417065170661706717068170691707017071170721707317074170751707617077170781707917080170811708217083170841708517086170871708817089170901709117092170931709417095170961709717098170991710017101171021710317104171051710617107171081710917110171111711217113171141711517116171171711817119171201712117122171231712417125171261712717128171291713017131171321713317134171351713617137171381713917140171411714217143171441714517146171471714817149171501715117152171531715417155171561715717158171591716017161171621716317164171651716617167171681716917170171711717217173171741717517176171771717817179171801718117182171831718417185171861718717188171891719017191171921719317194171951719617197171981719917200172011720217203172041720517206172071720817209172101721117212172131721417215172161721717218172191722017221172221722317224172251722617227172281722917230172311723217233172341723517236172371723817239172401724117242172431724417245172461724717248172491725017251172521725317254172551725617257172581725917260172611726217263172641726517266172671726817269172701727117272172731727417275172761727717278172791728017281172821728317284172851728617287172881728917290172911729217293172941729517296172971729817299173001730117302173031730417305173061730717308173091731017311173121731317314173151731617317173181731917320173211732217323173241732517326173271732817329173301733117332173331733417335173361733717338173391734017341173421734317344173451734617347173481734917350173511735217353173541735517356173571735817359173601736117362173631736417365173661736717368173691737017371173721737317374173751737617377173781737917380173811738217383173841738517386173871738817389173901739117392173931739417395173961739717398173991740017401174021740317404174051740617407174081740917410174111741217413174141741517416174171741817419174201742117422174231742417425174261742717428174291743017431174321743317434174351743617437174381743917440174411744217443174441744517446174471744817449174501745117452174531745417455174561745717458174591746017461174621746317464174651746617467174681746917470174711747217473174741747517476174771747817479174801748117482174831748417485174861748717488174891749017491174921749317494174951749617497174981749917500175011750217503175041750517506175071750817509175101751117512175131751417515175161751717518175191752017521175221752317524175251752617527175281752917530175311753217533175341753517536175371753817539175401754117542175431754417545175461754717548175491755017551175521755317554175551755617557175581755917560175611756217563175641756517566175671756817569175701757117572175731757417575175761757717578175791758017581175821758317584175851758617587175881758917590175911759217593175941759517596175971759817599176001760117602176031760417605176061760717608176091761017611176121761317614176151761617617176181761917620176211762217623176241762517626176271762817629176301763117632176331763417635176361763717638176391764017641176421764317644176451764617647176481764917650176511765217653176541765517656176571765817659176601766117662176631766417665176661766717668176691767017671176721767317674176751767617677176781767917680176811768217683176841768517686176871768817689176901769117692176931769417695176961769717698176991770017701177021770317704177051770617707177081770917710177111771217713177141771517716177171771817719177201772117722177231772417725177261772717728177291773017731177321773317734177351773617737177381773917740177411774217743177441774517746177471774817749177501775117752177531775417755177561775717758177591776017761177621776317764177651776617767177681776917770177711777217773177741777517776177771777817779177801778117782177831778417785177861778717788177891779017791177921779317794177951779617797177981779917800178011780217803178041780517806178071780817809178101781117812178131781417815178161781717818178191782017821178221782317824178251782617827178281782917830178311783217833178341783517836178371783817839178401784117842178431784417845178461784717848178491785017851178521785317854178551785617857178581785917860178611786217863178641786517866178671786817869178701787117872178731787417875178761787717878178791788017881178821788317884178851788617887178881788917890178911789217893178941789517896178971789817899179001790117902179031790417905179061790717908179091791017911179121791317914179151791617917179181791917920179211792217923179241792517926179271792817929179301793117932179331793417935179361793717938179391794017941179421794317944179451794617947179481794917950179511795217953179541795517956179571795817959179601796117962179631796417965179661796717968179691797017971179721797317974179751797617977179781797917980179811798217983179841798517986179871798817989179901799117992179931799417995179961799717998179991800018001180021800318004180051800618007180081800918010180111801218013180141801518016180171801818019180201802118022180231802418025180261802718028180291803018031180321803318034180351803618037180381803918040180411804218043180441804518046180471804818049180501805118052180531805418055180561805718058180591806018061180621806318064180651806618067180681806918070180711807218073180741807518076180771807818079180801808118082180831808418085180861808718088180891809018091180921809318094180951809618097180981809918100181011810218103181041810518106181071810818109181101811118112181131811418115181161811718118181191812018121181221812318124181251812618127181281812918130181311813218133181341813518136181371813818139181401814118142181431814418145181461814718148181491815018151181521815318154181551815618157181581815918160181611816218163181641816518166181671816818169181701817118172181731817418175181761817718178181791818018181181821818318184181851818618187181881818918190181911819218193181941819518196181971819818199182001820118202182031820418205182061820718208182091821018211182121821318214182151821618217182181821918220182211822218223182241822518226182271822818229182301823118232182331823418235182361823718238182391824018241182421824318244182451824618247182481824918250182511825218253182541825518256182571825818259182601826118262182631826418265182661826718268182691827018271182721827318274182751827618277182781827918280182811828218283182841828518286182871828818289182901829118292182931829418295182961829718298182991830018301183021830318304183051830618307183081830918310183111831218313183141831518316183171831818319183201832118322183231832418325183261832718328183291833018331183321833318334183351833618337183381833918340183411834218343183441834518346183471834818349183501835118352183531835418355183561835718358183591836018361183621836318364183651836618367183681836918370183711837218373183741837518376183771837818379183801838118382183831838418385183861838718388183891839018391183921839318394183951839618397183981839918400184011840218403184041840518406184071840818409184101841118412184131841418415184161841718418184191842018421184221842318424184251842618427184281842918430184311843218433184341843518436184371843818439184401844118442184431844418445184461844718448184491845018451184521845318454184551845618457184581845918460184611846218463184641846518466184671846818469184701847118472184731847418475184761847718478184791848018481184821848318484184851848618487184881848918490184911849218493184941849518496184971849818499185001850118502185031850418505185061850718508185091851018511185121851318514185151851618517185181851918520185211852218523185241852518526185271852818529185301853118532185331853418535185361853718538185391854018541185421854318544185451854618547185481854918550185511855218553185541855518556185571855818559185601856118562185631856418565185661856718568185691857018571185721857318574185751857618577185781857918580185811858218583185841858518586185871858818589185901859118592185931859418595185961859718598185991860018601186021860318604186051860618607186081860918610186111861218613186141861518616186171861818619186201862118622186231862418625186261862718628186291863018631186321863318634186351863618637186381863918640186411864218643186441864518646186471864818649186501865118652186531865418655186561865718658186591866018661186621866318664186651866618667186681866918670186711867218673186741867518676186771867818679186801868118682186831868418685186861868718688186891869018691186921869318694186951869618697186981869918700187011870218703187041870518706187071870818709187101871118712187131871418715187161871718718187191872018721187221872318724187251872618727187281872918730187311873218733187341873518736187371873818739187401874118742187431874418745187461874718748187491875018751187521875318754187551875618757187581875918760187611876218763187641876518766187671876818769187701877118772187731877418775187761877718778187791878018781187821878318784187851878618787187881878918790187911879218793187941879518796187971879818799188001880118802188031880418805188061880718808188091881018811188121881318814188151881618817188181881918820188211882218823188241882518826188271882818829188301883118832188331883418835188361883718838188391884018841188421884318844188451884618847188481884918850188511885218853188541885518856188571885818859188601886118862188631886418865188661886718868188691887018871188721887318874188751887618877188781887918880188811888218883188841888518886188871888818889188901889118892188931889418895188961889718898188991890018901189021890318904189051890618907189081890918910189111891218913189141891518916189171891818919189201892118922189231892418925189261892718928189291893018931189321893318934189351893618937189381893918940189411894218943189441894518946189471894818949189501895118952189531895418955189561895718958189591896018961189621896318964189651896618967189681896918970189711897218973189741897518976189771897818979189801898118982189831898418985189861898718988189891899018991189921899318994189951899618997189981899919000190011900219003190041900519006190071900819009190101901119012190131901419015190161901719018190191902019021190221902319024190251902619027190281902919030190311903219033190341903519036190371903819039190401904119042190431904419045190461904719048190491905019051190521905319054190551905619057190581905919060190611906219063190641906519066190671906819069190701907119072190731907419075190761907719078190791908019081190821908319084190851908619087190881908919090190911909219093190941909519096190971909819099191001910119102191031910419105191061910719108191091911019111191121911319114191151911619117191181911919120191211912219123191241912519126191271912819129191301913119132191331913419135191361913719138191391914019141191421914319144191451914619147191481914919150191511915219153191541915519156191571915819159191601916119162191631916419165191661916719168191691917019171191721917319174191751917619177191781917919180191811918219183191841918519186191871918819189191901919119192191931919419195191961919719198191991920019201192021920319204192051920619207192081920919210192111921219213192141921519216192171921819219192201922119222192231922419225192261922719228192291923019231192321923319234192351923619237192381923919240192411924219243192441924519246192471924819249192501925119252192531925419255192561925719258192591926019261192621926319264192651926619267192681926919270192711927219273192741927519276192771927819279192801928119282192831928419285192861928719288192891929019291192921929319294192951929619297192981929919300193011930219303193041930519306193071930819309193101931119312193131931419315193161931719318193191932019321193221932319324193251932619327193281932919330193311933219333193341933519336193371933819339193401934119342193431934419345193461934719348193491935019351193521935319354193551935619357193581935919360193611936219363193641936519366193671936819369193701937119372193731937419375193761937719378193791938019381193821938319384193851938619387193881938919390193911939219393193941939519396193971939819399194001940119402194031940419405194061940719408194091941019411194121941319414194151941619417194181941919420194211942219423194241942519426194271942819429194301943119432194331943419435194361943719438194391944019441194421944319444194451944619447194481944919450194511945219453194541945519456194571945819459194601946119462194631946419465194661946719468194691947019471194721947319474194751947619477194781947919480194811948219483194841948519486194871948819489194901949119492194931949419495194961949719498194991950019501195021950319504195051950619507195081950919510195111951219513195141951519516195171951819519195201952119522195231952419525195261952719528195291953019531195321953319534195351953619537195381953919540195411954219543195441954519546195471954819549195501955119552195531955419555195561955719558195591956019561195621956319564195651956619567195681956919570195711957219573195741957519576195771957819579195801958119582195831958419585195861958719588195891959019591195921959319594195951959619597195981959919600196011960219603196041960519606196071960819609196101961119612196131961419615196161961719618196191962019621196221962319624196251962619627196281962919630196311963219633196341963519636196371963819639196401964119642196431964419645196461964719648196491965019651196521965319654196551965619657196581965919660196611966219663196641966519666196671966819669196701967119672196731967419675196761967719678196791968019681196821968319684196851968619687196881968919690196911969219693196941969519696196971969819699197001970119702197031970419705197061970719708197091971019711197121971319714197151971619717197181971919720197211972219723197241972519726197271972819729197301973119732197331973419735197361973719738197391974019741197421974319744197451974619747197481974919750197511975219753197541975519756197571975819759197601976119762197631976419765197661976719768197691977019771197721977319774197751977619777197781977919780197811978219783197841978519786197871978819789197901979119792197931979419795197961979719798197991980019801198021980319804198051980619807198081980919810198111981219813198141981519816198171981819819198201982119822198231982419825198261982719828198291983019831198321983319834198351983619837198381983919840198411984219843198441984519846198471984819849198501985119852198531985419855198561985719858198591986019861198621986319864198651986619867198681986919870198711987219873198741987519876198771987819879198801988119882198831988419885198861988719888198891989019891198921989319894198951989619897198981989919900199011990219903199041990519906199071990819909199101991119912199131991419915199161991719918199191992019921199221992319924199251992619927199281992919930199311993219933199341993519936199371993819939199401994119942199431994419945199461994719948199491995019951199521995319954199551995619957199581995919960199611996219963199641996519966199671996819969199701997119972199731997419975199761997719978199791998019981199821998319984199851998619987199881998919990199911999219993199941999519996199971999819999200002000120002200032000420005200062000720008200092001020011200122001320014200152001620017200182001920020200212002220023200242002520026200272002820029200302003120032200332003420035200362003720038200392004020041200422004320044200452004620047200482004920050200512005220053200542005520056200572005820059200602006120062200632006420065200662006720068200692007020071200722007320074200752007620077200782007920080200812008220083200842008520086200872008820089200902009120092200932009420095200962009720098200992010020101201022010320104201052010620107201082010920110201112011220113201142011520116201172011820119201202012120122201232012420125201262012720128201292013020131201322013320134201352013620137201382013920140201412014220143201442014520146201472014820149201502015120152201532015420155201562015720158201592016020161201622016320164201652016620167201682016920170201712017220173201742017520176201772017820179201802018120182201832018420185201862018720188201892019020191201922019320194201952019620197201982019920200202012020220203202042020520206202072020820209202102021120212202132021420215202162021720218202192022020221202222022320224202252022620227202282022920230202312023220233202342023520236202372023820239202402024120242202432024420245202462024720248202492025020251202522025320254202552025620257202582025920260202612026220263202642026520266202672026820269202702027120272202732027420275202762027720278202792028020281202822028320284202852028620287202882028920290202912029220293202942029520296202972029820299203002030120302203032030420305203062030720308203092031020311203122031320314203152031620317203182031920320203212032220323203242032520326203272032820329203302033120332203332033420335203362033720338203392034020341203422034320344203452034620347203482034920350203512035220353203542035520356203572035820359203602036120362203632036420365203662036720368203692037020371203722037320374203752037620377203782037920380203812038220383203842038520386203872038820389203902039120392203932039420395203962039720398203992040020401204022040320404204052040620407204082040920410204112041220413204142041520416204172041820419204202042120422204232042420425204262042720428204292043020431204322043320434204352043620437204382043920440204412044220443204442044520446204472044820449204502045120452204532045420455204562045720458204592046020461204622046320464204652046620467204682046920470204712047220473204742047520476204772047820479204802048120482204832048420485204862048720488204892049020491204922049320494204952049620497204982049920500205012050220503205042050520506205072050820509205102051120512205132051420515205162051720518205192052020521205222052320524205252052620527205282052920530205312053220533205342053520536205372053820539205402054120542205432054420545205462054720548205492055020551205522055320554205552055620557205582055920560205612056220563205642056520566205672056820569205702057120572205732057420575205762057720578205792058020581205822058320584205852058620587205882058920590205912059220593205942059520596205972059820599206002060120602206032060420605206062060720608206092061020611206122061320614206152061620617206182061920620206212062220623206242062520626206272062820629206302063120632206332063420635206362063720638206392064020641206422064320644206452064620647206482064920650206512065220653206542065520656206572065820659206602066120662206632066420665206662066720668206692067020671206722067320674206752067620677206782067920680206812068220683206842068520686206872068820689206902069120692206932069420695206962069720698206992070020701207022070320704207052070620707207082070920710207112071220713207142071520716207172071820719207202072120722207232072420725207262072720728207292073020731207322073320734207352073620737207382073920740207412074220743207442074520746207472074820749207502075120752207532075420755207562075720758207592076020761207622076320764207652076620767207682076920770207712077220773207742077520776207772077820779207802078120782207832078420785207862078720788207892079020791207922079320794207952079620797207982079920800208012080220803208042080520806208072080820809208102081120812208132081420815208162081720818208192082020821208222082320824208252082620827208282082920830208312083220833208342083520836208372083820839208402084120842208432084420845208462084720848208492085020851208522085320854208552085620857208582085920860208612086220863208642086520866208672086820869208702087120872208732087420875208762087720878208792088020881208822088320884208852088620887208882088920890208912089220893208942089520896208972089820899209002090120902209032090420905209062090720908209092091020911209122091320914209152091620917209182091920920209212092220923209242092520926209272092820929209302093120932209332093420935209362093720938209392094020941209422094320944209452094620947209482094920950209512095220953209542095520956209572095820959209602096120962209632096420965209662096720968209692097020971209722097320974209752097620977209782097920980209812098220983209842098520986209872098820989209902099120992209932099420995209962099720998209992100021001210022100321004210052100621007210082100921010210112101221013210142101521016210172101821019210202102121022210232102421025210262102721028210292103021031210322103321034210352103621037210382103921040210412104221043210442104521046210472104821049210502105121052210532105421055210562105721058210592106021061210622106321064210652106621067210682106921070210712107221073210742107521076210772107821079210802108121082210832108421085210862108721088210892109021091210922109321094210952109621097210982109921100211012110221103211042110521106211072110821109211102111121112211132111421115211162111721118211192112021121211222112321124211252112621127211282112921130211312113221133211342113521136211372113821139211402114121142211432114421145211462114721148211492115021151211522115321154211552115621157211582115921160211612116221163211642116521166211672116821169211702117121172211732117421175211762117721178211792118021181211822118321184211852118621187211882118921190211912119221193211942119521196211972119821199212002120121202212032120421205212062120721208212092121021211212122121321214212152121621217212182121921220212212122221223212242122521226212272122821229212302123121232212332123421235212362123721238212392124021241212422124321244212452124621247212482124921250212512125221253212542125521256212572125821259212602126121262212632126421265212662126721268212692127021271212722127321274212752127621277212782127921280212812128221283212842128521286212872128821289212902129121292212932129421295212962129721298212992130021301213022130321304213052130621307213082130921310213112131221313213142131521316213172131821319213202132121322213232132421325213262132721328213292133021331213322133321334213352133621337213382133921340213412134221343213442134521346213472134821349213502135121352213532135421355213562135721358213592136021361213622136321364213652136621367213682136921370213712137221373213742137521376213772137821379213802138121382213832138421385213862138721388213892139021391213922139321394213952139621397213982139921400214012140221403214042140521406214072140821409214102141121412214132141421415214162141721418214192142021421214222142321424214252142621427214282142921430214312143221433214342143521436214372143821439214402144121442214432144421445214462144721448214492145021451214522145321454214552145621457214582145921460214612146221463214642146521466214672146821469214702147121472214732147421475214762147721478214792148021481214822148321484214852148621487214882148921490214912149221493214942149521496214972149821499215002150121502215032150421505215062150721508215092151021511215122151321514215152151621517215182151921520215212152221523215242152521526215272152821529215302153121532215332153421535215362153721538215392154021541215422154321544215452154621547215482154921550215512155221553215542155521556215572155821559215602156121562215632156421565215662156721568215692157021571215722157321574215752157621577215782157921580215812158221583215842158521586215872158821589215902159121592215932159421595215962159721598215992160021601216022160321604216052160621607216082160921610216112161221613216142161521616216172161821619216202162121622216232162421625216262162721628216292163021631216322163321634216352163621637216382163921640216412164221643216442164521646216472164821649216502165121652216532165421655216562165721658216592166021661216622166321664216652166621667216682166921670216712167221673216742167521676216772167821679216802168121682216832168421685216862168721688216892169021691216922169321694216952169621697216982169921700217012170221703217042170521706217072170821709217102171121712217132171421715217162171721718217192172021721217222172321724217252172621727217282172921730217312173221733217342173521736217372173821739217402174121742217432174421745217462174721748217492175021751217522175321754217552175621757217582175921760217612176221763217642176521766217672176821769217702177121772217732177421775217762177721778217792178021781217822178321784217852178621787217882178921790217912179221793217942179521796217972179821799218002180121802218032180421805218062180721808218092181021811218122181321814218152181621817218182181921820218212182221823218242182521826218272182821829218302183121832218332183421835218362183721838218392184021841218422184321844218452184621847218482184921850218512185221853218542185521856218572185821859218602186121862218632186421865218662186721868218692187021871218722187321874218752187621877218782187921880218812188221883218842188521886218872188821889218902189121892218932189421895218962189721898218992190021901219022190321904219052190621907219082190921910219112191221913219142191521916219172191821919219202192121922219232192421925219262192721928219292193021931219322193321934219352193621937219382193921940219412194221943219442194521946219472194821949219502195121952219532195421955219562195721958219592196021961219622196321964219652196621967219682196921970219712197221973219742197521976219772197821979219802198121982219832198421985219862198721988219892199021991219922199321994219952199621997219982199922000220012200222003220042200522006220072200822009220102201122012220132201422015220162201722018220192202022021220222202322024220252202622027220282202922030220312203222033220342203522036220372203822039220402204122042220432204422045220462204722048220492205022051220522205322054220552205622057220582205922060220612206222063220642206522066220672206822069220702207122072220732207422075220762207722078220792208022081220822208322084220852208622087220882208922090220912209222093220942209522096220972209822099221002210122102221032210422105221062210722108221092211022111221122211322114221152211622117221182211922120221212212222123221242212522126221272212822129221302213122132221332213422135221362213722138221392214022141221422214322144221452214622147221482214922150221512215222153221542215522156221572215822159221602216122162221632216422165221662216722168221692217022171221722217322174221752217622177221782217922180221812218222183221842218522186221872218822189221902219122192221932219422195221962219722198221992220022201222022220322204222052220622207222082220922210222112221222213222142221522216222172221822219222202222122222222232222422225222262222722228222292223022231222322223322234222352223622237222382223922240222412224222243222442224522246222472224822249222502225122252222532225422255222562225722258222592226022261222622226322264222652226622267222682226922270222712227222273222742227522276222772227822279222802228122282222832228422285222862228722288222892229022291222922229322294222952229622297222982229922300223012230222303223042230522306223072230822309223102231122312223132231422315223162231722318223192232022321223222232322324223252232622327223282232922330223312233222333223342233522336223372233822339223402234122342223432234422345223462234722348223492235022351223522235322354223552235622357223582235922360223612236222363223642236522366223672236822369223702237122372223732237422375223762237722378223792238022381223822238322384223852238622387223882238922390223912239222393223942239522396223972239822399224002240122402224032240422405224062240722408224092241022411224122241322414224152241622417224182241922420224212242222423224242242522426224272242822429224302243122432224332243422435224362243722438224392244022441224422244322444224452244622447224482244922450224512245222453224542245522456224572245822459224602246122462224632246422465224662246722468224692247022471224722247322474224752247622477224782247922480224812248222483224842248522486224872248822489224902249122492224932249422495224962249722498224992250022501225022250322504225052250622507225082250922510225112251222513225142251522516225172251822519225202252122522225232252422525225262252722528225292253022531225322253322534225352253622537225382253922540225412254222543225442254522546225472254822549225502255122552225532255422555225562255722558225592256022561225622256322564225652256622567225682256922570225712257222573225742257522576225772257822579225802258122582225832258422585225862258722588225892259022591225922259322594225952259622597225982259922600226012260222603226042260522606226072260822609226102261122612226132261422615226162261722618226192262022621226222262322624226252262622627226282262922630226312263222633226342263522636226372263822639226402264122642226432264422645226462264722648226492265022651226522265322654226552265622657226582265922660226612266222663226642266522666226672266822669226702267122672226732267422675226762267722678226792268022681226822268322684226852268622687226882268922690226912269222693226942269522696226972269822699227002270122702227032270422705227062270722708227092271022711227122271322714227152271622717227182271922720227212272222723227242272522726227272272822729227302273122732227332273422735227362273722738227392274022741227422274322744227452274622747227482274922750227512275222753227542275522756227572275822759227602276122762227632276422765227662276722768227692277022771227722277322774227752277622777227782277922780227812278222783227842278522786227872278822789227902279122792227932279422795227962279722798227992280022801228022280322804228052280622807228082280922810228112281222813228142281522816228172281822819228202282122822228232282422825228262282722828228292283022831228322283322834228352283622837228382283922840228412284222843228442284522846228472284822849228502285122852228532285422855228562285722858228592286022861228622286322864228652286622867228682286922870228712287222873228742287522876228772287822879228802288122882228832288422885228862288722888228892289022891228922289322894228952289622897228982289922900229012290222903229042290522906229072290822909229102291122912229132291422915229162291722918229192292022921229222292322924229252292622927229282292922930229312293222933229342293522936229372293822939229402294122942229432294422945229462294722948229492295022951229522295322954229552295622957229582295922960229612296222963229642296522966229672296822969229702297122972229732297422975229762297722978229792298022981229822298322984229852298622987229882298922990229912299222993229942299522996229972299822999230002300123002230032300423005230062300723008230092301023011230122301323014230152301623017230182301923020230212302223023230242302523026230272302823029230302303123032230332303423035230362303723038230392304023041230422304323044230452304623047230482304923050230512305223053230542305523056230572305823059230602306123062230632306423065230662306723068230692307023071230722307323074230752307623077230782307923080230812308223083230842308523086230872308823089230902309123092230932309423095230962309723098230992310023101231022310323104231052310623107231082310923110231112311223113231142311523116231172311823119231202312123122231232312423125231262312723128231292313023131231322313323134231352313623137231382313923140231412314223143231442314523146231472314823149231502315123152231532315423155231562315723158231592316023161231622316323164231652316623167231682316923170231712317223173231742317523176231772317823179231802318123182231832318423185231862318723188231892319023191231922319323194231952319623197231982319923200232012320223203232042320523206232072320823209232102321123212232132321423215232162321723218232192322023221232222322323224232252322623227232282322923230232312323223233232342323523236232372323823239232402324123242232432324423245232462324723248232492325023251232522325323254232552325623257232582325923260232612326223263232642326523266232672326823269232702327123272232732327423275232762327723278232792328023281232822328323284232852328623287232882328923290232912329223293232942329523296232972329823299233002330123302233032330423305233062330723308233092331023311233122331323314233152331623317233182331923320233212332223323233242332523326233272332823329233302333123332233332333423335233362333723338233392334023341233422334323344233452334623347233482334923350233512335223353233542335523356233572335823359233602336123362233632336423365233662336723368233692337023371233722337323374233752337623377233782337923380233812338223383233842338523386233872338823389233902339123392233932339423395233962339723398233992340023401234022340323404234052340623407234082340923410234112341223413234142341523416234172341823419234202342123422234232342423425234262342723428234292343023431234322343323434234352343623437234382343923440234412344223443234442344523446234472344823449234502345123452234532345423455234562345723458234592346023461234622346323464234652346623467234682346923470234712347223473234742347523476234772347823479234802348123482234832348423485234862348723488234892349023491234922349323494234952349623497234982349923500235012350223503235042350523506235072350823509235102351123512235132351423515235162351723518235192352023521235222352323524235252352623527235282352923530235312353223533235342353523536235372353823539235402354123542235432354423545235462354723548235492355023551235522355323554235552355623557235582355923560235612356223563235642356523566235672356823569235702357123572235732357423575235762357723578235792358023581235822358323584235852358623587235882358923590235912359223593235942359523596235972359823599236002360123602236032360423605236062360723608236092361023611236122361323614236152361623617236182361923620236212362223623236242362523626236272362823629236302363123632236332363423635236362363723638236392364023641236422364323644236452364623647236482364923650236512365223653236542365523656236572365823659236602366123662236632366423665236662366723668236692367023671236722367323674236752367623677236782367923680236812368223683236842368523686236872368823689236902369123692236932369423695236962369723698236992370023701237022370323704237052370623707237082370923710237112371223713237142371523716237172371823719237202372123722237232372423725237262372723728237292373023731237322373323734237352373623737237382373923740237412374223743237442374523746237472374823749237502375123752237532375423755237562375723758237592376023761237622376323764237652376623767237682376923770237712377223773237742377523776237772377823779237802378123782237832378423785237862378723788237892379023791237922379323794237952379623797237982379923800238012380223803238042380523806238072380823809238102381123812238132381423815238162381723818238192382023821238222382323824238252382623827238282382923830238312383223833238342383523836238372383823839238402384123842238432384423845238462384723848238492385023851238522385323854238552385623857238582385923860238612386223863238642386523866238672386823869238702387123872238732387423875238762387723878238792388023881238822388323884238852388623887238882388923890238912389223893238942389523896238972389823899239002390123902239032390423905239062390723908239092391023911239122391323914239152391623917239182391923920239212392223923239242392523926239272392823929239302393123932239332393423935239362393723938239392394023941239422394323944239452394623947239482394923950239512395223953239542395523956239572395823959239602396123962239632396423965239662396723968239692397023971239722397323974239752397623977239782397923980239812398223983239842398523986239872398823989239902399123992239932399423995239962399723998239992400024001240022400324004240052400624007240082400924010240112401224013240142401524016240172401824019240202402124022240232402424025240262402724028240292403024031240322403324034240352403624037240382403924040240412404224043240442404524046240472404824049240502405124052240532405424055240562405724058240592406024061240622406324064240652406624067240682406924070240712407224073240742407524076240772407824079240802408124082240832408424085240862408724088240892409024091240922409324094240952409624097240982409924100241012410224103241042410524106241072410824109241102411124112241132411424115241162411724118241192412024121241222412324124241252412624127241282412924130241312413224133241342413524136241372413824139241402414124142241432414424145241462414724148241492415024151241522415324154241552415624157241582415924160241612416224163241642416524166241672416824169241702417124172241732417424175241762417724178241792418024181241822418324184241852418624187241882418924190241912419224193241942419524196241972419824199242002420124202242032420424205242062420724208242092421024211242122421324214242152421624217242182421924220242212422224223242242422524226242272422824229242302423124232242332423424235242362423724238242392424024241242422424324244242452424624247242482424924250242512425224253242542425524256242572425824259242602426124262242632426424265242662426724268242692427024271242722427324274242752427624277242782427924280242812428224283242842428524286242872428824289242902429124292242932429424295242962429724298242992430024301243022430324304243052430624307243082430924310243112431224313243142431524316243172431824319243202432124322243232432424325243262432724328243292433024331243322433324334243352433624337243382433924340243412434224343243442434524346243472434824349243502435124352243532435424355243562435724358243592436024361243622436324364243652436624367243682436924370243712437224373243742437524376243772437824379243802438124382243832438424385243862438724388243892439024391243922439324394243952439624397243982439924400244012440224403244042440524406244072440824409244102441124412244132441424415244162441724418244192442024421244222442324424244252442624427244282442924430244312443224433244342443524436244372443824439244402444124442244432444424445244462444724448244492445024451244522445324454244552445624457244582445924460244612446224463244642446524466244672446824469244702447124472244732447424475244762447724478244792448024481244822448324484244852448624487244882448924490244912449224493244942449524496244972449824499245002450124502245032450424505245062450724508245092451024511245122451324514245152451624517245182451924520245212452224523245242452524526245272452824529245302453124532245332453424535245362453724538245392454024541245422454324544245452454624547245482454924550245512455224553245542455524556245572455824559245602456124562245632456424565245662456724568245692457024571245722457324574245752457624577245782457924580245812458224583245842458524586245872458824589245902459124592245932459424595245962459724598245992460024601246022460324604246052460624607246082460924610246112461224613246142461524616246172461824619246202462124622246232462424625246262462724628246292463024631246322463324634246352463624637246382463924640246412464224643246442464524646246472464824649246502465124652246532465424655246562465724658246592466024661246622466324664246652466624667246682466924670246712467224673246742467524676246772467824679246802468124682246832468424685246862468724688246892469024691246922469324694246952469624697246982469924700247012470224703247042470524706247072470824709247102471124712247132471424715247162471724718247192472024721247222472324724247252472624727247282472924730247312473224733247342473524736247372473824739247402474124742247432474424745247462474724748247492475024751247522475324754247552475624757247582475924760247612476224763247642476524766247672476824769247702477124772247732477424775247762477724778247792478024781247822478324784247852478624787247882478924790247912479224793247942479524796247972479824799248002480124802248032480424805248062480724808248092481024811248122481324814248152481624817248182481924820248212482224823248242482524826248272482824829248302483124832248332483424835248362483724838248392484024841248422484324844248452484624847248482484924850248512485224853248542485524856248572485824859248602486124862248632486424865248662486724868248692487024871248722487324874248752487624877248782487924880248812488224883248842488524886248872488824889248902489124892248932489424895248962489724898248992490024901249022490324904249052490624907249082490924910249112491224913249142491524916249172491824919249202492124922249232492424925249262492724928249292493024931249322493324934249352493624937249382493924940249412494224943249442494524946249472494824949249502495124952249532495424955249562495724958249592496024961249622496324964249652496624967249682496924970249712497224973249742497524976249772497824979249802498124982249832498424985249862498724988249892499024991249922499324994249952499624997249982499925000250012500225003250042500525006250072500825009250102501125012250132501425015250162501725018250192502025021250222502325024250252502625027250282502925030250312503225033250342503525036250372503825039250402504125042250432504425045250462504725048250492505025051250522505325054250552505625057250582505925060250612506225063250642506525066250672506825069250702507125072250732507425075250762507725078250792508025081250822508325084250852508625087250882508925090250912509225093250942509525096250972509825099251002510125102251032510425105251062510725108251092511025111251122511325114251152511625117251182511925120251212512225123251242512525126251272512825129251302513125132251332513425135251362513725138251392514025141251422514325144251452514625147251482514925150251512515225153251542515525156251572515825159251602516125162251632516425165251662516725168251692517025171251722517325174251752517625177251782517925180251812518225183251842518525186251872518825189251902519125192251932519425195251962519725198251992520025201252022520325204252052520625207252082520925210252112521225213252142521525216252172521825219252202522125222252232522425225252262522725228252292523025231252322523325234252352523625237252382523925240252412524225243252442524525246252472524825249252502525125252252532525425255252562525725258252592526025261252622526325264252652526625267252682526925270252712527225273252742527525276252772527825279252802528125282252832528425285252862528725288252892529025291252922529325294252952529625297252982529925300253012530225303253042530525306253072530825309253102531125312253132531425315253162531725318253192532025321253222532325324253252532625327253282532925330253312533225333253342533525336253372533825339253402534125342253432534425345253462534725348253492535025351253522535325354253552535625357253582535925360253612536225363253642536525366253672536825369253702537125372253732537425375253762537725378253792538025381253822538325384253852538625387253882538925390253912539225393253942539525396253972539825399254002540125402254032540425405254062540725408254092541025411254122541325414254152541625417254182541925420254212542225423254242542525426254272542825429254302543125432254332543425435254362543725438254392544025441254422544325444254452544625447254482544925450254512545225453254542545525456254572545825459254602546125462254632546425465254662546725468254692547025471254722547325474254752547625477254782547925480254812548225483254842548525486254872548825489254902549125492254932549425495254962549725498254992550025501255022550325504255052550625507255082550925510255112551225513255142551525516255172551825519255202552125522255232552425525255262552725528255292553025531255322553325534255352553625537255382553925540255412554225543255442554525546255472554825549255502555125552255532555425555255562555725558255592556025561255622556325564255652556625567255682556925570255712557225573255742557525576255772557825579255802558125582255832558425585255862558725588255892559025591255922559325594255952559625597255982559925600256012560225603256042560525606256072560825609256102561125612256132561425615256162561725618256192562025621256222562325624256252562625627256282562925630256312563225633256342563525636256372563825639256402564125642256432564425645256462564725648256492565025651256522565325654256552565625657256582565925660256612566225663256642566525666256672566825669256702567125672256732567425675256762567725678256792568025681256822568325684256852568625687256882568925690256912569225693256942569525696256972569825699257002570125702257032570425705257062570725708257092571025711257122571325714257152571625717257182571925720257212572225723257242572525726257272572825729257302573125732257332573425735257362573725738257392574025741257422574325744257452574625747257482574925750257512575225753257542575525756257572575825759257602576125762257632576425765257662576725768257692577025771257722577325774257752577625777257782577925780257812578225783257842578525786257872578825789257902579125792257932579425795257962579725798257992580025801258022580325804258052580625807258082580925810258112581225813258142581525816258172581825819258202582125822258232582425825258262582725828258292583025831258322583325834258352583625837258382583925840258412584225843258442584525846258472584825849258502585125852258532585425855258562585725858258592586025861258622586325864258652586625867258682586925870258712587225873258742587525876258772587825879258802588125882258832588425885258862588725888258892589025891258922589325894258952589625897258982589925900259012590225903259042590525906259072590825909259102591125912259132591425915259162591725918259192592025921259222592325924259252592625927259282592925930259312593225933259342593525936259372593825939259402594125942259432594425945259462594725948259492595025951259522595325954259552595625957259582595925960259612596225963259642596525966259672596825969259702597125972259732597425975259762597725978259792598025981259822598325984259852598625987259882598925990259912599225993259942599525996259972599825999260002600126002260032600426005260062600726008260092601026011260122601326014260152601626017260182601926020260212602226023260242602526026260272602826029260302603126032260332603426035260362603726038260392604026041260422604326044260452604626047260482604926050260512605226053260542605526056260572605826059260602606126062260632606426065260662606726068260692607026071260722607326074260752607626077260782607926080260812608226083260842608526086260872608826089260902609126092260932609426095260962609726098260992610026101261022610326104261052610626107261082610926110261112611226113261142611526116261172611826119261202612126122261232612426125261262612726128261292613026131261322613326134261352613626137261382613926140261412614226143261442614526146261472614826149261502615126152261532615426155261562615726158261592616026161261622616326164261652616626167261682616926170261712617226173261742617526176261772617826179261802618126182261832618426185261862618726188261892619026191261922619326194261952619626197261982619926200262012620226203262042620526206262072620826209262102621126212262132621426215262162621726218262192622026221262222622326224262252622626227262282622926230262312623226233262342623526236262372623826239262402624126242262432624426245262462624726248262492625026251262522625326254262552625626257262582625926260262612626226263262642626526266262672626826269262702627126272262732627426275262762627726278262792628026281262822628326284262852628626287262882628926290262912629226293262942629526296262972629826299263002630126302263032630426305263062630726308263092631026311263122631326314263152631626317263182631926320263212632226323263242632526326263272632826329263302633126332263332633426335263362633726338263392634026341263422634326344263452634626347263482634926350263512635226353263542635526356263572635826359263602636126362263632636426365263662636726368263692637026371263722637326374263752637626377263782637926380263812638226383263842638526386263872638826389263902639126392263932639426395263962639726398263992640026401264022640326404264052640626407264082640926410264112641226413264142641526416264172641826419264202642126422264232642426425264262642726428264292643026431264322643326434264352643626437264382643926440264412644226443264442644526446264472644826449264502645126452264532645426455264562645726458264592646026461264622646326464264652646626467264682646926470264712647226473264742647526476264772647826479264802648126482264832648426485264862648726488264892649026491264922649326494264952649626497264982649926500265012650226503265042650526506265072650826509265102651126512265132651426515265162651726518265192652026521265222652326524265252652626527265282652926530265312653226533265342653526536265372653826539265402654126542265432654426545265462654726548265492655026551265522655326554265552655626557265582655926560265612656226563265642656526566265672656826569265702657126572265732657426575265762657726578265792658026581265822658326584265852658626587265882658926590265912659226593265942659526596265972659826599266002660126602266032660426605266062660726608266092661026611266122661326614266152661626617266182661926620266212662226623266242662526626266272662826629266302663126632266332663426635266362663726638266392664026641266422664326644266452664626647266482664926650266512665226653266542665526656266572665826659266602666126662266632666426665266662666726668266692667026671266722667326674266752667626677266782667926680266812668226683266842668526686266872668826689266902669126692266932669426695266962669726698266992670026701267022670326704267052670626707267082670926710267112671226713267142671526716267172671826719267202672126722267232672426725267262672726728267292673026731267322673326734267352673626737267382673926740267412674226743267442674526746267472674826749267502675126752267532675426755267562675726758267592676026761267622676326764267652676626767267682676926770267712677226773267742677526776267772677826779267802678126782267832678426785267862678726788267892679026791267922679326794267952679626797267982679926800268012680226803268042680526806268072680826809268102681126812268132681426815268162681726818268192682026821268222682326824268252682626827268282682926830268312683226833268342683526836268372683826839268402684126842268432684426845268462684726848268492685026851268522685326854268552685626857268582685926860268612686226863268642686526866268672686826869268702687126872268732687426875268762687726878268792688026881268822688326884268852688626887268882688926890268912689226893
  1. # Copyright The cert-manager Authors.
  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. categories:
  39. - cert-manager
  40. kind: CertificateRequest
  41. listKind: CertificateRequestList
  42. plural: certificaterequests
  43. shortNames:
  44. - cr
  45. - crs
  46. singular: certificaterequest
  47. scope: Namespaced
  48. versions:
  49. - additionalPrinterColumns:
  50. - jsonPath: .status.conditions[?(@.type=="Approved")].status
  51. name: Approved
  52. type: string
  53. - jsonPath: .status.conditions[?(@.type=="Denied")].status
  54. name: Denied
  55. type: string
  56. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  57. name: Ready
  58. type: string
  59. - jsonPath: .spec.issuerRef.name
  60. name: Issuer
  61. type: string
  62. - jsonPath: .spec.username
  63. name: Requestor
  64. type: string
  65. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  66. name: Status
  67. priority: 1
  68. type: string
  69. - description: CreationTimestamp is a timestamp representing the server time when
  70. this object was created. It is not guaranteed to be set in happens-before
  71. order across separate operations. Clients may not set this value. It is represented
  72. in RFC3339 form and is in UTC.
  73. jsonPath: .metadata.creationTimestamp
  74. name: Age
  75. type: date
  76. name: v1alpha2
  77. schema:
  78. openAPIV3Schema:
  79. description: "A CertificateRequest is used to request a signed certificate
  80. from one of the configured issuers. \n All fields within the CertificateRequest's
  81. `spec` are immutable after creation. A CertificateRequest will either succeed
  82. or fail, as denoted by its `status.state` field. \n A CertificateRequest
  83. is a one-shot resource, meaning it represents a single point in time request
  84. for a certificate and cannot be re-used."
  85. properties:
  86. apiVersion:
  87. description: 'APIVersion defines the versioned schema of this representation
  88. of an object. Servers should convert recognized schemas to the latest
  89. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  90. type: string
  91. kind:
  92. description: 'Kind is a string value representing the REST resource this
  93. object represents. Servers may infer this from the endpoint the client
  94. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  95. type: string
  96. metadata:
  97. type: object
  98. spec:
  99. description: Desired state of the CertificateRequest resource.
  100. properties:
  101. csr:
  102. description: The PEM-encoded x509 certificate signing request to be
  103. submitted to the CA for signing.
  104. format: byte
  105. type: string
  106. duration:
  107. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  108. This option may be ignored/overridden by some issuer types.
  109. type: string
  110. extra:
  111. additionalProperties:
  112. items:
  113. type: string
  114. type: array
  115. description: Extra contains extra attributes of the user that created
  116. the CertificateRequest. Populated by the cert-manager webhook on
  117. creation and immutable.
  118. type: object
  119. groups:
  120. description: Groups contains group membership of the user that created
  121. the CertificateRequest. Populated by the cert-manager webhook on
  122. creation and immutable.
  123. items:
  124. type: string
  125. type: array
  126. x-kubernetes-list-type: atomic
  127. isCA:
  128. description: IsCA will request to mark the certificate as valid for
  129. certificate signing when submitting to the issuer. This will automatically
  130. add the `cert sign` usage to the list of `usages`.
  131. type: boolean
  132. issuerRef:
  133. description: IssuerRef is a reference to the issuer for this CertificateRequest. If
  134. the `kind` field is not set, or set to `Issuer`, an Issuer resource
  135. with the given name in the same namespace as the CertificateRequest
  136. will be used. If the `kind` field is set to `ClusterIssuer`, a
  137. ClusterIssuer with the provided name will be used. The `name` field
  138. in this stanza is required at all times. The group field refers
  139. to the API group of the issuer which defaults to `cert-manager.io`
  140. if empty.
  141. properties:
  142. group:
  143. description: Group of the resource being referred to.
  144. type: string
  145. kind:
  146. description: Kind of the resource being referred to.
  147. type: string
  148. name:
  149. description: Name of the resource being referred to.
  150. type: string
  151. required:
  152. - name
  153. type: object
  154. uid:
  155. description: UID contains the uid of the user that created the CertificateRequest.
  156. Populated by the cert-manager webhook on creation and immutable.
  157. type: string
  158. usages:
  159. description: Usages is the set of x509 usages that are requested for
  160. the certificate. Defaults to `digital signature` and `key encipherment`
  161. if not specified.
  162. items:
  163. description: 'KeyUsage specifies valid usage contexts for keys.
  164. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  165. Valid KeyUsage values are as follows: "signing", "digital signature",
  166. "content commitment", "key encipherment", "key agreement", "data
  167. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  168. only", "any", "server auth", "client auth", "code signing", "email
  169. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  170. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  171. sgc"'
  172. enum:
  173. - signing
  174. - digital signature
  175. - content commitment
  176. - key encipherment
  177. - key agreement
  178. - data encipherment
  179. - cert sign
  180. - crl sign
  181. - encipher only
  182. - decipher only
  183. - any
  184. - server auth
  185. - client auth
  186. - code signing
  187. - email protection
  188. - s/mime
  189. - ipsec end system
  190. - ipsec tunnel
  191. - ipsec user
  192. - timestamping
  193. - ocsp signing
  194. - microsoft sgc
  195. - netscape sgc
  196. type: string
  197. type: array
  198. username:
  199. description: Username contains the name of the user that created the
  200. CertificateRequest. Populated by the cert-manager webhook on creation
  201. and immutable.
  202. type: string
  203. required:
  204. - csr
  205. - issuerRef
  206. type: object
  207. status:
  208. description: Status of the CertificateRequest. This is set and managed
  209. automatically.
  210. properties:
  211. ca:
  212. description: The PEM encoded x509 certificate of the signer, also
  213. known as the CA (Certificate Authority). This is set on a best-effort
  214. basis by different issuers. If not set, the CA is assumed to be
  215. unknown/not available.
  216. format: byte
  217. type: string
  218. certificate:
  219. description: The PEM encoded x509 certificate resulting from the certificate
  220. signing request. If not set, the CertificateRequest has either not
  221. been completed or has failed. More information on failure can be
  222. found by checking the `conditions` field.
  223. format: byte
  224. type: string
  225. conditions:
  226. description: List of status conditions to indicate the status of a
  227. CertificateRequest. Known condition types are `Ready` and `InvalidRequest`.
  228. items:
  229. description: CertificateRequestCondition contains condition information
  230. for a CertificateRequest.
  231. properties:
  232. lastTransitionTime:
  233. description: LastTransitionTime is the timestamp corresponding
  234. to the last status change of this condition.
  235. format: date-time
  236. type: string
  237. message:
  238. description: Message is a human readable description of the
  239. details of the last transition, complementing reason.
  240. type: string
  241. reason:
  242. description: Reason is a brief machine readable explanation
  243. for the condition's last transition.
  244. type: string
  245. status:
  246. description: Status of the condition, one of (`True`, `False`,
  247. `Unknown`).
  248. enum:
  249. - "True"
  250. - "False"
  251. - Unknown
  252. type: string
  253. type:
  254. description: Type of the condition, known values are (`Ready`,
  255. `InvalidRequest`, `Approved`, `Denied`).
  256. type: string
  257. required:
  258. - status
  259. - type
  260. type: object
  261. type: array
  262. failureTime:
  263. description: FailureTime stores the time that this CertificateRequest
  264. failed. This is used to influence garbage collection and back-off.
  265. format: date-time
  266. type: string
  267. type: object
  268. type: object
  269. served: true
  270. storage: false
  271. subresources:
  272. status: {}
  273. - additionalPrinterColumns:
  274. - jsonPath: .status.conditions[?(@.type=="Approved")].status
  275. name: Approved
  276. type: string
  277. - jsonPath: .status.conditions[?(@.type=="Denied")].status
  278. name: Denied
  279. type: string
  280. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  281. name: Ready
  282. type: string
  283. - jsonPath: .spec.issuerRef.name
  284. name: Issuer
  285. type: string
  286. - jsonPath: .spec.username
  287. name: Requestor
  288. type: string
  289. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  290. name: Status
  291. priority: 1
  292. type: string
  293. - description: CreationTimestamp is a timestamp representing the server time when
  294. this object was created. It is not guaranteed to be set in happens-before
  295. order across separate operations. Clients may not set this value. It is represented
  296. in RFC3339 form and is in UTC.
  297. jsonPath: .metadata.creationTimestamp
  298. name: Age
  299. type: date
  300. name: v1alpha3
  301. schema:
  302. openAPIV3Schema:
  303. description: "A CertificateRequest is used to request a signed certificate
  304. from one of the configured issuers. \n All fields within the CertificateRequest's
  305. `spec` are immutable after creation. A CertificateRequest will either succeed
  306. or fail, as denoted by its `status.state` field. \n A CertificateRequest
  307. is a one-shot resource, meaning it represents a single point in time request
  308. for a certificate and cannot be re-used."
  309. properties:
  310. apiVersion:
  311. description: 'APIVersion defines the versioned schema of this representation
  312. of an object. Servers should convert recognized schemas to the latest
  313. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  314. type: string
  315. kind:
  316. description: 'Kind is a string value representing the REST resource this
  317. object represents. Servers may infer this from the endpoint the client
  318. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  319. type: string
  320. metadata:
  321. type: object
  322. spec:
  323. description: Desired state of the CertificateRequest resource.
  324. properties:
  325. csr:
  326. description: The PEM-encoded x509 certificate signing request to be
  327. submitted to the CA for signing.
  328. format: byte
  329. type: string
  330. duration:
  331. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  332. This option may be ignored/overridden by some issuer types.
  333. type: string
  334. extra:
  335. additionalProperties:
  336. items:
  337. type: string
  338. type: array
  339. description: Extra contains extra attributes of the user that created
  340. the CertificateRequest. Populated by the cert-manager webhook on
  341. creation and immutable.
  342. type: object
  343. groups:
  344. description: Groups contains group membership of the user that created
  345. the CertificateRequest. Populated by the cert-manager webhook on
  346. creation and immutable.
  347. items:
  348. type: string
  349. type: array
  350. x-kubernetes-list-type: atomic
  351. isCA:
  352. description: IsCA will request to mark the certificate as valid for
  353. certificate signing when submitting to the issuer. This will automatically
  354. add the `cert sign` usage to the list of `usages`.
  355. type: boolean
  356. issuerRef:
  357. description: IssuerRef is a reference to the issuer for this CertificateRequest. If
  358. the `kind` field is not set, or set to `Issuer`, an Issuer resource
  359. with the given name in the same namespace as the CertificateRequest
  360. will be used. If the `kind` field is set to `ClusterIssuer`, a
  361. ClusterIssuer with the provided name will be used. The `name` field
  362. in this stanza is required at all times. The group field refers
  363. to the API group of the issuer which defaults to `cert-manager.io`
  364. if empty.
  365. properties:
  366. group:
  367. description: Group of the resource being referred to.
  368. type: string
  369. kind:
  370. description: Kind of the resource being referred to.
  371. type: string
  372. name:
  373. description: Name of the resource being referred to.
  374. type: string
  375. required:
  376. - name
  377. type: object
  378. uid:
  379. description: UID contains the uid of the user that created the CertificateRequest.
  380. Populated by the cert-manager webhook on creation and immutable.
  381. type: string
  382. usages:
  383. description: Usages is the set of x509 usages that are requested for
  384. the certificate. Defaults to `digital signature` and `key encipherment`
  385. if not specified.
  386. items:
  387. description: 'KeyUsage specifies valid usage contexts for keys.
  388. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  389. Valid KeyUsage values are as follows: "signing", "digital signature",
  390. "content commitment", "key encipherment", "key agreement", "data
  391. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  392. only", "any", "server auth", "client auth", "code signing", "email
  393. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  394. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  395. sgc"'
  396. enum:
  397. - signing
  398. - digital signature
  399. - content commitment
  400. - key encipherment
  401. - key agreement
  402. - data encipherment
  403. - cert sign
  404. - crl sign
  405. - encipher only
  406. - decipher only
  407. - any
  408. - server auth
  409. - client auth
  410. - code signing
  411. - email protection
  412. - s/mime
  413. - ipsec end system
  414. - ipsec tunnel
  415. - ipsec user
  416. - timestamping
  417. - ocsp signing
  418. - microsoft sgc
  419. - netscape sgc
  420. type: string
  421. type: array
  422. username:
  423. description: Username contains the name of the user that created the
  424. CertificateRequest. Populated by the cert-manager webhook on creation
  425. and immutable.
  426. type: string
  427. required:
  428. - csr
  429. - issuerRef
  430. type: object
  431. status:
  432. description: Status of the CertificateRequest. This is set and managed
  433. automatically.
  434. properties:
  435. ca:
  436. description: The PEM encoded x509 certificate of the signer, also
  437. known as the CA (Certificate Authority). This is set on a best-effort
  438. basis by different issuers. If not set, the CA is assumed to be
  439. unknown/not available.
  440. format: byte
  441. type: string
  442. certificate:
  443. description: The PEM encoded x509 certificate resulting from the certificate
  444. signing request. If not set, the CertificateRequest has either not
  445. been completed or has failed. More information on failure can be
  446. found by checking the `conditions` field.
  447. format: byte
  448. type: string
  449. conditions:
  450. description: List of status conditions to indicate the status of a
  451. CertificateRequest. Known condition types are `Ready` and `InvalidRequest`.
  452. items:
  453. description: CertificateRequestCondition contains condition information
  454. for a CertificateRequest.
  455. properties:
  456. lastTransitionTime:
  457. description: LastTransitionTime is the timestamp corresponding
  458. to the last status change of this condition.
  459. format: date-time
  460. type: string
  461. message:
  462. description: Message is a human readable description of the
  463. details of the last transition, complementing reason.
  464. type: string
  465. reason:
  466. description: Reason is a brief machine readable explanation
  467. for the condition's last transition.
  468. type: string
  469. status:
  470. description: Status of the condition, one of (`True`, `False`,
  471. `Unknown`).
  472. enum:
  473. - "True"
  474. - "False"
  475. - Unknown
  476. type: string
  477. type:
  478. description: Type of the condition, known values are (`Ready`,
  479. `InvalidRequest`, `Approved`, `Denied`).
  480. type: string
  481. required:
  482. - status
  483. - type
  484. type: object
  485. type: array
  486. failureTime:
  487. description: FailureTime stores the time that this CertificateRequest
  488. failed. This is used to influence garbage collection and back-off.
  489. format: date-time
  490. type: string
  491. type: object
  492. type: object
  493. served: true
  494. storage: false
  495. subresources:
  496. status: {}
  497. - additionalPrinterColumns:
  498. - jsonPath: .status.conditions[?(@.type=="Approved")].status
  499. name: Approved
  500. type: string
  501. - jsonPath: .status.conditions[?(@.type=="Denied")].status
  502. name: Denied
  503. type: string
  504. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  505. name: Ready
  506. type: string
  507. - jsonPath: .spec.issuerRef.name
  508. name: Issuer
  509. type: string
  510. - jsonPath: .spec.username
  511. name: Requestor
  512. type: string
  513. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  514. name: Status
  515. priority: 1
  516. type: string
  517. - description: CreationTimestamp is a timestamp representing the server time when
  518. this object was created. It is not guaranteed to be set in happens-before
  519. order across separate operations. Clients may not set this value. It is represented
  520. in RFC3339 form and is in UTC.
  521. jsonPath: .metadata.creationTimestamp
  522. name: Age
  523. type: date
  524. name: v1beta1
  525. schema:
  526. openAPIV3Schema:
  527. description: "A CertificateRequest is used to request a signed certificate
  528. from one of the configured issuers. \n All fields within the CertificateRequest's
  529. `spec` are immutable after creation. A CertificateRequest will either succeed
  530. or fail, as denoted by its `status.state` field. \n A CertificateRequest
  531. is a one-shot resource, meaning it represents a single point in time request
  532. for a certificate and cannot be re-used."
  533. properties:
  534. apiVersion:
  535. description: 'APIVersion defines the versioned schema of this representation
  536. of an object. Servers should convert recognized schemas to the latest
  537. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  538. type: string
  539. kind:
  540. description: 'Kind is a string value representing the REST resource this
  541. object represents. Servers may infer this from the endpoint the client
  542. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  543. type: string
  544. metadata:
  545. type: object
  546. spec:
  547. description: Desired state of the CertificateRequest resource.
  548. properties:
  549. duration:
  550. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  551. This option may be ignored/overridden by some issuer types.
  552. type: string
  553. extra:
  554. additionalProperties:
  555. items:
  556. type: string
  557. type: array
  558. description: Extra contains extra attributes of the user that created
  559. the CertificateRequest. Populated by the cert-manager webhook on
  560. creation and immutable.
  561. type: object
  562. groups:
  563. description: Groups contains group membership of the user that created
  564. the CertificateRequest. Populated by the cert-manager webhook on
  565. creation and immutable.
  566. items:
  567. type: string
  568. type: array
  569. x-kubernetes-list-type: atomic
  570. isCA:
  571. description: IsCA will request to mark the certificate as valid for
  572. certificate signing when submitting to the issuer. This will automatically
  573. add the `cert sign` usage to the list of `usages`.
  574. type: boolean
  575. issuerRef:
  576. description: IssuerRef is a reference to the issuer for this CertificateRequest. If
  577. the `kind` field is not set, or set to `Issuer`, an Issuer resource
  578. with the given name in the same namespace as the CertificateRequest
  579. will be used. If the `kind` field is set to `ClusterIssuer`, a
  580. ClusterIssuer with the provided name will be used. The `name` field
  581. in this stanza is required at all times. The group field refers
  582. to the API group of the issuer which defaults to `cert-manager.io`
  583. if empty.
  584. properties:
  585. group:
  586. description: Group of the resource being referred to.
  587. type: string
  588. kind:
  589. description: Kind of the resource being referred to.
  590. type: string
  591. name:
  592. description: Name of the resource being referred to.
  593. type: string
  594. required:
  595. - name
  596. type: object
  597. request:
  598. description: The PEM-encoded x509 certificate signing request to be
  599. submitted to the CA for signing.
  600. format: byte
  601. type: string
  602. uid:
  603. description: UID contains the uid of the user that created the CertificateRequest.
  604. Populated by the cert-manager webhook on creation and immutable.
  605. type: string
  606. usages:
  607. description: Usages is the set of x509 usages that are requested for
  608. the certificate. Defaults to `digital signature` and `key encipherment`
  609. if not specified.
  610. items:
  611. description: 'KeyUsage specifies valid usage contexts for keys.
  612. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  613. Valid KeyUsage values are as follows: "signing", "digital signature",
  614. "content commitment", "key encipherment", "key agreement", "data
  615. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  616. only", "any", "server auth", "client auth", "code signing", "email
  617. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  618. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  619. sgc"'
  620. enum:
  621. - signing
  622. - digital signature
  623. - content commitment
  624. - key encipherment
  625. - key agreement
  626. - data encipherment
  627. - cert sign
  628. - crl sign
  629. - encipher only
  630. - decipher only
  631. - any
  632. - server auth
  633. - client auth
  634. - code signing
  635. - email protection
  636. - s/mime
  637. - ipsec end system
  638. - ipsec tunnel
  639. - ipsec user
  640. - timestamping
  641. - ocsp signing
  642. - microsoft sgc
  643. - netscape sgc
  644. type: string
  645. type: array
  646. username:
  647. description: Username contains the name of the user that created the
  648. CertificateRequest. Populated by the cert-manager webhook on creation
  649. and immutable.
  650. type: string
  651. required:
  652. - issuerRef
  653. - request
  654. type: object
  655. status:
  656. description: Status of the CertificateRequest. This is set and managed
  657. automatically.
  658. properties:
  659. ca:
  660. description: The PEM encoded x509 certificate of the signer, also
  661. known as the CA (Certificate Authority). This is set on a best-effort
  662. basis by different issuers. If not set, the CA is assumed to be
  663. unknown/not available.
  664. format: byte
  665. type: string
  666. certificate:
  667. description: The PEM encoded x509 certificate resulting from the certificate
  668. signing request. If not set, the CertificateRequest has either not
  669. been completed or has failed. More information on failure can be
  670. found by checking the `conditions` field.
  671. format: byte
  672. type: string
  673. conditions:
  674. description: List of status conditions to indicate the status of a
  675. CertificateRequest. Known condition types are `Ready` and `InvalidRequest`.
  676. items:
  677. description: CertificateRequestCondition contains condition information
  678. for a CertificateRequest.
  679. properties:
  680. lastTransitionTime:
  681. description: LastTransitionTime is the timestamp corresponding
  682. to the last status change of this condition.
  683. format: date-time
  684. type: string
  685. message:
  686. description: Message is a human readable description of the
  687. details of the last transition, complementing reason.
  688. type: string
  689. reason:
  690. description: Reason is a brief machine readable explanation
  691. for the condition's last transition.
  692. type: string
  693. status:
  694. description: Status of the condition, one of (`True`, `False`,
  695. `Unknown`).
  696. enum:
  697. - "True"
  698. - "False"
  699. - Unknown
  700. type: string
  701. type:
  702. description: Type of the condition, known values are (`Ready`,
  703. `InvalidRequest`, `Approved`, `Denied`).
  704. type: string
  705. required:
  706. - status
  707. - type
  708. type: object
  709. type: array
  710. failureTime:
  711. description: FailureTime stores the time that this CertificateRequest
  712. failed. This is used to influence garbage collection and back-off.
  713. format: date-time
  714. type: string
  715. type: object
  716. required:
  717. - spec
  718. type: object
  719. served: true
  720. storage: false
  721. subresources:
  722. status: {}
  723. - additionalPrinterColumns:
  724. - jsonPath: .status.conditions[?(@.type=="Approved")].status
  725. name: Approved
  726. type: string
  727. - jsonPath: .status.conditions[?(@.type=="Denied")].status
  728. name: Denied
  729. type: string
  730. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  731. name: Ready
  732. type: string
  733. - jsonPath: .spec.issuerRef.name
  734. name: Issuer
  735. type: string
  736. - jsonPath: .spec.username
  737. name: Requestor
  738. type: string
  739. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  740. name: Status
  741. priority: 1
  742. type: string
  743. - description: CreationTimestamp is a timestamp representing the server time when
  744. this object was created. It is not guaranteed to be set in happens-before
  745. order across separate operations. Clients may not set this value. It is represented
  746. in RFC3339 form and is in UTC.
  747. jsonPath: .metadata.creationTimestamp
  748. name: Age
  749. type: date
  750. name: v1
  751. schema:
  752. openAPIV3Schema:
  753. description: "A CertificateRequest is used to request a signed certificate
  754. from one of the configured issuers. \n All fields within the CertificateRequest's
  755. `spec` are immutable after creation. A CertificateRequest will either succeed
  756. or fail, as denoted by its `status.state` field. \n A CertificateRequest
  757. is a one-shot resource, meaning it represents a single point in time request
  758. for a certificate and cannot be re-used."
  759. properties:
  760. apiVersion:
  761. description: 'APIVersion defines the versioned schema of this representation
  762. of an object. Servers should convert recognized schemas to the latest
  763. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  764. type: string
  765. kind:
  766. description: 'Kind is a string value representing the REST resource this
  767. object represents. Servers may infer this from the endpoint the client
  768. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  769. type: string
  770. metadata:
  771. type: object
  772. spec:
  773. description: Desired state of the CertificateRequest resource.
  774. properties:
  775. duration:
  776. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  777. This option may be ignored/overridden by some issuer types.
  778. type: string
  779. extra:
  780. additionalProperties:
  781. items:
  782. type: string
  783. type: array
  784. description: Extra contains extra attributes of the user that created
  785. the CertificateRequest. Populated by the cert-manager webhook on
  786. creation and immutable.
  787. type: object
  788. groups:
  789. description: Groups contains group membership of the user that created
  790. the CertificateRequest. Populated by the cert-manager webhook on
  791. creation and immutable.
  792. items:
  793. type: string
  794. type: array
  795. x-kubernetes-list-type: atomic
  796. isCA:
  797. description: IsCA will request to mark the certificate as valid for
  798. certificate signing when submitting to the issuer. This will automatically
  799. add the `cert sign` usage to the list of `usages`.
  800. type: boolean
  801. issuerRef:
  802. description: IssuerRef is a reference to the issuer for this CertificateRequest. If
  803. the `kind` field is not set, or set to `Issuer`, an Issuer resource
  804. with the given name in the same namespace as the CertificateRequest
  805. will be used. If the `kind` field is set to `ClusterIssuer`, a
  806. ClusterIssuer with the provided name will be used. The `name` field
  807. in this stanza is required at all times. The group field refers
  808. to the API group of the issuer which defaults to `cert-manager.io`
  809. if empty.
  810. properties:
  811. group:
  812. description: Group of the resource being referred to.
  813. type: string
  814. kind:
  815. description: Kind of the resource being referred to.
  816. type: string
  817. name:
  818. description: Name of the resource being referred to.
  819. type: string
  820. required:
  821. - name
  822. type: object
  823. request:
  824. description: The PEM-encoded x509 certificate signing request to be
  825. submitted to the CA for signing.
  826. format: byte
  827. type: string
  828. uid:
  829. description: UID contains the uid of the user that created the CertificateRequest.
  830. Populated by the cert-manager webhook on creation and immutable.
  831. type: string
  832. usages:
  833. description: Usages is the set of x509 usages that are requested for
  834. the certificate. If usages are set they SHOULD be encoded inside
  835. the CSR spec Defaults to `digital signature` and `key encipherment`
  836. if not specified.
  837. items:
  838. description: 'KeyUsage specifies valid usage contexts for keys.
  839. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  840. Valid KeyUsage values are as follows: "signing", "digital signature",
  841. "content commitment", "key encipherment", "key agreement", "data
  842. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  843. only", "any", "server auth", "client auth", "code signing", "email
  844. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  845. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  846. sgc"'
  847. enum:
  848. - signing
  849. - digital signature
  850. - content commitment
  851. - key encipherment
  852. - key agreement
  853. - data encipherment
  854. - cert sign
  855. - crl sign
  856. - encipher only
  857. - decipher only
  858. - any
  859. - server auth
  860. - client auth
  861. - code signing
  862. - email protection
  863. - s/mime
  864. - ipsec end system
  865. - ipsec tunnel
  866. - ipsec user
  867. - timestamping
  868. - ocsp signing
  869. - microsoft sgc
  870. - netscape sgc
  871. type: string
  872. type: array
  873. username:
  874. description: Username contains the name of the user that created the
  875. CertificateRequest. Populated by the cert-manager webhook on creation
  876. and immutable.
  877. type: string
  878. required:
  879. - issuerRef
  880. - request
  881. type: object
  882. status:
  883. description: Status of the CertificateRequest. This is set and managed
  884. automatically.
  885. properties:
  886. ca:
  887. description: The PEM encoded x509 certificate of the signer, also
  888. known as the CA (Certificate Authority). This is set on a best-effort
  889. basis by different issuers. If not set, the CA is assumed to be
  890. unknown/not available.
  891. format: byte
  892. type: string
  893. certificate:
  894. description: The PEM encoded x509 certificate resulting from the certificate
  895. signing request. If not set, the CertificateRequest has either not
  896. been completed or has failed. More information on failure can be
  897. found by checking the `conditions` field.
  898. format: byte
  899. type: string
  900. conditions:
  901. description: List of status conditions to indicate the status of a
  902. CertificateRequest. Known condition types are `Ready` and `InvalidRequest`.
  903. items:
  904. description: CertificateRequestCondition contains condition information
  905. for a CertificateRequest.
  906. properties:
  907. lastTransitionTime:
  908. description: LastTransitionTime is the timestamp corresponding
  909. to the last status change of this condition.
  910. format: date-time
  911. type: string
  912. message:
  913. description: Message is a human readable description of the
  914. details of the last transition, complementing reason.
  915. type: string
  916. reason:
  917. description: Reason is a brief machine readable explanation
  918. for the condition's last transition.
  919. type: string
  920. status:
  921. description: Status of the condition, one of (`True`, `False`,
  922. `Unknown`).
  923. enum:
  924. - "True"
  925. - "False"
  926. - Unknown
  927. type: string
  928. type:
  929. description: Type of the condition, known values are (`Ready`,
  930. `InvalidRequest`, `Approved`, `Denied`).
  931. type: string
  932. required:
  933. - status
  934. - type
  935. type: object
  936. type: array
  937. failureTime:
  938. description: FailureTime stores the time that this CertificateRequest
  939. failed. This is used to influence garbage collection and back-off.
  940. format: date-time
  941. type: string
  942. type: object
  943. required:
  944. - spec
  945. type: object
  946. served: true
  947. storage: true
  948. subresources:
  949. status: {}
  950. status:
  951. acceptedNames:
  952. kind: ""
  953. plural: ""
  954. conditions: []
  955. storedVersions: []
  956. ---
  957. apiVersion: apiextensions.k8s.io/v1
  958. kind: CustomResourceDefinition
  959. metadata:
  960. annotations:
  961. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  962. labels:
  963. app: cert-manager
  964. app.kubernetes.io/instance: cert-manager
  965. app.kubernetes.io/name: cert-manager
  966. name: certificates.cert-manager.io
  967. spec:
  968. conversion:
  969. strategy: Webhook
  970. webhook:
  971. clientConfig:
  972. service:
  973. name: cert-manager-webhook
  974. namespace: cert-manager
  975. path: /convert
  976. conversionReviewVersions:
  977. - v1
  978. - v1beta1
  979. group: cert-manager.io
  980. names:
  981. categories:
  982. - cert-manager
  983. kind: Certificate
  984. listKind: CertificateList
  985. plural: certificates
  986. shortNames:
  987. - cert
  988. - certs
  989. singular: certificate
  990. scope: Namespaced
  991. versions:
  992. - additionalPrinterColumns:
  993. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  994. name: Ready
  995. type: string
  996. - jsonPath: .spec.secretName
  997. name: Secret
  998. type: string
  999. - jsonPath: .spec.issuerRef.name
  1000. name: Issuer
  1001. priority: 1
  1002. type: string
  1003. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  1004. name: Status
  1005. priority: 1
  1006. type: string
  1007. - description: CreationTimestamp is a timestamp representing the server time when
  1008. this object was created. It is not guaranteed to be set in happens-before
  1009. order across separate operations. Clients may not set this value. It is represented
  1010. in RFC3339 form and is in UTC.
  1011. jsonPath: .metadata.creationTimestamp
  1012. name: Age
  1013. type: date
  1014. name: v1alpha2
  1015. schema:
  1016. openAPIV3Schema:
  1017. description: "A Certificate resource should be created to ensure an up to
  1018. date and signed x509 certificate is stored in the Kubernetes Secret resource
  1019. named in `spec.secretName`. \n The stored certificate will be renewed before
  1020. it expires (as configured by `spec.renewBefore`)."
  1021. properties:
  1022. apiVersion:
  1023. description: 'APIVersion defines the versioned schema of this representation
  1024. of an object. Servers should convert recognized schemas to the latest
  1025. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1026. type: string
  1027. kind:
  1028. description: 'Kind is a string value representing the REST resource this
  1029. object represents. Servers may infer this from the endpoint the client
  1030. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1031. type: string
  1032. metadata:
  1033. type: object
  1034. spec:
  1035. description: Desired state of the Certificate resource.
  1036. properties:
  1037. commonName:
  1038. description: 'CommonName is a common name to be used on the Certificate.
  1039. The CommonName should have a length of 64 characters or fewer to
  1040. avoid generating invalid CSRs. This value is ignored by TLS clients
  1041. when any subject alt name is set. This is x509 behaviour: https://tools.ietf.org/html/rfc6125#section-6.4.4'
  1042. type: string
  1043. dnsNames:
  1044. description: DNSNames is a list of DNS subjectAltNames to be set on
  1045. the Certificate.
  1046. items:
  1047. type: string
  1048. type: array
  1049. duration:
  1050. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  1051. This option may be ignored/overridden by some issuer types. If overridden
  1052. and `renewBefore` is greater than the actual certificate duration,
  1053. the certificate will be automatically renewed 2/3rds of the way
  1054. through the certificate's duration.
  1055. type: string
  1056. emailSANs:
  1057. description: EmailSANs is a list of email subjectAltNames to be set
  1058. on the Certificate.
  1059. items:
  1060. type: string
  1061. type: array
  1062. encodeUsagesInRequest:
  1063. description: EncodeUsagesInRequest controls whether key usages should
  1064. be present in the CertificateRequest
  1065. type: boolean
  1066. ipAddresses:
  1067. description: IPAddresses is a list of IP address subjectAltNames to
  1068. be set on the Certificate.
  1069. items:
  1070. type: string
  1071. type: array
  1072. isCA:
  1073. description: IsCA will mark this Certificate as valid for certificate
  1074. signing. This will automatically add the `cert sign` usage to the
  1075. list of `usages`.
  1076. type: boolean
  1077. issuerRef:
  1078. description: IssuerRef is a reference to the issuer for this certificate.
  1079. If the `kind` field is not set, or set to `Issuer`, an Issuer resource
  1080. with the given name in the same namespace as the Certificate will
  1081. be used. If the `kind` field is set to `ClusterIssuer`, a ClusterIssuer
  1082. with the provided name will be used. The `name` field in this stanza
  1083. is required at all times.
  1084. properties:
  1085. group:
  1086. description: Group of the resource being referred to.
  1087. type: string
  1088. kind:
  1089. description: Kind of the resource being referred to.
  1090. type: string
  1091. name:
  1092. description: Name of the resource being referred to.
  1093. type: string
  1094. required:
  1095. - name
  1096. type: object
  1097. keyAlgorithm:
  1098. description: KeyAlgorithm is the private key algorithm of the corresponding
  1099. private key for this certificate. If provided, allowed values are
  1100. either `rsa` or `ecdsa` If `keyAlgorithm` is specified and `keySize`
  1101. is not provided, key size of 256 will be used for `ecdsa` key algorithm
  1102. and key size of 2048 will be used for `rsa` key algorithm.
  1103. enum:
  1104. - rsa
  1105. - ecdsa
  1106. type: string
  1107. keyEncoding:
  1108. description: KeyEncoding is the private key cryptography standards
  1109. (PKCS) for this certificate's private key to be encoded in. If provided,
  1110. allowed values are `pkcs1` and `pkcs8` standing for PKCS#1 and PKCS#8,
  1111. respectively. If KeyEncoding is not specified, then `pkcs1` will
  1112. be used by default.
  1113. enum:
  1114. - pkcs1
  1115. - pkcs8
  1116. type: string
  1117. keySize:
  1118. description: KeySize is the key bit size of the corresponding private
  1119. key for this certificate. If `keyAlgorithm` is set to `rsa`, valid
  1120. values are `2048`, `4096` or `8192`, and will default to `2048`
  1121. if not specified. If `keyAlgorithm` is set to `ecdsa`, valid values
  1122. are `256`, `384` or `521`, and will default to `256` if not specified.
  1123. No other values are allowed.
  1124. type: integer
  1125. keystores:
  1126. description: Keystores configures additional keystore output formats
  1127. stored in the `secretName` Secret resource.
  1128. properties:
  1129. jks:
  1130. description: JKS configures options for storing a JKS keystore
  1131. in the `spec.secretName` Secret resource.
  1132. properties:
  1133. create:
  1134. description: Create enables JKS keystore creation for the
  1135. Certificate. If true, a file named `keystore.jks` will be
  1136. created in the target Secret resource, encrypted using the
  1137. password stored in `passwordSecretRef`. The keystore file
  1138. will only be updated upon re-issuance.
  1139. type: boolean
  1140. passwordSecretRef:
  1141. description: PasswordSecretRef is a reference to a key in
  1142. a Secret resource containing the password used to encrypt
  1143. the JKS keystore.
  1144. properties:
  1145. key:
  1146. description: The key of the entry in the Secret resource's
  1147. `data` field to be used. Some instances of this field
  1148. may be defaulted, in others it may be required.
  1149. type: string
  1150. name:
  1151. description: 'Name of the resource being referred to.
  1152. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1153. type: string
  1154. required:
  1155. - name
  1156. type: object
  1157. required:
  1158. - create
  1159. - passwordSecretRef
  1160. type: object
  1161. pkcs12:
  1162. description: PKCS12 configures options for storing a PKCS12 keystore
  1163. in the `spec.secretName` Secret resource.
  1164. properties:
  1165. create:
  1166. description: Create enables PKCS12 keystore creation for the
  1167. Certificate. If true, a file named `keystore.p12` will be
  1168. created in the target Secret resource, encrypted using the
  1169. password stored in `passwordSecretRef`. The keystore file
  1170. will only be updated upon re-issuance.
  1171. type: boolean
  1172. passwordSecretRef:
  1173. description: PasswordSecretRef is a reference to a key in
  1174. a Secret resource containing the password used to encrypt
  1175. the PKCS12 keystore.
  1176. properties:
  1177. key:
  1178. description: The key of the entry in the Secret resource's
  1179. `data` field to be used. Some instances of this field
  1180. may be defaulted, in others it may be required.
  1181. type: string
  1182. name:
  1183. description: 'Name of the resource being referred to.
  1184. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1185. type: string
  1186. required:
  1187. - name
  1188. type: object
  1189. required:
  1190. - create
  1191. - passwordSecretRef
  1192. type: object
  1193. type: object
  1194. organization:
  1195. description: Organization is a list of organizations to be used on
  1196. the Certificate.
  1197. items:
  1198. type: string
  1199. type: array
  1200. privateKey:
  1201. description: Options to control private keys used for the Certificate.
  1202. properties:
  1203. rotationPolicy:
  1204. description: RotationPolicy controls how private keys should be
  1205. regenerated when a re-issuance is being processed. If set to
  1206. Never, a private key will only be generated if one does not
  1207. already exist in the target `spec.secretName`. If one does exists
  1208. but it does not have the correct algorithm or size, a warning
  1209. will be raised to await user intervention. If set to Always,
  1210. a private key matching the specified requirements will be generated
  1211. whenever a re-issuance occurs. Default is 'Never' for backward
  1212. compatibility.
  1213. type: string
  1214. type: object
  1215. renewBefore:
  1216. description: The amount of time before the currently issued certificate's
  1217. `notAfter` time that cert-manager will begin to attempt to renew
  1218. the certificate. If this value is greater than the total duration
  1219. of the certificate (i.e. notAfter - notBefore), it will be automatically
  1220. renewed 2/3rds of the way through the certificate's duration.
  1221. type: string
  1222. revisionHistoryLimit:
  1223. description: revisionHistoryLimit is the maximum number of CertificateRequest
  1224. revisions that are maintained in the Certificate's history. Each
  1225. revision represents a single `CertificateRequest` created by this
  1226. Certificate, either when it was created, renewed, or Spec was changed.
  1227. Revisions will be removed by oldest first if the number of revisions
  1228. exceeds this number. If set, revisionHistoryLimit must be a value
  1229. of `1` or greater. If unset (`nil`), revisions will not be garbage
  1230. collected. Default value is `nil`.
  1231. format: int32
  1232. type: integer
  1233. secretName:
  1234. description: SecretName is the name of the secret resource that will
  1235. be automatically created and managed by this Certificate resource.
  1236. It will be populated with a private key and certificate, signed
  1237. by the denoted issuer.
  1238. type: string
  1239. subject:
  1240. description: Full X509 name specification (https://golang.org/pkg/crypto/x509/pkix/#Name).
  1241. properties:
  1242. countries:
  1243. description: Countries to be used on the Certificate.
  1244. items:
  1245. type: string
  1246. type: array
  1247. localities:
  1248. description: Cities to be used on the Certificate.
  1249. items:
  1250. type: string
  1251. type: array
  1252. organizationalUnits:
  1253. description: Organizational Units to be used on the Certificate.
  1254. items:
  1255. type: string
  1256. type: array
  1257. postalCodes:
  1258. description: Postal codes to be used on the Certificate.
  1259. items:
  1260. type: string
  1261. type: array
  1262. provinces:
  1263. description: State/Provinces to be used on the Certificate.
  1264. items:
  1265. type: string
  1266. type: array
  1267. serialNumber:
  1268. description: Serial number to be used on the Certificate.
  1269. type: string
  1270. streetAddresses:
  1271. description: Street addresses to be used on the Certificate.
  1272. items:
  1273. type: string
  1274. type: array
  1275. type: object
  1276. uriSANs:
  1277. description: URISANs is a list of URI subjectAltNames to be set on
  1278. the Certificate.
  1279. items:
  1280. type: string
  1281. type: array
  1282. usages:
  1283. description: Usages is the set of x509 usages that are requested for
  1284. the certificate. Defaults to `digital signature` and `key encipherment`
  1285. if not specified.
  1286. items:
  1287. description: 'KeyUsage specifies valid usage contexts for keys.
  1288. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  1289. Valid KeyUsage values are as follows: "signing", "digital signature",
  1290. "content commitment", "key encipherment", "key agreement", "data
  1291. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  1292. only", "any", "server auth", "client auth", "code signing", "email
  1293. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  1294. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  1295. sgc"'
  1296. enum:
  1297. - signing
  1298. - digital signature
  1299. - content commitment
  1300. - key encipherment
  1301. - key agreement
  1302. - data encipherment
  1303. - cert sign
  1304. - crl sign
  1305. - encipher only
  1306. - decipher only
  1307. - any
  1308. - server auth
  1309. - client auth
  1310. - code signing
  1311. - email protection
  1312. - s/mime
  1313. - ipsec end system
  1314. - ipsec tunnel
  1315. - ipsec user
  1316. - timestamping
  1317. - ocsp signing
  1318. - microsoft sgc
  1319. - netscape sgc
  1320. type: string
  1321. type: array
  1322. required:
  1323. - issuerRef
  1324. - secretName
  1325. type: object
  1326. status:
  1327. description: Status of the Certificate. This is set and managed automatically.
  1328. properties:
  1329. conditions:
  1330. description: List of status conditions to indicate the status of certificates.
  1331. Known condition types are `Ready` and `Issuing`.
  1332. items:
  1333. description: CertificateCondition contains condition information
  1334. for an Certificate.
  1335. properties:
  1336. lastTransitionTime:
  1337. description: LastTransitionTime is the timestamp corresponding
  1338. to the last status change of this condition.
  1339. format: date-time
  1340. type: string
  1341. message:
  1342. description: Message is a human readable description of the
  1343. details of the last transition, complementing reason.
  1344. type: string
  1345. observedGeneration:
  1346. description: If set, this represents the .metadata.generation
  1347. that the condition was set based upon. For instance, if .metadata.generation
  1348. is currently 12, but the .status.condition[x].observedGeneration
  1349. is 9, the condition is out of date with respect to the current
  1350. state of the Certificate.
  1351. format: int64
  1352. type: integer
  1353. reason:
  1354. description: Reason is a brief machine readable explanation
  1355. for the condition's last transition.
  1356. type: string
  1357. status:
  1358. description: Status of the condition, one of (`True`, `False`,
  1359. `Unknown`).
  1360. enum:
  1361. - "True"
  1362. - "False"
  1363. - Unknown
  1364. type: string
  1365. type:
  1366. description: Type of the condition, known values are (`Ready`,
  1367. `Issuing`).
  1368. type: string
  1369. required:
  1370. - status
  1371. - type
  1372. type: object
  1373. type: array
  1374. lastFailureTime:
  1375. description: LastFailureTime is the time as recorded by the Certificate
  1376. controller of the most recent failure to complete a CertificateRequest
  1377. for this Certificate resource. If set, cert-manager will not re-request
  1378. another Certificate until 1 hour has elapsed from this time.
  1379. format: date-time
  1380. type: string
  1381. nextPrivateKeySecretName:
  1382. description: The name of the Secret resource containing the private
  1383. key to be used for the next certificate iteration. The keymanager
  1384. controller will automatically set this field if the `Issuing` condition
  1385. is set to `True`. It will automatically unset this field when the
  1386. Issuing condition is not set or False.
  1387. type: string
  1388. notAfter:
  1389. description: The expiration time of the certificate stored in the
  1390. secret named by this resource in `spec.secretName`.
  1391. format: date-time
  1392. type: string
  1393. notBefore:
  1394. description: The time after which the certificate stored in the secret
  1395. named by this resource in spec.secretName is valid.
  1396. format: date-time
  1397. type: string
  1398. renewalTime:
  1399. description: RenewalTime is the time at which the certificate will
  1400. be next renewed. If not set, no upcoming renewal is scheduled.
  1401. format: date-time
  1402. type: string
  1403. revision:
  1404. description: "The current 'revision' of the certificate as issued.
  1405. \n When a CertificateRequest resource is created, it will have the
  1406. `cert-manager.io/certificate-revision` set to one greater than the
  1407. current value of this field. \n Upon issuance, this field will be
  1408. set to the value of the annotation on the CertificateRequest resource
  1409. used to issue the certificate. \n Persisting the value on the CertificateRequest
  1410. resource allows the certificates controller to know whether a request
  1411. is part of an old issuance or if it is part of the ongoing revision's
  1412. issuance by checking if the revision value in the annotation is
  1413. greater than this field."
  1414. type: integer
  1415. type: object
  1416. type: object
  1417. served: true
  1418. storage: false
  1419. subresources:
  1420. status: {}
  1421. - additionalPrinterColumns:
  1422. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1423. name: Ready
  1424. type: string
  1425. - jsonPath: .spec.secretName
  1426. name: Secret
  1427. type: string
  1428. - jsonPath: .spec.issuerRef.name
  1429. name: Issuer
  1430. priority: 1
  1431. type: string
  1432. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  1433. name: Status
  1434. priority: 1
  1435. type: string
  1436. - description: CreationTimestamp is a timestamp representing the server time when
  1437. this object was created. It is not guaranteed to be set in happens-before
  1438. order across separate operations. Clients may not set this value. It is represented
  1439. in RFC3339 form and is in UTC.
  1440. jsonPath: .metadata.creationTimestamp
  1441. name: Age
  1442. type: date
  1443. name: v1alpha3
  1444. schema:
  1445. openAPIV3Schema:
  1446. description: "A Certificate resource should be created to ensure an up to
  1447. date and signed x509 certificate is stored in the Kubernetes Secret resource
  1448. named in `spec.secretName`. \n The stored certificate will be renewed before
  1449. it expires (as configured by `spec.renewBefore`)."
  1450. properties:
  1451. apiVersion:
  1452. description: 'APIVersion defines the versioned schema of this representation
  1453. of an object. Servers should convert recognized schemas to the latest
  1454. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1455. type: string
  1456. kind:
  1457. description: 'Kind is a string value representing the REST resource this
  1458. object represents. Servers may infer this from the endpoint the client
  1459. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1460. type: string
  1461. metadata:
  1462. type: object
  1463. spec:
  1464. description: Desired state of the Certificate resource.
  1465. properties:
  1466. commonName:
  1467. description: 'CommonName is a common name to be used on the Certificate.
  1468. The CommonName should have a length of 64 characters or fewer to
  1469. avoid generating invalid CSRs. This value is ignored by TLS clients
  1470. when any subject alt name is set. This is x509 behaviour: https://tools.ietf.org/html/rfc6125#section-6.4.4'
  1471. type: string
  1472. dnsNames:
  1473. description: DNSNames is a list of DNS subjectAltNames to be set on
  1474. the Certificate.
  1475. items:
  1476. type: string
  1477. type: array
  1478. duration:
  1479. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  1480. This option may be ignored/overridden by some issuer types. If overridden
  1481. and `renewBefore` is greater than the actual certificate duration,
  1482. the certificate will be automatically renewed 2/3rds of the way
  1483. through the certificate's duration.
  1484. type: string
  1485. emailSANs:
  1486. description: EmailSANs is a list of email subjectAltNames to be set
  1487. on the Certificate.
  1488. items:
  1489. type: string
  1490. type: array
  1491. encodeUsagesInRequest:
  1492. description: EncodeUsagesInRequest controls whether key usages should
  1493. be present in the CertificateRequest
  1494. type: boolean
  1495. ipAddresses:
  1496. description: IPAddresses is a list of IP address subjectAltNames to
  1497. be set on the Certificate.
  1498. items:
  1499. type: string
  1500. type: array
  1501. isCA:
  1502. description: IsCA will mark this Certificate as valid for certificate
  1503. signing. This will automatically add the `cert sign` usage to the
  1504. list of `usages`.
  1505. type: boolean
  1506. issuerRef:
  1507. description: IssuerRef is a reference to the issuer for this certificate.
  1508. If the `kind` field is not set, or set to `Issuer`, an Issuer resource
  1509. with the given name in the same namespace as the Certificate will
  1510. be used. If the `kind` field is set to `ClusterIssuer`, a ClusterIssuer
  1511. with the provided name will be used. The `name` field in this stanza
  1512. is required at all times.
  1513. properties:
  1514. group:
  1515. description: Group of the resource being referred to.
  1516. type: string
  1517. kind:
  1518. description: Kind of the resource being referred to.
  1519. type: string
  1520. name:
  1521. description: Name of the resource being referred to.
  1522. type: string
  1523. required:
  1524. - name
  1525. type: object
  1526. keyAlgorithm:
  1527. description: KeyAlgorithm is the private key algorithm of the corresponding
  1528. private key for this certificate. If provided, allowed values are
  1529. either `rsa` or `ecdsa` If `keyAlgorithm` is specified and `keySize`
  1530. is not provided, key size of 256 will be used for `ecdsa` key algorithm
  1531. and key size of 2048 will be used for `rsa` key algorithm.
  1532. enum:
  1533. - rsa
  1534. - ecdsa
  1535. type: string
  1536. keyEncoding:
  1537. description: KeyEncoding is the private key cryptography standards
  1538. (PKCS) for this certificate's private key to be encoded in. If provided,
  1539. allowed values are `pkcs1` and `pkcs8` standing for PKCS#1 and PKCS#8,
  1540. respectively. If KeyEncoding is not specified, then `pkcs1` will
  1541. be used by default.
  1542. enum:
  1543. - pkcs1
  1544. - pkcs8
  1545. type: string
  1546. keySize:
  1547. description: KeySize is the key bit size of the corresponding private
  1548. key for this certificate. If `keyAlgorithm` is set to `rsa`, valid
  1549. values are `2048`, `4096` or `8192`, and will default to `2048`
  1550. if not specified. If `keyAlgorithm` is set to `ecdsa`, valid values
  1551. are `256`, `384` or `521`, and will default to `256` if not specified.
  1552. No other values are allowed.
  1553. type: integer
  1554. keystores:
  1555. description: Keystores configures additional keystore output formats
  1556. stored in the `secretName` Secret resource.
  1557. properties:
  1558. jks:
  1559. description: JKS configures options for storing a JKS keystore
  1560. in the `spec.secretName` Secret resource.
  1561. properties:
  1562. create:
  1563. description: Create enables JKS keystore creation for the
  1564. Certificate. If true, a file named `keystore.jks` will be
  1565. created in the target Secret resource, encrypted using the
  1566. password stored in `passwordSecretRef`. The keystore file
  1567. will only be updated upon re-issuance. A file named `truststore.jks`
  1568. will also be created in the target Secret resource, encrypted
  1569. using the password stored in `passwordSecretRef` containing
  1570. the issuing Certificate Authority.
  1571. type: boolean
  1572. passwordSecretRef:
  1573. description: PasswordSecretRef is a reference to a key in
  1574. a Secret resource containing the password used to encrypt
  1575. the JKS keystore.
  1576. properties:
  1577. key:
  1578. description: The key of the entry in the Secret resource's
  1579. `data` field to be used. Some instances of this field
  1580. may be defaulted, in others it may be required.
  1581. type: string
  1582. name:
  1583. description: 'Name of the resource being referred to.
  1584. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1585. type: string
  1586. required:
  1587. - name
  1588. type: object
  1589. required:
  1590. - create
  1591. - passwordSecretRef
  1592. type: object
  1593. pkcs12:
  1594. description: PKCS12 configures options for storing a PKCS12 keystore
  1595. in the `spec.secretName` Secret resource.
  1596. properties:
  1597. create:
  1598. description: Create enables PKCS12 keystore creation for the
  1599. Certificate. If true, a file named `keystore.p12` will be
  1600. created in the target Secret resource, encrypted using the
  1601. password stored in `passwordSecretRef`. The keystore file
  1602. will only be updated upon re-issuance. A file named `truststore.p12`
  1603. will also be created in the target Secret resource, encrypted
  1604. using the password stored in `passwordSecretRef` containing
  1605. the issuing Certificate Authority.
  1606. type: boolean
  1607. passwordSecretRef:
  1608. description: PasswordSecretRef is a reference to a key in
  1609. a Secret resource containing the password used to encrypt
  1610. the PKCS12 keystore.
  1611. properties:
  1612. key:
  1613. description: The key of the entry in the Secret resource's
  1614. `data` field to be used. Some instances of this field
  1615. may be defaulted, in others it may be required.
  1616. type: string
  1617. name:
  1618. description: 'Name of the resource being referred to.
  1619. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1620. type: string
  1621. required:
  1622. - name
  1623. type: object
  1624. required:
  1625. - create
  1626. - passwordSecretRef
  1627. type: object
  1628. type: object
  1629. privateKey:
  1630. description: Options to control private keys used for the Certificate.
  1631. properties:
  1632. rotationPolicy:
  1633. description: RotationPolicy controls how private keys should be
  1634. regenerated when a re-issuance is being processed. If set to
  1635. Never, a private key will only be generated if one does not
  1636. already exist in the target `spec.secretName`. If one does exists
  1637. but it does not have the correct algorithm or size, a warning
  1638. will be raised to await user intervention. If set to Always,
  1639. a private key matching the specified requirements will be generated
  1640. whenever a re-issuance occurs. Default is 'Never' for backward
  1641. compatibility.
  1642. type: string
  1643. type: object
  1644. renewBefore:
  1645. description: The amount of time before the currently issued certificate's
  1646. `notAfter` time that cert-manager will begin to attempt to renew
  1647. the certificate. If this value is greater than the total duration
  1648. of the certificate (i.e. notAfter - notBefore), it will be automatically
  1649. renewed 2/3rds of the way through the certificate's duration.
  1650. type: string
  1651. revisionHistoryLimit:
  1652. description: revisionHistoryLimit is the maximum number of CertificateRequest
  1653. revisions that are maintained in the Certificate's history. Each
  1654. revision represents a single `CertificateRequest` created by this
  1655. Certificate, either when it was created, renewed, or Spec was changed.
  1656. Revisions will be removed by oldest first if the number of revisions
  1657. exceeds this number. If set, revisionHistoryLimit must be a value
  1658. of `1` or greater. If unset (`nil`), revisions will not be garbage
  1659. collected. Default value is `nil`.
  1660. format: int32
  1661. type: integer
  1662. secretName:
  1663. description: SecretName is the name of the secret resource that will
  1664. be automatically created and managed by this Certificate resource.
  1665. It will be populated with a private key and certificate, signed
  1666. by the denoted issuer.
  1667. type: string
  1668. subject:
  1669. description: Full X509 name specification (https://golang.org/pkg/crypto/x509/pkix/#Name).
  1670. properties:
  1671. countries:
  1672. description: Countries to be used on the Certificate.
  1673. items:
  1674. type: string
  1675. type: array
  1676. localities:
  1677. description: Cities to be used on the Certificate.
  1678. items:
  1679. type: string
  1680. type: array
  1681. organizationalUnits:
  1682. description: Organizational Units to be used on the Certificate.
  1683. items:
  1684. type: string
  1685. type: array
  1686. organizations:
  1687. description: Organizations to be used on the Certificate.
  1688. items:
  1689. type: string
  1690. type: array
  1691. postalCodes:
  1692. description: Postal codes to be used on the Certificate.
  1693. items:
  1694. type: string
  1695. type: array
  1696. provinces:
  1697. description: State/Provinces to be used on the Certificate.
  1698. items:
  1699. type: string
  1700. type: array
  1701. serialNumber:
  1702. description: Serial number to be used on the Certificate.
  1703. type: string
  1704. streetAddresses:
  1705. description: Street addresses to be used on the Certificate.
  1706. items:
  1707. type: string
  1708. type: array
  1709. type: object
  1710. uriSANs:
  1711. description: URISANs is a list of URI subjectAltNames to be set on
  1712. the Certificate.
  1713. items:
  1714. type: string
  1715. type: array
  1716. usages:
  1717. description: Usages is the set of x509 usages that are requested for
  1718. the certificate. Defaults to `digital signature` and `key encipherment`
  1719. if not specified.
  1720. items:
  1721. description: 'KeyUsage specifies valid usage contexts for keys.
  1722. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  1723. Valid KeyUsage values are as follows: "signing", "digital signature",
  1724. "content commitment", "key encipherment", "key agreement", "data
  1725. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  1726. only", "any", "server auth", "client auth", "code signing", "email
  1727. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  1728. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  1729. sgc"'
  1730. enum:
  1731. - signing
  1732. - digital signature
  1733. - content commitment
  1734. - key encipherment
  1735. - key agreement
  1736. - data encipherment
  1737. - cert sign
  1738. - crl sign
  1739. - encipher only
  1740. - decipher only
  1741. - any
  1742. - server auth
  1743. - client auth
  1744. - code signing
  1745. - email protection
  1746. - s/mime
  1747. - ipsec end system
  1748. - ipsec tunnel
  1749. - ipsec user
  1750. - timestamping
  1751. - ocsp signing
  1752. - microsoft sgc
  1753. - netscape sgc
  1754. type: string
  1755. type: array
  1756. required:
  1757. - issuerRef
  1758. - secretName
  1759. type: object
  1760. status:
  1761. description: Status of the Certificate. This is set and managed automatically.
  1762. properties:
  1763. conditions:
  1764. description: List of status conditions to indicate the status of certificates.
  1765. Known condition types are `Ready` and `Issuing`.
  1766. items:
  1767. description: CertificateCondition contains condition information
  1768. for an Certificate.
  1769. properties:
  1770. lastTransitionTime:
  1771. description: LastTransitionTime is the timestamp corresponding
  1772. to the last status change of this condition.
  1773. format: date-time
  1774. type: string
  1775. message:
  1776. description: Message is a human readable description of the
  1777. details of the last transition, complementing reason.
  1778. type: string
  1779. observedGeneration:
  1780. description: If set, this represents the .metadata.generation
  1781. that the condition was set based upon. For instance, if .metadata.generation
  1782. is currently 12, but the .status.condition[x].observedGeneration
  1783. is 9, the condition is out of date with respect to the current
  1784. state of the Certificate.
  1785. format: int64
  1786. type: integer
  1787. reason:
  1788. description: Reason is a brief machine readable explanation
  1789. for the condition's last transition.
  1790. type: string
  1791. status:
  1792. description: Status of the condition, one of (`True`, `False`,
  1793. `Unknown`).
  1794. enum:
  1795. - "True"
  1796. - "False"
  1797. - Unknown
  1798. type: string
  1799. type:
  1800. description: Type of the condition, known values are (`Ready`,
  1801. `Issuing`).
  1802. type: string
  1803. required:
  1804. - status
  1805. - type
  1806. type: object
  1807. type: array
  1808. lastFailureTime:
  1809. description: LastFailureTime is the time as recorded by the Certificate
  1810. controller of the most recent failure to complete a CertificateRequest
  1811. for this Certificate resource. If set, cert-manager will not re-request
  1812. another Certificate until 1 hour has elapsed from this time.
  1813. format: date-time
  1814. type: string
  1815. nextPrivateKeySecretName:
  1816. description: The name of the Secret resource containing the private
  1817. key to be used for the next certificate iteration. The keymanager
  1818. controller will automatically set this field if the `Issuing` condition
  1819. is set to `True`. It will automatically unset this field when the
  1820. Issuing condition is not set or False.
  1821. type: string
  1822. notAfter:
  1823. description: The expiration time of the certificate stored in the
  1824. secret named by this resource in `spec.secretName`.
  1825. format: date-time
  1826. type: string
  1827. notBefore:
  1828. description: The time after which the certificate stored in the secret
  1829. named by this resource in spec.secretName is valid.
  1830. format: date-time
  1831. type: string
  1832. renewalTime:
  1833. description: RenewalTime is the time at which the certificate will
  1834. be next renewed. If not set, no upcoming renewal is scheduled.
  1835. format: date-time
  1836. type: string
  1837. revision:
  1838. description: "The current 'revision' of the certificate as issued.
  1839. \n When a CertificateRequest resource is created, it will have the
  1840. `cert-manager.io/certificate-revision` set to one greater than the
  1841. current value of this field. \n Upon issuance, this field will be
  1842. set to the value of the annotation on the CertificateRequest resource
  1843. used to issue the certificate. \n Persisting the value on the CertificateRequest
  1844. resource allows the certificates controller to know whether a request
  1845. is part of an old issuance or if it is part of the ongoing revision's
  1846. issuance by checking if the revision value in the annotation is
  1847. greater than this field."
  1848. type: integer
  1849. type: object
  1850. type: object
  1851. served: true
  1852. storage: false
  1853. subresources:
  1854. status: {}
  1855. - additionalPrinterColumns:
  1856. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  1857. name: Ready
  1858. type: string
  1859. - jsonPath: .spec.secretName
  1860. name: Secret
  1861. type: string
  1862. - jsonPath: .spec.issuerRef.name
  1863. name: Issuer
  1864. priority: 1
  1865. type: string
  1866. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  1867. name: Status
  1868. priority: 1
  1869. type: string
  1870. - description: CreationTimestamp is a timestamp representing the server time when
  1871. this object was created. It is not guaranteed to be set in happens-before
  1872. order across separate operations. Clients may not set this value. It is represented
  1873. in RFC3339 form and is in UTC.
  1874. jsonPath: .metadata.creationTimestamp
  1875. name: Age
  1876. type: date
  1877. name: v1beta1
  1878. schema:
  1879. openAPIV3Schema:
  1880. description: "A Certificate resource should be created to ensure an up to
  1881. date and signed x509 certificate is stored in the Kubernetes Secret resource
  1882. named in `spec.secretName`. \n The stored certificate will be renewed before
  1883. it expires (as configured by `spec.renewBefore`)."
  1884. properties:
  1885. apiVersion:
  1886. description: 'APIVersion defines the versioned schema of this representation
  1887. of an object. Servers should convert recognized schemas to the latest
  1888. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  1889. type: string
  1890. kind:
  1891. description: 'Kind is a string value representing the REST resource this
  1892. object represents. Servers may infer this from the endpoint the client
  1893. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  1894. type: string
  1895. metadata:
  1896. type: object
  1897. spec:
  1898. description: Desired state of the Certificate resource.
  1899. properties:
  1900. commonName:
  1901. description: 'CommonName is a common name to be used on the Certificate.
  1902. The CommonName should have a length of 64 characters or fewer to
  1903. avoid generating invalid CSRs. This value is ignored by TLS clients
  1904. when any subject alt name is set. This is x509 behaviour: https://tools.ietf.org/html/rfc6125#section-6.4.4'
  1905. type: string
  1906. dnsNames:
  1907. description: DNSNames is a list of DNS subjectAltNames to be set on
  1908. the Certificate.
  1909. items:
  1910. type: string
  1911. type: array
  1912. duration:
  1913. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  1914. This option may be ignored/overridden by some issuer types. If overridden
  1915. and `renewBefore` is greater than the actual certificate duration,
  1916. the certificate will be automatically renewed 2/3rds of the way
  1917. through the certificate's duration.
  1918. type: string
  1919. emailSANs:
  1920. description: EmailSANs is a list of email subjectAltNames to be set
  1921. on the Certificate.
  1922. items:
  1923. type: string
  1924. type: array
  1925. encodeUsagesInRequest:
  1926. description: EncodeUsagesInRequest controls whether key usages should
  1927. be present in the CertificateRequest
  1928. type: boolean
  1929. ipAddresses:
  1930. description: IPAddresses is a list of IP address subjectAltNames to
  1931. be set on the Certificate.
  1932. items:
  1933. type: string
  1934. type: array
  1935. isCA:
  1936. description: IsCA will mark this Certificate as valid for certificate
  1937. signing. This will automatically add the `cert sign` usage to the
  1938. list of `usages`.
  1939. type: boolean
  1940. issuerRef:
  1941. description: IssuerRef is a reference to the issuer for this certificate.
  1942. If the `kind` field is not set, or set to `Issuer`, an Issuer resource
  1943. with the given name in the same namespace as the Certificate will
  1944. be used. If the `kind` field is set to `ClusterIssuer`, a ClusterIssuer
  1945. with the provided name will be used. The `name` field in this stanza
  1946. is required at all times.
  1947. properties:
  1948. group:
  1949. description: Group of the resource being referred to.
  1950. type: string
  1951. kind:
  1952. description: Kind of the resource being referred to.
  1953. type: string
  1954. name:
  1955. description: Name of the resource being referred to.
  1956. type: string
  1957. required:
  1958. - name
  1959. type: object
  1960. keystores:
  1961. description: Keystores configures additional keystore output formats
  1962. stored in the `secretName` Secret resource.
  1963. properties:
  1964. jks:
  1965. description: JKS configures options for storing a JKS keystore
  1966. in the `spec.secretName` Secret resource.
  1967. properties:
  1968. create:
  1969. description: Create enables JKS keystore creation for the
  1970. Certificate. If true, a file named `keystore.jks` will be
  1971. created in the target Secret resource, encrypted using the
  1972. password stored in `passwordSecretRef`. The keystore file
  1973. will only be updated upon re-issuance.
  1974. type: boolean
  1975. passwordSecretRef:
  1976. description: PasswordSecretRef is a reference to a key in
  1977. a Secret resource containing the password used to encrypt
  1978. the JKS keystore.
  1979. properties:
  1980. key:
  1981. description: The key of the entry in the Secret resource's
  1982. `data` field to be used. Some instances of this field
  1983. may be defaulted, in others it may be required.
  1984. type: string
  1985. name:
  1986. description: 'Name of the resource being referred to.
  1987. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  1988. type: string
  1989. required:
  1990. - name
  1991. type: object
  1992. required:
  1993. - create
  1994. - passwordSecretRef
  1995. type: object
  1996. pkcs12:
  1997. description: PKCS12 configures options for storing a PKCS12 keystore
  1998. in the `spec.secretName` Secret resource.
  1999. properties:
  2000. create:
  2001. description: Create enables PKCS12 keystore creation for the
  2002. Certificate. If true, a file named `keystore.p12` will be
  2003. created in the target Secret resource, encrypted using the
  2004. password stored in `passwordSecretRef`. The keystore file
  2005. will only be updated upon re-issuance.
  2006. type: boolean
  2007. passwordSecretRef:
  2008. description: PasswordSecretRef is a reference to a key in
  2009. a Secret resource containing the password used to encrypt
  2010. the PKCS12 keystore.
  2011. properties:
  2012. key:
  2013. description: The key of the entry in the Secret resource's
  2014. `data` field to be used. Some instances of this field
  2015. may be defaulted, in others it may be required.
  2016. type: string
  2017. name:
  2018. description: 'Name of the resource being referred to.
  2019. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2020. type: string
  2021. required:
  2022. - name
  2023. type: object
  2024. required:
  2025. - create
  2026. - passwordSecretRef
  2027. type: object
  2028. type: object
  2029. privateKey:
  2030. description: Options to control private keys used for the Certificate.
  2031. properties:
  2032. algorithm:
  2033. description: Algorithm is the private key algorithm of the corresponding
  2034. private key for this certificate. If provided, allowed values
  2035. are either `RSA` or `ECDSA` If `algorithm` is specified and
  2036. `size` is not provided, key size of 256 will be used for `ECDSA`
  2037. key algorithm and key size of 2048 will be used for `RSA` key
  2038. algorithm.
  2039. enum:
  2040. - RSA
  2041. - ECDSA
  2042. type: string
  2043. encoding:
  2044. description: The private key cryptography standards (PKCS) encoding
  2045. for this certificate's private key to be encoded in. If provided,
  2046. allowed values are `PKCS1` and `PKCS8` standing for PKCS#1 and
  2047. PKCS#8, respectively. Defaults to `PKCS1` if not specified.
  2048. enum:
  2049. - PKCS1
  2050. - PKCS8
  2051. type: string
  2052. rotationPolicy:
  2053. description: RotationPolicy controls how private keys should be
  2054. regenerated when a re-issuance is being processed. If set to
  2055. Never, a private key will only be generated if one does not
  2056. already exist in the target `spec.secretName`. If one does exists
  2057. but it does not have the correct algorithm or size, a warning
  2058. will be raised to await user intervention. If set to Always,
  2059. a private key matching the specified requirements will be generated
  2060. whenever a re-issuance occurs. Default is 'Never' for backward
  2061. compatibility.
  2062. type: string
  2063. size:
  2064. description: Size is the key bit size of the corresponding private
  2065. key for this certificate. If `algorithm` is set to `RSA`, valid
  2066. values are `2048`, `4096` or `8192`, and will default to `2048`
  2067. if not specified. If `algorithm` is set to `ECDSA`, valid values
  2068. are `256`, `384` or `521`, and will default to `256` if not
  2069. specified. No other values are allowed.
  2070. type: integer
  2071. type: object
  2072. renewBefore:
  2073. description: The amount of time before the currently issued certificate's
  2074. `notAfter` time that cert-manager will begin to attempt to renew
  2075. the certificate. If this value is greater than the total duration
  2076. of the certificate (i.e. notAfter - notBefore), it will be automatically
  2077. renewed 2/3rds of the way through the certificate's duration.
  2078. type: string
  2079. revisionHistoryLimit:
  2080. description: revisionHistoryLimit is the maximum number of CertificateRequest
  2081. revisions that are maintained in the Certificate's history. Each
  2082. revision represents a single `CertificateRequest` created by this
  2083. Certificate, either when it was created, renewed, or Spec was changed.
  2084. Revisions will be removed by oldest first if the number of revisions
  2085. exceeds this number. If set, revisionHistoryLimit must be a value
  2086. of `1` or greater. If unset (`nil`), revisions will not be garbage
  2087. collected. Default value is `nil`.
  2088. format: int32
  2089. type: integer
  2090. secretName:
  2091. description: SecretName is the name of the secret resource that will
  2092. be automatically created and managed by this Certificate resource.
  2093. It will be populated with a private key and certificate, signed
  2094. by the denoted issuer.
  2095. type: string
  2096. subject:
  2097. description: Full X509 name specification (https://golang.org/pkg/crypto/x509/pkix/#Name).
  2098. properties:
  2099. countries:
  2100. description: Countries to be used on the Certificate.
  2101. items:
  2102. type: string
  2103. type: array
  2104. localities:
  2105. description: Cities to be used on the Certificate.
  2106. items:
  2107. type: string
  2108. type: array
  2109. organizationalUnits:
  2110. description: Organizational Units to be used on the Certificate.
  2111. items:
  2112. type: string
  2113. type: array
  2114. organizations:
  2115. description: Organizations to be used on the Certificate.
  2116. items:
  2117. type: string
  2118. type: array
  2119. postalCodes:
  2120. description: Postal codes to be used on the Certificate.
  2121. items:
  2122. type: string
  2123. type: array
  2124. provinces:
  2125. description: State/Provinces to be used on the Certificate.
  2126. items:
  2127. type: string
  2128. type: array
  2129. serialNumber:
  2130. description: Serial number to be used on the Certificate.
  2131. type: string
  2132. streetAddresses:
  2133. description: Street addresses to be used on the Certificate.
  2134. items:
  2135. type: string
  2136. type: array
  2137. type: object
  2138. uriSANs:
  2139. description: URISANs is a list of URI subjectAltNames to be set on
  2140. the Certificate.
  2141. items:
  2142. type: string
  2143. type: array
  2144. usages:
  2145. description: Usages is the set of x509 usages that are requested for
  2146. the certificate. Defaults to `digital signature` and `key encipherment`
  2147. if not specified.
  2148. items:
  2149. description: 'KeyUsage specifies valid usage contexts for keys.
  2150. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  2151. Valid KeyUsage values are as follows: "signing", "digital signature",
  2152. "content commitment", "key encipherment", "key agreement", "data
  2153. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  2154. only", "any", "server auth", "client auth", "code signing", "email
  2155. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  2156. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  2157. sgc"'
  2158. enum:
  2159. - signing
  2160. - digital signature
  2161. - content commitment
  2162. - key encipherment
  2163. - key agreement
  2164. - data encipherment
  2165. - cert sign
  2166. - crl sign
  2167. - encipher only
  2168. - decipher only
  2169. - any
  2170. - server auth
  2171. - client auth
  2172. - code signing
  2173. - email protection
  2174. - s/mime
  2175. - ipsec end system
  2176. - ipsec tunnel
  2177. - ipsec user
  2178. - timestamping
  2179. - ocsp signing
  2180. - microsoft sgc
  2181. - netscape sgc
  2182. type: string
  2183. type: array
  2184. required:
  2185. - issuerRef
  2186. - secretName
  2187. type: object
  2188. status:
  2189. description: Status of the Certificate. This is set and managed automatically.
  2190. properties:
  2191. conditions:
  2192. description: List of status conditions to indicate the status of certificates.
  2193. Known condition types are `Ready` and `Issuing`.
  2194. items:
  2195. description: CertificateCondition contains condition information
  2196. for an Certificate.
  2197. properties:
  2198. lastTransitionTime:
  2199. description: LastTransitionTime is the timestamp corresponding
  2200. to the last status change of this condition.
  2201. format: date-time
  2202. type: string
  2203. message:
  2204. description: Message is a human readable description of the
  2205. details of the last transition, complementing reason.
  2206. type: string
  2207. observedGeneration:
  2208. description: If set, this represents the .metadata.generation
  2209. that the condition was set based upon. For instance, if .metadata.generation
  2210. is currently 12, but the .status.condition[x].observedGeneration
  2211. is 9, the condition is out of date with respect to the current
  2212. state of the Certificate.
  2213. format: int64
  2214. type: integer
  2215. reason:
  2216. description: Reason is a brief machine readable explanation
  2217. for the condition's last transition.
  2218. type: string
  2219. status:
  2220. description: Status of the condition, one of (`True`, `False`,
  2221. `Unknown`).
  2222. enum:
  2223. - "True"
  2224. - "False"
  2225. - Unknown
  2226. type: string
  2227. type:
  2228. description: Type of the condition, known values are (`Ready`,
  2229. `Issuing`).
  2230. type: string
  2231. required:
  2232. - status
  2233. - type
  2234. type: object
  2235. type: array
  2236. lastFailureTime:
  2237. description: LastFailureTime is the time as recorded by the Certificate
  2238. controller of the most recent failure to complete a CertificateRequest
  2239. for this Certificate resource. If set, cert-manager will not re-request
  2240. another Certificate until 1 hour has elapsed from this time.
  2241. format: date-time
  2242. type: string
  2243. nextPrivateKeySecretName:
  2244. description: The name of the Secret resource containing the private
  2245. key to be used for the next certificate iteration. The keymanager
  2246. controller will automatically set this field if the `Issuing` condition
  2247. is set to `True`. It will automatically unset this field when the
  2248. Issuing condition is not set or False.
  2249. type: string
  2250. notAfter:
  2251. description: The expiration time of the certificate stored in the
  2252. secret named by this resource in `spec.secretName`.
  2253. format: date-time
  2254. type: string
  2255. notBefore:
  2256. description: The time after which the certificate stored in the secret
  2257. named by this resource in spec.secretName is valid.
  2258. format: date-time
  2259. type: string
  2260. renewalTime:
  2261. description: RenewalTime is the time at which the certificate will
  2262. be next renewed. If not set, no upcoming renewal is scheduled.
  2263. format: date-time
  2264. type: string
  2265. revision:
  2266. description: "The current 'revision' of the certificate as issued.
  2267. \n When a CertificateRequest resource is created, it will have the
  2268. `cert-manager.io/certificate-revision` set to one greater than the
  2269. current value of this field. \n Upon issuance, this field will be
  2270. set to the value of the annotation on the CertificateRequest resource
  2271. used to issue the certificate. \n Persisting the value on the CertificateRequest
  2272. resource allows the certificates controller to know whether a request
  2273. is part of an old issuance or if it is part of the ongoing revision's
  2274. issuance by checking if the revision value in the annotation is
  2275. greater than this field."
  2276. type: integer
  2277. type: object
  2278. required:
  2279. - spec
  2280. type: object
  2281. served: true
  2282. storage: false
  2283. subresources:
  2284. status: {}
  2285. - additionalPrinterColumns:
  2286. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  2287. name: Ready
  2288. type: string
  2289. - jsonPath: .spec.secretName
  2290. name: Secret
  2291. type: string
  2292. - jsonPath: .spec.issuerRef.name
  2293. name: Issuer
  2294. priority: 1
  2295. type: string
  2296. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  2297. name: Status
  2298. priority: 1
  2299. type: string
  2300. - description: CreationTimestamp is a timestamp representing the server time when
  2301. this object was created. It is not guaranteed to be set in happens-before
  2302. order across separate operations. Clients may not set this value. It is represented
  2303. in RFC3339 form and is in UTC.
  2304. jsonPath: .metadata.creationTimestamp
  2305. name: Age
  2306. type: date
  2307. name: v1
  2308. schema:
  2309. openAPIV3Schema:
  2310. description: "A Certificate resource should be created to ensure an up to
  2311. date and signed x509 certificate is stored in the Kubernetes Secret resource
  2312. named in `spec.secretName`. \n The stored certificate will be renewed before
  2313. it expires (as configured by `spec.renewBefore`)."
  2314. properties:
  2315. apiVersion:
  2316. description: 'APIVersion defines the versioned schema of this representation
  2317. of an object. Servers should convert recognized schemas to the latest
  2318. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2319. type: string
  2320. kind:
  2321. description: 'Kind is a string value representing the REST resource this
  2322. object represents. Servers may infer this from the endpoint the client
  2323. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2324. type: string
  2325. metadata:
  2326. type: object
  2327. spec:
  2328. description: Desired state of the Certificate resource.
  2329. properties:
  2330. commonName:
  2331. description: 'CommonName is a common name to be used on the Certificate.
  2332. The CommonName should have a length of 64 characters or fewer to
  2333. avoid generating invalid CSRs. This value is ignored by TLS clients
  2334. when any subject alt name is set. This is x509 behaviour: https://tools.ietf.org/html/rfc6125#section-6.4.4'
  2335. type: string
  2336. dnsNames:
  2337. description: DNSNames is a list of DNS subjectAltNames to be set on
  2338. the Certificate.
  2339. items:
  2340. type: string
  2341. type: array
  2342. duration:
  2343. description: The requested 'duration' (i.e. lifetime) of the Certificate.
  2344. This option may be ignored/overridden by some issuer types. If unset
  2345. this defaults to 90 days. If overridden and `renewBefore` is greater
  2346. than the actual certificate duration, the certificate will be automatically
  2347. renewed 2/3rds of the way through the certificate's duration.
  2348. type: string
  2349. emailAddresses:
  2350. description: EmailAddresses is a list of email subjectAltNames to
  2351. be set on the Certificate.
  2352. items:
  2353. type: string
  2354. type: array
  2355. encodeUsagesInRequest:
  2356. description: EncodeUsagesInRequest controls whether key usages should
  2357. be present in the CertificateRequest
  2358. type: boolean
  2359. ipAddresses:
  2360. description: IPAddresses is a list of IP address subjectAltNames to
  2361. be set on the Certificate.
  2362. items:
  2363. type: string
  2364. type: array
  2365. isCA:
  2366. description: IsCA will mark this Certificate as valid for certificate
  2367. signing. This will automatically add the `cert sign` usage to the
  2368. list of `usages`.
  2369. type: boolean
  2370. issuerRef:
  2371. description: IssuerRef is a reference to the issuer for this certificate.
  2372. If the `kind` field is not set, or set to `Issuer`, an Issuer resource
  2373. with the given name in the same namespace as the Certificate will
  2374. be used. If the `kind` field is set to `ClusterIssuer`, a ClusterIssuer
  2375. with the provided name will be used. The `name` field in this stanza
  2376. is required at all times.
  2377. properties:
  2378. group:
  2379. description: Group of the resource being referred to.
  2380. type: string
  2381. kind:
  2382. description: Kind of the resource being referred to.
  2383. type: string
  2384. name:
  2385. description: Name of the resource being referred to.
  2386. type: string
  2387. required:
  2388. - name
  2389. type: object
  2390. keystores:
  2391. description: Keystores configures additional keystore output formats
  2392. stored in the `secretName` Secret resource.
  2393. properties:
  2394. jks:
  2395. description: JKS configures options for storing a JKS keystore
  2396. in the `spec.secretName` Secret resource.
  2397. properties:
  2398. create:
  2399. description: Create enables JKS keystore creation for the
  2400. Certificate. If true, a file named `keystore.jks` will be
  2401. created in the target Secret resource, encrypted using the
  2402. password stored in `passwordSecretRef`. The keystore file
  2403. will only be updated upon re-issuance. A file named `truststore.jks`
  2404. will also be created in the target Secret resource, encrypted
  2405. using the password stored in `passwordSecretRef` containing
  2406. the issuing Certificate Authority
  2407. type: boolean
  2408. passwordSecretRef:
  2409. description: PasswordSecretRef is a reference to a key in
  2410. a Secret resource containing the password used to encrypt
  2411. the JKS keystore.
  2412. properties:
  2413. key:
  2414. description: The key of the entry in the Secret resource's
  2415. `data` field to be used. Some instances of this field
  2416. may be defaulted, in others it may be required.
  2417. type: string
  2418. name:
  2419. description: 'Name of the resource being referred to.
  2420. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2421. type: string
  2422. required:
  2423. - name
  2424. type: object
  2425. required:
  2426. - create
  2427. - passwordSecretRef
  2428. type: object
  2429. pkcs12:
  2430. description: PKCS12 configures options for storing a PKCS12 keystore
  2431. in the `spec.secretName` Secret resource.
  2432. properties:
  2433. create:
  2434. description: Create enables PKCS12 keystore creation for the
  2435. Certificate. If true, a file named `keystore.p12` will be
  2436. created in the target Secret resource, encrypted using the
  2437. password stored in `passwordSecretRef`. The keystore file
  2438. will only be updated upon re-issuance. A file named `truststore.p12`
  2439. will also be created in the target Secret resource, encrypted
  2440. using the password stored in `passwordSecretRef` containing
  2441. the issuing Certificate Authority
  2442. type: boolean
  2443. passwordSecretRef:
  2444. description: PasswordSecretRef is a reference to a key in
  2445. a Secret resource containing the password used to encrypt
  2446. the PKCS12 keystore.
  2447. properties:
  2448. key:
  2449. description: The key of the entry in the Secret resource's
  2450. `data` field to be used. Some instances of this field
  2451. may be defaulted, in others it may be required.
  2452. type: string
  2453. name:
  2454. description: 'Name of the resource being referred to.
  2455. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2456. type: string
  2457. required:
  2458. - name
  2459. type: object
  2460. required:
  2461. - create
  2462. - passwordSecretRef
  2463. type: object
  2464. type: object
  2465. privateKey:
  2466. description: Options to control private keys used for the Certificate.
  2467. properties:
  2468. algorithm:
  2469. description: Algorithm is the private key algorithm of the corresponding
  2470. private key for this certificate. If provided, allowed values
  2471. are either `RSA` or `ECDSA` If `algorithm` is specified and
  2472. `size` is not provided, key size of 256 will be used for `ECDSA`
  2473. key algorithm and key size of 2048 will be used for `RSA` key
  2474. algorithm.
  2475. enum:
  2476. - RSA
  2477. - ECDSA
  2478. type: string
  2479. encoding:
  2480. description: The private key cryptography standards (PKCS) encoding
  2481. for this certificate's private key to be encoded in. If provided,
  2482. allowed values are `PKCS1` and `PKCS8` standing for PKCS#1 and
  2483. PKCS#8, respectively. Defaults to `PKCS1` if not specified.
  2484. enum:
  2485. - PKCS1
  2486. - PKCS8
  2487. type: string
  2488. rotationPolicy:
  2489. description: RotationPolicy controls how private keys should be
  2490. regenerated when a re-issuance is being processed. If set to
  2491. Never, a private key will only be generated if one does not
  2492. already exist in the target `spec.secretName`. If one does exists
  2493. but it does not have the correct algorithm or size, a warning
  2494. will be raised to await user intervention. If set to Always,
  2495. a private key matching the specified requirements will be generated
  2496. whenever a re-issuance occurs. Default is 'Never' for backward
  2497. compatibility.
  2498. type: string
  2499. size:
  2500. description: Size is the key bit size of the corresponding private
  2501. key for this certificate. If `algorithm` is set to `RSA`, valid
  2502. values are `2048`, `4096` or `8192`, and will default to `2048`
  2503. if not specified. If `algorithm` is set to `ECDSA`, valid values
  2504. are `256`, `384` or `521`, and will default to `256` if not
  2505. specified. No other values are allowed.
  2506. type: integer
  2507. type: object
  2508. renewBefore:
  2509. description: The amount of time before the currently issued certificate's
  2510. `notAfter` time that cert-manager will begin to attempt to renew
  2511. the certificate. If unset this defaults to 30 days. If this value
  2512. is greater than the total duration of the certificate (i.e. notAfter
  2513. - notBefore), it will be automatically renewed 2/3rds of the way
  2514. through the certificate's duration.
  2515. type: string
  2516. revisionHistoryLimit:
  2517. description: revisionHistoryLimit is the maximum number of CertificateRequest
  2518. revisions that are maintained in the Certificate's history. Each
  2519. revision represents a single `CertificateRequest` created by this
  2520. Certificate, either when it was created, renewed, or Spec was changed.
  2521. Revisions will be removed by oldest first if the number of revisions
  2522. exceeds this number. If set, revisionHistoryLimit must be a value
  2523. of `1` or greater. If unset (`nil`), revisions will not be garbage
  2524. collected. Default value is `nil`.
  2525. format: int32
  2526. type: integer
  2527. secretName:
  2528. description: SecretName is the name of the secret resource that will
  2529. be automatically created and managed by this Certificate resource.
  2530. It will be populated with a private key and certificate, signed
  2531. by the denoted issuer.
  2532. type: string
  2533. subject:
  2534. description: Full X509 name specification (https://golang.org/pkg/crypto/x509/pkix/#Name).
  2535. properties:
  2536. countries:
  2537. description: Countries to be used on the Certificate.
  2538. items:
  2539. type: string
  2540. type: array
  2541. localities:
  2542. description: Cities to be used on the Certificate.
  2543. items:
  2544. type: string
  2545. type: array
  2546. organizationalUnits:
  2547. description: Organizational Units to be used on the Certificate.
  2548. items:
  2549. type: string
  2550. type: array
  2551. organizations:
  2552. description: Organizations to be used on the Certificate.
  2553. items:
  2554. type: string
  2555. type: array
  2556. postalCodes:
  2557. description: Postal codes to be used on the Certificate.
  2558. items:
  2559. type: string
  2560. type: array
  2561. provinces:
  2562. description: State/Provinces to be used on the Certificate.
  2563. items:
  2564. type: string
  2565. type: array
  2566. serialNumber:
  2567. description: Serial number to be used on the Certificate.
  2568. type: string
  2569. streetAddresses:
  2570. description: Street addresses to be used on the Certificate.
  2571. items:
  2572. type: string
  2573. type: array
  2574. type: object
  2575. uris:
  2576. description: URIs is a list of URI subjectAltNames to be set on the
  2577. Certificate.
  2578. items:
  2579. type: string
  2580. type: array
  2581. usages:
  2582. description: Usages is the set of x509 usages that are requested for
  2583. the certificate. Defaults to `digital signature` and `key encipherment`
  2584. if not specified.
  2585. items:
  2586. description: 'KeyUsage specifies valid usage contexts for keys.
  2587. See: https://tools.ietf.org/html/rfc5280#section-4.2.1.3 https://tools.ietf.org/html/rfc5280#section-4.2.1.12
  2588. Valid KeyUsage values are as follows: "signing", "digital signature",
  2589. "content commitment", "key encipherment", "key agreement", "data
  2590. encipherment", "cert sign", "crl sign", "encipher only", "decipher
  2591. only", "any", "server auth", "client auth", "code signing", "email
  2592. protection", "s/mime", "ipsec end system", "ipsec tunnel", "ipsec
  2593. user", "timestamping", "ocsp signing", "microsoft sgc", "netscape
  2594. sgc"'
  2595. enum:
  2596. - signing
  2597. - digital signature
  2598. - content commitment
  2599. - key encipherment
  2600. - key agreement
  2601. - data encipherment
  2602. - cert sign
  2603. - crl sign
  2604. - encipher only
  2605. - decipher only
  2606. - any
  2607. - server auth
  2608. - client auth
  2609. - code signing
  2610. - email protection
  2611. - s/mime
  2612. - ipsec end system
  2613. - ipsec tunnel
  2614. - ipsec user
  2615. - timestamping
  2616. - ocsp signing
  2617. - microsoft sgc
  2618. - netscape sgc
  2619. type: string
  2620. type: array
  2621. required:
  2622. - issuerRef
  2623. - secretName
  2624. type: object
  2625. status:
  2626. description: Status of the Certificate. This is set and managed automatically.
  2627. properties:
  2628. conditions:
  2629. description: List of status conditions to indicate the status of certificates.
  2630. Known condition types are `Ready` and `Issuing`.
  2631. items:
  2632. description: CertificateCondition contains condition information
  2633. for an Certificate.
  2634. properties:
  2635. lastTransitionTime:
  2636. description: LastTransitionTime is the timestamp corresponding
  2637. to the last status change of this condition.
  2638. format: date-time
  2639. type: string
  2640. message:
  2641. description: Message is a human readable description of the
  2642. details of the last transition, complementing reason.
  2643. type: string
  2644. observedGeneration:
  2645. description: If set, this represents the .metadata.generation
  2646. that the condition was set based upon. For instance, if .metadata.generation
  2647. is currently 12, but the .status.condition[x].observedGeneration
  2648. is 9, the condition is out of date with respect to the current
  2649. state of the Certificate.
  2650. format: int64
  2651. type: integer
  2652. reason:
  2653. description: Reason is a brief machine readable explanation
  2654. for the condition's last transition.
  2655. type: string
  2656. status:
  2657. description: Status of the condition, one of (`True`, `False`,
  2658. `Unknown`).
  2659. enum:
  2660. - "True"
  2661. - "False"
  2662. - Unknown
  2663. type: string
  2664. type:
  2665. description: Type of the condition, known values are (`Ready`,
  2666. `Issuing`).
  2667. type: string
  2668. required:
  2669. - status
  2670. - type
  2671. type: object
  2672. type: array
  2673. lastFailureTime:
  2674. description: LastFailureTime is the time as recorded by the Certificate
  2675. controller of the most recent failure to complete a CertificateRequest
  2676. for this Certificate resource. If set, cert-manager will not re-request
  2677. another Certificate until 1 hour has elapsed from this time.
  2678. format: date-time
  2679. type: string
  2680. nextPrivateKeySecretName:
  2681. description: The name of the Secret resource containing the private
  2682. key to be used for the next certificate iteration. The keymanager
  2683. controller will automatically set this field if the `Issuing` condition
  2684. is set to `True`. It will automatically unset this field when the
  2685. Issuing condition is not set or False.
  2686. type: string
  2687. notAfter:
  2688. description: The expiration time of the certificate stored in the
  2689. secret named by this resource in `spec.secretName`.
  2690. format: date-time
  2691. type: string
  2692. notBefore:
  2693. description: The time after which the certificate stored in the secret
  2694. named by this resource in spec.secretName is valid.
  2695. format: date-time
  2696. type: string
  2697. renewalTime:
  2698. description: RenewalTime is the time at which the certificate will
  2699. be next renewed. If not set, no upcoming renewal is scheduled.
  2700. format: date-time
  2701. type: string
  2702. revision:
  2703. description: "The current 'revision' of the certificate as issued.
  2704. \n When a CertificateRequest resource is created, it will have the
  2705. `cert-manager.io/certificate-revision` set to one greater than the
  2706. current value of this field. \n Upon issuance, this field will be
  2707. set to the value of the annotation on the CertificateRequest resource
  2708. used to issue the certificate. \n Persisting the value on the CertificateRequest
  2709. resource allows the certificates controller to know whether a request
  2710. is part of an old issuance or if it is part of the ongoing revision's
  2711. issuance by checking if the revision value in the annotation is
  2712. greater than this field."
  2713. type: integer
  2714. type: object
  2715. required:
  2716. - spec
  2717. type: object
  2718. served: true
  2719. storage: true
  2720. subresources:
  2721. status: {}
  2722. status:
  2723. acceptedNames:
  2724. kind: ""
  2725. plural: ""
  2726. conditions: []
  2727. storedVersions: []
  2728. ---
  2729. apiVersion: apiextensions.k8s.io/v1
  2730. kind: CustomResourceDefinition
  2731. metadata:
  2732. annotations:
  2733. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  2734. labels:
  2735. app: cert-manager
  2736. app.kubernetes.io/instance: cert-manager
  2737. app.kubernetes.io/name: cert-manager
  2738. name: challenges.acme.cert-manager.io
  2739. spec:
  2740. conversion:
  2741. strategy: Webhook
  2742. webhook:
  2743. clientConfig:
  2744. service:
  2745. name: cert-manager-webhook
  2746. namespace: cert-manager
  2747. path: /convert
  2748. conversionReviewVersions:
  2749. - v1
  2750. - v1beta1
  2751. group: acme.cert-manager.io
  2752. names:
  2753. categories:
  2754. - cert-manager
  2755. - cert-manager-acme
  2756. kind: Challenge
  2757. listKind: ChallengeList
  2758. plural: challenges
  2759. singular: challenge
  2760. scope: Namespaced
  2761. versions:
  2762. - additionalPrinterColumns:
  2763. - jsonPath: .status.state
  2764. name: State
  2765. type: string
  2766. - jsonPath: .spec.dnsName
  2767. name: Domain
  2768. type: string
  2769. - jsonPath: .status.reason
  2770. name: Reason
  2771. priority: 1
  2772. type: string
  2773. - description: CreationTimestamp is a timestamp representing the server time when
  2774. this object was created. It is not guaranteed to be set in happens-before
  2775. order across separate operations. Clients may not set this value. It is represented
  2776. in RFC3339 form and is in UTC.
  2777. jsonPath: .metadata.creationTimestamp
  2778. name: Age
  2779. type: date
  2780. name: v1alpha2
  2781. schema:
  2782. openAPIV3Schema:
  2783. description: Challenge is a type to represent a Challenge request with an
  2784. ACME server
  2785. properties:
  2786. apiVersion:
  2787. description: 'APIVersion defines the versioned schema of this representation
  2788. of an object. Servers should convert recognized schemas to the latest
  2789. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  2790. type: string
  2791. kind:
  2792. description: 'Kind is a string value representing the REST resource this
  2793. object represents. Servers may infer this from the endpoint the client
  2794. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  2795. type: string
  2796. metadata:
  2797. type: object
  2798. spec:
  2799. properties:
  2800. authzURL:
  2801. description: AuthzURL is the URL to the ACME Authorization resource
  2802. that this challenge is a part of.
  2803. type: string
  2804. dnsName:
  2805. description: DNSName is the identifier that this challenge is for,
  2806. e.g. example.com. If the requested DNSName is a 'wildcard', this
  2807. field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
  2808. it must be `example.com`.
  2809. type: string
  2810. issuerRef:
  2811. description: IssuerRef references a properly configured ACME-type
  2812. Issuer which should be used to create this Challenge. If the Issuer
  2813. does not exist, processing will be retried. If the Issuer is not
  2814. an 'ACME' Issuer, an error will be returned and the Challenge will
  2815. be marked as failed.
  2816. properties:
  2817. group:
  2818. description: Group of the resource being referred to.
  2819. type: string
  2820. kind:
  2821. description: Kind of the resource being referred to.
  2822. type: string
  2823. name:
  2824. description: Name of the resource being referred to.
  2825. type: string
  2826. required:
  2827. - name
  2828. type: object
  2829. key:
  2830. description: 'Key is the ACME challenge key for this challenge For
  2831. HTTP01 challenges, this is the value that must be responded with
  2832. to complete the HTTP01 challenge in the format: `<private key JWK
  2833. thumbprint>.<key from acme server for challenge>`. For DNS01 challenges,
  2834. this is the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
  2835. from acme server for challenge>` text that must be set as the TXT
  2836. record content.'
  2837. type: string
  2838. solver:
  2839. description: Solver contains the domain solving configuration that
  2840. should be used to solve this challenge resource.
  2841. properties:
  2842. dns01:
  2843. description: Configures cert-manager to attempt to complete authorizations
  2844. by performing the DNS01 challenge flow.
  2845. properties:
  2846. acmedns:
  2847. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  2848. API to manage DNS01 challenge records.
  2849. properties:
  2850. accountSecretRef:
  2851. description: A reference to a specific 'key' within a
  2852. Secret resource. In some instances, `key` is a required
  2853. field.
  2854. properties:
  2855. key:
  2856. description: The key of the entry in the Secret resource's
  2857. `data` field to be used. Some instances of this
  2858. field may be defaulted, in others it may be required.
  2859. type: string
  2860. name:
  2861. description: 'Name of the resource being referred
  2862. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2863. type: string
  2864. required:
  2865. - name
  2866. type: object
  2867. host:
  2868. type: string
  2869. required:
  2870. - accountSecretRef
  2871. - host
  2872. type: object
  2873. akamai:
  2874. description: Use the Akamai DNS zone management API to manage
  2875. DNS01 challenge records.
  2876. properties:
  2877. accessTokenSecretRef:
  2878. description: A reference to a specific 'key' within a
  2879. Secret resource. In some instances, `key` is a required
  2880. field.
  2881. properties:
  2882. key:
  2883. description: The key of the entry in the Secret resource's
  2884. `data` field to be used. Some instances of this
  2885. field may be defaulted, in others it may be required.
  2886. type: string
  2887. name:
  2888. description: 'Name of the resource being referred
  2889. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2890. type: string
  2891. required:
  2892. - name
  2893. type: object
  2894. clientSecretSecretRef:
  2895. description: A reference to a specific 'key' within a
  2896. Secret resource. In some instances, `key` is a required
  2897. field.
  2898. properties:
  2899. key:
  2900. description: The key of the entry in the Secret resource's
  2901. `data` field to be used. Some instances of this
  2902. field may be defaulted, in others it may be required.
  2903. type: string
  2904. name:
  2905. description: 'Name of the resource being referred
  2906. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2907. type: string
  2908. required:
  2909. - name
  2910. type: object
  2911. clientTokenSecretRef:
  2912. description: A reference to a specific 'key' within a
  2913. Secret resource. In some instances, `key` is a required
  2914. field.
  2915. properties:
  2916. key:
  2917. description: The key of the entry in the Secret resource's
  2918. `data` field to be used. Some instances of this
  2919. field may be defaulted, in others it may be required.
  2920. type: string
  2921. name:
  2922. description: 'Name of the resource being referred
  2923. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2924. type: string
  2925. required:
  2926. - name
  2927. type: object
  2928. serviceConsumerDomain:
  2929. type: string
  2930. required:
  2931. - accessTokenSecretRef
  2932. - clientSecretSecretRef
  2933. - clientTokenSecretRef
  2934. - serviceConsumerDomain
  2935. type: object
  2936. azuredns:
  2937. description: Use the Microsoft Azure DNS API to manage DNS01
  2938. challenge records.
  2939. properties:
  2940. clientID:
  2941. description: if both this and ClientSecret are left unset
  2942. MSI will be used
  2943. type: string
  2944. clientSecretSecretRef:
  2945. description: if both this and ClientID are left unset
  2946. MSI will be used
  2947. properties:
  2948. key:
  2949. description: The key of the entry in the Secret resource's
  2950. `data` field to be used. Some instances of this
  2951. field may be defaulted, in others it may be required.
  2952. type: string
  2953. name:
  2954. description: 'Name of the resource being referred
  2955. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  2956. type: string
  2957. required:
  2958. - name
  2959. type: object
  2960. environment:
  2961. enum:
  2962. - AzurePublicCloud
  2963. - AzureChinaCloud
  2964. - AzureGermanCloud
  2965. - AzureUSGovernmentCloud
  2966. type: string
  2967. hostedZoneName:
  2968. type: string
  2969. resourceGroupName:
  2970. type: string
  2971. subscriptionID:
  2972. type: string
  2973. tenantID:
  2974. description: when specifying ClientID and ClientSecret
  2975. then this field is also needed
  2976. type: string
  2977. required:
  2978. - resourceGroupName
  2979. - subscriptionID
  2980. type: object
  2981. clouddns:
  2982. description: Use the Google Cloud DNS API to manage DNS01
  2983. challenge records.
  2984. properties:
  2985. hostedZoneName:
  2986. description: HostedZoneName is an optional field that
  2987. tells cert-manager in which Cloud DNS zone the challenge
  2988. record has to be created. If left empty cert-manager
  2989. will automatically choose a zone.
  2990. type: string
  2991. project:
  2992. type: string
  2993. serviceAccountSecretRef:
  2994. description: A reference to a specific 'key' within a
  2995. Secret resource. In some instances, `key` is a required
  2996. field.
  2997. properties:
  2998. key:
  2999. description: The key of the entry in the Secret resource's
  3000. `data` field to be used. Some instances of this
  3001. field may be defaulted, in others it may be required.
  3002. type: string
  3003. name:
  3004. description: 'Name of the resource being referred
  3005. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  3006. type: string
  3007. required:
  3008. - name
  3009. type: object
  3010. required:
  3011. - project
  3012. type: object
  3013. cloudflare:
  3014. description: Use the Cloudflare API to manage DNS01 challenge
  3015. records.
  3016. properties:
  3017. apiKeySecretRef:
  3018. description: 'API key to use to authenticate with Cloudflare.
  3019. Note: using an API token to authenticate is now the
  3020. recommended method as it allows greater control of permissions.'
  3021. properties:
  3022. key:
  3023. description: The key of the entry in the Secret resource's
  3024. `data` field to be used. Some instances of this
  3025. field may be defaulted, in others it may be required.
  3026. type: string
  3027. name:
  3028. description: 'Name of the resource being referred
  3029. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  3030. type: string
  3031. required:
  3032. - name
  3033. type: object
  3034. apiTokenSecretRef:
  3035. description: API token used to authenticate with Cloudflare.
  3036. properties:
  3037. key:
  3038. description: The key of the entry in the Secret resource's
  3039. `data` field to be used. Some instances of this
  3040. field may be defaulted, in others it may be required.
  3041. type: string
  3042. name:
  3043. description: 'Name of the resource being referred
  3044. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  3045. type: string
  3046. required:
  3047. - name
  3048. type: object
  3049. email:
  3050. description: Email of the account, only required when
  3051. using API key based authentication.
  3052. type: string
  3053. type: object
  3054. cnameStrategy:
  3055. description: CNAMEStrategy configures how the DNS01 provider
  3056. should handle CNAME records when found in DNS zones.
  3057. enum:
  3058. - None
  3059. - Follow
  3060. type: string
  3061. digitalocean:
  3062. description: Use the DigitalOcean DNS API to manage DNS01
  3063. challenge records.
  3064. properties:
  3065. tokenSecretRef:
  3066. description: A reference to a specific 'key' within a
  3067. Secret resource. In some instances, `key` is a required
  3068. field.
  3069. properties:
  3070. key:
  3071. description: The key of the entry in the Secret resource's
  3072. `data` field to be used. Some instances of this
  3073. field may be defaulted, in others it may be required.
  3074. type: string
  3075. name:
  3076. description: 'Name of the resource being referred
  3077. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  3078. type: string
  3079. required:
  3080. - name
  3081. type: object
  3082. required:
  3083. - tokenSecretRef
  3084. type: object
  3085. rfc2136:
  3086. description: Use RFC2136 ("Dynamic Updates in the Domain Name
  3087. System") (https://datatracker.ietf.org/doc/rfc2136/) to
  3088. manage DNS01 challenge records.
  3089. properties:
  3090. nameserver:
  3091. description: The IP address or hostname of an authoritative
  3092. DNS server supporting RFC2136 in the form host:port.
  3093. If the host is an IPv6 address it must be enclosed in
  3094. square brackets (e.g [2001:db8::1]) ; port is optional.
  3095. This field is required.
  3096. type: string
  3097. tsigAlgorithm:
  3098. description: 'The TSIG Algorithm configured in the DNS
  3099. supporting RFC2136. Used only when ``tsigSecretSecretRef``
  3100. and ``tsigKeyName`` are defined. Supported values are
  3101. (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``,
  3102. ``HMACSHA256`` or ``HMACSHA512``.'
  3103. type: string
  3104. tsigKeyName:
  3105. description: The TSIG Key name configured in the DNS.
  3106. If ``tsigSecretSecretRef`` is defined, this field is
  3107. required.
  3108. type: string
  3109. tsigSecretSecretRef:
  3110. description: The name of the secret containing the TSIG
  3111. value. If ``tsigKeyName`` is defined, this field is
  3112. required.
  3113. properties:
  3114. key:
  3115. description: The key of the entry in the Secret resource's
  3116. `data` field to be used. Some instances of this
  3117. field may be defaulted, in others it may be required.
  3118. type: string
  3119. name:
  3120. description: 'Name of the resource being referred
  3121. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  3122. type: string
  3123. required:
  3124. - name
  3125. type: object
  3126. required:
  3127. - nameserver
  3128. type: object
  3129. route53:
  3130. description: Use the AWS Route53 API to manage DNS01 challenge
  3131. records.
  3132. properties:
  3133. accessKeyID:
  3134. description: 'The AccessKeyID is used for authentication.
  3135. If not set we fall-back to using env vars, shared credentials
  3136. file or AWS Instance metadata see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  3137. type: string
  3138. hostedZoneID:
  3139. description: If set, the provider will manage only this
  3140. zone in Route53 and will not do an lookup using the
  3141. route53:ListHostedZonesByName api call.
  3142. type: string
  3143. region:
  3144. description: Always set the region when using AccessKeyID
  3145. and SecretAccessKey
  3146. type: string
  3147. role:
  3148. description: Role is a Role ARN which the Route53 provider
  3149. will assume using either the explicit credentials AccessKeyID/SecretAccessKey
  3150. or the inferred credentials from environment variables,
  3151. shared credentials file or AWS Instance metadata
  3152. type: string
  3153. secretAccessKeySecretRef:
  3154. description: The SecretAccessKey is used for authentication.
  3155. If not set we fall-back to using env vars, shared credentials
  3156. file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  3157. properties:
  3158. key:
  3159. description: The key of the entry in the Secret resource's
  3160. `data` field to be used. Some instances of this
  3161. field may be defaulted, in others it may be required.
  3162. type: string
  3163. name:
  3164. description: 'Name of the resource being referred
  3165. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  3166. type: string
  3167. required:
  3168. - name
  3169. type: object
  3170. required:
  3171. - region
  3172. type: object
  3173. webhook:
  3174. description: Configure an external webhook based DNS01 challenge
  3175. solver to manage DNS01 challenge records.
  3176. properties:
  3177. config:
  3178. description: Additional configuration that should be passed
  3179. to the webhook apiserver when challenges are processed.
  3180. This can contain arbitrary JSON data. Secret values
  3181. should not be specified in this stanza. If secret values
  3182. are needed (e.g. credentials for a DNS service), you
  3183. should use a SecretKeySelector to reference a Secret
  3184. resource. For details on the schema of this field, consult
  3185. the webhook provider implementation's documentation.
  3186. x-kubernetes-preserve-unknown-fields: true
  3187. groupName:
  3188. description: The API group name that should be used when
  3189. POSTing ChallengePayload resources to the webhook apiserver.
  3190. This should be the same as the GroupName specified in
  3191. the webhook provider implementation.
  3192. type: string
  3193. solverName:
  3194. description: The name of the solver to use, as defined
  3195. in the webhook provider implementation. This will typically
  3196. be the name of the provider, e.g. 'cloudflare'.
  3197. type: string
  3198. required:
  3199. - groupName
  3200. - solverName
  3201. type: object
  3202. type: object
  3203. http01:
  3204. description: Configures cert-manager to attempt to complete authorizations
  3205. by performing the HTTP01 challenge flow. It is not possible
  3206. to obtain certificates for wildcard domain names (e.g. `*.example.com`)
  3207. using the HTTP01 challenge mechanism.
  3208. properties:
  3209. ingress:
  3210. description: The ingress based HTTP01 challenge solver will
  3211. solve challenges by creating or modifying Ingress resources
  3212. in order to route requests for '/.well-known/acme-challenge/XYZ'
  3213. to 'challenge solver' pods that are provisioned by cert-manager
  3214. for each Challenge to be completed.
  3215. properties:
  3216. class:
  3217. description: The ingress class to use when creating Ingress
  3218. resources to solve ACME challenges that use this challenge
  3219. solver. Only one of 'class' or 'name' may be specified.
  3220. type: string
  3221. ingressTemplate:
  3222. description: Optional ingress template used to configure
  3223. the ACME challenge solver ingress used for HTTP01 challenges
  3224. properties:
  3225. metadata:
  3226. description: ObjectMeta overrides for the ingress
  3227. used to solve HTTP01 challenges. Only the 'labels'
  3228. and 'annotations' fields may be set. If labels or
  3229. annotations overlap with in-built values, the values
  3230. here will override the in-built values.
  3231. properties:
  3232. annotations:
  3233. additionalProperties:
  3234. type: string
  3235. description: Annotations that should be added
  3236. to the created ACME HTTP01 solver ingress.
  3237. type: object
  3238. labels:
  3239. additionalProperties:
  3240. type: string
  3241. description: Labels that should be added to the
  3242. created ACME HTTP01 solver ingress.
  3243. type: object
  3244. type: object
  3245. type: object
  3246. name:
  3247. description: The name of the ingress resource that should
  3248. have ACME challenge solving routes inserted into it
  3249. in order to solve HTTP01 challenges. This is typically
  3250. used in conjunction with ingress controllers like ingress-gce,
  3251. which maintains a 1:1 mapping between external IPs and
  3252. ingress resources.
  3253. type: string
  3254. podTemplate:
  3255. description: Optional pod template used to configure the
  3256. ACME challenge solver pods used for HTTP01 challenges
  3257. properties:
  3258. metadata:
  3259. description: ObjectMeta overrides for the pod used
  3260. to solve HTTP01 challenges. Only the 'labels' and
  3261. 'annotations' fields may be set. If labels or annotations
  3262. overlap with in-built values, the values here will
  3263. override the in-built values.
  3264. properties:
  3265. annotations:
  3266. additionalProperties:
  3267. type: string
  3268. description: Annotations that should be added
  3269. to the create ACME HTTP01 solver pods.
  3270. type: object
  3271. labels:
  3272. additionalProperties:
  3273. type: string
  3274. description: Labels that should be added to the
  3275. created ACME HTTP01 solver pods.
  3276. type: object
  3277. type: object
  3278. spec:
  3279. description: PodSpec defines overrides for the HTTP01
  3280. challenge solver pod. Only the 'priorityClassName',
  3281. 'nodeSelector', 'affinity', 'serviceAccountName'
  3282. and 'tolerations' fields are supported currently.
  3283. All other fields will be ignored.
  3284. properties:
  3285. affinity:
  3286. description: If specified, the pod's scheduling
  3287. constraints
  3288. properties:
  3289. nodeAffinity:
  3290. description: Describes node affinity scheduling
  3291. rules for the pod.
  3292. properties:
  3293. preferredDuringSchedulingIgnoredDuringExecution:
  3294. description: The scheduler will prefer
  3295. to schedule pods to nodes that satisfy
  3296. the affinity expressions specified by
  3297. this field, but it may choose a node
  3298. that violates one or more of the expressions.
  3299. The node that is most preferred is the
  3300. one with the greatest sum of weights,
  3301. i.e. for each node that meets all of
  3302. the scheduling requirements (resource
  3303. request, requiredDuringScheduling affinity
  3304. expressions, etc.), compute a sum by
  3305. iterating through the elements of this
  3306. field and adding "weight" to the sum
  3307. if the node matches the corresponding
  3308. matchExpressions; the node(s) with the
  3309. highest sum are the most preferred.
  3310. items:
  3311. description: An empty preferred scheduling
  3312. term matches all objects with implicit
  3313. weight 0 (i.e. it's a no-op). A null
  3314. preferred scheduling term matches
  3315. no objects (i.e. is also a no-op).
  3316. properties:
  3317. preference:
  3318. description: A node selector term,
  3319. associated with the corresponding
  3320. weight.
  3321. properties:
  3322. matchExpressions:
  3323. description: A list of node
  3324. selector requirements by node's
  3325. labels.
  3326. items:
  3327. description: A node selector
  3328. requirement is a selector
  3329. that contains values, a
  3330. key, and an operator that
  3331. relates the key and values.
  3332. properties:
  3333. key:
  3334. description: The label
  3335. key that the selector
  3336. applies to.
  3337. type: string
  3338. operator:
  3339. description: Represents
  3340. a key's relationship
  3341. to a set of values.
  3342. Valid operators are
  3343. In, NotIn, Exists, DoesNotExist.
  3344. Gt, and Lt.
  3345. type: string
  3346. values:
  3347. description: An array
  3348. of string values. If
  3349. the operator is In or
  3350. NotIn, the values array
  3351. must be non-empty. If
  3352. the operator is Exists
  3353. or DoesNotExist, the
  3354. values array must be
  3355. empty. If the operator
  3356. is Gt or Lt, the values
  3357. array must have a single
  3358. element, which will
  3359. be interpreted as an
  3360. integer. This array
  3361. is replaced during a
  3362. strategic merge patch.
  3363. items:
  3364. type: string
  3365. type: array
  3366. required:
  3367. - key
  3368. - operator
  3369. type: object
  3370. type: array
  3371. matchFields:
  3372. description: A list of node
  3373. selector requirements by node's
  3374. fields.
  3375. items:
  3376. description: A node selector
  3377. requirement is a selector
  3378. that contains values, a
  3379. key, and an operator that
  3380. relates the key and values.
  3381. properties:
  3382. key:
  3383. description: The label
  3384. key that the selector
  3385. applies to.
  3386. type: string
  3387. operator:
  3388. description: Represents
  3389. a key's relationship
  3390. to a set of values.
  3391. Valid operators are
  3392. In, NotIn, Exists, DoesNotExist.
  3393. Gt, and Lt.
  3394. type: string
  3395. values:
  3396. description: An array
  3397. of string values. If
  3398. the operator is In or
  3399. NotIn, the values array
  3400. must be non-empty. If
  3401. the operator is Exists
  3402. or DoesNotExist, the
  3403. values array must be
  3404. empty. If the operator
  3405. is Gt or Lt, the values
  3406. array must have a single
  3407. element, which will
  3408. be interpreted as an
  3409. integer. This array
  3410. is replaced during a
  3411. strategic merge patch.
  3412. items:
  3413. type: string
  3414. type: array
  3415. required:
  3416. - key
  3417. - operator
  3418. type: object
  3419. type: array
  3420. type: object
  3421. weight:
  3422. description: Weight associated with
  3423. matching the corresponding nodeSelectorTerm,
  3424. in the range 1-100.
  3425. format: int32
  3426. type: integer
  3427. required:
  3428. - preference
  3429. - weight
  3430. type: object
  3431. type: array
  3432. requiredDuringSchedulingIgnoredDuringExecution:
  3433. description: If the affinity requirements
  3434. specified by this field are not met
  3435. at scheduling time, the pod will not
  3436. be scheduled onto the node. If the affinity
  3437. requirements specified by this field
  3438. cease to be met at some point during
  3439. pod execution (e.g. due to an update),
  3440. the system may or may not try to eventually
  3441. evict the pod from its node.
  3442. properties:
  3443. nodeSelectorTerms:
  3444. description: Required. A list of node
  3445. selector terms. The terms are ORed.
  3446. items:
  3447. description: A null or empty node
  3448. selector term matches no objects.
  3449. The requirements of them are ANDed.
  3450. The TopologySelectorTerm type
  3451. implements a subset of the NodeSelectorTerm.
  3452. properties:
  3453. matchExpressions:
  3454. description: A list of node
  3455. selector requirements by node's
  3456. labels.
  3457. items:
  3458. description: A node selector
  3459. requirement is a selector
  3460. that contains values, a
  3461. key, and an operator that
  3462. relates the key and values.
  3463. properties:
  3464. key:
  3465. description: The label
  3466. key that the selector
  3467. applies to.
  3468. type: string
  3469. operator:
  3470. description: Represents
  3471. a key's relationship
  3472. to a set of values.
  3473. Valid operators are
  3474. In, NotIn, Exists, DoesNotExist.
  3475. Gt, and Lt.
  3476. type: string
  3477. values:
  3478. description: An array
  3479. of string values. If
  3480. the operator is In or
  3481. NotIn, the values array
  3482. must be non-empty. If
  3483. the operator is Exists
  3484. or DoesNotExist, the
  3485. values array must be
  3486. empty. If the operator
  3487. is Gt or Lt, the values
  3488. array must have a single
  3489. element, which will
  3490. be interpreted as an
  3491. integer. This array
  3492. is replaced during a
  3493. strategic merge patch.
  3494. items:
  3495. type: string
  3496. type: array
  3497. required:
  3498. - key
  3499. - operator
  3500. type: object
  3501. type: array
  3502. matchFields:
  3503. description: A list of node
  3504. selector requirements by node's
  3505. fields.
  3506. items:
  3507. description: A node selector
  3508. requirement is a selector
  3509. that contains values, a
  3510. key, and an operator that
  3511. relates the key and values.
  3512. properties:
  3513. key:
  3514. description: The label
  3515. key that the selector
  3516. applies to.
  3517. type: string
  3518. operator:
  3519. description: Represents
  3520. a key's relationship
  3521. to a set of values.
  3522. Valid operators are
  3523. In, NotIn, Exists, DoesNotExist.
  3524. Gt, and Lt.
  3525. type: string
  3526. values:
  3527. description: An array
  3528. of string values. If
  3529. the operator is In or
  3530. NotIn, the values array
  3531. must be non-empty. If
  3532. the operator is Exists
  3533. or DoesNotExist, the
  3534. values array must be
  3535. empty. If the operator
  3536. is Gt or Lt, the values
  3537. array must have a single
  3538. element, which will
  3539. be interpreted as an
  3540. integer. This array
  3541. is replaced during a
  3542. strategic merge patch.
  3543. items:
  3544. type: string
  3545. type: array
  3546. required:
  3547. - key
  3548. - operator
  3549. type: object
  3550. type: array
  3551. type: object
  3552. type: array
  3553. required:
  3554. - nodeSelectorTerms
  3555. type: object
  3556. type: object
  3557. podAffinity:
  3558. description: Describes pod affinity scheduling
  3559. rules (e.g. co-locate this pod in the same
  3560. node, zone, etc. as some other pod(s)).
  3561. properties:
  3562. preferredDuringSchedulingIgnoredDuringExecution:
  3563. description: The scheduler will prefer
  3564. to schedule pods to nodes that satisfy
  3565. the affinity expressions specified by
  3566. this field, but it may choose a node
  3567. that violates one or more of the expressions.
  3568. The node that is most preferred is the
  3569. one with the greatest sum of weights,
  3570. i.e. for each node that meets all of
  3571. the scheduling requirements (resource
  3572. request, requiredDuringScheduling affinity
  3573. expressions, etc.), compute a sum by
  3574. iterating through the elements of this
  3575. field and adding "weight" to the sum
  3576. if the node has pods which matches the
  3577. corresponding podAffinityTerm; the node(s)
  3578. with the highest sum are the most preferred.
  3579. items:
  3580. description: The weights of all of the
  3581. matched WeightedPodAffinityTerm fields
  3582. are added per-node to find the most
  3583. preferred node(s)
  3584. properties:
  3585. podAffinityTerm:
  3586. description: Required. A pod affinity
  3587. term, associated with the corresponding
  3588. weight.
  3589. properties:
  3590. labelSelector:
  3591. description: A label query over
  3592. a set of resources, in this
  3593. case pods.
  3594. properties:
  3595. matchExpressions:
  3596. description: matchExpressions
  3597. is a list of label selector
  3598. requirements. The requirements
  3599. are ANDed.
  3600. items:
  3601. description: A label selector
  3602. requirement is a selector
  3603. that contains values,
  3604. a key, and an operator
  3605. that relates the key
  3606. and values.
  3607. properties:
  3608. key:
  3609. description: key is
  3610. the label key that
  3611. the selector applies
  3612. to.
  3613. type: string
  3614. operator:
  3615. description: operator
  3616. represents a key's
  3617. relationship to
  3618. a set of values.
  3619. Valid operators
  3620. are In, NotIn, Exists
  3621. and DoesNotExist.
  3622. type: string
  3623. values:
  3624. description: values
  3625. is an array of string
  3626. values. If the operator
  3627. is In or NotIn,
  3628. the values array
  3629. must be non-empty.
  3630. If the operator
  3631. is Exists or DoesNotExist,
  3632. the values array
  3633. must be empty. This
  3634. array is replaced
  3635. during a strategic
  3636. merge patch.
  3637. items:
  3638. type: string
  3639. type: array
  3640. required:
  3641. - key
  3642. - operator
  3643. type: object
  3644. type: array
  3645. matchLabels:
  3646. additionalProperties:
  3647. type: string
  3648. description: matchLabels
  3649. is a map of {key,value}
  3650. pairs. A single {key,value}
  3651. in the matchLabels map
  3652. is equivalent to an element
  3653. of matchExpressions, whose
  3654. key field is "key", the
  3655. operator is "In", and
  3656. the values array contains
  3657. only "value". The requirements
  3658. are ANDed.
  3659. type: object
  3660. type: object
  3661. namespaces:
  3662. description: namespaces specifies
  3663. which namespaces the labelSelector
  3664. applies to (matches against);
  3665. null or empty list means "this
  3666. pod's namespace"
  3667. items:
  3668. type: string
  3669. type: array
  3670. topologyKey:
  3671. description: This pod should
  3672. be co-located (affinity) or
  3673. not co-located (anti-affinity)
  3674. with the pods matching the
  3675. labelSelector in the specified
  3676. namespaces, where co-located
  3677. is defined as running on a
  3678. node whose value of the label
  3679. with key topologyKey matches
  3680. that of any node on which
  3681. any of the selected pods is
  3682. running. Empty topologyKey
  3683. is not allowed.
  3684. type: string
  3685. required:
  3686. - topologyKey
  3687. type: object
  3688. weight:
  3689. description: weight associated with
  3690. matching the corresponding podAffinityTerm,
  3691. in the range 1-100.
  3692. format: int32
  3693. type: integer
  3694. required:
  3695. - podAffinityTerm
  3696. - weight
  3697. type: object
  3698. type: array
  3699. requiredDuringSchedulingIgnoredDuringExecution:
  3700. description: If the affinity requirements
  3701. specified by this field are not met
  3702. at scheduling time, the pod will not
  3703. be scheduled onto the node. If the affinity
  3704. requirements specified by this field
  3705. cease to be met at some point during
  3706. pod execution (e.g. due to a pod label
  3707. update), the system may or may not try
  3708. to eventually evict the pod from its
  3709. node. When there are multiple elements,
  3710. the lists of nodes corresponding to
  3711. each podAffinityTerm are intersected,
  3712. i.e. all terms must be satisfied.
  3713. items:
  3714. description: Defines a set of pods (namely
  3715. those matching the labelSelector relative
  3716. to the given namespace(s)) that this
  3717. pod should be co-located (affinity)
  3718. or not co-located (anti-affinity)
  3719. with, where co-located is defined
  3720. as running on a node whose value of
  3721. the label with key <topologyKey> matches
  3722. that of any node on which a pod of
  3723. the set of pods is running
  3724. properties:
  3725. labelSelector:
  3726. description: A label query over
  3727. a set of resources, in this case
  3728. pods.
  3729. properties:
  3730. matchExpressions:
  3731. description: matchExpressions
  3732. is a list of label selector
  3733. requirements. The requirements
  3734. are ANDed.
  3735. items:
  3736. description: A label selector
  3737. requirement is a selector
  3738. that contains values, a
  3739. key, and an operator that
  3740. relates the key and values.
  3741. properties:
  3742. key:
  3743. description: key is the
  3744. label key that the selector
  3745. applies to.
  3746. type: string
  3747. operator:
  3748. description: operator
  3749. represents a key's relationship
  3750. to a set of values.
  3751. Valid operators are
  3752. In, NotIn, Exists and
  3753. DoesNotExist.
  3754. type: string
  3755. values:
  3756. description: values is
  3757. an array of string values.
  3758. If the operator is In
  3759. or NotIn, the values
  3760. array must be non-empty.
  3761. If the operator is Exists
  3762. or DoesNotExist, the
  3763. values array must be
  3764. empty. This array is
  3765. replaced during a strategic
  3766. merge patch.
  3767. items:
  3768. type: string
  3769. type: array
  3770. required:
  3771. - key
  3772. - operator
  3773. type: object
  3774. type: array
  3775. matchLabels:
  3776. additionalProperties:
  3777. type: string
  3778. description: matchLabels is
  3779. a map of {key,value} pairs.
  3780. A single {key,value} in the
  3781. matchLabels map is equivalent
  3782. to an element of matchExpressions,
  3783. whose key field is "key",
  3784. the operator is "In", and
  3785. the values array contains
  3786. only "value". The requirements
  3787. are ANDed.
  3788. type: object
  3789. type: object
  3790. namespaces:
  3791. description: namespaces specifies
  3792. which namespaces the labelSelector
  3793. applies to (matches against);
  3794. null or empty list means "this
  3795. pod's namespace"
  3796. items:
  3797. type: string
  3798. type: array
  3799. topologyKey:
  3800. description: This pod should be
  3801. co-located (affinity) or not co-located
  3802. (anti-affinity) with the pods
  3803. matching the labelSelector in
  3804. the specified namespaces, where
  3805. co-located is defined as running
  3806. on a node whose value of the label
  3807. with key topologyKey matches that
  3808. of any node on which any of the
  3809. selected pods is running. Empty
  3810. topologyKey is not allowed.
  3811. type: string
  3812. required:
  3813. - topologyKey
  3814. type: object
  3815. type: array
  3816. type: object
  3817. podAntiAffinity:
  3818. description: Describes pod anti-affinity scheduling
  3819. rules (e.g. avoid putting this pod in the
  3820. same node, zone, etc. as some other pod(s)).
  3821. properties:
  3822. preferredDuringSchedulingIgnoredDuringExecution:
  3823. description: The scheduler will prefer
  3824. to schedule pods to nodes that satisfy
  3825. the anti-affinity expressions specified
  3826. by this field, but it may choose a node
  3827. that violates one or more of the expressions.
  3828. The node that is most preferred is the
  3829. one with the greatest sum of weights,
  3830. i.e. for each node that meets all of
  3831. the scheduling requirements (resource
  3832. request, requiredDuringScheduling anti-affinity
  3833. expressions, etc.), compute a sum by
  3834. iterating through the elements of this
  3835. field and adding "weight" to the sum
  3836. if the node has pods which matches the
  3837. corresponding podAffinityTerm; the node(s)
  3838. with the highest sum are the most preferred.
  3839. items:
  3840. description: The weights of all of the
  3841. matched WeightedPodAffinityTerm fields
  3842. are added per-node to find the most
  3843. preferred node(s)
  3844. properties:
  3845. podAffinityTerm:
  3846. description: Required. A pod affinity
  3847. term, associated with the corresponding
  3848. weight.
  3849. properties:
  3850. labelSelector:
  3851. description: A label query over
  3852. a set of resources, in this
  3853. case pods.
  3854. properties:
  3855. matchExpressions:
  3856. description: matchExpressions
  3857. is a list of label selector
  3858. requirements. The requirements
  3859. are ANDed.
  3860. items:
  3861. description: A label selector
  3862. requirement is a selector
  3863. that contains values,
  3864. a key, and an operator
  3865. that relates the key
  3866. and values.
  3867. properties:
  3868. key:
  3869. description: key is
  3870. the label key that
  3871. the selector applies
  3872. to.
  3873. type: string
  3874. operator:
  3875. description: operator
  3876. represents a key's
  3877. relationship to
  3878. a set of values.
  3879. Valid operators
  3880. are In, NotIn, Exists
  3881. and DoesNotExist.
  3882. type: string
  3883. values:
  3884. description: values
  3885. is an array of string
  3886. values. If the operator
  3887. is In or NotIn,
  3888. the values array
  3889. must be non-empty.
  3890. If the operator
  3891. is Exists or DoesNotExist,
  3892. the values array
  3893. must be empty. This
  3894. array is replaced
  3895. during a strategic
  3896. merge patch.
  3897. items:
  3898. type: string
  3899. type: array
  3900. required:
  3901. - key
  3902. - operator
  3903. type: object
  3904. type: array
  3905. matchLabels:
  3906. additionalProperties:
  3907. type: string
  3908. description: matchLabels
  3909. is a map of {key,value}
  3910. pairs. A single {key,value}
  3911. in the matchLabels map
  3912. is equivalent to an element
  3913. of matchExpressions, whose
  3914. key field is "key", the
  3915. operator is "In", and
  3916. the values array contains
  3917. only "value". The requirements
  3918. are ANDed.
  3919. type: object
  3920. type: object
  3921. namespaces:
  3922. description: namespaces specifies
  3923. which namespaces the labelSelector
  3924. applies to (matches against);
  3925. null or empty list means "this
  3926. pod's namespace"
  3927. items:
  3928. type: string
  3929. type: array
  3930. topologyKey:
  3931. description: This pod should
  3932. be co-located (affinity) or
  3933. not co-located (anti-affinity)
  3934. with the pods matching the
  3935. labelSelector in the specified
  3936. namespaces, where co-located
  3937. is defined as running on a
  3938. node whose value of the label
  3939. with key topologyKey matches
  3940. that of any node on which
  3941. any of the selected pods is
  3942. running. Empty topologyKey
  3943. is not allowed.
  3944. type: string
  3945. required:
  3946. - topologyKey
  3947. type: object
  3948. weight:
  3949. description: weight associated with
  3950. matching the corresponding podAffinityTerm,
  3951. in the range 1-100.
  3952. format: int32
  3953. type: integer
  3954. required:
  3955. - podAffinityTerm
  3956. - weight
  3957. type: object
  3958. type: array
  3959. requiredDuringSchedulingIgnoredDuringExecution:
  3960. description: If the anti-affinity requirements
  3961. specified by this field are not met
  3962. at scheduling time, the pod will not
  3963. be scheduled onto the node. If the anti-affinity
  3964. requirements specified by this field
  3965. cease to be met at some point during
  3966. pod execution (e.g. due to a pod label
  3967. update), the system may or may not try
  3968. to eventually evict the pod from its
  3969. node. When there are multiple elements,
  3970. the lists of nodes corresponding to
  3971. each podAffinityTerm are intersected,
  3972. i.e. all terms must be satisfied.
  3973. items:
  3974. description: Defines a set of pods (namely
  3975. those matching the labelSelector relative
  3976. to the given namespace(s)) that this
  3977. pod should be co-located (affinity)
  3978. or not co-located (anti-affinity)
  3979. with, where co-located is defined
  3980. as running on a node whose value of
  3981. the label with key <topologyKey> matches
  3982. that of any node on which a pod of
  3983. the set of pods is running
  3984. properties:
  3985. labelSelector:
  3986. description: A label query over
  3987. a set of resources, in this case
  3988. pods.
  3989. properties:
  3990. matchExpressions:
  3991. description: matchExpressions
  3992. is a list of label selector
  3993. requirements. The requirements
  3994. are ANDed.
  3995. items:
  3996. description: A label selector
  3997. requirement is a selector
  3998. that contains values, a
  3999. key, and an operator that
  4000. relates the key and values.
  4001. properties:
  4002. key:
  4003. description: key is the
  4004. label key that the selector
  4005. applies to.
  4006. type: string
  4007. operator:
  4008. description: operator
  4009. represents a key's relationship
  4010. to a set of values.
  4011. Valid operators are
  4012. In, NotIn, Exists and
  4013. DoesNotExist.
  4014. type: string
  4015. values:
  4016. description: values is
  4017. an array of string values.
  4018. If the operator is In
  4019. or NotIn, the values
  4020. array must be non-empty.
  4021. If the operator is Exists
  4022. or DoesNotExist, the
  4023. values array must be
  4024. empty. This array is
  4025. replaced during a strategic
  4026. merge patch.
  4027. items:
  4028. type: string
  4029. type: array
  4030. required:
  4031. - key
  4032. - operator
  4033. type: object
  4034. type: array
  4035. matchLabels:
  4036. additionalProperties:
  4037. type: string
  4038. description: matchLabels is
  4039. a map of {key,value} pairs.
  4040. A single {key,value} in the
  4041. matchLabels map is equivalent
  4042. to an element of matchExpressions,
  4043. whose key field is "key",
  4044. the operator is "In", and
  4045. the values array contains
  4046. only "value". The requirements
  4047. are ANDed.
  4048. type: object
  4049. type: object
  4050. namespaces:
  4051. description: namespaces specifies
  4052. which namespaces the labelSelector
  4053. applies to (matches against);
  4054. null or empty list means "this
  4055. pod's namespace"
  4056. items:
  4057. type: string
  4058. type: array
  4059. topologyKey:
  4060. description: This pod should be
  4061. co-located (affinity) or not co-located
  4062. (anti-affinity) with the pods
  4063. matching the labelSelector in
  4064. the specified namespaces, where
  4065. co-located is defined as running
  4066. on a node whose value of the label
  4067. with key topologyKey matches that
  4068. of any node on which any of the
  4069. selected pods is running. Empty
  4070. topologyKey is not allowed.
  4071. type: string
  4072. required:
  4073. - topologyKey
  4074. type: object
  4075. type: array
  4076. type: object
  4077. type: object
  4078. nodeSelector:
  4079. additionalProperties:
  4080. type: string
  4081. description: 'NodeSelector is a selector which
  4082. must be true for the pod to fit on a node. Selector
  4083. which must match a node''s labels for the pod
  4084. to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  4085. type: object
  4086. priorityClassName:
  4087. description: If specified, the pod's priorityClassName.
  4088. type: string
  4089. serviceAccountName:
  4090. description: If specified, the pod's service account
  4091. type: string
  4092. tolerations:
  4093. description: If specified, the pod's tolerations.
  4094. items:
  4095. description: The pod this Toleration is attached
  4096. to tolerates any taint that matches the triple
  4097. <key,value,effect> using the matching operator
  4098. <operator>.
  4099. properties:
  4100. effect:
  4101. description: Effect indicates the taint
  4102. effect to match. Empty means match all
  4103. taint effects. When specified, allowed
  4104. values are NoSchedule, PreferNoSchedule
  4105. and NoExecute.
  4106. type: string
  4107. key:
  4108. description: Key is the taint key that the
  4109. toleration applies to. Empty means match
  4110. all taint keys. If the key is empty, operator
  4111. must be Exists; this combination means
  4112. to match all values and all keys.
  4113. type: string
  4114. operator:
  4115. description: Operator represents a key's
  4116. relationship to the value. Valid operators
  4117. are Exists and Equal. Defaults to Equal.
  4118. Exists is equivalent to wildcard for value,
  4119. so that a pod can tolerate all taints
  4120. of a particular category.
  4121. type: string
  4122. tolerationSeconds:
  4123. description: TolerationSeconds represents
  4124. the period of time the toleration (which
  4125. must be of effect NoExecute, otherwise
  4126. this field is ignored) tolerates the taint.
  4127. By default, it is not set, which means
  4128. tolerate the taint forever (do not evict).
  4129. Zero and negative values will be treated
  4130. as 0 (evict immediately) by the system.
  4131. format: int64
  4132. type: integer
  4133. value:
  4134. description: Value is the taint value the
  4135. toleration matches to. If the operator
  4136. is Exists, the value should be empty,
  4137. otherwise just a regular string.
  4138. type: string
  4139. type: object
  4140. type: array
  4141. type: object
  4142. type: object
  4143. serviceType:
  4144. description: Optional service type for Kubernetes solver
  4145. service
  4146. type: string
  4147. type: object
  4148. type: object
  4149. selector:
  4150. description: Selector selects a set of DNSNames on the Certificate
  4151. resource that should be solved using this challenge solver.
  4152. If not specified, the solver will be treated as the 'default'
  4153. solver with the lowest priority, i.e. if any other solver has
  4154. a more specific match, it will be used instead.
  4155. properties:
  4156. dnsNames:
  4157. description: List of DNSNames that this solver will be used
  4158. to solve. If specified and a match is found, a dnsNames
  4159. selector will take precedence over a dnsZones selector.
  4160. If multiple solvers match with the same dnsNames value,
  4161. the solver with the most matching labels in matchLabels
  4162. will be selected. If neither has more matches, the solver
  4163. defined earlier in the list will be selected.
  4164. items:
  4165. type: string
  4166. type: array
  4167. dnsZones:
  4168. description: List of DNSZones that this solver will be used
  4169. to solve. The most specific DNS zone match specified here
  4170. will take precedence over other DNS zone matches, so a solver
  4171. specifying sys.example.com will be selected over one specifying
  4172. example.com for the domain www.sys.example.com. If multiple
  4173. solvers match with the same dnsZones value, the solver with
  4174. the most matching labels in matchLabels will be selected.
  4175. If neither has more matches, the solver defined earlier
  4176. in the list will be selected.
  4177. items:
  4178. type: string
  4179. type: array
  4180. matchLabels:
  4181. additionalProperties:
  4182. type: string
  4183. description: A label selector that is used to refine the set
  4184. of certificate's that this challenge solver will apply to.
  4185. type: object
  4186. type: object
  4187. type: object
  4188. token:
  4189. description: Token is the ACME challenge token for this challenge.
  4190. This is the raw value returned from the ACME server.
  4191. type: string
  4192. type:
  4193. description: Type is the type of ACME challenge this resource represents.
  4194. One of "http-01" or "dns-01".
  4195. enum:
  4196. - http-01
  4197. - dns-01
  4198. type: string
  4199. url:
  4200. description: URL is the URL of the ACME Challenge resource for this
  4201. challenge. This can be used to lookup details about the status of
  4202. this challenge.
  4203. type: string
  4204. wildcard:
  4205. description: Wildcard will be true if this challenge is for a wildcard
  4206. identifier, for example '*.example.com'.
  4207. type: boolean
  4208. required:
  4209. - authzURL
  4210. - dnsName
  4211. - issuerRef
  4212. - key
  4213. - solver
  4214. - token
  4215. - type
  4216. - url
  4217. type: object
  4218. status:
  4219. properties:
  4220. presented:
  4221. description: Presented will be set to true if the challenge values
  4222. for this challenge are currently 'presented'. This *does not* imply
  4223. the self check is passing. Only that the values have been 'submitted'
  4224. for the appropriate challenge mechanism (i.e. the DNS01 TXT record
  4225. has been presented, or the HTTP01 configuration has been configured).
  4226. type: boolean
  4227. processing:
  4228. description: Processing is used to denote whether this challenge should
  4229. be processed or not. This field will only be set to true by the
  4230. 'scheduling' component. It will only be set to false by the 'challenges'
  4231. controller, after the challenge has reached a final state or timed
  4232. out. If this field is set to false, the challenge controller will
  4233. not take any more action.
  4234. type: boolean
  4235. reason:
  4236. description: Reason contains human readable information on why the
  4237. Challenge is in the current state.
  4238. type: string
  4239. state:
  4240. description: State contains the current 'state' of the challenge.
  4241. If not set, the state of the challenge is unknown.
  4242. enum:
  4243. - valid
  4244. - ready
  4245. - pending
  4246. - processing
  4247. - invalid
  4248. - expired
  4249. - errored
  4250. type: string
  4251. type: object
  4252. required:
  4253. - metadata
  4254. type: object
  4255. served: true
  4256. storage: false
  4257. subresources:
  4258. status: {}
  4259. - additionalPrinterColumns:
  4260. - jsonPath: .status.state
  4261. name: State
  4262. type: string
  4263. - jsonPath: .spec.dnsName
  4264. name: Domain
  4265. type: string
  4266. - jsonPath: .status.reason
  4267. name: Reason
  4268. priority: 1
  4269. type: string
  4270. - description: CreationTimestamp is a timestamp representing the server time when
  4271. this object was created. It is not guaranteed to be set in happens-before
  4272. order across separate operations. Clients may not set this value. It is represented
  4273. in RFC3339 form and is in UTC.
  4274. jsonPath: .metadata.creationTimestamp
  4275. name: Age
  4276. type: date
  4277. name: v1alpha3
  4278. schema:
  4279. openAPIV3Schema:
  4280. description: Challenge is a type to represent a Challenge request with an
  4281. ACME server
  4282. properties:
  4283. apiVersion:
  4284. description: 'APIVersion defines the versioned schema of this representation
  4285. of an object. Servers should convert recognized schemas to the latest
  4286. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  4287. type: string
  4288. kind:
  4289. description: 'Kind is a string value representing the REST resource this
  4290. object represents. Servers may infer this from the endpoint the client
  4291. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  4292. type: string
  4293. metadata:
  4294. type: object
  4295. spec:
  4296. properties:
  4297. authzURL:
  4298. description: AuthzURL is the URL to the ACME Authorization resource
  4299. that this challenge is a part of.
  4300. type: string
  4301. dnsName:
  4302. description: DNSName is the identifier that this challenge is for,
  4303. e.g. example.com. If the requested DNSName is a 'wildcard', this
  4304. field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
  4305. it must be `example.com`.
  4306. type: string
  4307. issuerRef:
  4308. description: IssuerRef references a properly configured ACME-type
  4309. Issuer which should be used to create this Challenge. If the Issuer
  4310. does not exist, processing will be retried. If the Issuer is not
  4311. an 'ACME' Issuer, an error will be returned and the Challenge will
  4312. be marked as failed.
  4313. properties:
  4314. group:
  4315. description: Group of the resource being referred to.
  4316. type: string
  4317. kind:
  4318. description: Kind of the resource being referred to.
  4319. type: string
  4320. name:
  4321. description: Name of the resource being referred to.
  4322. type: string
  4323. required:
  4324. - name
  4325. type: object
  4326. key:
  4327. description: 'Key is the ACME challenge key for this challenge For
  4328. HTTP01 challenges, this is the value that must be responded with
  4329. to complete the HTTP01 challenge in the format: `<private key JWK
  4330. thumbprint>.<key from acme server for challenge>`. For DNS01 challenges,
  4331. this is the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
  4332. from acme server for challenge>` text that must be set as the TXT
  4333. record content.'
  4334. type: string
  4335. solver:
  4336. description: Solver contains the domain solving configuration that
  4337. should be used to solve this challenge resource.
  4338. properties:
  4339. dns01:
  4340. description: Configures cert-manager to attempt to complete authorizations
  4341. by performing the DNS01 challenge flow.
  4342. properties:
  4343. acmedns:
  4344. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  4345. API to manage DNS01 challenge records.
  4346. properties:
  4347. accountSecretRef:
  4348. description: A reference to a specific 'key' within a
  4349. Secret resource. In some instances, `key` is a required
  4350. field.
  4351. properties:
  4352. key:
  4353. description: The key of the entry in the Secret resource's
  4354. `data` field to be used. Some instances of this
  4355. field may be defaulted, in others it may be required.
  4356. type: string
  4357. name:
  4358. description: 'Name of the resource being referred
  4359. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4360. type: string
  4361. required:
  4362. - name
  4363. type: object
  4364. host:
  4365. type: string
  4366. required:
  4367. - accountSecretRef
  4368. - host
  4369. type: object
  4370. akamai:
  4371. description: Use the Akamai DNS zone management API to manage
  4372. DNS01 challenge records.
  4373. properties:
  4374. accessTokenSecretRef:
  4375. description: A reference to a specific 'key' within a
  4376. Secret resource. In some instances, `key` is a required
  4377. field.
  4378. properties:
  4379. key:
  4380. description: The key of the entry in the Secret resource's
  4381. `data` field to be used. Some instances of this
  4382. field may be defaulted, in others it may be required.
  4383. type: string
  4384. name:
  4385. description: 'Name of the resource being referred
  4386. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4387. type: string
  4388. required:
  4389. - name
  4390. type: object
  4391. clientSecretSecretRef:
  4392. description: A reference to a specific 'key' within a
  4393. Secret resource. In some instances, `key` is a required
  4394. field.
  4395. properties:
  4396. key:
  4397. description: The key of the entry in the Secret resource's
  4398. `data` field to be used. Some instances of this
  4399. field may be defaulted, in others it may be required.
  4400. type: string
  4401. name:
  4402. description: 'Name of the resource being referred
  4403. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4404. type: string
  4405. required:
  4406. - name
  4407. type: object
  4408. clientTokenSecretRef:
  4409. description: A reference to a specific 'key' within a
  4410. Secret resource. In some instances, `key` is a required
  4411. field.
  4412. properties:
  4413. key:
  4414. description: The key of the entry in the Secret resource's
  4415. `data` field to be used. Some instances of this
  4416. field may be defaulted, in others it may be required.
  4417. type: string
  4418. name:
  4419. description: 'Name of the resource being referred
  4420. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4421. type: string
  4422. required:
  4423. - name
  4424. type: object
  4425. serviceConsumerDomain:
  4426. type: string
  4427. required:
  4428. - accessTokenSecretRef
  4429. - clientSecretSecretRef
  4430. - clientTokenSecretRef
  4431. - serviceConsumerDomain
  4432. type: object
  4433. azuredns:
  4434. description: Use the Microsoft Azure DNS API to manage DNS01
  4435. challenge records.
  4436. properties:
  4437. clientID:
  4438. description: if both this and ClientSecret are left unset
  4439. MSI will be used
  4440. type: string
  4441. clientSecretSecretRef:
  4442. description: if both this and ClientID are left unset
  4443. MSI will be used
  4444. properties:
  4445. key:
  4446. description: The key of the entry in the Secret resource's
  4447. `data` field to be used. Some instances of this
  4448. field may be defaulted, in others it may be required.
  4449. type: string
  4450. name:
  4451. description: 'Name of the resource being referred
  4452. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4453. type: string
  4454. required:
  4455. - name
  4456. type: object
  4457. environment:
  4458. enum:
  4459. - AzurePublicCloud
  4460. - AzureChinaCloud
  4461. - AzureGermanCloud
  4462. - AzureUSGovernmentCloud
  4463. type: string
  4464. hostedZoneName:
  4465. type: string
  4466. resourceGroupName:
  4467. type: string
  4468. subscriptionID:
  4469. type: string
  4470. tenantID:
  4471. description: when specifying ClientID and ClientSecret
  4472. then this field is also needed
  4473. type: string
  4474. required:
  4475. - resourceGroupName
  4476. - subscriptionID
  4477. type: object
  4478. clouddns:
  4479. description: Use the Google Cloud DNS API to manage DNS01
  4480. challenge records.
  4481. properties:
  4482. hostedZoneName:
  4483. description: HostedZoneName is an optional field that
  4484. tells cert-manager in which Cloud DNS zone the challenge
  4485. record has to be created. If left empty cert-manager
  4486. will automatically choose a zone.
  4487. type: string
  4488. project:
  4489. type: string
  4490. serviceAccountSecretRef:
  4491. description: A reference to a specific 'key' within a
  4492. Secret resource. In some instances, `key` is a required
  4493. field.
  4494. properties:
  4495. key:
  4496. description: The key of the entry in the Secret resource's
  4497. `data` field to be used. Some instances of this
  4498. field may be defaulted, in others it may be required.
  4499. type: string
  4500. name:
  4501. description: 'Name of the resource being referred
  4502. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4503. type: string
  4504. required:
  4505. - name
  4506. type: object
  4507. required:
  4508. - project
  4509. type: object
  4510. cloudflare:
  4511. description: Use the Cloudflare API to manage DNS01 challenge
  4512. records.
  4513. properties:
  4514. apiKeySecretRef:
  4515. description: 'API key to use to authenticate with Cloudflare.
  4516. Note: using an API token to authenticate is now the
  4517. recommended method as it allows greater control of permissions.'
  4518. properties:
  4519. key:
  4520. description: The key of the entry in the Secret resource's
  4521. `data` field to be used. Some instances of this
  4522. field may be defaulted, in others it may be required.
  4523. type: string
  4524. name:
  4525. description: 'Name of the resource being referred
  4526. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4527. type: string
  4528. required:
  4529. - name
  4530. type: object
  4531. apiTokenSecretRef:
  4532. description: API token used to authenticate with Cloudflare.
  4533. properties:
  4534. key:
  4535. description: The key of the entry in the Secret resource's
  4536. `data` field to be used. Some instances of this
  4537. field may be defaulted, in others it may be required.
  4538. type: string
  4539. name:
  4540. description: 'Name of the resource being referred
  4541. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4542. type: string
  4543. required:
  4544. - name
  4545. type: object
  4546. email:
  4547. description: Email of the account, only required when
  4548. using API key based authentication.
  4549. type: string
  4550. type: object
  4551. cnameStrategy:
  4552. description: CNAMEStrategy configures how the DNS01 provider
  4553. should handle CNAME records when found in DNS zones.
  4554. enum:
  4555. - None
  4556. - Follow
  4557. type: string
  4558. digitalocean:
  4559. description: Use the DigitalOcean DNS API to manage DNS01
  4560. challenge records.
  4561. properties:
  4562. tokenSecretRef:
  4563. description: A reference to a specific 'key' within a
  4564. Secret resource. In some instances, `key` is a required
  4565. field.
  4566. properties:
  4567. key:
  4568. description: The key of the entry in the Secret resource's
  4569. `data` field to be used. Some instances of this
  4570. field may be defaulted, in others it may be required.
  4571. type: string
  4572. name:
  4573. description: 'Name of the resource being referred
  4574. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4575. type: string
  4576. required:
  4577. - name
  4578. type: object
  4579. required:
  4580. - tokenSecretRef
  4581. type: object
  4582. rfc2136:
  4583. description: Use RFC2136 ("Dynamic Updates in the Domain Name
  4584. System") (https://datatracker.ietf.org/doc/rfc2136/) to
  4585. manage DNS01 challenge records.
  4586. properties:
  4587. nameserver:
  4588. description: The IP address or hostname of an authoritative
  4589. DNS server supporting RFC2136 in the form host:port.
  4590. If the host is an IPv6 address it must be enclosed in
  4591. square brackets (e.g [2001:db8::1]) ; port is optional.
  4592. This field is required.
  4593. type: string
  4594. tsigAlgorithm:
  4595. description: 'The TSIG Algorithm configured in the DNS
  4596. supporting RFC2136. Used only when ``tsigSecretSecretRef``
  4597. and ``tsigKeyName`` are defined. Supported values are
  4598. (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``,
  4599. ``HMACSHA256`` or ``HMACSHA512``.'
  4600. type: string
  4601. tsigKeyName:
  4602. description: The TSIG Key name configured in the DNS.
  4603. If ``tsigSecretSecretRef`` is defined, this field is
  4604. required.
  4605. type: string
  4606. tsigSecretSecretRef:
  4607. description: The name of the secret containing the TSIG
  4608. value. If ``tsigKeyName`` is defined, this field is
  4609. required.
  4610. properties:
  4611. key:
  4612. description: The key of the entry in the Secret resource's
  4613. `data` field to be used. Some instances of this
  4614. field may be defaulted, in others it may be required.
  4615. type: string
  4616. name:
  4617. description: 'Name of the resource being referred
  4618. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4619. type: string
  4620. required:
  4621. - name
  4622. type: object
  4623. required:
  4624. - nameserver
  4625. type: object
  4626. route53:
  4627. description: Use the AWS Route53 API to manage DNS01 challenge
  4628. records.
  4629. properties:
  4630. accessKeyID:
  4631. description: 'The AccessKeyID is used for authentication.
  4632. If not set we fall-back to using env vars, shared credentials
  4633. file or AWS Instance metadata see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  4634. type: string
  4635. hostedZoneID:
  4636. description: If set, the provider will manage only this
  4637. zone in Route53 and will not do an lookup using the
  4638. route53:ListHostedZonesByName api call.
  4639. type: string
  4640. region:
  4641. description: Always set the region when using AccessKeyID
  4642. and SecretAccessKey
  4643. type: string
  4644. role:
  4645. description: Role is a Role ARN which the Route53 provider
  4646. will assume using either the explicit credentials AccessKeyID/SecretAccessKey
  4647. or the inferred credentials from environment variables,
  4648. shared credentials file or AWS Instance metadata
  4649. type: string
  4650. secretAccessKeySecretRef:
  4651. description: The SecretAccessKey is used for authentication.
  4652. If not set we fall-back to using env vars, shared credentials
  4653. file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  4654. properties:
  4655. key:
  4656. description: The key of the entry in the Secret resource's
  4657. `data` field to be used. Some instances of this
  4658. field may be defaulted, in others it may be required.
  4659. type: string
  4660. name:
  4661. description: 'Name of the resource being referred
  4662. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  4663. type: string
  4664. required:
  4665. - name
  4666. type: object
  4667. required:
  4668. - region
  4669. type: object
  4670. webhook:
  4671. description: Configure an external webhook based DNS01 challenge
  4672. solver to manage DNS01 challenge records.
  4673. properties:
  4674. config:
  4675. description: Additional configuration that should be passed
  4676. to the webhook apiserver when challenges are processed.
  4677. This can contain arbitrary JSON data. Secret values
  4678. should not be specified in this stanza. If secret values
  4679. are needed (e.g. credentials for a DNS service), you
  4680. should use a SecretKeySelector to reference a Secret
  4681. resource. For details on the schema of this field, consult
  4682. the webhook provider implementation's documentation.
  4683. x-kubernetes-preserve-unknown-fields: true
  4684. groupName:
  4685. description: The API group name that should be used when
  4686. POSTing ChallengePayload resources to the webhook apiserver.
  4687. This should be the same as the GroupName specified in
  4688. the webhook provider implementation.
  4689. type: string
  4690. solverName:
  4691. description: The name of the solver to use, as defined
  4692. in the webhook provider implementation. This will typically
  4693. be the name of the provider, e.g. 'cloudflare'.
  4694. type: string
  4695. required:
  4696. - groupName
  4697. - solverName
  4698. type: object
  4699. type: object
  4700. http01:
  4701. description: Configures cert-manager to attempt to complete authorizations
  4702. by performing the HTTP01 challenge flow. It is not possible
  4703. to obtain certificates for wildcard domain names (e.g. `*.example.com`)
  4704. using the HTTP01 challenge mechanism.
  4705. properties:
  4706. ingress:
  4707. description: The ingress based HTTP01 challenge solver will
  4708. solve challenges by creating or modifying Ingress resources
  4709. in order to route requests for '/.well-known/acme-challenge/XYZ'
  4710. to 'challenge solver' pods that are provisioned by cert-manager
  4711. for each Challenge to be completed.
  4712. properties:
  4713. class:
  4714. description: The ingress class to use when creating Ingress
  4715. resources to solve ACME challenges that use this challenge
  4716. solver. Only one of 'class' or 'name' may be specified.
  4717. type: string
  4718. ingressTemplate:
  4719. description: Optional ingress template used to configure
  4720. the ACME challenge solver ingress used for HTTP01 challenges
  4721. properties:
  4722. metadata:
  4723. description: ObjectMeta overrides for the ingress
  4724. used to solve HTTP01 challenges. Only the 'labels'
  4725. and 'annotations' fields may be set. If labels or
  4726. annotations overlap with in-built values, the values
  4727. here will override the in-built values.
  4728. properties:
  4729. annotations:
  4730. additionalProperties:
  4731. type: string
  4732. description: Annotations that should be added
  4733. to the created ACME HTTP01 solver ingress.
  4734. type: object
  4735. labels:
  4736. additionalProperties:
  4737. type: string
  4738. description: Labels that should be added to the
  4739. created ACME HTTP01 solver ingress.
  4740. type: object
  4741. type: object
  4742. type: object
  4743. name:
  4744. description: The name of the ingress resource that should
  4745. have ACME challenge solving routes inserted into it
  4746. in order to solve HTTP01 challenges. This is typically
  4747. used in conjunction with ingress controllers like ingress-gce,
  4748. which maintains a 1:1 mapping between external IPs and
  4749. ingress resources.
  4750. type: string
  4751. podTemplate:
  4752. description: Optional pod template used to configure the
  4753. ACME challenge solver pods used for HTTP01 challenges
  4754. properties:
  4755. metadata:
  4756. description: ObjectMeta overrides for the pod used
  4757. to solve HTTP01 challenges. Only the 'labels' and
  4758. 'annotations' fields may be set. If labels or annotations
  4759. overlap with in-built values, the values here will
  4760. override the in-built values.
  4761. properties:
  4762. annotations:
  4763. additionalProperties:
  4764. type: string
  4765. description: Annotations that should be added
  4766. to the create ACME HTTP01 solver pods.
  4767. type: object
  4768. labels:
  4769. additionalProperties:
  4770. type: string
  4771. description: Labels that should be added to the
  4772. created ACME HTTP01 solver pods.
  4773. type: object
  4774. type: object
  4775. spec:
  4776. description: PodSpec defines overrides for the HTTP01
  4777. challenge solver pod. Only the 'priorityClassName',
  4778. 'nodeSelector', 'affinity', 'serviceAccountName'
  4779. and 'tolerations' fields are supported currently.
  4780. All other fields will be ignored.
  4781. properties:
  4782. affinity:
  4783. description: If specified, the pod's scheduling
  4784. constraints
  4785. properties:
  4786. nodeAffinity:
  4787. description: Describes node affinity scheduling
  4788. rules for the pod.
  4789. properties:
  4790. preferredDuringSchedulingIgnoredDuringExecution:
  4791. description: The scheduler will prefer
  4792. to schedule pods to nodes that satisfy
  4793. the affinity expressions specified by
  4794. this field, but it may choose a node
  4795. that violates one or more of the expressions.
  4796. The node that is most preferred is the
  4797. one with the greatest sum of weights,
  4798. i.e. for each node that meets all of
  4799. the scheduling requirements (resource
  4800. request, requiredDuringScheduling affinity
  4801. expressions, etc.), compute a sum by
  4802. iterating through the elements of this
  4803. field and adding "weight" to the sum
  4804. if the node matches the corresponding
  4805. matchExpressions; the node(s) with the
  4806. highest sum are the most preferred.
  4807. items:
  4808. description: An empty preferred scheduling
  4809. term matches all objects with implicit
  4810. weight 0 (i.e. it's a no-op). A null
  4811. preferred scheduling term matches
  4812. no objects (i.e. is also a no-op).
  4813. properties:
  4814. preference:
  4815. description: A node selector term,
  4816. associated with the corresponding
  4817. weight.
  4818. properties:
  4819. matchExpressions:
  4820. description: A list of node
  4821. selector requirements by node's
  4822. labels.
  4823. items:
  4824. description: A node selector
  4825. requirement is a selector
  4826. that contains values, a
  4827. key, and an operator that
  4828. relates the key and values.
  4829. properties:
  4830. key:
  4831. description: The label
  4832. key that the selector
  4833. applies to.
  4834. type: string
  4835. operator:
  4836. description: Represents
  4837. a key's relationship
  4838. to a set of values.
  4839. Valid operators are
  4840. In, NotIn, Exists, DoesNotExist.
  4841. Gt, and Lt.
  4842. type: string
  4843. values:
  4844. description: An array
  4845. of string values. If
  4846. the operator is In or
  4847. NotIn, the values array
  4848. must be non-empty. If
  4849. the operator is Exists
  4850. or DoesNotExist, the
  4851. values array must be
  4852. empty. If the operator
  4853. is Gt or Lt, the values
  4854. array must have a single
  4855. element, which will
  4856. be interpreted as an
  4857. integer. This array
  4858. is replaced during a
  4859. strategic merge patch.
  4860. items:
  4861. type: string
  4862. type: array
  4863. required:
  4864. - key
  4865. - operator
  4866. type: object
  4867. type: array
  4868. matchFields:
  4869. description: A list of node
  4870. selector requirements by node's
  4871. fields.
  4872. items:
  4873. description: A node selector
  4874. requirement is a selector
  4875. that contains values, a
  4876. key, and an operator that
  4877. relates the key and values.
  4878. properties:
  4879. key:
  4880. description: The label
  4881. key that the selector
  4882. applies to.
  4883. type: string
  4884. operator:
  4885. description: Represents
  4886. a key's relationship
  4887. to a set of values.
  4888. Valid operators are
  4889. In, NotIn, Exists, DoesNotExist.
  4890. Gt, and Lt.
  4891. type: string
  4892. values:
  4893. description: An array
  4894. of string values. If
  4895. the operator is In or
  4896. NotIn, the values array
  4897. must be non-empty. If
  4898. the operator is Exists
  4899. or DoesNotExist, the
  4900. values array must be
  4901. empty. If the operator
  4902. is Gt or Lt, the values
  4903. array must have a single
  4904. element, which will
  4905. be interpreted as an
  4906. integer. This array
  4907. is replaced during a
  4908. strategic merge patch.
  4909. items:
  4910. type: string
  4911. type: array
  4912. required:
  4913. - key
  4914. - operator
  4915. type: object
  4916. type: array
  4917. type: object
  4918. weight:
  4919. description: Weight associated with
  4920. matching the corresponding nodeSelectorTerm,
  4921. in the range 1-100.
  4922. format: int32
  4923. type: integer
  4924. required:
  4925. - preference
  4926. - weight
  4927. type: object
  4928. type: array
  4929. requiredDuringSchedulingIgnoredDuringExecution:
  4930. description: If the affinity requirements
  4931. specified by this field are not met
  4932. at scheduling time, the pod will not
  4933. be scheduled onto the node. If the affinity
  4934. requirements specified by this field
  4935. cease to be met at some point during
  4936. pod execution (e.g. due to an update),
  4937. the system may or may not try to eventually
  4938. evict the pod from its node.
  4939. properties:
  4940. nodeSelectorTerms:
  4941. description: Required. A list of node
  4942. selector terms. The terms are ORed.
  4943. items:
  4944. description: A null or empty node
  4945. selector term matches no objects.
  4946. The requirements of them are ANDed.
  4947. The TopologySelectorTerm type
  4948. implements a subset of the NodeSelectorTerm.
  4949. properties:
  4950. matchExpressions:
  4951. description: A list of node
  4952. selector requirements by node's
  4953. labels.
  4954. items:
  4955. description: A node selector
  4956. requirement is a selector
  4957. that contains values, a
  4958. key, and an operator that
  4959. relates the key and values.
  4960. properties:
  4961. key:
  4962. description: The label
  4963. key that the selector
  4964. applies to.
  4965. type: string
  4966. operator:
  4967. description: Represents
  4968. a key's relationship
  4969. to a set of values.
  4970. Valid operators are
  4971. In, NotIn, Exists, DoesNotExist.
  4972. Gt, and Lt.
  4973. type: string
  4974. values:
  4975. description: An array
  4976. of string values. If
  4977. the operator is In or
  4978. NotIn, the values array
  4979. must be non-empty. If
  4980. the operator is Exists
  4981. or DoesNotExist, the
  4982. values array must be
  4983. empty. If the operator
  4984. is Gt or Lt, the values
  4985. array must have a single
  4986. element, which will
  4987. be interpreted as an
  4988. integer. This array
  4989. is replaced during a
  4990. strategic merge patch.
  4991. items:
  4992. type: string
  4993. type: array
  4994. required:
  4995. - key
  4996. - operator
  4997. type: object
  4998. type: array
  4999. matchFields:
  5000. description: A list of node
  5001. selector requirements by node's
  5002. fields.
  5003. items:
  5004. description: A node selector
  5005. requirement is a selector
  5006. that contains values, a
  5007. key, and an operator that
  5008. relates the key and values.
  5009. properties:
  5010. key:
  5011. description: The label
  5012. key that the selector
  5013. applies to.
  5014. type: string
  5015. operator:
  5016. description: Represents
  5017. a key's relationship
  5018. to a set of values.
  5019. Valid operators are
  5020. In, NotIn, Exists, DoesNotExist.
  5021. Gt, and Lt.
  5022. type: string
  5023. values:
  5024. description: An array
  5025. of string values. If
  5026. the operator is In or
  5027. NotIn, the values array
  5028. must be non-empty. If
  5029. the operator is Exists
  5030. or DoesNotExist, the
  5031. values array must be
  5032. empty. If the operator
  5033. is Gt or Lt, the values
  5034. array must have a single
  5035. element, which will
  5036. be interpreted as an
  5037. integer. This array
  5038. is replaced during a
  5039. strategic merge patch.
  5040. items:
  5041. type: string
  5042. type: array
  5043. required:
  5044. - key
  5045. - operator
  5046. type: object
  5047. type: array
  5048. type: object
  5049. type: array
  5050. required:
  5051. - nodeSelectorTerms
  5052. type: object
  5053. type: object
  5054. podAffinity:
  5055. description: Describes pod affinity scheduling
  5056. rules (e.g. co-locate this pod in the same
  5057. node, zone, etc. as some other pod(s)).
  5058. properties:
  5059. preferredDuringSchedulingIgnoredDuringExecution:
  5060. description: The scheduler will prefer
  5061. to schedule pods to nodes that satisfy
  5062. the affinity expressions specified by
  5063. this field, but it may choose a node
  5064. that violates one or more of the expressions.
  5065. The node that is most preferred is the
  5066. one with the greatest sum of weights,
  5067. i.e. for each node that meets all of
  5068. the scheduling requirements (resource
  5069. request, requiredDuringScheduling affinity
  5070. expressions, etc.), compute a sum by
  5071. iterating through the elements of this
  5072. field and adding "weight" to the sum
  5073. if the node has pods which matches the
  5074. corresponding podAffinityTerm; the node(s)
  5075. with the highest sum are the most preferred.
  5076. items:
  5077. description: The weights of all of the
  5078. matched WeightedPodAffinityTerm fields
  5079. are added per-node to find the most
  5080. preferred node(s)
  5081. properties:
  5082. podAffinityTerm:
  5083. description: Required. A pod affinity
  5084. term, associated with the corresponding
  5085. weight.
  5086. properties:
  5087. labelSelector:
  5088. description: A label query over
  5089. a set of resources, in this
  5090. case pods.
  5091. properties:
  5092. matchExpressions:
  5093. description: matchExpressions
  5094. is a list of label selector
  5095. requirements. The requirements
  5096. are ANDed.
  5097. items:
  5098. description: A label selector
  5099. requirement is a selector
  5100. that contains values,
  5101. a key, and an operator
  5102. that relates the key
  5103. and values.
  5104. properties:
  5105. key:
  5106. description: key is
  5107. the label key that
  5108. the selector applies
  5109. to.
  5110. type: string
  5111. operator:
  5112. description: operator
  5113. represents a key's
  5114. relationship to
  5115. a set of values.
  5116. Valid operators
  5117. are In, NotIn, Exists
  5118. and DoesNotExist.
  5119. type: string
  5120. values:
  5121. description: values
  5122. is an array of string
  5123. values. If the operator
  5124. is In or NotIn,
  5125. the values array
  5126. must be non-empty.
  5127. If the operator
  5128. is Exists or DoesNotExist,
  5129. the values array
  5130. must be empty. This
  5131. array is replaced
  5132. during a strategic
  5133. merge patch.
  5134. items:
  5135. type: string
  5136. type: array
  5137. required:
  5138. - key
  5139. - operator
  5140. type: object
  5141. type: array
  5142. matchLabels:
  5143. additionalProperties:
  5144. type: string
  5145. description: matchLabels
  5146. is a map of {key,value}
  5147. pairs. A single {key,value}
  5148. in the matchLabels map
  5149. is equivalent to an element
  5150. of matchExpressions, whose
  5151. key field is "key", the
  5152. operator is "In", and
  5153. the values array contains
  5154. only "value". The requirements
  5155. are ANDed.
  5156. type: object
  5157. type: object
  5158. namespaces:
  5159. description: namespaces specifies
  5160. which namespaces the labelSelector
  5161. applies to (matches against);
  5162. null or empty list means "this
  5163. pod's namespace"
  5164. items:
  5165. type: string
  5166. type: array
  5167. topologyKey:
  5168. description: This pod should
  5169. be co-located (affinity) or
  5170. not co-located (anti-affinity)
  5171. with the pods matching the
  5172. labelSelector in the specified
  5173. namespaces, where co-located
  5174. is defined as running on a
  5175. node whose value of the label
  5176. with key topologyKey matches
  5177. that of any node on which
  5178. any of the selected pods is
  5179. running. Empty topologyKey
  5180. is not allowed.
  5181. type: string
  5182. required:
  5183. - topologyKey
  5184. type: object
  5185. weight:
  5186. description: weight associated with
  5187. matching the corresponding podAffinityTerm,
  5188. in the range 1-100.
  5189. format: int32
  5190. type: integer
  5191. required:
  5192. - podAffinityTerm
  5193. - weight
  5194. type: object
  5195. type: array
  5196. requiredDuringSchedulingIgnoredDuringExecution:
  5197. description: If the affinity requirements
  5198. specified by this field are not met
  5199. at scheduling time, the pod will not
  5200. be scheduled onto the node. If the affinity
  5201. requirements specified by this field
  5202. cease to be met at some point during
  5203. pod execution (e.g. due to a pod label
  5204. update), the system may or may not try
  5205. to eventually evict the pod from its
  5206. node. When there are multiple elements,
  5207. the lists of nodes corresponding to
  5208. each podAffinityTerm are intersected,
  5209. i.e. all terms must be satisfied.
  5210. items:
  5211. description: Defines a set of pods (namely
  5212. those matching the labelSelector relative
  5213. to the given namespace(s)) that this
  5214. pod should be co-located (affinity)
  5215. or not co-located (anti-affinity)
  5216. with, where co-located is defined
  5217. as running on a node whose value of
  5218. the label with key <topologyKey> matches
  5219. that of any node on which a pod of
  5220. the set of pods is running
  5221. properties:
  5222. labelSelector:
  5223. description: A label query over
  5224. a set of resources, in this case
  5225. pods.
  5226. properties:
  5227. matchExpressions:
  5228. description: matchExpressions
  5229. is a list of label selector
  5230. requirements. The requirements
  5231. are ANDed.
  5232. items:
  5233. description: A label selector
  5234. requirement is a selector
  5235. that contains values, a
  5236. key, and an operator that
  5237. relates the key and values.
  5238. properties:
  5239. key:
  5240. description: key is the
  5241. label key that the selector
  5242. applies to.
  5243. type: string
  5244. operator:
  5245. description: operator
  5246. represents a key's relationship
  5247. to a set of values.
  5248. Valid operators are
  5249. In, NotIn, Exists and
  5250. DoesNotExist.
  5251. type: string
  5252. values:
  5253. description: values is
  5254. an array of string values.
  5255. If the operator is In
  5256. or NotIn, the values
  5257. array must be non-empty.
  5258. If the operator is Exists
  5259. or DoesNotExist, the
  5260. values array must be
  5261. empty. This array is
  5262. replaced during a strategic
  5263. merge patch.
  5264. items:
  5265. type: string
  5266. type: array
  5267. required:
  5268. - key
  5269. - operator
  5270. type: object
  5271. type: array
  5272. matchLabels:
  5273. additionalProperties:
  5274. type: string
  5275. description: matchLabels is
  5276. a map of {key,value} pairs.
  5277. A single {key,value} in the
  5278. matchLabels map is equivalent
  5279. to an element of matchExpressions,
  5280. whose key field is "key",
  5281. the operator is "In", and
  5282. the values array contains
  5283. only "value". The requirements
  5284. are ANDed.
  5285. type: object
  5286. type: object
  5287. namespaces:
  5288. description: namespaces specifies
  5289. which namespaces the labelSelector
  5290. applies to (matches against);
  5291. null or empty list means "this
  5292. pod's namespace"
  5293. items:
  5294. type: string
  5295. type: array
  5296. topologyKey:
  5297. description: This pod should be
  5298. co-located (affinity) or not co-located
  5299. (anti-affinity) with the pods
  5300. matching the labelSelector in
  5301. the specified namespaces, where
  5302. co-located is defined as running
  5303. on a node whose value of the label
  5304. with key topologyKey matches that
  5305. of any node on which any of the
  5306. selected pods is running. Empty
  5307. topologyKey is not allowed.
  5308. type: string
  5309. required:
  5310. - topologyKey
  5311. type: object
  5312. type: array
  5313. type: object
  5314. podAntiAffinity:
  5315. description: Describes pod anti-affinity scheduling
  5316. rules (e.g. avoid putting this pod in the
  5317. same node, zone, etc. as some other pod(s)).
  5318. properties:
  5319. preferredDuringSchedulingIgnoredDuringExecution:
  5320. description: The scheduler will prefer
  5321. to schedule pods to nodes that satisfy
  5322. the anti-affinity expressions specified
  5323. by this field, but it may choose a node
  5324. that violates one or more of the expressions.
  5325. The node that is most preferred is the
  5326. one with the greatest sum of weights,
  5327. i.e. for each node that meets all of
  5328. the scheduling requirements (resource
  5329. request, requiredDuringScheduling anti-affinity
  5330. expressions, etc.), compute a sum by
  5331. iterating through the elements of this
  5332. field and adding "weight" to the sum
  5333. if the node has pods which matches the
  5334. corresponding podAffinityTerm; the node(s)
  5335. with the highest sum are the most preferred.
  5336. items:
  5337. description: The weights of all of the
  5338. matched WeightedPodAffinityTerm fields
  5339. are added per-node to find the most
  5340. preferred node(s)
  5341. properties:
  5342. podAffinityTerm:
  5343. description: Required. A pod affinity
  5344. term, associated with the corresponding
  5345. weight.
  5346. properties:
  5347. labelSelector:
  5348. description: A label query over
  5349. a set of resources, in this
  5350. case pods.
  5351. properties:
  5352. matchExpressions:
  5353. description: matchExpressions
  5354. is a list of label selector
  5355. requirements. The requirements
  5356. are ANDed.
  5357. items:
  5358. description: A label selector
  5359. requirement is a selector
  5360. that contains values,
  5361. a key, and an operator
  5362. that relates the key
  5363. and values.
  5364. properties:
  5365. key:
  5366. description: key is
  5367. the label key that
  5368. the selector applies
  5369. to.
  5370. type: string
  5371. operator:
  5372. description: operator
  5373. represents a key's
  5374. relationship to
  5375. a set of values.
  5376. Valid operators
  5377. are In, NotIn, Exists
  5378. and DoesNotExist.
  5379. type: string
  5380. values:
  5381. description: values
  5382. is an array of string
  5383. values. If the operator
  5384. is In or NotIn,
  5385. the values array
  5386. must be non-empty.
  5387. If the operator
  5388. is Exists or DoesNotExist,
  5389. the values array
  5390. must be empty. This
  5391. array is replaced
  5392. during a strategic
  5393. merge patch.
  5394. items:
  5395. type: string
  5396. type: array
  5397. required:
  5398. - key
  5399. - operator
  5400. type: object
  5401. type: array
  5402. matchLabels:
  5403. additionalProperties:
  5404. type: string
  5405. description: matchLabels
  5406. is a map of {key,value}
  5407. pairs. A single {key,value}
  5408. in the matchLabels map
  5409. is equivalent to an element
  5410. of matchExpressions, whose
  5411. key field is "key", the
  5412. operator is "In", and
  5413. the values array contains
  5414. only "value". The requirements
  5415. are ANDed.
  5416. type: object
  5417. type: object
  5418. namespaces:
  5419. description: namespaces specifies
  5420. which namespaces the labelSelector
  5421. applies to (matches against);
  5422. null or empty list means "this
  5423. pod's namespace"
  5424. items:
  5425. type: string
  5426. type: array
  5427. topologyKey:
  5428. description: This pod should
  5429. be co-located (affinity) or
  5430. not co-located (anti-affinity)
  5431. with the pods matching the
  5432. labelSelector in the specified
  5433. namespaces, where co-located
  5434. is defined as running on a
  5435. node whose value of the label
  5436. with key topologyKey matches
  5437. that of any node on which
  5438. any of the selected pods is
  5439. running. Empty topologyKey
  5440. is not allowed.
  5441. type: string
  5442. required:
  5443. - topologyKey
  5444. type: object
  5445. weight:
  5446. description: weight associated with
  5447. matching the corresponding podAffinityTerm,
  5448. in the range 1-100.
  5449. format: int32
  5450. type: integer
  5451. required:
  5452. - podAffinityTerm
  5453. - weight
  5454. type: object
  5455. type: array
  5456. requiredDuringSchedulingIgnoredDuringExecution:
  5457. description: If the anti-affinity requirements
  5458. specified by this field are not met
  5459. at scheduling time, the pod will not
  5460. be scheduled onto the node. If the anti-affinity
  5461. requirements specified by this field
  5462. cease to be met at some point during
  5463. pod execution (e.g. due to a pod label
  5464. update), the system may or may not try
  5465. to eventually evict the pod from its
  5466. node. When there are multiple elements,
  5467. the lists of nodes corresponding to
  5468. each podAffinityTerm are intersected,
  5469. i.e. all terms must be satisfied.
  5470. items:
  5471. description: Defines a set of pods (namely
  5472. those matching the labelSelector relative
  5473. to the given namespace(s)) that this
  5474. pod should be co-located (affinity)
  5475. or not co-located (anti-affinity)
  5476. with, where co-located is defined
  5477. as running on a node whose value of
  5478. the label with key <topologyKey> matches
  5479. that of any node on which a pod of
  5480. the set of pods is running
  5481. properties:
  5482. labelSelector:
  5483. description: A label query over
  5484. a set of resources, in this case
  5485. pods.
  5486. properties:
  5487. matchExpressions:
  5488. description: matchExpressions
  5489. is a list of label selector
  5490. requirements. The requirements
  5491. are ANDed.
  5492. items:
  5493. description: A label selector
  5494. requirement is a selector
  5495. that contains values, a
  5496. key, and an operator that
  5497. relates the key and values.
  5498. properties:
  5499. key:
  5500. description: key is the
  5501. label key that the selector
  5502. applies to.
  5503. type: string
  5504. operator:
  5505. description: operator
  5506. represents a key's relationship
  5507. to a set of values.
  5508. Valid operators are
  5509. In, NotIn, Exists and
  5510. DoesNotExist.
  5511. type: string
  5512. values:
  5513. description: values is
  5514. an array of string values.
  5515. If the operator is In
  5516. or NotIn, the values
  5517. array must be non-empty.
  5518. If the operator is Exists
  5519. or DoesNotExist, the
  5520. values array must be
  5521. empty. This array is
  5522. replaced during a strategic
  5523. merge patch.
  5524. items:
  5525. type: string
  5526. type: array
  5527. required:
  5528. - key
  5529. - operator
  5530. type: object
  5531. type: array
  5532. matchLabels:
  5533. additionalProperties:
  5534. type: string
  5535. description: matchLabels is
  5536. a map of {key,value} pairs.
  5537. A single {key,value} in the
  5538. matchLabels map is equivalent
  5539. to an element of matchExpressions,
  5540. whose key field is "key",
  5541. the operator is "In", and
  5542. the values array contains
  5543. only "value". The requirements
  5544. are ANDed.
  5545. type: object
  5546. type: object
  5547. namespaces:
  5548. description: namespaces specifies
  5549. which namespaces the labelSelector
  5550. applies to (matches against);
  5551. null or empty list means "this
  5552. pod's namespace"
  5553. items:
  5554. type: string
  5555. type: array
  5556. topologyKey:
  5557. description: This pod should be
  5558. co-located (affinity) or not co-located
  5559. (anti-affinity) with the pods
  5560. matching the labelSelector in
  5561. the specified namespaces, where
  5562. co-located is defined as running
  5563. on a node whose value of the label
  5564. with key topologyKey matches that
  5565. of any node on which any of the
  5566. selected pods is running. Empty
  5567. topologyKey is not allowed.
  5568. type: string
  5569. required:
  5570. - topologyKey
  5571. type: object
  5572. type: array
  5573. type: object
  5574. type: object
  5575. nodeSelector:
  5576. additionalProperties:
  5577. type: string
  5578. description: 'NodeSelector is a selector which
  5579. must be true for the pod to fit on a node. Selector
  5580. which must match a node''s labels for the pod
  5581. to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  5582. type: object
  5583. priorityClassName:
  5584. description: If specified, the pod's priorityClassName.
  5585. type: string
  5586. serviceAccountName:
  5587. description: If specified, the pod's service account
  5588. type: string
  5589. tolerations:
  5590. description: If specified, the pod's tolerations.
  5591. items:
  5592. description: The pod this Toleration is attached
  5593. to tolerates any taint that matches the triple
  5594. <key,value,effect> using the matching operator
  5595. <operator>.
  5596. properties:
  5597. effect:
  5598. description: Effect indicates the taint
  5599. effect to match. Empty means match all
  5600. taint effects. When specified, allowed
  5601. values are NoSchedule, PreferNoSchedule
  5602. and NoExecute.
  5603. type: string
  5604. key:
  5605. description: Key is the taint key that the
  5606. toleration applies to. Empty means match
  5607. all taint keys. If the key is empty, operator
  5608. must be Exists; this combination means
  5609. to match all values and all keys.
  5610. type: string
  5611. operator:
  5612. description: Operator represents a key's
  5613. relationship to the value. Valid operators
  5614. are Exists and Equal. Defaults to Equal.
  5615. Exists is equivalent to wildcard for value,
  5616. so that a pod can tolerate all taints
  5617. of a particular category.
  5618. type: string
  5619. tolerationSeconds:
  5620. description: TolerationSeconds represents
  5621. the period of time the toleration (which
  5622. must be of effect NoExecute, otherwise
  5623. this field is ignored) tolerates the taint.
  5624. By default, it is not set, which means
  5625. tolerate the taint forever (do not evict).
  5626. Zero and negative values will be treated
  5627. as 0 (evict immediately) by the system.
  5628. format: int64
  5629. type: integer
  5630. value:
  5631. description: Value is the taint value the
  5632. toleration matches to. If the operator
  5633. is Exists, the value should be empty,
  5634. otherwise just a regular string.
  5635. type: string
  5636. type: object
  5637. type: array
  5638. type: object
  5639. type: object
  5640. serviceType:
  5641. description: Optional service type for Kubernetes solver
  5642. service
  5643. type: string
  5644. type: object
  5645. type: object
  5646. selector:
  5647. description: Selector selects a set of DNSNames on the Certificate
  5648. resource that should be solved using this challenge solver.
  5649. If not specified, the solver will be treated as the 'default'
  5650. solver with the lowest priority, i.e. if any other solver has
  5651. a more specific match, it will be used instead.
  5652. properties:
  5653. dnsNames:
  5654. description: List of DNSNames that this solver will be used
  5655. to solve. If specified and a match is found, a dnsNames
  5656. selector will take precedence over a dnsZones selector.
  5657. If multiple solvers match with the same dnsNames value,
  5658. the solver with the most matching labels in matchLabels
  5659. will be selected. If neither has more matches, the solver
  5660. defined earlier in the list will be selected.
  5661. items:
  5662. type: string
  5663. type: array
  5664. dnsZones:
  5665. description: List of DNSZones that this solver will be used
  5666. to solve. The most specific DNS zone match specified here
  5667. will take precedence over other DNS zone matches, so a solver
  5668. specifying sys.example.com will be selected over one specifying
  5669. example.com for the domain www.sys.example.com. If multiple
  5670. solvers match with the same dnsZones value, the solver with
  5671. the most matching labels in matchLabels will be selected.
  5672. If neither has more matches, the solver defined earlier
  5673. in the list will be selected.
  5674. items:
  5675. type: string
  5676. type: array
  5677. matchLabels:
  5678. additionalProperties:
  5679. type: string
  5680. description: A label selector that is used to refine the set
  5681. of certificate's that this challenge solver will apply to.
  5682. type: object
  5683. type: object
  5684. type: object
  5685. token:
  5686. description: Token is the ACME challenge token for this challenge.
  5687. This is the raw value returned from the ACME server.
  5688. type: string
  5689. type:
  5690. description: Type is the type of ACME challenge this resource represents.
  5691. One of "http-01" or "dns-01".
  5692. enum:
  5693. - http-01
  5694. - dns-01
  5695. type: string
  5696. url:
  5697. description: URL is the URL of the ACME Challenge resource for this
  5698. challenge. This can be used to lookup details about the status of
  5699. this challenge.
  5700. type: string
  5701. wildcard:
  5702. description: Wildcard will be true if this challenge is for a wildcard
  5703. identifier, for example '*.example.com'.
  5704. type: boolean
  5705. required:
  5706. - authzURL
  5707. - dnsName
  5708. - issuerRef
  5709. - key
  5710. - solver
  5711. - token
  5712. - type
  5713. - url
  5714. type: object
  5715. status:
  5716. properties:
  5717. presented:
  5718. description: Presented will be set to true if the challenge values
  5719. for this challenge are currently 'presented'. This *does not* imply
  5720. the self check is passing. Only that the values have been 'submitted'
  5721. for the appropriate challenge mechanism (i.e. the DNS01 TXT record
  5722. has been presented, or the HTTP01 configuration has been configured).
  5723. type: boolean
  5724. processing:
  5725. description: Processing is used to denote whether this challenge should
  5726. be processed or not. This field will only be set to true by the
  5727. 'scheduling' component. It will only be set to false by the 'challenges'
  5728. controller, after the challenge has reached a final state or timed
  5729. out. If this field is set to false, the challenge controller will
  5730. not take any more action.
  5731. type: boolean
  5732. reason:
  5733. description: Reason contains human readable information on why the
  5734. Challenge is in the current state.
  5735. type: string
  5736. state:
  5737. description: State contains the current 'state' of the challenge.
  5738. If not set, the state of the challenge is unknown.
  5739. enum:
  5740. - valid
  5741. - ready
  5742. - pending
  5743. - processing
  5744. - invalid
  5745. - expired
  5746. - errored
  5747. type: string
  5748. type: object
  5749. required:
  5750. - metadata
  5751. type: object
  5752. served: true
  5753. storage: false
  5754. subresources:
  5755. status: {}
  5756. - additionalPrinterColumns:
  5757. - jsonPath: .status.state
  5758. name: State
  5759. type: string
  5760. - jsonPath: .spec.dnsName
  5761. name: Domain
  5762. type: string
  5763. - jsonPath: .status.reason
  5764. name: Reason
  5765. priority: 1
  5766. type: string
  5767. - description: CreationTimestamp is a timestamp representing the server time when
  5768. this object was created. It is not guaranteed to be set in happens-before
  5769. order across separate operations. Clients may not set this value. It is represented
  5770. in RFC3339 form and is in UTC.
  5771. jsonPath: .metadata.creationTimestamp
  5772. name: Age
  5773. type: date
  5774. name: v1beta1
  5775. schema:
  5776. openAPIV3Schema:
  5777. description: Challenge is a type to represent a Challenge request with an
  5778. ACME server
  5779. properties:
  5780. apiVersion:
  5781. description: 'APIVersion defines the versioned schema of this representation
  5782. of an object. Servers should convert recognized schemas to the latest
  5783. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  5784. type: string
  5785. kind:
  5786. description: 'Kind is a string value representing the REST resource this
  5787. object represents. Servers may infer this from the endpoint the client
  5788. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  5789. type: string
  5790. metadata:
  5791. type: object
  5792. spec:
  5793. properties:
  5794. authorizationURL:
  5795. description: The URL to the ACME Authorization resource that this
  5796. challenge is a part of.
  5797. type: string
  5798. dnsName:
  5799. description: dnsName is the identifier that this challenge is for,
  5800. e.g. example.com. If the requested DNSName is a 'wildcard', this
  5801. field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
  5802. it must be `example.com`.
  5803. type: string
  5804. issuerRef:
  5805. description: References a properly configured ACME-type Issuer which
  5806. should be used to create this Challenge. If the Issuer does not
  5807. exist, processing will be retried. If the Issuer is not an 'ACME'
  5808. Issuer, an error will be returned and the Challenge will be marked
  5809. as failed.
  5810. properties:
  5811. group:
  5812. description: Group of the resource being referred to.
  5813. type: string
  5814. kind:
  5815. description: Kind of the resource being referred to.
  5816. type: string
  5817. name:
  5818. description: Name of the resource being referred to.
  5819. type: string
  5820. required:
  5821. - name
  5822. type: object
  5823. key:
  5824. description: 'The ACME challenge key for this challenge For HTTP01
  5825. challenges, this is the value that must be responded with to complete
  5826. the HTTP01 challenge in the format: `<private key JWK thumbprint>.<key
  5827. from acme server for challenge>`. For DNS01 challenges, this is
  5828. the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
  5829. from acme server for challenge>` text that must be set as the TXT
  5830. record content.'
  5831. type: string
  5832. solver:
  5833. description: Contains the domain solving configuration that should
  5834. be used to solve this challenge resource.
  5835. properties:
  5836. dns01:
  5837. description: Configures cert-manager to attempt to complete authorizations
  5838. by performing the DNS01 challenge flow.
  5839. properties:
  5840. acmeDNS:
  5841. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  5842. API to manage DNS01 challenge records.
  5843. properties:
  5844. accountSecretRef:
  5845. description: A reference to a specific 'key' within a
  5846. Secret resource. In some instances, `key` is a required
  5847. field.
  5848. properties:
  5849. key:
  5850. description: The key of the entry in the Secret resource's
  5851. `data` field to be used. Some instances of this
  5852. field may be defaulted, in others it may be required.
  5853. type: string
  5854. name:
  5855. description: 'Name of the resource being referred
  5856. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5857. type: string
  5858. required:
  5859. - name
  5860. type: object
  5861. host:
  5862. type: string
  5863. required:
  5864. - accountSecretRef
  5865. - host
  5866. type: object
  5867. akamai:
  5868. description: Use the Akamai DNS zone management API to manage
  5869. DNS01 challenge records.
  5870. properties:
  5871. accessTokenSecretRef:
  5872. description: A reference to a specific 'key' within a
  5873. Secret resource. In some instances, `key` is a required
  5874. field.
  5875. properties:
  5876. key:
  5877. description: The key of the entry in the Secret resource's
  5878. `data` field to be used. Some instances of this
  5879. field may be defaulted, in others it may be required.
  5880. type: string
  5881. name:
  5882. description: 'Name of the resource being referred
  5883. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5884. type: string
  5885. required:
  5886. - name
  5887. type: object
  5888. clientSecretSecretRef:
  5889. description: A reference to a specific 'key' within a
  5890. Secret resource. In some instances, `key` is a required
  5891. field.
  5892. properties:
  5893. key:
  5894. description: The key of the entry in the Secret resource's
  5895. `data` field to be used. Some instances of this
  5896. field may be defaulted, in others it may be required.
  5897. type: string
  5898. name:
  5899. description: 'Name of the resource being referred
  5900. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5901. type: string
  5902. required:
  5903. - name
  5904. type: object
  5905. clientTokenSecretRef:
  5906. description: A reference to a specific 'key' within a
  5907. Secret resource. In some instances, `key` is a required
  5908. field.
  5909. properties:
  5910. key:
  5911. description: The key of the entry in the Secret resource's
  5912. `data` field to be used. Some instances of this
  5913. field may be defaulted, in others it may be required.
  5914. type: string
  5915. name:
  5916. description: 'Name of the resource being referred
  5917. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5918. type: string
  5919. required:
  5920. - name
  5921. type: object
  5922. serviceConsumerDomain:
  5923. type: string
  5924. required:
  5925. - accessTokenSecretRef
  5926. - clientSecretSecretRef
  5927. - clientTokenSecretRef
  5928. - serviceConsumerDomain
  5929. type: object
  5930. azureDNS:
  5931. description: Use the Microsoft Azure DNS API to manage DNS01
  5932. challenge records.
  5933. properties:
  5934. clientID:
  5935. description: if both this and ClientSecret are left unset
  5936. MSI will be used
  5937. type: string
  5938. clientSecretSecretRef:
  5939. description: if both this and ClientID are left unset
  5940. MSI will be used
  5941. properties:
  5942. key:
  5943. description: The key of the entry in the Secret resource's
  5944. `data` field to be used. Some instances of this
  5945. field may be defaulted, in others it may be required.
  5946. type: string
  5947. name:
  5948. description: 'Name of the resource being referred
  5949. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  5950. type: string
  5951. required:
  5952. - name
  5953. type: object
  5954. environment:
  5955. enum:
  5956. - AzurePublicCloud
  5957. - AzureChinaCloud
  5958. - AzureGermanCloud
  5959. - AzureUSGovernmentCloud
  5960. type: string
  5961. hostedZoneName:
  5962. type: string
  5963. resourceGroupName:
  5964. type: string
  5965. subscriptionID:
  5966. type: string
  5967. tenantID:
  5968. description: when specifying ClientID and ClientSecret
  5969. then this field is also needed
  5970. type: string
  5971. required:
  5972. - resourceGroupName
  5973. - subscriptionID
  5974. type: object
  5975. cloudDNS:
  5976. description: Use the Google Cloud DNS API to manage DNS01
  5977. challenge records.
  5978. properties:
  5979. hostedZoneName:
  5980. description: HostedZoneName is an optional field that
  5981. tells cert-manager in which Cloud DNS zone the challenge
  5982. record has to be created. If left empty cert-manager
  5983. will automatically choose a zone.
  5984. type: string
  5985. project:
  5986. type: string
  5987. serviceAccountSecretRef:
  5988. description: A reference to a specific 'key' within a
  5989. Secret resource. In some instances, `key` is a required
  5990. field.
  5991. properties:
  5992. key:
  5993. description: The key of the entry in the Secret resource's
  5994. `data` field to be used. Some instances of this
  5995. field may be defaulted, in others it may be required.
  5996. type: string
  5997. name:
  5998. description: 'Name of the resource being referred
  5999. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  6000. type: string
  6001. required:
  6002. - name
  6003. type: object
  6004. required:
  6005. - project
  6006. type: object
  6007. cloudflare:
  6008. description: Use the Cloudflare API to manage DNS01 challenge
  6009. records.
  6010. properties:
  6011. apiKeySecretRef:
  6012. description: 'API key to use to authenticate with Cloudflare.
  6013. Note: using an API token to authenticate is now the
  6014. recommended method as it allows greater control of permissions.'
  6015. properties:
  6016. key:
  6017. description: The key of the entry in the Secret resource's
  6018. `data` field to be used. Some instances of this
  6019. field may be defaulted, in others it may be required.
  6020. type: string
  6021. name:
  6022. description: 'Name of the resource being referred
  6023. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  6024. type: string
  6025. required:
  6026. - name
  6027. type: object
  6028. apiTokenSecretRef:
  6029. description: API token used to authenticate with Cloudflare.
  6030. properties:
  6031. key:
  6032. description: The key of the entry in the Secret resource's
  6033. `data` field to be used. Some instances of this
  6034. field may be defaulted, in others it may be required.
  6035. type: string
  6036. name:
  6037. description: 'Name of the resource being referred
  6038. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  6039. type: string
  6040. required:
  6041. - name
  6042. type: object
  6043. email:
  6044. description: Email of the account, only required when
  6045. using API key based authentication.
  6046. type: string
  6047. type: object
  6048. cnameStrategy:
  6049. description: CNAMEStrategy configures how the DNS01 provider
  6050. should handle CNAME records when found in DNS zones.
  6051. enum:
  6052. - None
  6053. - Follow
  6054. type: string
  6055. digitalocean:
  6056. description: Use the DigitalOcean DNS API to manage DNS01
  6057. challenge records.
  6058. properties:
  6059. tokenSecretRef:
  6060. description: A reference to a specific 'key' within a
  6061. Secret resource. In some instances, `key` is a required
  6062. field.
  6063. properties:
  6064. key:
  6065. description: The key of the entry in the Secret resource's
  6066. `data` field to be used. Some instances of this
  6067. field may be defaulted, in others it may be required.
  6068. type: string
  6069. name:
  6070. description: 'Name of the resource being referred
  6071. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  6072. type: string
  6073. required:
  6074. - name
  6075. type: object
  6076. required:
  6077. - tokenSecretRef
  6078. type: object
  6079. rfc2136:
  6080. description: Use RFC2136 ("Dynamic Updates in the Domain Name
  6081. System") (https://datatracker.ietf.org/doc/rfc2136/) to
  6082. manage DNS01 challenge records.
  6083. properties:
  6084. nameserver:
  6085. description: The IP address or hostname of an authoritative
  6086. DNS server supporting RFC2136 in the form host:port.
  6087. If the host is an IPv6 address it must be enclosed in
  6088. square brackets (e.g [2001:db8::1]) ; port is optional.
  6089. This field is required.
  6090. type: string
  6091. tsigAlgorithm:
  6092. description: 'The TSIG Algorithm configured in the DNS
  6093. supporting RFC2136. Used only when ``tsigSecretSecretRef``
  6094. and ``tsigKeyName`` are defined. Supported values are
  6095. (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``,
  6096. ``HMACSHA256`` or ``HMACSHA512``.'
  6097. type: string
  6098. tsigKeyName:
  6099. description: The TSIG Key name configured in the DNS.
  6100. If ``tsigSecretSecretRef`` is defined, this field is
  6101. required.
  6102. type: string
  6103. tsigSecretSecretRef:
  6104. description: The name of the secret containing the TSIG
  6105. value. If ``tsigKeyName`` is defined, this field is
  6106. required.
  6107. properties:
  6108. key:
  6109. description: The key of the entry in the Secret resource's
  6110. `data` field to be used. Some instances of this
  6111. field may be defaulted, in others it may be required.
  6112. type: string
  6113. name:
  6114. description: 'Name of the resource being referred
  6115. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  6116. type: string
  6117. required:
  6118. - name
  6119. type: object
  6120. required:
  6121. - nameserver
  6122. type: object
  6123. route53:
  6124. description: Use the AWS Route53 API to manage DNS01 challenge
  6125. records.
  6126. properties:
  6127. accessKeyID:
  6128. description: 'The AccessKeyID is used for authentication.
  6129. If not set we fall-back to using env vars, shared credentials
  6130. file or AWS Instance metadata see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  6131. type: string
  6132. hostedZoneID:
  6133. description: If set, the provider will manage only this
  6134. zone in Route53 and will not do an lookup using the
  6135. route53:ListHostedZonesByName api call.
  6136. type: string
  6137. region:
  6138. description: Always set the region when using AccessKeyID
  6139. and SecretAccessKey
  6140. type: string
  6141. role:
  6142. description: Role is a Role ARN which the Route53 provider
  6143. will assume using either the explicit credentials AccessKeyID/SecretAccessKey
  6144. or the inferred credentials from environment variables,
  6145. shared credentials file or AWS Instance metadata
  6146. type: string
  6147. secretAccessKeySecretRef:
  6148. description: The SecretAccessKey is used for authentication.
  6149. If not set we fall-back to using env vars, shared credentials
  6150. file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  6151. properties:
  6152. key:
  6153. description: The key of the entry in the Secret resource's
  6154. `data` field to be used. Some instances of this
  6155. field may be defaulted, in others it may be required.
  6156. type: string
  6157. name:
  6158. description: 'Name of the resource being referred
  6159. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  6160. type: string
  6161. required:
  6162. - name
  6163. type: object
  6164. required:
  6165. - region
  6166. type: object
  6167. webhook:
  6168. description: Configure an external webhook based DNS01 challenge
  6169. solver to manage DNS01 challenge records.
  6170. properties:
  6171. config:
  6172. description: Additional configuration that should be passed
  6173. to the webhook apiserver when challenges are processed.
  6174. This can contain arbitrary JSON data. Secret values
  6175. should not be specified in this stanza. If secret values
  6176. are needed (e.g. credentials for a DNS service), you
  6177. should use a SecretKeySelector to reference a Secret
  6178. resource. For details on the schema of this field, consult
  6179. the webhook provider implementation's documentation.
  6180. x-kubernetes-preserve-unknown-fields: true
  6181. groupName:
  6182. description: The API group name that should be used when
  6183. POSTing ChallengePayload resources to the webhook apiserver.
  6184. This should be the same as the GroupName specified in
  6185. the webhook provider implementation.
  6186. type: string
  6187. solverName:
  6188. description: The name of the solver to use, as defined
  6189. in the webhook provider implementation. This will typically
  6190. be the name of the provider, e.g. 'cloudflare'.
  6191. type: string
  6192. required:
  6193. - groupName
  6194. - solverName
  6195. type: object
  6196. type: object
  6197. http01:
  6198. description: Configures cert-manager to attempt to complete authorizations
  6199. by performing the HTTP01 challenge flow. It is not possible
  6200. to obtain certificates for wildcard domain names (e.g. `*.example.com`)
  6201. using the HTTP01 challenge mechanism.
  6202. properties:
  6203. ingress:
  6204. description: The ingress based HTTP01 challenge solver will
  6205. solve challenges by creating or modifying Ingress resources
  6206. in order to route requests for '/.well-known/acme-challenge/XYZ'
  6207. to 'challenge solver' pods that are provisioned by cert-manager
  6208. for each Challenge to be completed.
  6209. properties:
  6210. class:
  6211. description: The ingress class to use when creating Ingress
  6212. resources to solve ACME challenges that use this challenge
  6213. solver. Only one of 'class' or 'name' may be specified.
  6214. type: string
  6215. ingressTemplate:
  6216. description: Optional ingress template used to configure
  6217. the ACME challenge solver ingress used for HTTP01 challenges
  6218. properties:
  6219. metadata:
  6220. description: ObjectMeta overrides for the ingress
  6221. used to solve HTTP01 challenges. Only the 'labels'
  6222. and 'annotations' fields may be set. If labels or
  6223. annotations overlap with in-built values, the values
  6224. here will override the in-built values.
  6225. properties:
  6226. annotations:
  6227. additionalProperties:
  6228. type: string
  6229. description: Annotations that should be added
  6230. to the created ACME HTTP01 solver ingress.
  6231. type: object
  6232. labels:
  6233. additionalProperties:
  6234. type: string
  6235. description: Labels that should be added to the
  6236. created ACME HTTP01 solver ingress.
  6237. type: object
  6238. type: object
  6239. type: object
  6240. name:
  6241. description: The name of the ingress resource that should
  6242. have ACME challenge solving routes inserted into it
  6243. in order to solve HTTP01 challenges. This is typically
  6244. used in conjunction with ingress controllers like ingress-gce,
  6245. which maintains a 1:1 mapping between external IPs and
  6246. ingress resources.
  6247. type: string
  6248. podTemplate:
  6249. description: Optional pod template used to configure the
  6250. ACME challenge solver pods used for HTTP01 challenges
  6251. properties:
  6252. metadata:
  6253. description: ObjectMeta overrides for the pod used
  6254. to solve HTTP01 challenges. Only the 'labels' and
  6255. 'annotations' fields may be set. If labels or annotations
  6256. overlap with in-built values, the values here will
  6257. override the in-built values.
  6258. properties:
  6259. annotations:
  6260. additionalProperties:
  6261. type: string
  6262. description: Annotations that should be added
  6263. to the create ACME HTTP01 solver pods.
  6264. type: object
  6265. labels:
  6266. additionalProperties:
  6267. type: string
  6268. description: Labels that should be added to the
  6269. created ACME HTTP01 solver pods.
  6270. type: object
  6271. type: object
  6272. spec:
  6273. description: PodSpec defines overrides for the HTTP01
  6274. challenge solver pod. Only the 'priorityClassName',
  6275. 'nodeSelector', 'affinity', 'serviceAccountName'
  6276. and 'tolerations' fields are supported currently.
  6277. All other fields will be ignored.
  6278. properties:
  6279. affinity:
  6280. description: If specified, the pod's scheduling
  6281. constraints
  6282. properties:
  6283. nodeAffinity:
  6284. description: Describes node affinity scheduling
  6285. rules for the pod.
  6286. properties:
  6287. preferredDuringSchedulingIgnoredDuringExecution:
  6288. description: The scheduler will prefer
  6289. to schedule pods to nodes that satisfy
  6290. the affinity expressions specified by
  6291. this field, but it may choose a node
  6292. that violates one or more of the expressions.
  6293. The node that is most preferred is the
  6294. one with the greatest sum of weights,
  6295. i.e. for each node that meets all of
  6296. the scheduling requirements (resource
  6297. request, requiredDuringScheduling affinity
  6298. expressions, etc.), compute a sum by
  6299. iterating through the elements of this
  6300. field and adding "weight" to the sum
  6301. if the node matches the corresponding
  6302. matchExpressions; the node(s) with the
  6303. highest sum are the most preferred.
  6304. items:
  6305. description: An empty preferred scheduling
  6306. term matches all objects with implicit
  6307. weight 0 (i.e. it's a no-op). A null
  6308. preferred scheduling term matches
  6309. no objects (i.e. is also a no-op).
  6310. properties:
  6311. preference:
  6312. description: A node selector term,
  6313. associated with the corresponding
  6314. weight.
  6315. properties:
  6316. matchExpressions:
  6317. description: A list of node
  6318. selector requirements by node's
  6319. labels.
  6320. items:
  6321. description: A node selector
  6322. requirement is a selector
  6323. that contains values, a
  6324. key, and an operator that
  6325. relates the key and values.
  6326. properties:
  6327. key:
  6328. description: The label
  6329. key that the selector
  6330. applies to.
  6331. type: string
  6332. operator:
  6333. description: Represents
  6334. a key's relationship
  6335. to a set of values.
  6336. Valid operators are
  6337. In, NotIn, Exists, DoesNotExist.
  6338. Gt, and Lt.
  6339. type: string
  6340. values:
  6341. description: An array
  6342. of string values. If
  6343. the operator is In or
  6344. NotIn, the values array
  6345. must be non-empty. If
  6346. the operator is Exists
  6347. or DoesNotExist, the
  6348. values array must be
  6349. empty. If the operator
  6350. is Gt or Lt, the values
  6351. array must have a single
  6352. element, which will
  6353. be interpreted as an
  6354. integer. This array
  6355. is replaced during a
  6356. strategic merge patch.
  6357. items:
  6358. type: string
  6359. type: array
  6360. required:
  6361. - key
  6362. - operator
  6363. type: object
  6364. type: array
  6365. matchFields:
  6366. description: A list of node
  6367. selector requirements by node's
  6368. fields.
  6369. items:
  6370. description: A node selector
  6371. requirement is a selector
  6372. that contains values, a
  6373. key, and an operator that
  6374. relates the key and values.
  6375. properties:
  6376. key:
  6377. description: The label
  6378. key that the selector
  6379. applies to.
  6380. type: string
  6381. operator:
  6382. description: Represents
  6383. a key's relationship
  6384. to a set of values.
  6385. Valid operators are
  6386. In, NotIn, Exists, DoesNotExist.
  6387. Gt, and Lt.
  6388. type: string
  6389. values:
  6390. description: An array
  6391. of string values. If
  6392. the operator is In or
  6393. NotIn, the values array
  6394. must be non-empty. If
  6395. the operator is Exists
  6396. or DoesNotExist, the
  6397. values array must be
  6398. empty. If the operator
  6399. is Gt or Lt, the values
  6400. array must have a single
  6401. element, which will
  6402. be interpreted as an
  6403. integer. This array
  6404. is replaced during a
  6405. strategic merge patch.
  6406. items:
  6407. type: string
  6408. type: array
  6409. required:
  6410. - key
  6411. - operator
  6412. type: object
  6413. type: array
  6414. type: object
  6415. weight:
  6416. description: Weight associated with
  6417. matching the corresponding nodeSelectorTerm,
  6418. in the range 1-100.
  6419. format: int32
  6420. type: integer
  6421. required:
  6422. - preference
  6423. - weight
  6424. type: object
  6425. type: array
  6426. requiredDuringSchedulingIgnoredDuringExecution:
  6427. description: If the affinity requirements
  6428. specified by this field are not met
  6429. at scheduling time, the pod will not
  6430. be scheduled onto the node. If the affinity
  6431. requirements specified by this field
  6432. cease to be met at some point during
  6433. pod execution (e.g. due to an update),
  6434. the system may or may not try to eventually
  6435. evict the pod from its node.
  6436. properties:
  6437. nodeSelectorTerms:
  6438. description: Required. A list of node
  6439. selector terms. The terms are ORed.
  6440. items:
  6441. description: A null or empty node
  6442. selector term matches no objects.
  6443. The requirements of them are ANDed.
  6444. The TopologySelectorTerm type
  6445. implements a subset of the NodeSelectorTerm.
  6446. properties:
  6447. matchExpressions:
  6448. description: A list of node
  6449. selector requirements by node's
  6450. labels.
  6451. items:
  6452. description: A node selector
  6453. requirement is a selector
  6454. that contains values, a
  6455. key, and an operator that
  6456. relates the key and values.
  6457. properties:
  6458. key:
  6459. description: The label
  6460. key that the selector
  6461. applies to.
  6462. type: string
  6463. operator:
  6464. description: Represents
  6465. a key's relationship
  6466. to a set of values.
  6467. Valid operators are
  6468. In, NotIn, Exists, DoesNotExist.
  6469. Gt, and Lt.
  6470. type: string
  6471. values:
  6472. description: An array
  6473. of string values. If
  6474. the operator is In or
  6475. NotIn, the values array
  6476. must be non-empty. If
  6477. the operator is Exists
  6478. or DoesNotExist, the
  6479. values array must be
  6480. empty. If the operator
  6481. is Gt or Lt, the values
  6482. array must have a single
  6483. element, which will
  6484. be interpreted as an
  6485. integer. This array
  6486. is replaced during a
  6487. strategic merge patch.
  6488. items:
  6489. type: string
  6490. type: array
  6491. required:
  6492. - key
  6493. - operator
  6494. type: object
  6495. type: array
  6496. matchFields:
  6497. description: A list of node
  6498. selector requirements by node's
  6499. fields.
  6500. items:
  6501. description: A node selector
  6502. requirement is a selector
  6503. that contains values, a
  6504. key, and an operator that
  6505. relates the key and values.
  6506. properties:
  6507. key:
  6508. description: The label
  6509. key that the selector
  6510. applies to.
  6511. type: string
  6512. operator:
  6513. description: Represents
  6514. a key's relationship
  6515. to a set of values.
  6516. Valid operators are
  6517. In, NotIn, Exists, DoesNotExist.
  6518. Gt, and Lt.
  6519. type: string
  6520. values:
  6521. description: An array
  6522. of string values. If
  6523. the operator is In or
  6524. NotIn, the values array
  6525. must be non-empty. If
  6526. the operator is Exists
  6527. or DoesNotExist, the
  6528. values array must be
  6529. empty. If the operator
  6530. is Gt or Lt, the values
  6531. array must have a single
  6532. element, which will
  6533. be interpreted as an
  6534. integer. This array
  6535. is replaced during a
  6536. strategic merge patch.
  6537. items:
  6538. type: string
  6539. type: array
  6540. required:
  6541. - key
  6542. - operator
  6543. type: object
  6544. type: array
  6545. type: object
  6546. type: array
  6547. required:
  6548. - nodeSelectorTerms
  6549. type: object
  6550. type: object
  6551. podAffinity:
  6552. description: Describes pod affinity scheduling
  6553. rules (e.g. co-locate this pod in the same
  6554. node, zone, etc. as some other pod(s)).
  6555. properties:
  6556. preferredDuringSchedulingIgnoredDuringExecution:
  6557. description: The scheduler will prefer
  6558. to schedule pods to nodes that satisfy
  6559. the affinity expressions specified by
  6560. this field, but it may choose a node
  6561. that violates one or more of the expressions.
  6562. The node that is most preferred is the
  6563. one with the greatest sum of weights,
  6564. i.e. for each node that meets all of
  6565. the scheduling requirements (resource
  6566. request, requiredDuringScheduling affinity
  6567. expressions, etc.), compute a sum by
  6568. iterating through the elements of this
  6569. field and adding "weight" to the sum
  6570. if the node has pods which matches the
  6571. corresponding podAffinityTerm; the node(s)
  6572. with the highest sum are the most preferred.
  6573. items:
  6574. description: The weights of all of the
  6575. matched WeightedPodAffinityTerm fields
  6576. are added per-node to find the most
  6577. preferred node(s)
  6578. properties:
  6579. podAffinityTerm:
  6580. description: Required. A pod affinity
  6581. term, associated with the corresponding
  6582. weight.
  6583. properties:
  6584. labelSelector:
  6585. description: A label query over
  6586. a set of resources, in this
  6587. case pods.
  6588. properties:
  6589. matchExpressions:
  6590. description: matchExpressions
  6591. is a list of label selector
  6592. requirements. The requirements
  6593. are ANDed.
  6594. items:
  6595. description: A label selector
  6596. requirement is a selector
  6597. that contains values,
  6598. a key, and an operator
  6599. that relates the key
  6600. and values.
  6601. properties:
  6602. key:
  6603. description: key is
  6604. the label key that
  6605. the selector applies
  6606. to.
  6607. type: string
  6608. operator:
  6609. description: operator
  6610. represents a key's
  6611. relationship to
  6612. a set of values.
  6613. Valid operators
  6614. are In, NotIn, Exists
  6615. and DoesNotExist.
  6616. type: string
  6617. values:
  6618. description: values
  6619. is an array of string
  6620. values. If the operator
  6621. is In or NotIn,
  6622. the values array
  6623. must be non-empty.
  6624. If the operator
  6625. is Exists or DoesNotExist,
  6626. the values array
  6627. must be empty. This
  6628. array is replaced
  6629. during a strategic
  6630. merge patch.
  6631. items:
  6632. type: string
  6633. type: array
  6634. required:
  6635. - key
  6636. - operator
  6637. type: object
  6638. type: array
  6639. matchLabels:
  6640. additionalProperties:
  6641. type: string
  6642. description: matchLabels
  6643. is a map of {key,value}
  6644. pairs. A single {key,value}
  6645. in the matchLabels map
  6646. is equivalent to an element
  6647. of matchExpressions, whose
  6648. key field is "key", the
  6649. operator is "In", and
  6650. the values array contains
  6651. only "value". The requirements
  6652. are ANDed.
  6653. type: object
  6654. type: object
  6655. namespaces:
  6656. description: namespaces specifies
  6657. which namespaces the labelSelector
  6658. applies to (matches against);
  6659. null or empty list means "this
  6660. pod's namespace"
  6661. items:
  6662. type: string
  6663. type: array
  6664. topologyKey:
  6665. description: This pod should
  6666. be co-located (affinity) or
  6667. not co-located (anti-affinity)
  6668. with the pods matching the
  6669. labelSelector in the specified
  6670. namespaces, where co-located
  6671. is defined as running on a
  6672. node whose value of the label
  6673. with key topologyKey matches
  6674. that of any node on which
  6675. any of the selected pods is
  6676. running. Empty topologyKey
  6677. is not allowed.
  6678. type: string
  6679. required:
  6680. - topologyKey
  6681. type: object
  6682. weight:
  6683. description: weight associated with
  6684. matching the corresponding podAffinityTerm,
  6685. in the range 1-100.
  6686. format: int32
  6687. type: integer
  6688. required:
  6689. - podAffinityTerm
  6690. - weight
  6691. type: object
  6692. type: array
  6693. requiredDuringSchedulingIgnoredDuringExecution:
  6694. description: If the affinity requirements
  6695. specified by this field are not met
  6696. at scheduling time, the pod will not
  6697. be scheduled onto the node. If the affinity
  6698. requirements specified by this field
  6699. cease to be met at some point during
  6700. pod execution (e.g. due to a pod label
  6701. update), the system may or may not try
  6702. to eventually evict the pod from its
  6703. node. When there are multiple elements,
  6704. the lists of nodes corresponding to
  6705. each podAffinityTerm are intersected,
  6706. i.e. all terms must be satisfied.
  6707. items:
  6708. description: Defines a set of pods (namely
  6709. those matching the labelSelector relative
  6710. to the given namespace(s)) that this
  6711. pod should be co-located (affinity)
  6712. or not co-located (anti-affinity)
  6713. with, where co-located is defined
  6714. as running on a node whose value of
  6715. the label with key <topologyKey> matches
  6716. that of any node on which a pod of
  6717. the set of pods is running
  6718. properties:
  6719. labelSelector:
  6720. description: A label query over
  6721. a set of resources, in this case
  6722. pods.
  6723. properties:
  6724. matchExpressions:
  6725. description: matchExpressions
  6726. is a list of label selector
  6727. requirements. The requirements
  6728. are ANDed.
  6729. items:
  6730. description: A label selector
  6731. requirement is a selector
  6732. that contains values, a
  6733. key, and an operator that
  6734. relates the key and values.
  6735. properties:
  6736. key:
  6737. description: key is the
  6738. label key that the selector
  6739. applies to.
  6740. type: string
  6741. operator:
  6742. description: operator
  6743. represents a key's relationship
  6744. to a set of values.
  6745. Valid operators are
  6746. In, NotIn, Exists and
  6747. DoesNotExist.
  6748. type: string
  6749. values:
  6750. description: values is
  6751. an array of string values.
  6752. If the operator is In
  6753. or NotIn, the values
  6754. array must be non-empty.
  6755. If the operator is Exists
  6756. or DoesNotExist, the
  6757. values array must be
  6758. empty. This array is
  6759. replaced during a strategic
  6760. merge patch.
  6761. items:
  6762. type: string
  6763. type: array
  6764. required:
  6765. - key
  6766. - operator
  6767. type: object
  6768. type: array
  6769. matchLabels:
  6770. additionalProperties:
  6771. type: string
  6772. description: matchLabels is
  6773. a map of {key,value} pairs.
  6774. A single {key,value} in the
  6775. matchLabels map is equivalent
  6776. to an element of matchExpressions,
  6777. whose key field is "key",
  6778. the operator is "In", and
  6779. the values array contains
  6780. only "value". The requirements
  6781. are ANDed.
  6782. type: object
  6783. type: object
  6784. namespaces:
  6785. description: namespaces specifies
  6786. which namespaces the labelSelector
  6787. applies to (matches against);
  6788. null or empty list means "this
  6789. pod's namespace"
  6790. items:
  6791. type: string
  6792. type: array
  6793. topologyKey:
  6794. description: This pod should be
  6795. co-located (affinity) or not co-located
  6796. (anti-affinity) with the pods
  6797. matching the labelSelector in
  6798. the specified namespaces, where
  6799. co-located is defined as running
  6800. on a node whose value of the label
  6801. with key topologyKey matches that
  6802. of any node on which any of the
  6803. selected pods is running. Empty
  6804. topologyKey is not allowed.
  6805. type: string
  6806. required:
  6807. - topologyKey
  6808. type: object
  6809. type: array
  6810. type: object
  6811. podAntiAffinity:
  6812. description: Describes pod anti-affinity scheduling
  6813. rules (e.g. avoid putting this pod in the
  6814. same node, zone, etc. as some other pod(s)).
  6815. properties:
  6816. preferredDuringSchedulingIgnoredDuringExecution:
  6817. description: The scheduler will prefer
  6818. to schedule pods to nodes that satisfy
  6819. the anti-affinity expressions specified
  6820. by this field, but it may choose a node
  6821. that violates one or more of the expressions.
  6822. The node that is most preferred is the
  6823. one with the greatest sum of weights,
  6824. i.e. for each node that meets all of
  6825. the scheduling requirements (resource
  6826. request, requiredDuringScheduling anti-affinity
  6827. expressions, etc.), compute a sum by
  6828. iterating through the elements of this
  6829. field and adding "weight" to the sum
  6830. if the node has pods which matches the
  6831. corresponding podAffinityTerm; the node(s)
  6832. with the highest sum are the most preferred.
  6833. items:
  6834. description: The weights of all of the
  6835. matched WeightedPodAffinityTerm fields
  6836. are added per-node to find the most
  6837. preferred node(s)
  6838. properties:
  6839. podAffinityTerm:
  6840. description: Required. A pod affinity
  6841. term, associated with the corresponding
  6842. weight.
  6843. properties:
  6844. labelSelector:
  6845. description: A label query over
  6846. a set of resources, in this
  6847. case pods.
  6848. properties:
  6849. matchExpressions:
  6850. description: matchExpressions
  6851. is a list of label selector
  6852. requirements. The requirements
  6853. are ANDed.
  6854. items:
  6855. description: A label selector
  6856. requirement is a selector
  6857. that contains values,
  6858. a key, and an operator
  6859. that relates the key
  6860. and values.
  6861. properties:
  6862. key:
  6863. description: key is
  6864. the label key that
  6865. the selector applies
  6866. to.
  6867. type: string
  6868. operator:
  6869. description: operator
  6870. represents a key's
  6871. relationship to
  6872. a set of values.
  6873. Valid operators
  6874. are In, NotIn, Exists
  6875. and DoesNotExist.
  6876. type: string
  6877. values:
  6878. description: values
  6879. is an array of string
  6880. values. If the operator
  6881. is In or NotIn,
  6882. the values array
  6883. must be non-empty.
  6884. If the operator
  6885. is Exists or DoesNotExist,
  6886. the values array
  6887. must be empty. This
  6888. array is replaced
  6889. during a strategic
  6890. merge patch.
  6891. items:
  6892. type: string
  6893. type: array
  6894. required:
  6895. - key
  6896. - operator
  6897. type: object
  6898. type: array
  6899. matchLabels:
  6900. additionalProperties:
  6901. type: string
  6902. description: matchLabels
  6903. is a map of {key,value}
  6904. pairs. A single {key,value}
  6905. in the matchLabels map
  6906. is equivalent to an element
  6907. of matchExpressions, whose
  6908. key field is "key", the
  6909. operator is "In", and
  6910. the values array contains
  6911. only "value". The requirements
  6912. are ANDed.
  6913. type: object
  6914. type: object
  6915. namespaces:
  6916. description: namespaces specifies
  6917. which namespaces the labelSelector
  6918. applies to (matches against);
  6919. null or empty list means "this
  6920. pod's namespace"
  6921. items:
  6922. type: string
  6923. type: array
  6924. topologyKey:
  6925. description: This pod should
  6926. be co-located (affinity) or
  6927. not co-located (anti-affinity)
  6928. with the pods matching the
  6929. labelSelector in the specified
  6930. namespaces, where co-located
  6931. is defined as running on a
  6932. node whose value of the label
  6933. with key topologyKey matches
  6934. that of any node on which
  6935. any of the selected pods is
  6936. running. Empty topologyKey
  6937. is not allowed.
  6938. type: string
  6939. required:
  6940. - topologyKey
  6941. type: object
  6942. weight:
  6943. description: weight associated with
  6944. matching the corresponding podAffinityTerm,
  6945. in the range 1-100.
  6946. format: int32
  6947. type: integer
  6948. required:
  6949. - podAffinityTerm
  6950. - weight
  6951. type: object
  6952. type: array
  6953. requiredDuringSchedulingIgnoredDuringExecution:
  6954. description: If the anti-affinity requirements
  6955. specified by this field are not met
  6956. at scheduling time, the pod will not
  6957. be scheduled onto the node. If the anti-affinity
  6958. requirements specified by this field
  6959. cease to be met at some point during
  6960. pod execution (e.g. due to a pod label
  6961. update), the system may or may not try
  6962. to eventually evict the pod from its
  6963. node. When there are multiple elements,
  6964. the lists of nodes corresponding to
  6965. each podAffinityTerm are intersected,
  6966. i.e. all terms must be satisfied.
  6967. items:
  6968. description: Defines a set of pods (namely
  6969. those matching the labelSelector relative
  6970. to the given namespace(s)) that this
  6971. pod should be co-located (affinity)
  6972. or not co-located (anti-affinity)
  6973. with, where co-located is defined
  6974. as running on a node whose value of
  6975. the label with key <topologyKey> matches
  6976. that of any node on which a pod of
  6977. the set of pods is running
  6978. properties:
  6979. labelSelector:
  6980. description: A label query over
  6981. a set of resources, in this case
  6982. pods.
  6983. properties:
  6984. matchExpressions:
  6985. description: matchExpressions
  6986. is a list of label selector
  6987. requirements. The requirements
  6988. are ANDed.
  6989. items:
  6990. description: A label selector
  6991. requirement is a selector
  6992. that contains values, a
  6993. key, and an operator that
  6994. relates the key and values.
  6995. properties:
  6996. key:
  6997. description: key is the
  6998. label key that the selector
  6999. applies to.
  7000. type: string
  7001. operator:
  7002. description: operator
  7003. represents a key's relationship
  7004. to a set of values.
  7005. Valid operators are
  7006. In, NotIn, Exists and
  7007. DoesNotExist.
  7008. type: string
  7009. values:
  7010. description: values is
  7011. an array of string values.
  7012. If the operator is In
  7013. or NotIn, the values
  7014. array must be non-empty.
  7015. If the operator is Exists
  7016. or DoesNotExist, the
  7017. values array must be
  7018. empty. This array is
  7019. replaced during a strategic
  7020. merge patch.
  7021. items:
  7022. type: string
  7023. type: array
  7024. required:
  7025. - key
  7026. - operator
  7027. type: object
  7028. type: array
  7029. matchLabels:
  7030. additionalProperties:
  7031. type: string
  7032. description: matchLabels is
  7033. a map of {key,value} pairs.
  7034. A single {key,value} in the
  7035. matchLabels map is equivalent
  7036. to an element of matchExpressions,
  7037. whose key field is "key",
  7038. the operator is "In", and
  7039. the values array contains
  7040. only "value". The requirements
  7041. are ANDed.
  7042. type: object
  7043. type: object
  7044. namespaces:
  7045. description: namespaces specifies
  7046. which namespaces the labelSelector
  7047. applies to (matches against);
  7048. null or empty list means "this
  7049. pod's namespace"
  7050. items:
  7051. type: string
  7052. type: array
  7053. topologyKey:
  7054. description: This pod should be
  7055. co-located (affinity) or not co-located
  7056. (anti-affinity) with the pods
  7057. matching the labelSelector in
  7058. the specified namespaces, where
  7059. co-located is defined as running
  7060. on a node whose value of the label
  7061. with key topologyKey matches that
  7062. of any node on which any of the
  7063. selected pods is running. Empty
  7064. topologyKey is not allowed.
  7065. type: string
  7066. required:
  7067. - topologyKey
  7068. type: object
  7069. type: array
  7070. type: object
  7071. type: object
  7072. nodeSelector:
  7073. additionalProperties:
  7074. type: string
  7075. description: 'NodeSelector is a selector which
  7076. must be true for the pod to fit on a node. Selector
  7077. which must match a node''s labels for the pod
  7078. to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  7079. type: object
  7080. priorityClassName:
  7081. description: If specified, the pod's priorityClassName.
  7082. type: string
  7083. serviceAccountName:
  7084. description: If specified, the pod's service account
  7085. type: string
  7086. tolerations:
  7087. description: If specified, the pod's tolerations.
  7088. items:
  7089. description: The pod this Toleration is attached
  7090. to tolerates any taint that matches the triple
  7091. <key,value,effect> using the matching operator
  7092. <operator>.
  7093. properties:
  7094. effect:
  7095. description: Effect indicates the taint
  7096. effect to match. Empty means match all
  7097. taint effects. When specified, allowed
  7098. values are NoSchedule, PreferNoSchedule
  7099. and NoExecute.
  7100. type: string
  7101. key:
  7102. description: Key is the taint key that the
  7103. toleration applies to. Empty means match
  7104. all taint keys. If the key is empty, operator
  7105. must be Exists; this combination means
  7106. to match all values and all keys.
  7107. type: string
  7108. operator:
  7109. description: Operator represents a key's
  7110. relationship to the value. Valid operators
  7111. are Exists and Equal. Defaults to Equal.
  7112. Exists is equivalent to wildcard for value,
  7113. so that a pod can tolerate all taints
  7114. of a particular category.
  7115. type: string
  7116. tolerationSeconds:
  7117. description: TolerationSeconds represents
  7118. the period of time the toleration (which
  7119. must be of effect NoExecute, otherwise
  7120. this field is ignored) tolerates the taint.
  7121. By default, it is not set, which means
  7122. tolerate the taint forever (do not evict).
  7123. Zero and negative values will be treated
  7124. as 0 (evict immediately) by the system.
  7125. format: int64
  7126. type: integer
  7127. value:
  7128. description: Value is the taint value the
  7129. toleration matches to. If the operator
  7130. is Exists, the value should be empty,
  7131. otherwise just a regular string.
  7132. type: string
  7133. type: object
  7134. type: array
  7135. type: object
  7136. type: object
  7137. serviceType:
  7138. description: Optional service type for Kubernetes solver
  7139. service
  7140. type: string
  7141. type: object
  7142. type: object
  7143. selector:
  7144. description: Selector selects a set of DNSNames on the Certificate
  7145. resource that should be solved using this challenge solver.
  7146. If not specified, the solver will be treated as the 'default'
  7147. solver with the lowest priority, i.e. if any other solver has
  7148. a more specific match, it will be used instead.
  7149. properties:
  7150. dnsNames:
  7151. description: List of DNSNames that this solver will be used
  7152. to solve. If specified and a match is found, a dnsNames
  7153. selector will take precedence over a dnsZones selector.
  7154. If multiple solvers match with the same dnsNames value,
  7155. the solver with the most matching labels in matchLabels
  7156. will be selected. If neither has more matches, the solver
  7157. defined earlier in the list will be selected.
  7158. items:
  7159. type: string
  7160. type: array
  7161. dnsZones:
  7162. description: List of DNSZones that this solver will be used
  7163. to solve. The most specific DNS zone match specified here
  7164. will take precedence over other DNS zone matches, so a solver
  7165. specifying sys.example.com will be selected over one specifying
  7166. example.com for the domain www.sys.example.com. If multiple
  7167. solvers match with the same dnsZones value, the solver with
  7168. the most matching labels in matchLabels will be selected.
  7169. If neither has more matches, the solver defined earlier
  7170. in the list will be selected.
  7171. items:
  7172. type: string
  7173. type: array
  7174. matchLabels:
  7175. additionalProperties:
  7176. type: string
  7177. description: A label selector that is used to refine the set
  7178. of certificate's that this challenge solver will apply to.
  7179. type: object
  7180. type: object
  7181. type: object
  7182. token:
  7183. description: The ACME challenge token for this challenge. This is
  7184. the raw value returned from the ACME server.
  7185. type: string
  7186. type:
  7187. description: The type of ACME challenge this resource represents.
  7188. One of "HTTP-01" or "DNS-01".
  7189. enum:
  7190. - HTTP-01
  7191. - DNS-01
  7192. type: string
  7193. url:
  7194. description: The URL of the ACME Challenge resource for this challenge.
  7195. This can be used to lookup details about the status of this challenge.
  7196. type: string
  7197. wildcard:
  7198. description: wildcard will be true if this challenge is for a wildcard
  7199. identifier, for example '*.example.com'.
  7200. type: boolean
  7201. required:
  7202. - authorizationURL
  7203. - dnsName
  7204. - issuerRef
  7205. - key
  7206. - solver
  7207. - token
  7208. - type
  7209. - url
  7210. type: object
  7211. status:
  7212. properties:
  7213. presented:
  7214. description: presented will be set to true if the challenge values
  7215. for this challenge are currently 'presented'. This *does not* imply
  7216. the self check is passing. Only that the values have been 'submitted'
  7217. for the appropriate challenge mechanism (i.e. the DNS01 TXT record
  7218. has been presented, or the HTTP01 configuration has been configured).
  7219. type: boolean
  7220. processing:
  7221. description: Used to denote whether this challenge should be processed
  7222. or not. This field will only be set to true by the 'scheduling'
  7223. component. It will only be set to false by the 'challenges' controller,
  7224. after the challenge has reached a final state or timed out. If this
  7225. field is set to false, the challenge controller will not take any
  7226. more action.
  7227. type: boolean
  7228. reason:
  7229. description: Contains human readable information on why the Challenge
  7230. is in the current state.
  7231. type: string
  7232. state:
  7233. description: Contains the current 'state' of the challenge. If not
  7234. set, the state of the challenge is unknown.
  7235. enum:
  7236. - valid
  7237. - ready
  7238. - pending
  7239. - processing
  7240. - invalid
  7241. - expired
  7242. - errored
  7243. type: string
  7244. type: object
  7245. required:
  7246. - metadata
  7247. - spec
  7248. type: object
  7249. served: true
  7250. storage: false
  7251. subresources:
  7252. status: {}
  7253. - additionalPrinterColumns:
  7254. - jsonPath: .status.state
  7255. name: State
  7256. type: string
  7257. - jsonPath: .spec.dnsName
  7258. name: Domain
  7259. type: string
  7260. - jsonPath: .status.reason
  7261. name: Reason
  7262. priority: 1
  7263. type: string
  7264. - description: CreationTimestamp is a timestamp representing the server time when
  7265. this object was created. It is not guaranteed to be set in happens-before
  7266. order across separate operations. Clients may not set this value. It is represented
  7267. in RFC3339 form and is in UTC.
  7268. jsonPath: .metadata.creationTimestamp
  7269. name: Age
  7270. type: date
  7271. name: v1
  7272. schema:
  7273. openAPIV3Schema:
  7274. description: Challenge is a type to represent a Challenge request with an
  7275. ACME server
  7276. properties:
  7277. apiVersion:
  7278. description: 'APIVersion defines the versioned schema of this representation
  7279. of an object. Servers should convert recognized schemas to the latest
  7280. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  7281. type: string
  7282. kind:
  7283. description: 'Kind is a string value representing the REST resource this
  7284. object represents. Servers may infer this from the endpoint the client
  7285. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  7286. type: string
  7287. metadata:
  7288. type: object
  7289. spec:
  7290. properties:
  7291. authorizationURL:
  7292. description: The URL to the ACME Authorization resource that this
  7293. challenge is a part of.
  7294. type: string
  7295. dnsName:
  7296. description: dnsName is the identifier that this challenge is for,
  7297. e.g. example.com. If the requested DNSName is a 'wildcard', this
  7298. field MUST be set to the non-wildcard domain, e.g. for `*.example.com`,
  7299. it must be `example.com`.
  7300. type: string
  7301. issuerRef:
  7302. description: References a properly configured ACME-type Issuer which
  7303. should be used to create this Challenge. If the Issuer does not
  7304. exist, processing will be retried. If the Issuer is not an 'ACME'
  7305. Issuer, an error will be returned and the Challenge will be marked
  7306. as failed.
  7307. properties:
  7308. group:
  7309. description: Group of the resource being referred to.
  7310. type: string
  7311. kind:
  7312. description: Kind of the resource being referred to.
  7313. type: string
  7314. name:
  7315. description: Name of the resource being referred to.
  7316. type: string
  7317. required:
  7318. - name
  7319. type: object
  7320. key:
  7321. description: 'The ACME challenge key for this challenge For HTTP01
  7322. challenges, this is the value that must be responded with to complete
  7323. the HTTP01 challenge in the format: `<private key JWK thumbprint>.<key
  7324. from acme server for challenge>`. For DNS01 challenges, this is
  7325. the base64 encoded SHA256 sum of the `<private key JWK thumbprint>.<key
  7326. from acme server for challenge>` text that must be set as the TXT
  7327. record content.'
  7328. type: string
  7329. solver:
  7330. description: Contains the domain solving configuration that should
  7331. be used to solve this challenge resource.
  7332. properties:
  7333. dns01:
  7334. description: Configures cert-manager to attempt to complete authorizations
  7335. by performing the DNS01 challenge flow.
  7336. properties:
  7337. acmeDNS:
  7338. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  7339. API to manage DNS01 challenge records.
  7340. properties:
  7341. accountSecretRef:
  7342. description: A reference to a specific 'key' within a
  7343. Secret resource. In some instances, `key` is a required
  7344. field.
  7345. properties:
  7346. key:
  7347. description: The key of the entry in the Secret resource's
  7348. `data` field to be used. Some instances of this
  7349. field may be defaulted, in others it may be required.
  7350. type: string
  7351. name:
  7352. description: 'Name of the resource being referred
  7353. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7354. type: string
  7355. required:
  7356. - name
  7357. type: object
  7358. host:
  7359. type: string
  7360. required:
  7361. - accountSecretRef
  7362. - host
  7363. type: object
  7364. akamai:
  7365. description: Use the Akamai DNS zone management API to manage
  7366. DNS01 challenge records.
  7367. properties:
  7368. accessTokenSecretRef:
  7369. description: A reference to a specific 'key' within a
  7370. Secret resource. In some instances, `key` is a required
  7371. field.
  7372. properties:
  7373. key:
  7374. description: The key of the entry in the Secret resource's
  7375. `data` field to be used. Some instances of this
  7376. field may be defaulted, in others it may be required.
  7377. type: string
  7378. name:
  7379. description: 'Name of the resource being referred
  7380. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7381. type: string
  7382. required:
  7383. - name
  7384. type: object
  7385. clientSecretSecretRef:
  7386. description: A reference to a specific 'key' within a
  7387. Secret resource. In some instances, `key` is a required
  7388. field.
  7389. properties:
  7390. key:
  7391. description: The key of the entry in the Secret resource's
  7392. `data` field to be used. Some instances of this
  7393. field may be defaulted, in others it may be required.
  7394. type: string
  7395. name:
  7396. description: 'Name of the resource being referred
  7397. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7398. type: string
  7399. required:
  7400. - name
  7401. type: object
  7402. clientTokenSecretRef:
  7403. description: A reference to a specific 'key' within a
  7404. Secret resource. In some instances, `key` is a required
  7405. field.
  7406. properties:
  7407. key:
  7408. description: The key of the entry in the Secret resource's
  7409. `data` field to be used. Some instances of this
  7410. field may be defaulted, in others it may be required.
  7411. type: string
  7412. name:
  7413. description: 'Name of the resource being referred
  7414. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7415. type: string
  7416. required:
  7417. - name
  7418. type: object
  7419. serviceConsumerDomain:
  7420. type: string
  7421. required:
  7422. - accessTokenSecretRef
  7423. - clientSecretSecretRef
  7424. - clientTokenSecretRef
  7425. - serviceConsumerDomain
  7426. type: object
  7427. azureDNS:
  7428. description: Use the Microsoft Azure DNS API to manage DNS01
  7429. challenge records.
  7430. properties:
  7431. clientID:
  7432. description: if both this and ClientSecret are left unset
  7433. MSI will be used
  7434. type: string
  7435. clientSecretSecretRef:
  7436. description: if both this and ClientID are left unset
  7437. MSI will be used
  7438. properties:
  7439. key:
  7440. description: The key of the entry in the Secret resource's
  7441. `data` field to be used. Some instances of this
  7442. field may be defaulted, in others it may be required.
  7443. type: string
  7444. name:
  7445. description: 'Name of the resource being referred
  7446. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7447. type: string
  7448. required:
  7449. - name
  7450. type: object
  7451. environment:
  7452. enum:
  7453. - AzurePublicCloud
  7454. - AzureChinaCloud
  7455. - AzureGermanCloud
  7456. - AzureUSGovernmentCloud
  7457. type: string
  7458. hostedZoneName:
  7459. type: string
  7460. resourceGroupName:
  7461. type: string
  7462. subscriptionID:
  7463. type: string
  7464. tenantID:
  7465. description: when specifying ClientID and ClientSecret
  7466. then this field is also needed
  7467. type: string
  7468. required:
  7469. - resourceGroupName
  7470. - subscriptionID
  7471. type: object
  7472. cloudDNS:
  7473. description: Use the Google Cloud DNS API to manage DNS01
  7474. challenge records.
  7475. properties:
  7476. hostedZoneName:
  7477. description: HostedZoneName is an optional field that
  7478. tells cert-manager in which Cloud DNS zone the challenge
  7479. record has to be created. If left empty cert-manager
  7480. will automatically choose a zone.
  7481. type: string
  7482. project:
  7483. type: string
  7484. serviceAccountSecretRef:
  7485. description: A reference to a specific 'key' within a
  7486. Secret resource. In some instances, `key` is a required
  7487. field.
  7488. properties:
  7489. key:
  7490. description: The key of the entry in the Secret resource's
  7491. `data` field to be used. Some instances of this
  7492. field may be defaulted, in others it may be required.
  7493. type: string
  7494. name:
  7495. description: 'Name of the resource being referred
  7496. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7497. type: string
  7498. required:
  7499. - name
  7500. type: object
  7501. required:
  7502. - project
  7503. type: object
  7504. cloudflare:
  7505. description: Use the Cloudflare API to manage DNS01 challenge
  7506. records.
  7507. properties:
  7508. apiKeySecretRef:
  7509. description: 'API key to use to authenticate with Cloudflare.
  7510. Note: using an API token to authenticate is now the
  7511. recommended method as it allows greater control of permissions.'
  7512. properties:
  7513. key:
  7514. description: The key of the entry in the Secret resource's
  7515. `data` field to be used. Some instances of this
  7516. field may be defaulted, in others it may be required.
  7517. type: string
  7518. name:
  7519. description: 'Name of the resource being referred
  7520. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7521. type: string
  7522. required:
  7523. - name
  7524. type: object
  7525. apiTokenSecretRef:
  7526. description: API token used to authenticate with Cloudflare.
  7527. properties:
  7528. key:
  7529. description: The key of the entry in the Secret resource's
  7530. `data` field to be used. Some instances of this
  7531. field may be defaulted, in others it may be required.
  7532. type: string
  7533. name:
  7534. description: 'Name of the resource being referred
  7535. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7536. type: string
  7537. required:
  7538. - name
  7539. type: object
  7540. email:
  7541. description: Email of the account, only required when
  7542. using API key based authentication.
  7543. type: string
  7544. type: object
  7545. cnameStrategy:
  7546. description: CNAMEStrategy configures how the DNS01 provider
  7547. should handle CNAME records when found in DNS zones.
  7548. enum:
  7549. - None
  7550. - Follow
  7551. type: string
  7552. digitalocean:
  7553. description: Use the DigitalOcean DNS API to manage DNS01
  7554. challenge records.
  7555. properties:
  7556. tokenSecretRef:
  7557. description: A reference to a specific 'key' within a
  7558. Secret resource. In some instances, `key` is a required
  7559. field.
  7560. properties:
  7561. key:
  7562. description: The key of the entry in the Secret resource's
  7563. `data` field to be used. Some instances of this
  7564. field may be defaulted, in others it may be required.
  7565. type: string
  7566. name:
  7567. description: 'Name of the resource being referred
  7568. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7569. type: string
  7570. required:
  7571. - name
  7572. type: object
  7573. required:
  7574. - tokenSecretRef
  7575. type: object
  7576. rfc2136:
  7577. description: Use RFC2136 ("Dynamic Updates in the Domain Name
  7578. System") (https://datatracker.ietf.org/doc/rfc2136/) to
  7579. manage DNS01 challenge records.
  7580. properties:
  7581. nameserver:
  7582. description: The IP address or hostname of an authoritative
  7583. DNS server supporting RFC2136 in the form host:port.
  7584. If the host is an IPv6 address it must be enclosed in
  7585. square brackets (e.g [2001:db8::1]) ; port is optional.
  7586. This field is required.
  7587. type: string
  7588. tsigAlgorithm:
  7589. description: 'The TSIG Algorithm configured in the DNS
  7590. supporting RFC2136. Used only when ``tsigSecretSecretRef``
  7591. and ``tsigKeyName`` are defined. Supported values are
  7592. (case-insensitive): ``HMACMD5`` (default), ``HMACSHA1``,
  7593. ``HMACSHA256`` or ``HMACSHA512``.'
  7594. type: string
  7595. tsigKeyName:
  7596. description: The TSIG Key name configured in the DNS.
  7597. If ``tsigSecretSecretRef`` is defined, this field is
  7598. required.
  7599. type: string
  7600. tsigSecretSecretRef:
  7601. description: The name of the secret containing the TSIG
  7602. value. If ``tsigKeyName`` is defined, this field is
  7603. required.
  7604. properties:
  7605. key:
  7606. description: The key of the entry in the Secret resource's
  7607. `data` field to be used. Some instances of this
  7608. field may be defaulted, in others it may be required.
  7609. type: string
  7610. name:
  7611. description: 'Name of the resource being referred
  7612. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7613. type: string
  7614. required:
  7615. - name
  7616. type: object
  7617. required:
  7618. - nameserver
  7619. type: object
  7620. route53:
  7621. description: Use the AWS Route53 API to manage DNS01 challenge
  7622. records.
  7623. properties:
  7624. accessKeyID:
  7625. description: 'The AccessKeyID is used for authentication.
  7626. If not set we fall-back to using env vars, shared credentials
  7627. file or AWS Instance metadata see: https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  7628. type: string
  7629. hostedZoneID:
  7630. description: If set, the provider will manage only this
  7631. zone in Route53 and will not do an lookup using the
  7632. route53:ListHostedZonesByName api call.
  7633. type: string
  7634. region:
  7635. description: Always set the region when using AccessKeyID
  7636. and SecretAccessKey
  7637. type: string
  7638. role:
  7639. description: Role is a Role ARN which the Route53 provider
  7640. will assume using either the explicit credentials AccessKeyID/SecretAccessKey
  7641. or the inferred credentials from environment variables,
  7642. shared credentials file or AWS Instance metadata
  7643. type: string
  7644. secretAccessKeySecretRef:
  7645. description: The SecretAccessKey is used for authentication.
  7646. If not set we fall-back to using env vars, shared credentials
  7647. file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  7648. properties:
  7649. key:
  7650. description: The key of the entry in the Secret resource's
  7651. `data` field to be used. Some instances of this
  7652. field may be defaulted, in others it may be required.
  7653. type: string
  7654. name:
  7655. description: 'Name of the resource being referred
  7656. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  7657. type: string
  7658. required:
  7659. - name
  7660. type: object
  7661. required:
  7662. - region
  7663. type: object
  7664. webhook:
  7665. description: Configure an external webhook based DNS01 challenge
  7666. solver to manage DNS01 challenge records.
  7667. properties:
  7668. config:
  7669. description: Additional configuration that should be passed
  7670. to the webhook apiserver when challenges are processed.
  7671. This can contain arbitrary JSON data. Secret values
  7672. should not be specified in this stanza. If secret values
  7673. are needed (e.g. credentials for a DNS service), you
  7674. should use a SecretKeySelector to reference a Secret
  7675. resource. For details on the schema of this field, consult
  7676. the webhook provider implementation's documentation.
  7677. x-kubernetes-preserve-unknown-fields: true
  7678. groupName:
  7679. description: The API group name that should be used when
  7680. POSTing ChallengePayload resources to the webhook apiserver.
  7681. This should be the same as the GroupName specified in
  7682. the webhook provider implementation.
  7683. type: string
  7684. solverName:
  7685. description: The name of the solver to use, as defined
  7686. in the webhook provider implementation. This will typically
  7687. be the name of the provider, e.g. 'cloudflare'.
  7688. type: string
  7689. required:
  7690. - groupName
  7691. - solverName
  7692. type: object
  7693. type: object
  7694. http01:
  7695. description: Configures cert-manager to attempt to complete authorizations
  7696. by performing the HTTP01 challenge flow. It is not possible
  7697. to obtain certificates for wildcard domain names (e.g. `*.example.com`)
  7698. using the HTTP01 challenge mechanism.
  7699. properties:
  7700. ingress:
  7701. description: The ingress based HTTP01 challenge solver will
  7702. solve challenges by creating or modifying Ingress resources
  7703. in order to route requests for '/.well-known/acme-challenge/XYZ'
  7704. to 'challenge solver' pods that are provisioned by cert-manager
  7705. for each Challenge to be completed.
  7706. properties:
  7707. class:
  7708. description: The ingress class to use when creating Ingress
  7709. resources to solve ACME challenges that use this challenge
  7710. solver. Only one of 'class' or 'name' may be specified.
  7711. type: string
  7712. ingressTemplate:
  7713. description: Optional ingress template used to configure
  7714. the ACME challenge solver ingress used for HTTP01 challenges
  7715. properties:
  7716. metadata:
  7717. description: ObjectMeta overrides for the ingress
  7718. used to solve HTTP01 challenges. Only the 'labels'
  7719. and 'annotations' fields may be set. If labels or
  7720. annotations overlap with in-built values, the values
  7721. here will override the in-built values.
  7722. properties:
  7723. annotations:
  7724. additionalProperties:
  7725. type: string
  7726. description: Annotations that should be added
  7727. to the created ACME HTTP01 solver ingress.
  7728. type: object
  7729. labels:
  7730. additionalProperties:
  7731. type: string
  7732. description: Labels that should be added to the
  7733. created ACME HTTP01 solver ingress.
  7734. type: object
  7735. type: object
  7736. type: object
  7737. name:
  7738. description: The name of the ingress resource that should
  7739. have ACME challenge solving routes inserted into it
  7740. in order to solve HTTP01 challenges. This is typically
  7741. used in conjunction with ingress controllers like ingress-gce,
  7742. which maintains a 1:1 mapping between external IPs and
  7743. ingress resources.
  7744. type: string
  7745. podTemplate:
  7746. description: Optional pod template used to configure the
  7747. ACME challenge solver pods used for HTTP01 challenges
  7748. properties:
  7749. metadata:
  7750. description: ObjectMeta overrides for the pod used
  7751. to solve HTTP01 challenges. Only the 'labels' and
  7752. 'annotations' fields may be set. If labels or annotations
  7753. overlap with in-built values, the values here will
  7754. override the in-built values.
  7755. properties:
  7756. annotations:
  7757. additionalProperties:
  7758. type: string
  7759. description: Annotations that should be added
  7760. to the create ACME HTTP01 solver pods.
  7761. type: object
  7762. labels:
  7763. additionalProperties:
  7764. type: string
  7765. description: Labels that should be added to the
  7766. created ACME HTTP01 solver pods.
  7767. type: object
  7768. type: object
  7769. spec:
  7770. description: PodSpec defines overrides for the HTTP01
  7771. challenge solver pod. Only the 'priorityClassName',
  7772. 'nodeSelector', 'affinity', 'serviceAccountName'
  7773. and 'tolerations' fields are supported currently.
  7774. All other fields will be ignored.
  7775. properties:
  7776. affinity:
  7777. description: If specified, the pod's scheduling
  7778. constraints
  7779. properties:
  7780. nodeAffinity:
  7781. description: Describes node affinity scheduling
  7782. rules for the pod.
  7783. properties:
  7784. preferredDuringSchedulingIgnoredDuringExecution:
  7785. description: The scheduler will prefer
  7786. to schedule pods to nodes that satisfy
  7787. the affinity expressions specified by
  7788. this field, but it may choose a node
  7789. that violates one or more of the expressions.
  7790. The node that is most preferred is the
  7791. one with the greatest sum of weights,
  7792. i.e. for each node that meets all of
  7793. the scheduling requirements (resource
  7794. request, requiredDuringScheduling affinity
  7795. expressions, etc.), compute a sum by
  7796. iterating through the elements of this
  7797. field and adding "weight" to the sum
  7798. if the node matches the corresponding
  7799. matchExpressions; the node(s) with the
  7800. highest sum are the most preferred.
  7801. items:
  7802. description: An empty preferred scheduling
  7803. term matches all objects with implicit
  7804. weight 0 (i.e. it's a no-op). A null
  7805. preferred scheduling term matches
  7806. no objects (i.e. is also a no-op).
  7807. properties:
  7808. preference:
  7809. description: A node selector term,
  7810. associated with the corresponding
  7811. weight.
  7812. properties:
  7813. matchExpressions:
  7814. description: A list of node
  7815. selector requirements by node's
  7816. labels.
  7817. items:
  7818. description: A node selector
  7819. requirement is a selector
  7820. that contains values, a
  7821. key, and an operator that
  7822. relates the key and values.
  7823. properties:
  7824. key:
  7825. description: The label
  7826. key that the selector
  7827. applies to.
  7828. type: string
  7829. operator:
  7830. description: Represents
  7831. a key's relationship
  7832. to a set of values.
  7833. Valid operators are
  7834. In, NotIn, Exists, DoesNotExist.
  7835. Gt, and Lt.
  7836. type: string
  7837. values:
  7838. description: An array
  7839. of string values. If
  7840. the operator is In or
  7841. NotIn, the values array
  7842. must be non-empty. If
  7843. the operator is Exists
  7844. or DoesNotExist, the
  7845. values array must be
  7846. empty. If the operator
  7847. is Gt or Lt, the values
  7848. array must have a single
  7849. element, which will
  7850. be interpreted as an
  7851. integer. This array
  7852. is replaced during a
  7853. strategic merge patch.
  7854. items:
  7855. type: string
  7856. type: array
  7857. required:
  7858. - key
  7859. - operator
  7860. type: object
  7861. type: array
  7862. matchFields:
  7863. description: A list of node
  7864. selector requirements by node's
  7865. fields.
  7866. items:
  7867. description: A node selector
  7868. requirement is a selector
  7869. that contains values, a
  7870. key, and an operator that
  7871. relates the key and values.
  7872. properties:
  7873. key:
  7874. description: The label
  7875. key that the selector
  7876. applies to.
  7877. type: string
  7878. operator:
  7879. description: Represents
  7880. a key's relationship
  7881. to a set of values.
  7882. Valid operators are
  7883. In, NotIn, Exists, DoesNotExist.
  7884. Gt, and Lt.
  7885. type: string
  7886. values:
  7887. description: An array
  7888. of string values. If
  7889. the operator is In or
  7890. NotIn, the values array
  7891. must be non-empty. If
  7892. the operator is Exists
  7893. or DoesNotExist, the
  7894. values array must be
  7895. empty. If the operator
  7896. is Gt or Lt, the values
  7897. array must have a single
  7898. element, which will
  7899. be interpreted as an
  7900. integer. This array
  7901. is replaced during a
  7902. strategic merge patch.
  7903. items:
  7904. type: string
  7905. type: array
  7906. required:
  7907. - key
  7908. - operator
  7909. type: object
  7910. type: array
  7911. type: object
  7912. weight:
  7913. description: Weight associated with
  7914. matching the corresponding nodeSelectorTerm,
  7915. in the range 1-100.
  7916. format: int32
  7917. type: integer
  7918. required:
  7919. - preference
  7920. - weight
  7921. type: object
  7922. type: array
  7923. requiredDuringSchedulingIgnoredDuringExecution:
  7924. description: If the affinity requirements
  7925. specified by this field are not met
  7926. at scheduling time, the pod will not
  7927. be scheduled onto the node. If the affinity
  7928. requirements specified by this field
  7929. cease to be met at some point during
  7930. pod execution (e.g. due to an update),
  7931. the system may or may not try to eventually
  7932. evict the pod from its node.
  7933. properties:
  7934. nodeSelectorTerms:
  7935. description: Required. A list of node
  7936. selector terms. The terms are ORed.
  7937. items:
  7938. description: A null or empty node
  7939. selector term matches no objects.
  7940. The requirements of them are ANDed.
  7941. The TopologySelectorTerm type
  7942. implements a subset of the NodeSelectorTerm.
  7943. properties:
  7944. matchExpressions:
  7945. description: A list of node
  7946. selector requirements by node's
  7947. labels.
  7948. items:
  7949. description: A node selector
  7950. requirement is a selector
  7951. that contains values, a
  7952. key, and an operator that
  7953. relates the key and values.
  7954. properties:
  7955. key:
  7956. description: The label
  7957. key that the selector
  7958. applies to.
  7959. type: string
  7960. operator:
  7961. description: Represents
  7962. a key's relationship
  7963. to a set of values.
  7964. Valid operators are
  7965. In, NotIn, Exists, DoesNotExist.
  7966. Gt, and Lt.
  7967. type: string
  7968. values:
  7969. description: An array
  7970. of string values. If
  7971. the operator is In or
  7972. NotIn, the values array
  7973. must be non-empty. If
  7974. the operator is Exists
  7975. or DoesNotExist, the
  7976. values array must be
  7977. empty. If the operator
  7978. is Gt or Lt, the values
  7979. array must have a single
  7980. element, which will
  7981. be interpreted as an
  7982. integer. This array
  7983. is replaced during a
  7984. strategic merge patch.
  7985. items:
  7986. type: string
  7987. type: array
  7988. required:
  7989. - key
  7990. - operator
  7991. type: object
  7992. type: array
  7993. matchFields:
  7994. description: A list of node
  7995. selector requirements by node's
  7996. fields.
  7997. items:
  7998. description: A node selector
  7999. requirement is a selector
  8000. that contains values, a
  8001. key, and an operator that
  8002. relates the key and values.
  8003. properties:
  8004. key:
  8005. description: The label
  8006. key that the selector
  8007. applies to.
  8008. type: string
  8009. operator:
  8010. description: Represents
  8011. a key's relationship
  8012. to a set of values.
  8013. Valid operators are
  8014. In, NotIn, Exists, DoesNotExist.
  8015. Gt, and Lt.
  8016. type: string
  8017. values:
  8018. description: An array
  8019. of string values. If
  8020. the operator is In or
  8021. NotIn, the values array
  8022. must be non-empty. If
  8023. the operator is Exists
  8024. or DoesNotExist, the
  8025. values array must be
  8026. empty. If the operator
  8027. is Gt or Lt, the values
  8028. array must have a single
  8029. element, which will
  8030. be interpreted as an
  8031. integer. This array
  8032. is replaced during a
  8033. strategic merge patch.
  8034. items:
  8035. type: string
  8036. type: array
  8037. required:
  8038. - key
  8039. - operator
  8040. type: object
  8041. type: array
  8042. type: object
  8043. type: array
  8044. required:
  8045. - nodeSelectorTerms
  8046. type: object
  8047. type: object
  8048. podAffinity:
  8049. description: Describes pod affinity scheduling
  8050. rules (e.g. co-locate this pod in the same
  8051. node, zone, etc. as some other pod(s)).
  8052. properties:
  8053. preferredDuringSchedulingIgnoredDuringExecution:
  8054. description: The scheduler will prefer
  8055. to schedule pods to nodes that satisfy
  8056. the affinity expressions specified by
  8057. this field, but it may choose a node
  8058. that violates one or more of the expressions.
  8059. The node that is most preferred is the
  8060. one with the greatest sum of weights,
  8061. i.e. for each node that meets all of
  8062. the scheduling requirements (resource
  8063. request, requiredDuringScheduling affinity
  8064. expressions, etc.), compute a sum by
  8065. iterating through the elements of this
  8066. field and adding "weight" to the sum
  8067. if the node has pods which matches the
  8068. corresponding podAffinityTerm; the node(s)
  8069. with the highest sum are the most preferred.
  8070. items:
  8071. description: The weights of all of the
  8072. matched WeightedPodAffinityTerm fields
  8073. are added per-node to find the most
  8074. preferred node(s)
  8075. properties:
  8076. podAffinityTerm:
  8077. description: Required. A pod affinity
  8078. term, associated with the corresponding
  8079. weight.
  8080. properties:
  8081. labelSelector:
  8082. description: A label query over
  8083. a set of resources, in this
  8084. case pods.
  8085. properties:
  8086. matchExpressions:
  8087. description: matchExpressions
  8088. is a list of label selector
  8089. requirements. The requirements
  8090. are ANDed.
  8091. items:
  8092. description: A label selector
  8093. requirement is a selector
  8094. that contains values,
  8095. a key, and an operator
  8096. that relates the key
  8097. and values.
  8098. properties:
  8099. key:
  8100. description: key is
  8101. the label key that
  8102. the selector applies
  8103. to.
  8104. type: string
  8105. operator:
  8106. description: operator
  8107. represents a key's
  8108. relationship to
  8109. a set of values.
  8110. Valid operators
  8111. are In, NotIn, Exists
  8112. and DoesNotExist.
  8113. type: string
  8114. values:
  8115. description: values
  8116. is an array of string
  8117. values. If the operator
  8118. is In or NotIn,
  8119. the values array
  8120. must be non-empty.
  8121. If the operator
  8122. is Exists or DoesNotExist,
  8123. the values array
  8124. must be empty. This
  8125. array is replaced
  8126. during a strategic
  8127. merge patch.
  8128. items:
  8129. type: string
  8130. type: array
  8131. required:
  8132. - key
  8133. - operator
  8134. type: object
  8135. type: array
  8136. matchLabels:
  8137. additionalProperties:
  8138. type: string
  8139. description: matchLabels
  8140. is a map of {key,value}
  8141. pairs. A single {key,value}
  8142. in the matchLabels map
  8143. is equivalent to an element
  8144. of matchExpressions, whose
  8145. key field is "key", the
  8146. operator is "In", and
  8147. the values array contains
  8148. only "value". The requirements
  8149. are ANDed.
  8150. type: object
  8151. type: object
  8152. namespaces:
  8153. description: namespaces specifies
  8154. which namespaces the labelSelector
  8155. applies to (matches against);
  8156. null or empty list means "this
  8157. pod's namespace"
  8158. items:
  8159. type: string
  8160. type: array
  8161. topologyKey:
  8162. description: This pod should
  8163. be co-located (affinity) or
  8164. not co-located (anti-affinity)
  8165. with the pods matching the
  8166. labelSelector in the specified
  8167. namespaces, where co-located
  8168. is defined as running on a
  8169. node whose value of the label
  8170. with key topologyKey matches
  8171. that of any node on which
  8172. any of the selected pods is
  8173. running. Empty topologyKey
  8174. is not allowed.
  8175. type: string
  8176. required:
  8177. - topologyKey
  8178. type: object
  8179. weight:
  8180. description: weight associated with
  8181. matching the corresponding podAffinityTerm,
  8182. in the range 1-100.
  8183. format: int32
  8184. type: integer
  8185. required:
  8186. - podAffinityTerm
  8187. - weight
  8188. type: object
  8189. type: array
  8190. requiredDuringSchedulingIgnoredDuringExecution:
  8191. description: If the affinity requirements
  8192. specified by this field are not met
  8193. at scheduling time, the pod will not
  8194. be scheduled onto the node. If the affinity
  8195. requirements specified by this field
  8196. cease to be met at some point during
  8197. pod execution (e.g. due to a pod label
  8198. update), the system may or may not try
  8199. to eventually evict the pod from its
  8200. node. When there are multiple elements,
  8201. the lists of nodes corresponding to
  8202. each podAffinityTerm are intersected,
  8203. i.e. all terms must be satisfied.
  8204. items:
  8205. description: Defines a set of pods (namely
  8206. those matching the labelSelector relative
  8207. to the given namespace(s)) that this
  8208. pod should be co-located (affinity)
  8209. or not co-located (anti-affinity)
  8210. with, where co-located is defined
  8211. as running on a node whose value of
  8212. the label with key <topologyKey> matches
  8213. that of any node on which a pod of
  8214. the set of pods is running
  8215. properties:
  8216. labelSelector:
  8217. description: A label query over
  8218. a set of resources, in this case
  8219. pods.
  8220. properties:
  8221. matchExpressions:
  8222. description: matchExpressions
  8223. is a list of label selector
  8224. requirements. The requirements
  8225. are ANDed.
  8226. items:
  8227. description: A label selector
  8228. requirement is a selector
  8229. that contains values, a
  8230. key, and an operator that
  8231. relates the key and values.
  8232. properties:
  8233. key:
  8234. description: key is the
  8235. label key that the selector
  8236. applies to.
  8237. type: string
  8238. operator:
  8239. description: operator
  8240. represents a key's relationship
  8241. to a set of values.
  8242. Valid operators are
  8243. In, NotIn, Exists and
  8244. DoesNotExist.
  8245. type: string
  8246. values:
  8247. description: values is
  8248. an array of string values.
  8249. If the operator is In
  8250. or NotIn, the values
  8251. array must be non-empty.
  8252. If the operator is Exists
  8253. or DoesNotExist, the
  8254. values array must be
  8255. empty. This array is
  8256. replaced during a strategic
  8257. merge patch.
  8258. items:
  8259. type: string
  8260. type: array
  8261. required:
  8262. - key
  8263. - operator
  8264. type: object
  8265. type: array
  8266. matchLabels:
  8267. additionalProperties:
  8268. type: string
  8269. description: matchLabels is
  8270. a map of {key,value} pairs.
  8271. A single {key,value} in the
  8272. matchLabels map is equivalent
  8273. to an element of matchExpressions,
  8274. whose key field is "key",
  8275. the operator is "In", and
  8276. the values array contains
  8277. only "value". The requirements
  8278. are ANDed.
  8279. type: object
  8280. type: object
  8281. namespaces:
  8282. description: namespaces specifies
  8283. which namespaces the labelSelector
  8284. applies to (matches against);
  8285. null or empty list means "this
  8286. pod's namespace"
  8287. items:
  8288. type: string
  8289. type: array
  8290. topologyKey:
  8291. description: This pod should be
  8292. co-located (affinity) or not co-located
  8293. (anti-affinity) with the pods
  8294. matching the labelSelector in
  8295. the specified namespaces, where
  8296. co-located is defined as running
  8297. on a node whose value of the label
  8298. with key topologyKey matches that
  8299. of any node on which any of the
  8300. selected pods is running. Empty
  8301. topologyKey is not allowed.
  8302. type: string
  8303. required:
  8304. - topologyKey
  8305. type: object
  8306. type: array
  8307. type: object
  8308. podAntiAffinity:
  8309. description: Describes pod anti-affinity scheduling
  8310. rules (e.g. avoid putting this pod in the
  8311. same node, zone, etc. as some other pod(s)).
  8312. properties:
  8313. preferredDuringSchedulingIgnoredDuringExecution:
  8314. description: The scheduler will prefer
  8315. to schedule pods to nodes that satisfy
  8316. the anti-affinity expressions specified
  8317. by this field, but it may choose a node
  8318. that violates one or more of the expressions.
  8319. The node that is most preferred is the
  8320. one with the greatest sum of weights,
  8321. i.e. for each node that meets all of
  8322. the scheduling requirements (resource
  8323. request, requiredDuringScheduling anti-affinity
  8324. expressions, etc.), compute a sum by
  8325. iterating through the elements of this
  8326. field and adding "weight" to the sum
  8327. if the node has pods which matches the
  8328. corresponding podAffinityTerm; the node(s)
  8329. with the highest sum are the most preferred.
  8330. items:
  8331. description: The weights of all of the
  8332. matched WeightedPodAffinityTerm fields
  8333. are added per-node to find the most
  8334. preferred node(s)
  8335. properties:
  8336. podAffinityTerm:
  8337. description: Required. A pod affinity
  8338. term, associated with the corresponding
  8339. weight.
  8340. properties:
  8341. labelSelector:
  8342. description: A label query over
  8343. a set of resources, in this
  8344. case pods.
  8345. properties:
  8346. matchExpressions:
  8347. description: matchExpressions
  8348. is a list of label selector
  8349. requirements. The requirements
  8350. are ANDed.
  8351. items:
  8352. description: A label selector
  8353. requirement is a selector
  8354. that contains values,
  8355. a key, and an operator
  8356. that relates the key
  8357. and values.
  8358. properties:
  8359. key:
  8360. description: key is
  8361. the label key that
  8362. the selector applies
  8363. to.
  8364. type: string
  8365. operator:
  8366. description: operator
  8367. represents a key's
  8368. relationship to
  8369. a set of values.
  8370. Valid operators
  8371. are In, NotIn, Exists
  8372. and DoesNotExist.
  8373. type: string
  8374. values:
  8375. description: values
  8376. is an array of string
  8377. values. If the operator
  8378. is In or NotIn,
  8379. the values array
  8380. must be non-empty.
  8381. If the operator
  8382. is Exists or DoesNotExist,
  8383. the values array
  8384. must be empty. This
  8385. array is replaced
  8386. during a strategic
  8387. merge patch.
  8388. items:
  8389. type: string
  8390. type: array
  8391. required:
  8392. - key
  8393. - operator
  8394. type: object
  8395. type: array
  8396. matchLabels:
  8397. additionalProperties:
  8398. type: string
  8399. description: matchLabels
  8400. is a map of {key,value}
  8401. pairs. A single {key,value}
  8402. in the matchLabels map
  8403. is equivalent to an element
  8404. of matchExpressions, whose
  8405. key field is "key", the
  8406. operator is "In", and
  8407. the values array contains
  8408. only "value". The requirements
  8409. are ANDed.
  8410. type: object
  8411. type: object
  8412. namespaces:
  8413. description: namespaces specifies
  8414. which namespaces the labelSelector
  8415. applies to (matches against);
  8416. null or empty list means "this
  8417. pod's namespace"
  8418. items:
  8419. type: string
  8420. type: array
  8421. topologyKey:
  8422. description: This pod should
  8423. be co-located (affinity) or
  8424. not co-located (anti-affinity)
  8425. with the pods matching the
  8426. labelSelector in the specified
  8427. namespaces, where co-located
  8428. is defined as running on a
  8429. node whose value of the label
  8430. with key topologyKey matches
  8431. that of any node on which
  8432. any of the selected pods is
  8433. running. Empty topologyKey
  8434. is not allowed.
  8435. type: string
  8436. required:
  8437. - topologyKey
  8438. type: object
  8439. weight:
  8440. description: weight associated with
  8441. matching the corresponding podAffinityTerm,
  8442. in the range 1-100.
  8443. format: int32
  8444. type: integer
  8445. required:
  8446. - podAffinityTerm
  8447. - weight
  8448. type: object
  8449. type: array
  8450. requiredDuringSchedulingIgnoredDuringExecution:
  8451. description: If the anti-affinity requirements
  8452. specified by this field are not met
  8453. at scheduling time, the pod will not
  8454. be scheduled onto the node. If the anti-affinity
  8455. requirements specified by this field
  8456. cease to be met at some point during
  8457. pod execution (e.g. due to a pod label
  8458. update), the system may or may not try
  8459. to eventually evict the pod from its
  8460. node. When there are multiple elements,
  8461. the lists of nodes corresponding to
  8462. each podAffinityTerm are intersected,
  8463. i.e. all terms must be satisfied.
  8464. items:
  8465. description: Defines a set of pods (namely
  8466. those matching the labelSelector relative
  8467. to the given namespace(s)) that this
  8468. pod should be co-located (affinity)
  8469. or not co-located (anti-affinity)
  8470. with, where co-located is defined
  8471. as running on a node whose value of
  8472. the label with key <topologyKey> matches
  8473. that of any node on which a pod of
  8474. the set of pods is running
  8475. properties:
  8476. labelSelector:
  8477. description: A label query over
  8478. a set of resources, in this case
  8479. pods.
  8480. properties:
  8481. matchExpressions:
  8482. description: matchExpressions
  8483. is a list of label selector
  8484. requirements. The requirements
  8485. are ANDed.
  8486. items:
  8487. description: A label selector
  8488. requirement is a selector
  8489. that contains values, a
  8490. key, and an operator that
  8491. relates the key and values.
  8492. properties:
  8493. key:
  8494. description: key is the
  8495. label key that the selector
  8496. applies to.
  8497. type: string
  8498. operator:
  8499. description: operator
  8500. represents a key's relationship
  8501. to a set of values.
  8502. Valid operators are
  8503. In, NotIn, Exists and
  8504. DoesNotExist.
  8505. type: string
  8506. values:
  8507. description: values is
  8508. an array of string values.
  8509. If the operator is In
  8510. or NotIn, the values
  8511. array must be non-empty.
  8512. If the operator is Exists
  8513. or DoesNotExist, the
  8514. values array must be
  8515. empty. This array is
  8516. replaced during a strategic
  8517. merge patch.
  8518. items:
  8519. type: string
  8520. type: array
  8521. required:
  8522. - key
  8523. - operator
  8524. type: object
  8525. type: array
  8526. matchLabels:
  8527. additionalProperties:
  8528. type: string
  8529. description: matchLabels is
  8530. a map of {key,value} pairs.
  8531. A single {key,value} in the
  8532. matchLabels map is equivalent
  8533. to an element of matchExpressions,
  8534. whose key field is "key",
  8535. the operator is "In", and
  8536. the values array contains
  8537. only "value". The requirements
  8538. are ANDed.
  8539. type: object
  8540. type: object
  8541. namespaces:
  8542. description: namespaces specifies
  8543. which namespaces the labelSelector
  8544. applies to (matches against);
  8545. null or empty list means "this
  8546. pod's namespace"
  8547. items:
  8548. type: string
  8549. type: array
  8550. topologyKey:
  8551. description: This pod should be
  8552. co-located (affinity) or not co-located
  8553. (anti-affinity) with the pods
  8554. matching the labelSelector in
  8555. the specified namespaces, where
  8556. co-located is defined as running
  8557. on a node whose value of the label
  8558. with key topologyKey matches that
  8559. of any node on which any of the
  8560. selected pods is running. Empty
  8561. topologyKey is not allowed.
  8562. type: string
  8563. required:
  8564. - topologyKey
  8565. type: object
  8566. type: array
  8567. type: object
  8568. type: object
  8569. nodeSelector:
  8570. additionalProperties:
  8571. type: string
  8572. description: 'NodeSelector is a selector which
  8573. must be true for the pod to fit on a node. Selector
  8574. which must match a node''s labels for the pod
  8575. to be scheduled on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  8576. type: object
  8577. priorityClassName:
  8578. description: If specified, the pod's priorityClassName.
  8579. type: string
  8580. serviceAccountName:
  8581. description: If specified, the pod's service account
  8582. type: string
  8583. tolerations:
  8584. description: If specified, the pod's tolerations.
  8585. items:
  8586. description: The pod this Toleration is attached
  8587. to tolerates any taint that matches the triple
  8588. <key,value,effect> using the matching operator
  8589. <operator>.
  8590. properties:
  8591. effect:
  8592. description: Effect indicates the taint
  8593. effect to match. Empty means match all
  8594. taint effects. When specified, allowed
  8595. values are NoSchedule, PreferNoSchedule
  8596. and NoExecute.
  8597. type: string
  8598. key:
  8599. description: Key is the taint key that the
  8600. toleration applies to. Empty means match
  8601. all taint keys. If the key is empty, operator
  8602. must be Exists; this combination means
  8603. to match all values and all keys.
  8604. type: string
  8605. operator:
  8606. description: Operator represents a key's
  8607. relationship to the value. Valid operators
  8608. are Exists and Equal. Defaults to Equal.
  8609. Exists is equivalent to wildcard for value,
  8610. so that a pod can tolerate all taints
  8611. of a particular category.
  8612. type: string
  8613. tolerationSeconds:
  8614. description: TolerationSeconds represents
  8615. the period of time the toleration (which
  8616. must be of effect NoExecute, otherwise
  8617. this field is ignored) tolerates the taint.
  8618. By default, it is not set, which means
  8619. tolerate the taint forever (do not evict).
  8620. Zero and negative values will be treated
  8621. as 0 (evict immediately) by the system.
  8622. format: int64
  8623. type: integer
  8624. value:
  8625. description: Value is the taint value the
  8626. toleration matches to. If the operator
  8627. is Exists, the value should be empty,
  8628. otherwise just a regular string.
  8629. type: string
  8630. type: object
  8631. type: array
  8632. type: object
  8633. type: object
  8634. serviceType:
  8635. description: Optional service type for Kubernetes solver
  8636. service
  8637. type: string
  8638. type: object
  8639. type: object
  8640. selector:
  8641. description: Selector selects a set of DNSNames on the Certificate
  8642. resource that should be solved using this challenge solver.
  8643. If not specified, the solver will be treated as the 'default'
  8644. solver with the lowest priority, i.e. if any other solver has
  8645. a more specific match, it will be used instead.
  8646. properties:
  8647. dnsNames:
  8648. description: List of DNSNames that this solver will be used
  8649. to solve. If specified and a match is found, a dnsNames
  8650. selector will take precedence over a dnsZones selector.
  8651. If multiple solvers match with the same dnsNames value,
  8652. the solver with the most matching labels in matchLabels
  8653. will be selected. If neither has more matches, the solver
  8654. defined earlier in the list will be selected.
  8655. items:
  8656. type: string
  8657. type: array
  8658. dnsZones:
  8659. description: List of DNSZones that this solver will be used
  8660. to solve. The most specific DNS zone match specified here
  8661. will take precedence over other DNS zone matches, so a solver
  8662. specifying sys.example.com will be selected over one specifying
  8663. example.com for the domain www.sys.example.com. If multiple
  8664. solvers match with the same dnsZones value, the solver with
  8665. the most matching labels in matchLabels will be selected.
  8666. If neither has more matches, the solver defined earlier
  8667. in the list will be selected.
  8668. items:
  8669. type: string
  8670. type: array
  8671. matchLabels:
  8672. additionalProperties:
  8673. type: string
  8674. description: A label selector that is used to refine the set
  8675. of certificate's that this challenge solver will apply to.
  8676. type: object
  8677. type: object
  8678. type: object
  8679. token:
  8680. description: The ACME challenge token for this challenge. This is
  8681. the raw value returned from the ACME server.
  8682. type: string
  8683. type:
  8684. description: The type of ACME challenge this resource represents.
  8685. One of "HTTP-01" or "DNS-01".
  8686. enum:
  8687. - HTTP-01
  8688. - DNS-01
  8689. type: string
  8690. url:
  8691. description: The URL of the ACME Challenge resource for this challenge.
  8692. This can be used to lookup details about the status of this challenge.
  8693. type: string
  8694. wildcard:
  8695. description: wildcard will be true if this challenge is for a wildcard
  8696. identifier, for example '*.example.com'.
  8697. type: boolean
  8698. required:
  8699. - authorizationURL
  8700. - dnsName
  8701. - issuerRef
  8702. - key
  8703. - solver
  8704. - token
  8705. - type
  8706. - url
  8707. type: object
  8708. status:
  8709. properties:
  8710. presented:
  8711. description: presented will be set to true if the challenge values
  8712. for this challenge are currently 'presented'. This *does not* imply
  8713. the self check is passing. Only that the values have been 'submitted'
  8714. for the appropriate challenge mechanism (i.e. the DNS01 TXT record
  8715. has been presented, or the HTTP01 configuration has been configured).
  8716. type: boolean
  8717. processing:
  8718. description: Used to denote whether this challenge should be processed
  8719. or not. This field will only be set to true by the 'scheduling'
  8720. component. It will only be set to false by the 'challenges' controller,
  8721. after the challenge has reached a final state or timed out. If this
  8722. field is set to false, the challenge controller will not take any
  8723. more action.
  8724. type: boolean
  8725. reason:
  8726. description: Contains human readable information on why the Challenge
  8727. is in the current state.
  8728. type: string
  8729. state:
  8730. description: Contains the current 'state' of the challenge. If not
  8731. set, the state of the challenge is unknown.
  8732. enum:
  8733. - valid
  8734. - ready
  8735. - pending
  8736. - processing
  8737. - invalid
  8738. - expired
  8739. - errored
  8740. type: string
  8741. type: object
  8742. required:
  8743. - metadata
  8744. - spec
  8745. type: object
  8746. served: true
  8747. storage: true
  8748. subresources:
  8749. status: {}
  8750. status:
  8751. acceptedNames:
  8752. kind: ""
  8753. plural: ""
  8754. conditions: []
  8755. storedVersions: []
  8756. ---
  8757. apiVersion: apiextensions.k8s.io/v1
  8758. kind: CustomResourceDefinition
  8759. metadata:
  8760. annotations:
  8761. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  8762. labels:
  8763. app: cert-manager
  8764. app.kubernetes.io/instance: cert-manager
  8765. app.kubernetes.io/name: cert-manager
  8766. name: clusterissuers.cert-manager.io
  8767. spec:
  8768. conversion:
  8769. strategy: Webhook
  8770. webhook:
  8771. clientConfig:
  8772. service:
  8773. name: cert-manager-webhook
  8774. namespace: cert-manager
  8775. path: /convert
  8776. conversionReviewVersions:
  8777. - v1
  8778. - v1beta1
  8779. group: cert-manager.io
  8780. names:
  8781. categories:
  8782. - cert-manager
  8783. kind: ClusterIssuer
  8784. listKind: ClusterIssuerList
  8785. plural: clusterissuers
  8786. singular: clusterissuer
  8787. scope: Cluster
  8788. versions:
  8789. - additionalPrinterColumns:
  8790. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  8791. name: Ready
  8792. type: string
  8793. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  8794. name: Status
  8795. priority: 1
  8796. type: string
  8797. - description: CreationTimestamp is a timestamp representing the server time when
  8798. this object was created. It is not guaranteed to be set in happens-before
  8799. order across separate operations. Clients may not set this value. It is represented
  8800. in RFC3339 form and is in UTC.
  8801. jsonPath: .metadata.creationTimestamp
  8802. name: Age
  8803. type: date
  8804. name: v1alpha2
  8805. schema:
  8806. openAPIV3Schema:
  8807. description: A ClusterIssuer represents a certificate issuing authority which
  8808. can be referenced as part of `issuerRef` fields. It is similar to an Issuer,
  8809. however it is cluster-scoped and therefore can be referenced by resources
  8810. that exist in *any* namespace, not just the same namespace as the referent.
  8811. properties:
  8812. apiVersion:
  8813. description: 'APIVersion defines the versioned schema of this representation
  8814. of an object. Servers should convert recognized schemas to the latest
  8815. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  8816. type: string
  8817. kind:
  8818. description: 'Kind is a string value representing the REST resource this
  8819. object represents. Servers may infer this from the endpoint the client
  8820. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  8821. type: string
  8822. metadata:
  8823. type: object
  8824. spec:
  8825. description: Desired state of the ClusterIssuer resource.
  8826. properties:
  8827. acme:
  8828. description: ACME configures this issuer to communicate with a RFC8555
  8829. (ACME) server to obtain signed x509 certificates.
  8830. properties:
  8831. disableAccountKeyGeneration:
  8832. description: Enables or disables generating a new ACME account
  8833. key. If true, the Issuer resource will *not* request a new account
  8834. but will expect the account key to be supplied via an existing
  8835. secret. If false, the cert-manager system will generate a new
  8836. ACME account key for the Issuer. Defaults to false.
  8837. type: boolean
  8838. email:
  8839. description: Email is the email address to be associated with
  8840. the ACME account. This field is optional, but it is strongly
  8841. recommended to be set. It will be used to contact you in case
  8842. of issues with your account or certificates, including expiry
  8843. notification emails. This field may be updated after the account
  8844. is initially registered.
  8845. type: string
  8846. enableDurationFeature:
  8847. description: Enables requesting a Not After date on certificates
  8848. that matches the duration of the certificate. This is not supported
  8849. by all ACME servers like Let's Encrypt. If set to true when
  8850. the ACME server does not support it it will create an error
  8851. on the Order. Defaults to false.
  8852. type: boolean
  8853. externalAccountBinding:
  8854. description: ExternalAccountBinding is a reference to a CA external
  8855. account of the ACME server. If set, upon registration cert-manager
  8856. will attempt to associate the given external account credentials
  8857. with the registered ACME account.
  8858. properties:
  8859. keyAlgorithm:
  8860. description: keyAlgorithm is the MAC key algorithm that the
  8861. key is used for. Valid values are "HS256", "HS384" and "HS512".
  8862. enum:
  8863. - HS256
  8864. - HS384
  8865. - HS512
  8866. type: string
  8867. keyID:
  8868. description: keyID is the ID of the CA key that the External
  8869. Account is bound to.
  8870. type: string
  8871. keySecretRef:
  8872. description: keySecretRef is a Secret Key Selector referencing
  8873. a data item in a Kubernetes Secret which holds the symmetric
  8874. MAC key of the External Account Binding. The `key` is the
  8875. index string that is paired with the key data in the Secret
  8876. and should not be confused with the key data itself, or
  8877. indeed with the External Account Binding keyID above. The
  8878. secret key stored in the Secret **must** be un-padded, base64
  8879. URL encoded data.
  8880. properties:
  8881. key:
  8882. description: The key of the entry in the Secret resource's
  8883. `data` field to be used. Some instances of this field
  8884. may be defaulted, in others it may be required.
  8885. type: string
  8886. name:
  8887. description: 'Name of the resource being referred to.
  8888. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8889. type: string
  8890. required:
  8891. - name
  8892. type: object
  8893. required:
  8894. - keyAlgorithm
  8895. - keyID
  8896. - keySecretRef
  8897. type: object
  8898. preferredChain:
  8899. description: 'PreferredChain is the chain to use if the ACME server
  8900. outputs multiple. PreferredChain is no guarantee that this one
  8901. gets delivered by the ACME endpoint. For example, for Let''s
  8902. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  8903. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  8904. picks the first certificate bundle in the ACME alternative chains
  8905. that has a certificate with this value as its issuer''s CN'
  8906. maxLength: 64
  8907. type: string
  8908. privateKeySecretRef:
  8909. description: PrivateKey is the name of a Kubernetes Secret resource
  8910. that will be used to store the automatically generated ACME
  8911. account private key. Optionally, a `key` may be specified to
  8912. select a specific entry within the named Secret resource. If
  8913. `key` is not specified, a default of `tls.key` will be used.
  8914. properties:
  8915. key:
  8916. description: The key of the entry in the Secret resource's
  8917. `data` field to be used. Some instances of this field may
  8918. be defaulted, in others it may be required.
  8919. type: string
  8920. name:
  8921. description: 'Name of the resource being referred to. More
  8922. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8923. type: string
  8924. required:
  8925. - name
  8926. type: object
  8927. server:
  8928. description: 'Server is the URL used to access the ACME server''s
  8929. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  8930. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  8931. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  8932. type: string
  8933. skipTLSVerify:
  8934. description: Enables or disables validation of the ACME server
  8935. TLS certificate. If true, requests to the ACME server will not
  8936. have their TLS certificate validated (i.e. insecure connections
  8937. will be allowed). Only enable this option in development environments.
  8938. The cert-manager system installed roots will be used to verify
  8939. connections to the ACME server if this is false. Defaults to
  8940. false.
  8941. type: boolean
  8942. solvers:
  8943. description: 'Solvers is a list of challenge solvers that will
  8944. be used to solve ACME challenges for the matching domains. Solver
  8945. configurations must be provided in order to obtain certificates
  8946. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  8947. items:
  8948. description: Configures an issuer to solve challenges using
  8949. the specified options. Only one of HTTP01 or DNS01 may be
  8950. provided.
  8951. properties:
  8952. dns01:
  8953. description: Configures cert-manager to attempt to complete
  8954. authorizations by performing the DNS01 challenge flow.
  8955. properties:
  8956. acmedns:
  8957. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  8958. API to manage DNS01 challenge records.
  8959. properties:
  8960. accountSecretRef:
  8961. description: A reference to a specific 'key' within
  8962. a Secret resource. In some instances, `key` is
  8963. a required field.
  8964. properties:
  8965. key:
  8966. description: The key of the entry in the Secret
  8967. resource's `data` field to be used. Some instances
  8968. of this field may be defaulted, in others
  8969. it may be required.
  8970. type: string
  8971. name:
  8972. description: 'Name of the resource being referred
  8973. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  8974. type: string
  8975. required:
  8976. - name
  8977. type: object
  8978. host:
  8979. type: string
  8980. required:
  8981. - accountSecretRef
  8982. - host
  8983. type: object
  8984. akamai:
  8985. description: Use the Akamai DNS zone management API
  8986. to manage DNS01 challenge records.
  8987. properties:
  8988. accessTokenSecretRef:
  8989. description: A reference to a specific 'key' within
  8990. a Secret resource. In some instances, `key` is
  8991. a required field.
  8992. properties:
  8993. key:
  8994. description: The key of the entry in the Secret
  8995. resource's `data` field to be used. Some instances
  8996. of this field may be defaulted, in others
  8997. it may be required.
  8998. type: string
  8999. name:
  9000. description: 'Name of the resource being referred
  9001. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9002. type: string
  9003. required:
  9004. - name
  9005. type: object
  9006. clientSecretSecretRef:
  9007. description: A reference to a specific 'key' within
  9008. a Secret resource. In some instances, `key` is
  9009. a required field.
  9010. properties:
  9011. key:
  9012. description: The key of the entry in the Secret
  9013. resource's `data` field to be used. Some instances
  9014. of this field may be defaulted, in others
  9015. it may be required.
  9016. type: string
  9017. name:
  9018. description: 'Name of the resource being referred
  9019. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9020. type: string
  9021. required:
  9022. - name
  9023. type: object
  9024. clientTokenSecretRef:
  9025. description: A reference to a specific 'key' within
  9026. a Secret resource. In some instances, `key` is
  9027. a required field.
  9028. properties:
  9029. key:
  9030. description: The key of the entry in the Secret
  9031. resource's `data` field to be used. Some instances
  9032. of this field may be defaulted, in others
  9033. it may be required.
  9034. type: string
  9035. name:
  9036. description: 'Name of the resource being referred
  9037. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9038. type: string
  9039. required:
  9040. - name
  9041. type: object
  9042. serviceConsumerDomain:
  9043. type: string
  9044. required:
  9045. - accessTokenSecretRef
  9046. - clientSecretSecretRef
  9047. - clientTokenSecretRef
  9048. - serviceConsumerDomain
  9049. type: object
  9050. azuredns:
  9051. description: Use the Microsoft Azure DNS API to manage
  9052. DNS01 challenge records.
  9053. properties:
  9054. clientID:
  9055. description: if both this and ClientSecret are left
  9056. unset MSI will be used
  9057. type: string
  9058. clientSecretSecretRef:
  9059. description: if both this and ClientID are left
  9060. unset MSI will be used
  9061. properties:
  9062. key:
  9063. description: The key of the entry in the Secret
  9064. resource's `data` field to be used. Some instances
  9065. of this field may be defaulted, in others
  9066. it may be required.
  9067. type: string
  9068. name:
  9069. description: 'Name of the resource being referred
  9070. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9071. type: string
  9072. required:
  9073. - name
  9074. type: object
  9075. environment:
  9076. enum:
  9077. - AzurePublicCloud
  9078. - AzureChinaCloud
  9079. - AzureGermanCloud
  9080. - AzureUSGovernmentCloud
  9081. type: string
  9082. hostedZoneName:
  9083. type: string
  9084. resourceGroupName:
  9085. type: string
  9086. subscriptionID:
  9087. type: string
  9088. tenantID:
  9089. description: when specifying ClientID and ClientSecret
  9090. then this field is also needed
  9091. type: string
  9092. required:
  9093. - resourceGroupName
  9094. - subscriptionID
  9095. type: object
  9096. clouddns:
  9097. description: Use the Google Cloud DNS API to manage
  9098. DNS01 challenge records.
  9099. properties:
  9100. hostedZoneName:
  9101. description: HostedZoneName is an optional field
  9102. that tells cert-manager in which Cloud DNS zone
  9103. the challenge record has to be created. If left
  9104. empty cert-manager will automatically choose a
  9105. zone.
  9106. type: string
  9107. project:
  9108. type: string
  9109. serviceAccountSecretRef:
  9110. description: A reference to a specific 'key' within
  9111. a Secret resource. In some instances, `key` is
  9112. a required field.
  9113. properties:
  9114. key:
  9115. description: The key of the entry in the Secret
  9116. resource's `data` field to be used. Some instances
  9117. of this field may be defaulted, in others
  9118. it may be required.
  9119. type: string
  9120. name:
  9121. description: 'Name of the resource being referred
  9122. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9123. type: string
  9124. required:
  9125. - name
  9126. type: object
  9127. required:
  9128. - project
  9129. type: object
  9130. cloudflare:
  9131. description: Use the Cloudflare API to manage DNS01
  9132. challenge records.
  9133. properties:
  9134. apiKeySecretRef:
  9135. description: 'API key to use to authenticate with
  9136. Cloudflare. Note: using an API token to authenticate
  9137. is now the recommended method as it allows greater
  9138. control of permissions.'
  9139. properties:
  9140. key:
  9141. description: The key of the entry in the Secret
  9142. resource's `data` field to be used. Some instances
  9143. of this field may be defaulted, in others
  9144. it may be required.
  9145. type: string
  9146. name:
  9147. description: 'Name of the resource being referred
  9148. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9149. type: string
  9150. required:
  9151. - name
  9152. type: object
  9153. apiTokenSecretRef:
  9154. description: API token used to authenticate with
  9155. Cloudflare.
  9156. properties:
  9157. key:
  9158. description: The key of the entry in the Secret
  9159. resource's `data` field to be used. Some instances
  9160. of this field may be defaulted, in others
  9161. it may be required.
  9162. type: string
  9163. name:
  9164. description: 'Name of the resource being referred
  9165. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9166. type: string
  9167. required:
  9168. - name
  9169. type: object
  9170. email:
  9171. description: Email of the account, only required
  9172. when using API key based authentication.
  9173. type: string
  9174. type: object
  9175. cnameStrategy:
  9176. description: CNAMEStrategy configures how the DNS01
  9177. provider should handle CNAME records when found in
  9178. DNS zones.
  9179. enum:
  9180. - None
  9181. - Follow
  9182. type: string
  9183. digitalocean:
  9184. description: Use the DigitalOcean DNS API to manage
  9185. DNS01 challenge records.
  9186. properties:
  9187. tokenSecretRef:
  9188. description: A reference to a specific 'key' within
  9189. a Secret resource. In some instances, `key` is
  9190. a required field.
  9191. properties:
  9192. key:
  9193. description: The key of the entry in the Secret
  9194. resource's `data` field to be used. Some instances
  9195. of this field may be defaulted, in others
  9196. it may be required.
  9197. type: string
  9198. name:
  9199. description: 'Name of the resource being referred
  9200. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9201. type: string
  9202. required:
  9203. - name
  9204. type: object
  9205. required:
  9206. - tokenSecretRef
  9207. type: object
  9208. rfc2136:
  9209. description: Use RFC2136 ("Dynamic Updates in the Domain
  9210. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  9211. to manage DNS01 challenge records.
  9212. properties:
  9213. nameserver:
  9214. description: The IP address or hostname of an authoritative
  9215. DNS server supporting RFC2136 in the form host:port.
  9216. If the host is an IPv6 address it must be enclosed
  9217. in square brackets (e.g [2001:db8::1]) ; port
  9218. is optional. This field is required.
  9219. type: string
  9220. tsigAlgorithm:
  9221. description: 'The TSIG Algorithm configured in the
  9222. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  9223. and ``tsigKeyName`` are defined. Supported values
  9224. are (case-insensitive): ``HMACMD5`` (default),
  9225. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  9226. type: string
  9227. tsigKeyName:
  9228. description: The TSIG Key name configured in the
  9229. DNS. If ``tsigSecretSecretRef`` is defined, this
  9230. field is required.
  9231. type: string
  9232. tsigSecretSecretRef:
  9233. description: The name of the secret containing the
  9234. TSIG value. If ``tsigKeyName`` is defined, this
  9235. field is required.
  9236. properties:
  9237. key:
  9238. description: The key of the entry in the Secret
  9239. resource's `data` field to be used. Some instances
  9240. of this field may be defaulted, in others
  9241. it may be required.
  9242. type: string
  9243. name:
  9244. description: 'Name of the resource being referred
  9245. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9246. type: string
  9247. required:
  9248. - name
  9249. type: object
  9250. required:
  9251. - nameserver
  9252. type: object
  9253. route53:
  9254. description: Use the AWS Route53 API to manage DNS01
  9255. challenge records.
  9256. properties:
  9257. accessKeyID:
  9258. description: 'The AccessKeyID is used for authentication.
  9259. If not set we fall-back to using env vars, shared
  9260. credentials file or AWS Instance metadata see:
  9261. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  9262. type: string
  9263. hostedZoneID:
  9264. description: If set, the provider will manage only
  9265. this zone in Route53 and will not do an lookup
  9266. using the route53:ListHostedZonesByName api call.
  9267. type: string
  9268. region:
  9269. description: Always set the region when using AccessKeyID
  9270. and SecretAccessKey
  9271. type: string
  9272. role:
  9273. description: Role is a Role ARN which the Route53
  9274. provider will assume using either the explicit
  9275. credentials AccessKeyID/SecretAccessKey or the
  9276. inferred credentials from environment variables,
  9277. shared credentials file or AWS Instance metadata
  9278. type: string
  9279. secretAccessKeySecretRef:
  9280. description: The SecretAccessKey is used for authentication.
  9281. If not set we fall-back to using env vars, shared
  9282. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  9283. properties:
  9284. key:
  9285. description: The key of the entry in the Secret
  9286. resource's `data` field to be used. Some instances
  9287. of this field may be defaulted, in others
  9288. it may be required.
  9289. type: string
  9290. name:
  9291. description: 'Name of the resource being referred
  9292. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  9293. type: string
  9294. required:
  9295. - name
  9296. type: object
  9297. required:
  9298. - region
  9299. type: object
  9300. webhook:
  9301. description: Configure an external webhook based DNS01
  9302. challenge solver to manage DNS01 challenge records.
  9303. properties:
  9304. config:
  9305. description: Additional configuration that should
  9306. be passed to the webhook apiserver when challenges
  9307. are processed. This can contain arbitrary JSON
  9308. data. Secret values should not be specified in
  9309. this stanza. If secret values are needed (e.g.
  9310. credentials for a DNS service), you should use
  9311. a SecretKeySelector to reference a Secret resource.
  9312. For details on the schema of this field, consult
  9313. the webhook provider implementation's documentation.
  9314. x-kubernetes-preserve-unknown-fields: true
  9315. groupName:
  9316. description: The API group name that should be used
  9317. when POSTing ChallengePayload resources to the
  9318. webhook apiserver. This should be the same as
  9319. the GroupName specified in the webhook provider
  9320. implementation.
  9321. type: string
  9322. solverName:
  9323. description: The name of the solver to use, as defined
  9324. in the webhook provider implementation. This will
  9325. typically be the name of the provider, e.g. 'cloudflare'.
  9326. type: string
  9327. required:
  9328. - groupName
  9329. - solverName
  9330. type: object
  9331. type: object
  9332. http01:
  9333. description: Configures cert-manager to attempt to complete
  9334. authorizations by performing the HTTP01 challenge flow.
  9335. It is not possible to obtain certificates for wildcard
  9336. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  9337. mechanism.
  9338. properties:
  9339. ingress:
  9340. description: The ingress based HTTP01 challenge solver
  9341. will solve challenges by creating or modifying Ingress
  9342. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  9343. to 'challenge solver' pods that are provisioned by
  9344. cert-manager for each Challenge to be completed.
  9345. properties:
  9346. class:
  9347. description: The ingress class to use when creating
  9348. Ingress resources to solve ACME challenges that
  9349. use this challenge solver. Only one of 'class'
  9350. or 'name' may be specified.
  9351. type: string
  9352. ingressTemplate:
  9353. description: Optional ingress template used to configure
  9354. the ACME challenge solver ingress used for HTTP01
  9355. challenges
  9356. properties:
  9357. metadata:
  9358. description: ObjectMeta overrides for the ingress
  9359. used to solve HTTP01 challenges. Only the
  9360. 'labels' and 'annotations' fields may be set.
  9361. If labels or annotations overlap with in-built
  9362. values, the values here will override the
  9363. in-built values.
  9364. properties:
  9365. annotations:
  9366. additionalProperties:
  9367. type: string
  9368. description: Annotations that should be
  9369. added to the created ACME HTTP01 solver
  9370. ingress.
  9371. type: object
  9372. labels:
  9373. additionalProperties:
  9374. type: string
  9375. description: Labels that should be added
  9376. to the created ACME HTTP01 solver ingress.
  9377. type: object
  9378. type: object
  9379. type: object
  9380. name:
  9381. description: The name of the ingress resource that
  9382. should have ACME challenge solving routes inserted
  9383. into it in order to solve HTTP01 challenges. This
  9384. is typically used in conjunction with ingress
  9385. controllers like ingress-gce, which maintains
  9386. a 1:1 mapping between external IPs and ingress
  9387. resources.
  9388. type: string
  9389. podTemplate:
  9390. description: Optional pod template used to configure
  9391. the ACME challenge solver pods used for HTTP01
  9392. challenges
  9393. properties:
  9394. metadata:
  9395. description: ObjectMeta overrides for the pod
  9396. used to solve HTTP01 challenges. Only the
  9397. 'labels' and 'annotations' fields may be set.
  9398. If labels or annotations overlap with in-built
  9399. values, the values here will override the
  9400. in-built values.
  9401. properties:
  9402. annotations:
  9403. additionalProperties:
  9404. type: string
  9405. description: Annotations that should be
  9406. added to the create ACME HTTP01 solver
  9407. pods.
  9408. type: object
  9409. labels:
  9410. additionalProperties:
  9411. type: string
  9412. description: Labels that should be added
  9413. to the created ACME HTTP01 solver pods.
  9414. type: object
  9415. type: object
  9416. spec:
  9417. description: PodSpec defines overrides for the
  9418. HTTP01 challenge solver pod. Only the 'priorityClassName',
  9419. 'nodeSelector', 'affinity', 'serviceAccountName'
  9420. and 'tolerations' fields are supported currently.
  9421. All other fields will be ignored.
  9422. properties:
  9423. affinity:
  9424. description: If specified, the pod's scheduling
  9425. constraints
  9426. properties:
  9427. nodeAffinity:
  9428. description: Describes node affinity
  9429. scheduling rules for the pod.
  9430. properties:
  9431. preferredDuringSchedulingIgnoredDuringExecution:
  9432. description: The scheduler will
  9433. prefer to schedule pods to nodes
  9434. that satisfy the affinity expressions
  9435. specified by this field, but it
  9436. may choose a node that violates
  9437. one or more of the expressions.
  9438. The node that is most preferred
  9439. is the one with the greatest sum
  9440. of weights, i.e. for each node
  9441. that meets all of the scheduling
  9442. requirements (resource request,
  9443. requiredDuringScheduling affinity
  9444. expressions, etc.), compute a
  9445. sum by iterating through the elements
  9446. of this field and adding "weight"
  9447. to the sum if the node matches
  9448. the corresponding matchExpressions;
  9449. the node(s) with the highest sum
  9450. are the most preferred.
  9451. items:
  9452. description: An empty preferred
  9453. scheduling term matches all
  9454. objects with implicit weight
  9455. 0 (i.e. it's a no-op). A null
  9456. preferred scheduling term matches
  9457. no objects (i.e. is also a no-op).
  9458. properties:
  9459. preference:
  9460. description: A node selector
  9461. term, associated with the
  9462. corresponding weight.
  9463. properties:
  9464. matchExpressions:
  9465. description: A list of
  9466. node selector requirements
  9467. by node's labels.
  9468. items:
  9469. description: A node
  9470. selector requirement
  9471. is a selector that
  9472. contains values, a
  9473. key, and an operator
  9474. that relates the key
  9475. and values.
  9476. properties:
  9477. key:
  9478. description: The
  9479. label key that
  9480. the selector applies
  9481. to.
  9482. type: string
  9483. operator:
  9484. description: Represents
  9485. a key's relationship
  9486. to a set of values.
  9487. Valid operators
  9488. are In, NotIn,
  9489. Exists, DoesNotExist.
  9490. Gt, and Lt.
  9491. type: string
  9492. values:
  9493. description: An
  9494. array of string
  9495. values. If the
  9496. operator is In
  9497. or NotIn, the
  9498. values array must
  9499. be non-empty.
  9500. If the operator
  9501. is Exists or DoesNotExist,
  9502. the values array
  9503. must be empty.
  9504. If the operator
  9505. is Gt or Lt, the
  9506. values array must
  9507. have a single
  9508. element, which
  9509. will be interpreted
  9510. as an integer.
  9511. This array is
  9512. replaced during
  9513. a strategic merge
  9514. patch.
  9515. items:
  9516. type: string
  9517. type: array
  9518. required:
  9519. - key
  9520. - operator
  9521. type: object
  9522. type: array
  9523. matchFields:
  9524. description: A list of
  9525. node selector requirements
  9526. by node's fields.
  9527. items:
  9528. description: A node
  9529. selector requirement
  9530. is a selector that
  9531. contains values, a
  9532. key, and an operator
  9533. that relates the key
  9534. and values.
  9535. properties:
  9536. key:
  9537. description: The
  9538. label key that
  9539. the selector applies
  9540. to.
  9541. type: string
  9542. operator:
  9543. description: Represents
  9544. a key's relationship
  9545. to a set of values.
  9546. Valid operators
  9547. are In, NotIn,
  9548. Exists, DoesNotExist.
  9549. Gt, and Lt.
  9550. type: string
  9551. values:
  9552. description: An
  9553. array of string
  9554. values. If the
  9555. operator is In
  9556. or NotIn, the
  9557. values array must
  9558. be non-empty.
  9559. If the operator
  9560. is Exists or DoesNotExist,
  9561. the values array
  9562. must be empty.
  9563. If the operator
  9564. is Gt or Lt, the
  9565. values array must
  9566. have a single
  9567. element, which
  9568. will be interpreted
  9569. as an integer.
  9570. This array is
  9571. replaced during
  9572. a strategic merge
  9573. patch.
  9574. items:
  9575. type: string
  9576. type: array
  9577. required:
  9578. - key
  9579. - operator
  9580. type: object
  9581. type: array
  9582. type: object
  9583. weight:
  9584. description: Weight associated
  9585. with matching the corresponding
  9586. nodeSelectorTerm, in the
  9587. range 1-100.
  9588. format: int32
  9589. type: integer
  9590. required:
  9591. - preference
  9592. - weight
  9593. type: object
  9594. type: array
  9595. requiredDuringSchedulingIgnoredDuringExecution:
  9596. description: If the affinity requirements
  9597. specified by this field are not
  9598. met at scheduling time, the pod
  9599. will not be scheduled onto the
  9600. node. If the affinity requirements
  9601. specified by this field cease
  9602. to be met at some point during
  9603. pod execution (e.g. due to an
  9604. update), the system may or may
  9605. not try to eventually evict the
  9606. pod from its node.
  9607. properties:
  9608. nodeSelectorTerms:
  9609. description: Required. A list
  9610. of node selector terms. The
  9611. terms are ORed.
  9612. items:
  9613. description: A null or empty
  9614. node selector term matches
  9615. no objects. The requirements
  9616. of them are ANDed. The TopologySelectorTerm
  9617. type implements a subset
  9618. of the NodeSelectorTerm.
  9619. properties:
  9620. matchExpressions:
  9621. description: A list of
  9622. node selector requirements
  9623. by node's labels.
  9624. items:
  9625. description: A node
  9626. selector requirement
  9627. is a selector that
  9628. contains values, a
  9629. key, and an operator
  9630. that relates the key
  9631. and values.
  9632. properties:
  9633. key:
  9634. description: The
  9635. label key that
  9636. the selector applies
  9637. to.
  9638. type: string
  9639. operator:
  9640. description: Represents
  9641. a key's relationship
  9642. to a set of values.
  9643. Valid operators
  9644. are In, NotIn,
  9645. Exists, DoesNotExist.
  9646. Gt, and Lt.
  9647. type: string
  9648. values:
  9649. description: An
  9650. array of string
  9651. values. If the
  9652. operator is In
  9653. or NotIn, the
  9654. values array must
  9655. be non-empty.
  9656. If the operator
  9657. is Exists or DoesNotExist,
  9658. the values array
  9659. must be empty.
  9660. If the operator
  9661. is Gt or Lt, the
  9662. values array must
  9663. have a single
  9664. element, which
  9665. will be interpreted
  9666. as an integer.
  9667. This array is
  9668. replaced during
  9669. a strategic merge
  9670. patch.
  9671. items:
  9672. type: string
  9673. type: array
  9674. required:
  9675. - key
  9676. - operator
  9677. type: object
  9678. type: array
  9679. matchFields:
  9680. description: A list of
  9681. node selector requirements
  9682. by node's fields.
  9683. items:
  9684. description: A node
  9685. selector requirement
  9686. is a selector that
  9687. contains values, a
  9688. key, and an operator
  9689. that relates the key
  9690. and values.
  9691. properties:
  9692. key:
  9693. description: The
  9694. label key that
  9695. the selector applies
  9696. to.
  9697. type: string
  9698. operator:
  9699. description: Represents
  9700. a key's relationship
  9701. to a set of values.
  9702. Valid operators
  9703. are In, NotIn,
  9704. Exists, DoesNotExist.
  9705. Gt, and Lt.
  9706. type: string
  9707. values:
  9708. description: An
  9709. array of string
  9710. values. If the
  9711. operator is In
  9712. or NotIn, the
  9713. values array must
  9714. be non-empty.
  9715. If the operator
  9716. is Exists or DoesNotExist,
  9717. the values array
  9718. must be empty.
  9719. If the operator
  9720. is Gt or Lt, the
  9721. values array must
  9722. have a single
  9723. element, which
  9724. will be interpreted
  9725. as an integer.
  9726. This array is
  9727. replaced during
  9728. a strategic merge
  9729. patch.
  9730. items:
  9731. type: string
  9732. type: array
  9733. required:
  9734. - key
  9735. - operator
  9736. type: object
  9737. type: array
  9738. type: object
  9739. type: array
  9740. required:
  9741. - nodeSelectorTerms
  9742. type: object
  9743. type: object
  9744. podAffinity:
  9745. description: Describes pod affinity
  9746. scheduling rules (e.g. co-locate this
  9747. pod in the same node, zone, etc. as
  9748. some other pod(s)).
  9749. properties:
  9750. preferredDuringSchedulingIgnoredDuringExecution:
  9751. description: The scheduler will
  9752. prefer to schedule pods to nodes
  9753. that satisfy the affinity expressions
  9754. specified by this field, but it
  9755. may choose a node that violates
  9756. one or more of the expressions.
  9757. The node that is most preferred
  9758. is the one with the greatest sum
  9759. of weights, i.e. for each node
  9760. that meets all of the scheduling
  9761. requirements (resource request,
  9762. requiredDuringScheduling affinity
  9763. expressions, etc.), compute a
  9764. sum by iterating through the elements
  9765. of this field and adding "weight"
  9766. to the sum if the node has pods
  9767. which matches the corresponding
  9768. podAffinityTerm; the node(s) with
  9769. the highest sum are the most preferred.
  9770. items:
  9771. description: The weights of all
  9772. of the matched WeightedPodAffinityTerm
  9773. fields are added per-node to
  9774. find the most preferred node(s)
  9775. properties:
  9776. podAffinityTerm:
  9777. description: Required. A pod
  9778. affinity term, associated
  9779. with the corresponding weight.
  9780. properties:
  9781. labelSelector:
  9782. description: A label query
  9783. over a set of resources,
  9784. in this case pods.
  9785. properties:
  9786. matchExpressions:
  9787. description: matchExpressions
  9788. is a list of label
  9789. selector requirements.
  9790. The requirements
  9791. are ANDed.
  9792. items:
  9793. description: A label
  9794. selector requirement
  9795. is a selector
  9796. that contains
  9797. values, a key,
  9798. and an operator
  9799. that relates the
  9800. key and values.
  9801. properties:
  9802. key:
  9803. description: key
  9804. is the label
  9805. key that the
  9806. selector applies
  9807. to.
  9808. type: string
  9809. operator:
  9810. description: operator
  9811. represents
  9812. a key's relationship
  9813. to a set of
  9814. values. Valid
  9815. operators
  9816. are In, NotIn,
  9817. Exists and
  9818. DoesNotExist.
  9819. type: string
  9820. values:
  9821. description: values
  9822. is an array
  9823. of string
  9824. values. If
  9825. the operator
  9826. is In or NotIn,
  9827. the values
  9828. array must
  9829. be non-empty.
  9830. If the operator
  9831. is Exists
  9832. or DoesNotExist,
  9833. the values
  9834. array must
  9835. be empty.
  9836. This array
  9837. is replaced
  9838. during a strategic
  9839. merge patch.
  9840. items:
  9841. type: string
  9842. type: array
  9843. required:
  9844. - key
  9845. - operator
  9846. type: object
  9847. type: array
  9848. matchLabels:
  9849. additionalProperties:
  9850. type: string
  9851. description: matchLabels
  9852. is a map of {key,value}
  9853. pairs. A single
  9854. {key,value} in the
  9855. matchLabels map
  9856. is equivalent to
  9857. an element of matchExpressions,
  9858. whose key field
  9859. is "key", the operator
  9860. is "In", and the
  9861. values array contains
  9862. only "value". The
  9863. requirements are
  9864. ANDed.
  9865. type: object
  9866. type: object
  9867. namespaces:
  9868. description: namespaces
  9869. specifies which namespaces
  9870. the labelSelector applies
  9871. to (matches against);
  9872. null or empty list means
  9873. "this pod's namespace"
  9874. items:
  9875. type: string
  9876. type: array
  9877. topologyKey:
  9878. description: This pod
  9879. should be co-located
  9880. (affinity) or not co-located
  9881. (anti-affinity) with
  9882. the pods matching the
  9883. labelSelector in the
  9884. specified namespaces,
  9885. where co-located is
  9886. defined as running on
  9887. a node whose value of
  9888. the label with key topologyKey
  9889. matches that of any
  9890. node on which any of
  9891. the selected pods is
  9892. running. Empty topologyKey
  9893. is not allowed.
  9894. type: string
  9895. required:
  9896. - topologyKey
  9897. type: object
  9898. weight:
  9899. description: weight associated
  9900. with matching the corresponding
  9901. podAffinityTerm, in the
  9902. range 1-100.
  9903. format: int32
  9904. type: integer
  9905. required:
  9906. - podAffinityTerm
  9907. - weight
  9908. type: object
  9909. type: array
  9910. requiredDuringSchedulingIgnoredDuringExecution:
  9911. description: If the affinity requirements
  9912. specified by this field are not
  9913. met at scheduling time, the pod
  9914. will not be scheduled onto the
  9915. node. If the affinity requirements
  9916. specified by this field cease
  9917. to be met at some point during
  9918. pod execution (e.g. due to a pod
  9919. label update), the system may
  9920. or may not try to eventually evict
  9921. the pod from its node. When there
  9922. are multiple elements, the lists
  9923. of nodes corresponding to each
  9924. podAffinityTerm are intersected,
  9925. i.e. all terms must be satisfied.
  9926. items:
  9927. description: Defines a set of
  9928. pods (namely those matching
  9929. the labelSelector relative to
  9930. the given namespace(s)) that
  9931. this pod should be co-located
  9932. (affinity) or not co-located
  9933. (anti-affinity) with, where
  9934. co-located is defined as running
  9935. on a node whose value of the
  9936. label with key <topologyKey>
  9937. matches that of any node on
  9938. which a pod of the set of pods
  9939. is running
  9940. properties:
  9941. labelSelector:
  9942. description: A label query
  9943. over a set of resources,
  9944. in this case pods.
  9945. properties:
  9946. matchExpressions:
  9947. description: matchExpressions
  9948. is a list of label selector
  9949. requirements. The requirements
  9950. are ANDed.
  9951. items:
  9952. description: A label
  9953. selector requirement
  9954. is a selector that
  9955. contains values, a
  9956. key, and an operator
  9957. that relates the key
  9958. and values.
  9959. properties:
  9960. key:
  9961. description: key
  9962. is the label key
  9963. that the selector
  9964. applies to.
  9965. type: string
  9966. operator:
  9967. description: operator
  9968. represents a key's
  9969. relationship to
  9970. a set of values.
  9971. Valid operators
  9972. are In, NotIn,
  9973. Exists and DoesNotExist.
  9974. type: string
  9975. values:
  9976. description: values
  9977. is an array of
  9978. string values.
  9979. If the operator
  9980. is In or NotIn,
  9981. the values array
  9982. must be non-empty.
  9983. If the operator
  9984. is Exists or DoesNotExist,
  9985. the values array
  9986. must be empty.
  9987. This array is
  9988. replaced during
  9989. a strategic merge
  9990. patch.
  9991. items:
  9992. type: string
  9993. type: array
  9994. required:
  9995. - key
  9996. - operator
  9997. type: object
  9998. type: array
  9999. matchLabels:
  10000. additionalProperties:
  10001. type: string
  10002. description: matchLabels
  10003. is a map of {key,value}
  10004. pairs. A single {key,value}
  10005. in the matchLabels map
  10006. is equivalent to an
  10007. element of matchExpressions,
  10008. whose key field is "key",
  10009. the operator is "In",
  10010. and the values array
  10011. contains only "value".
  10012. The requirements are
  10013. ANDed.
  10014. type: object
  10015. type: object
  10016. namespaces:
  10017. description: namespaces specifies
  10018. which namespaces the labelSelector
  10019. applies to (matches against);
  10020. null or empty list means
  10021. "this pod's namespace"
  10022. items:
  10023. type: string
  10024. type: array
  10025. topologyKey:
  10026. description: This pod should
  10027. be co-located (affinity)
  10028. or not co-located (anti-affinity)
  10029. with the pods matching the
  10030. labelSelector in the specified
  10031. namespaces, where co-located
  10032. is defined as running on
  10033. a node whose value of the
  10034. label with key topologyKey
  10035. matches that of any node
  10036. on which any of the selected
  10037. pods is running. Empty topologyKey
  10038. is not allowed.
  10039. type: string
  10040. required:
  10041. - topologyKey
  10042. type: object
  10043. type: array
  10044. type: object
  10045. podAntiAffinity:
  10046. description: Describes pod anti-affinity
  10047. scheduling rules (e.g. avoid putting
  10048. this pod in the same node, zone, etc.
  10049. as some other pod(s)).
  10050. properties:
  10051. preferredDuringSchedulingIgnoredDuringExecution:
  10052. description: The scheduler will
  10053. prefer to schedule pods to nodes
  10054. that satisfy the anti-affinity
  10055. expressions specified by this
  10056. field, but it may choose a node
  10057. that violates one or more of the
  10058. expressions. The node that is
  10059. most preferred is the one with
  10060. the greatest sum of weights, i.e.
  10061. for each node that meets all of
  10062. the scheduling requirements (resource
  10063. request, requiredDuringScheduling
  10064. anti-affinity expressions, etc.),
  10065. compute a sum by iterating through
  10066. the elements of this field and
  10067. adding "weight" to the sum if
  10068. the node has pods which matches
  10069. the corresponding podAffinityTerm;
  10070. the node(s) with the highest sum
  10071. are the most preferred.
  10072. items:
  10073. description: The weights of all
  10074. of the matched WeightedPodAffinityTerm
  10075. fields are added per-node to
  10076. find the most preferred node(s)
  10077. properties:
  10078. podAffinityTerm:
  10079. description: Required. A pod
  10080. affinity term, associated
  10081. with the corresponding weight.
  10082. properties:
  10083. labelSelector:
  10084. description: A label query
  10085. over a set of resources,
  10086. in this case pods.
  10087. properties:
  10088. matchExpressions:
  10089. description: matchExpressions
  10090. is a list of label
  10091. selector requirements.
  10092. The requirements
  10093. are ANDed.
  10094. items:
  10095. description: A label
  10096. selector requirement
  10097. is a selector
  10098. that contains
  10099. values, a key,
  10100. and an operator
  10101. that relates the
  10102. key and values.
  10103. properties:
  10104. key:
  10105. description: key
  10106. is the label
  10107. key that the
  10108. selector applies
  10109. to.
  10110. type: string
  10111. operator:
  10112. description: operator
  10113. represents
  10114. a key's relationship
  10115. to a set of
  10116. values. Valid
  10117. operators
  10118. are In, NotIn,
  10119. Exists and
  10120. DoesNotExist.
  10121. type: string
  10122. values:
  10123. description: values
  10124. is an array
  10125. of string
  10126. values. If
  10127. the operator
  10128. is In or NotIn,
  10129. the values
  10130. array must
  10131. be non-empty.
  10132. If the operator
  10133. is Exists
  10134. or DoesNotExist,
  10135. the values
  10136. array must
  10137. be empty.
  10138. This array
  10139. is replaced
  10140. during a strategic
  10141. merge patch.
  10142. items:
  10143. type: string
  10144. type: array
  10145. required:
  10146. - key
  10147. - operator
  10148. type: object
  10149. type: array
  10150. matchLabels:
  10151. additionalProperties:
  10152. type: string
  10153. description: matchLabels
  10154. is a map of {key,value}
  10155. pairs. A single
  10156. {key,value} in the
  10157. matchLabels map
  10158. is equivalent to
  10159. an element of matchExpressions,
  10160. whose key field
  10161. is "key", the operator
  10162. is "In", and the
  10163. values array contains
  10164. only "value". The
  10165. requirements are
  10166. ANDed.
  10167. type: object
  10168. type: object
  10169. namespaces:
  10170. description: namespaces
  10171. specifies which namespaces
  10172. the labelSelector applies
  10173. to (matches against);
  10174. null or empty list means
  10175. "this pod's namespace"
  10176. items:
  10177. type: string
  10178. type: array
  10179. topologyKey:
  10180. description: This pod
  10181. should be co-located
  10182. (affinity) or not co-located
  10183. (anti-affinity) with
  10184. the pods matching the
  10185. labelSelector in the
  10186. specified namespaces,
  10187. where co-located is
  10188. defined as running on
  10189. a node whose value of
  10190. the label with key topologyKey
  10191. matches that of any
  10192. node on which any of
  10193. the selected pods is
  10194. running. Empty topologyKey
  10195. is not allowed.
  10196. type: string
  10197. required:
  10198. - topologyKey
  10199. type: object
  10200. weight:
  10201. description: weight associated
  10202. with matching the corresponding
  10203. podAffinityTerm, in the
  10204. range 1-100.
  10205. format: int32
  10206. type: integer
  10207. required:
  10208. - podAffinityTerm
  10209. - weight
  10210. type: object
  10211. type: array
  10212. requiredDuringSchedulingIgnoredDuringExecution:
  10213. description: If the anti-affinity
  10214. requirements specified by this
  10215. field are not met at scheduling
  10216. time, the pod will not be scheduled
  10217. onto the node. If the anti-affinity
  10218. requirements specified by this
  10219. field cease to be met at some
  10220. point during pod execution (e.g.
  10221. due to a pod label update), the
  10222. system may or may not try to eventually
  10223. evict the pod from its node. When
  10224. there are multiple elements, the
  10225. lists of nodes corresponding to
  10226. each podAffinityTerm are intersected,
  10227. i.e. all terms must be satisfied.
  10228. items:
  10229. description: Defines a set of
  10230. pods (namely those matching
  10231. the labelSelector relative to
  10232. the given namespace(s)) that
  10233. this pod should be co-located
  10234. (affinity) or not co-located
  10235. (anti-affinity) with, where
  10236. co-located is defined as running
  10237. on a node whose value of the
  10238. label with key <topologyKey>
  10239. matches that of any node on
  10240. which a pod of the set of pods
  10241. is running
  10242. properties:
  10243. labelSelector:
  10244. description: A label query
  10245. over a set of resources,
  10246. in this case pods.
  10247. properties:
  10248. matchExpressions:
  10249. description: matchExpressions
  10250. is a list of label selector
  10251. requirements. The requirements
  10252. are ANDed.
  10253. items:
  10254. description: A label
  10255. selector requirement
  10256. is a selector that
  10257. contains values, a
  10258. key, and an operator
  10259. that relates the key
  10260. and values.
  10261. properties:
  10262. key:
  10263. description: key
  10264. is the label key
  10265. that the selector
  10266. applies to.
  10267. type: string
  10268. operator:
  10269. description: operator
  10270. represents a key's
  10271. relationship to
  10272. a set of values.
  10273. Valid operators
  10274. are In, NotIn,
  10275. Exists and DoesNotExist.
  10276. type: string
  10277. values:
  10278. description: values
  10279. is an array of
  10280. string values.
  10281. If the operator
  10282. is In or NotIn,
  10283. the values array
  10284. must be non-empty.
  10285. If the operator
  10286. is Exists or DoesNotExist,
  10287. the values array
  10288. must be empty.
  10289. This array is
  10290. replaced during
  10291. a strategic merge
  10292. patch.
  10293. items:
  10294. type: string
  10295. type: array
  10296. required:
  10297. - key
  10298. - operator
  10299. type: object
  10300. type: array
  10301. matchLabels:
  10302. additionalProperties:
  10303. type: string
  10304. description: matchLabels
  10305. is a map of {key,value}
  10306. pairs. A single {key,value}
  10307. in the matchLabels map
  10308. is equivalent to an
  10309. element of matchExpressions,
  10310. whose key field is "key",
  10311. the operator is "In",
  10312. and the values array
  10313. contains only "value".
  10314. The requirements are
  10315. ANDed.
  10316. type: object
  10317. type: object
  10318. namespaces:
  10319. description: namespaces specifies
  10320. which namespaces the labelSelector
  10321. applies to (matches against);
  10322. null or empty list means
  10323. "this pod's namespace"
  10324. items:
  10325. type: string
  10326. type: array
  10327. topologyKey:
  10328. description: This pod should
  10329. be co-located (affinity)
  10330. or not co-located (anti-affinity)
  10331. with the pods matching the
  10332. labelSelector in the specified
  10333. namespaces, where co-located
  10334. is defined as running on
  10335. a node whose value of the
  10336. label with key topologyKey
  10337. matches that of any node
  10338. on which any of the selected
  10339. pods is running. Empty topologyKey
  10340. is not allowed.
  10341. type: string
  10342. required:
  10343. - topologyKey
  10344. type: object
  10345. type: array
  10346. type: object
  10347. type: object
  10348. nodeSelector:
  10349. additionalProperties:
  10350. type: string
  10351. description: 'NodeSelector is a selector
  10352. which must be true for the pod to fit
  10353. on a node. Selector which must match a
  10354. node''s labels for the pod to be scheduled
  10355. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  10356. type: object
  10357. priorityClassName:
  10358. description: If specified, the pod's priorityClassName.
  10359. type: string
  10360. serviceAccountName:
  10361. description: If specified, the pod's service
  10362. account
  10363. type: string
  10364. tolerations:
  10365. description: If specified, the pod's tolerations.
  10366. items:
  10367. description: The pod this Toleration is
  10368. attached to tolerates any taint that
  10369. matches the triple <key,value,effect>
  10370. using the matching operator <operator>.
  10371. properties:
  10372. effect:
  10373. description: Effect indicates the
  10374. taint effect to match. Empty means
  10375. match all taint effects. When specified,
  10376. allowed values are NoSchedule, PreferNoSchedule
  10377. and NoExecute.
  10378. type: string
  10379. key:
  10380. description: Key is the taint key
  10381. that the toleration applies to.
  10382. Empty means match all taint keys.
  10383. If the key is empty, operator must
  10384. be Exists; this combination means
  10385. to match all values and all keys.
  10386. type: string
  10387. operator:
  10388. description: Operator represents a
  10389. key's relationship to the value.
  10390. Valid operators are Exists and Equal.
  10391. Defaults to Equal. Exists is equivalent
  10392. to wildcard for value, so that a
  10393. pod can tolerate all taints of a
  10394. particular category.
  10395. type: string
  10396. tolerationSeconds:
  10397. description: TolerationSeconds represents
  10398. the period of time the toleration
  10399. (which must be of effect NoExecute,
  10400. otherwise this field is ignored)
  10401. tolerates the taint. By default,
  10402. it is not set, which means tolerate
  10403. the taint forever (do not evict).
  10404. Zero and negative values will be
  10405. treated as 0 (evict immediately)
  10406. by the system.
  10407. format: int64
  10408. type: integer
  10409. value:
  10410. description: Value is the taint value
  10411. the toleration matches to. If the
  10412. operator is Exists, the value should
  10413. be empty, otherwise just a regular
  10414. string.
  10415. type: string
  10416. type: object
  10417. type: array
  10418. type: object
  10419. type: object
  10420. serviceType:
  10421. description: Optional service type for Kubernetes
  10422. solver service
  10423. type: string
  10424. type: object
  10425. type: object
  10426. selector:
  10427. description: Selector selects a set of DNSNames on the Certificate
  10428. resource that should be solved using this challenge solver.
  10429. If not specified, the solver will be treated as the 'default'
  10430. solver with the lowest priority, i.e. if any other solver
  10431. has a more specific match, it will be used instead.
  10432. properties:
  10433. dnsNames:
  10434. description: List of DNSNames that this solver will
  10435. be used to solve. If specified and a match is found,
  10436. a dnsNames selector will take precedence over a dnsZones
  10437. selector. If multiple solvers match with the same
  10438. dnsNames value, the solver with the most matching
  10439. labels in matchLabels will be selected. If neither
  10440. has more matches, the solver defined earlier in the
  10441. list will be selected.
  10442. items:
  10443. type: string
  10444. type: array
  10445. dnsZones:
  10446. description: List of DNSZones that this solver will
  10447. be used to solve. The most specific DNS zone match
  10448. specified here will take precedence over other DNS
  10449. zone matches, so a solver specifying sys.example.com
  10450. will be selected over one specifying example.com for
  10451. the domain www.sys.example.com. If multiple solvers
  10452. match with the same dnsZones value, the solver with
  10453. the most matching labels in matchLabels will be selected.
  10454. If neither has more matches, the solver defined earlier
  10455. in the list will be selected.
  10456. items:
  10457. type: string
  10458. type: array
  10459. matchLabels:
  10460. additionalProperties:
  10461. type: string
  10462. description: A label selector that is used to refine
  10463. the set of certificate's that this challenge solver
  10464. will apply to.
  10465. type: object
  10466. type: object
  10467. type: object
  10468. type: array
  10469. required:
  10470. - privateKeySecretRef
  10471. - server
  10472. type: object
  10473. ca:
  10474. description: CA configures this issuer to sign certificates using
  10475. a signing CA keypair stored in a Secret resource. This is used to
  10476. build internal PKIs that are managed by cert-manager.
  10477. properties:
  10478. crlDistributionPoints:
  10479. description: The CRL distribution points is an X.509 v3 certificate
  10480. extension which identifies the location of the CRL from which
  10481. the revocation of this certificate can be checked. If not set,
  10482. certificates will be issued without distribution points set.
  10483. items:
  10484. type: string
  10485. type: array
  10486. ocspServers:
  10487. description: The OCSP server list is an X.509 v3 extension that
  10488. defines a list of URLs of OCSP responders. The OCSP responders
  10489. can be queried for the revocation status of an issued certificate.
  10490. If not set, the certificate will be issued with no OCSP servers
  10491. set. For example, an OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
  10492. items:
  10493. type: string
  10494. type: array
  10495. secretName:
  10496. description: SecretName is the name of the secret used to sign
  10497. Certificates issued by this Issuer.
  10498. type: string
  10499. required:
  10500. - secretName
  10501. type: object
  10502. selfSigned:
  10503. description: SelfSigned configures this issuer to 'self sign' certificates
  10504. using the private key used to create the CertificateRequest object.
  10505. properties:
  10506. crlDistributionPoints:
  10507. description: The CRL distribution points is an X.509 v3 certificate
  10508. extension which identifies the location of the CRL from which
  10509. the revocation of this certificate can be checked. If not set
  10510. certificate will be issued without CDP. Values are strings.
  10511. items:
  10512. type: string
  10513. type: array
  10514. type: object
  10515. vault:
  10516. description: Vault configures this issuer to sign certificates using
  10517. a HashiCorp Vault PKI backend.
  10518. properties:
  10519. auth:
  10520. description: Auth configures how cert-manager authenticates with
  10521. the Vault server.
  10522. properties:
  10523. appRole:
  10524. description: AppRole authenticates with Vault using the App
  10525. Role auth mechanism, with the role and secret stored in
  10526. a Kubernetes Secret resource.
  10527. properties:
  10528. path:
  10529. description: 'Path where the App Role authentication backend
  10530. is mounted in Vault, e.g: "approle"'
  10531. type: string
  10532. roleId:
  10533. description: RoleID configured in the App Role authentication
  10534. backend when setting up the authentication backend in
  10535. Vault.
  10536. type: string
  10537. secretRef:
  10538. description: Reference to a key in a Secret that contains
  10539. the App Role secret used to authenticate with Vault.
  10540. The `key` field must be specified and denotes which
  10541. entry within the Secret resource is used as the app
  10542. role secret.
  10543. properties:
  10544. key:
  10545. description: The key of the entry in the Secret resource's
  10546. `data` field to be used. Some instances of this
  10547. field may be defaulted, in others it may be required.
  10548. type: string
  10549. name:
  10550. description: 'Name of the resource being referred
  10551. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10552. type: string
  10553. required:
  10554. - name
  10555. type: object
  10556. required:
  10557. - path
  10558. - roleId
  10559. - secretRef
  10560. type: object
  10561. kubernetes:
  10562. description: Kubernetes authenticates with Vault by passing
  10563. the ServiceAccount token stored in the named Secret resource
  10564. to the Vault server.
  10565. properties:
  10566. mountPath:
  10567. description: The Vault mountPath here is the mount path
  10568. to use when authenticating with Vault. For example,
  10569. setting a value to `/v1/auth/foo`, will use the path
  10570. `/v1/auth/foo/login` to authenticate with Vault. If
  10571. unspecified, the default value "/v1/auth/kubernetes"
  10572. will be used.
  10573. type: string
  10574. role:
  10575. description: A required field containing the Vault Role
  10576. to assume. A Role binds a Kubernetes ServiceAccount
  10577. with a set of Vault policies.
  10578. type: string
  10579. secretRef:
  10580. description: The required Secret field containing a Kubernetes
  10581. ServiceAccount JWT used for authenticating with Vault.
  10582. Use of 'ambient credentials' is not supported.
  10583. properties:
  10584. key:
  10585. description: The key of the entry in the Secret resource's
  10586. `data` field to be used. Some instances of this
  10587. field may be defaulted, in others it may be required.
  10588. type: string
  10589. name:
  10590. description: 'Name of the resource being referred
  10591. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10592. type: string
  10593. required:
  10594. - name
  10595. type: object
  10596. required:
  10597. - role
  10598. - secretRef
  10599. type: object
  10600. tokenSecretRef:
  10601. description: TokenSecretRef authenticates with Vault by presenting
  10602. a token.
  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. type: object
  10617. caBundle:
  10618. description: PEM encoded CA bundle used to validate Vault server
  10619. certificate. Only used if the Server URL is using HTTPS protocol.
  10620. This parameter is ignored for plain HTTP protocol connection.
  10621. If not set the system root certificates are used to validate
  10622. the TLS connection.
  10623. format: byte
  10624. type: string
  10625. namespace:
  10626. description: 'Name of the vault namespace. Namespaces is a set
  10627. of features within Vault Enterprise that allows Vault environments
  10628. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  10629. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  10630. type: string
  10631. path:
  10632. description: 'Path is the mount path of the Vault PKI backend''s
  10633. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  10634. type: string
  10635. server:
  10636. description: 'Server is the connection address for the Vault server,
  10637. e.g: "https://vault.example.com:8200".'
  10638. type: string
  10639. required:
  10640. - auth
  10641. - path
  10642. - server
  10643. type: object
  10644. venafi:
  10645. description: Venafi configures this issuer to sign certificates using
  10646. a Venafi TPP or Venafi Cloud policy zone.
  10647. properties:
  10648. cloud:
  10649. description: Cloud specifies the Venafi cloud configuration settings.
  10650. Only one of TPP or Cloud may be specified.
  10651. properties:
  10652. apiTokenSecretRef:
  10653. description: APITokenSecretRef is a secret key selector for
  10654. the Venafi Cloud API token.
  10655. properties:
  10656. key:
  10657. description: The key of the entry in the Secret resource's
  10658. `data` field to be used. Some instances of this field
  10659. may be defaulted, in others it may be required.
  10660. type: string
  10661. name:
  10662. description: 'Name of the resource being referred to.
  10663. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10664. type: string
  10665. required:
  10666. - name
  10667. type: object
  10668. url:
  10669. description: URL is the base URL for Venafi Cloud. Defaults
  10670. to "https://api.venafi.cloud/v1".
  10671. type: string
  10672. required:
  10673. - apiTokenSecretRef
  10674. type: object
  10675. tpp:
  10676. description: TPP specifies Trust Protection Platform configuration
  10677. settings. Only one of TPP or Cloud may be specified.
  10678. properties:
  10679. caBundle:
  10680. description: CABundle is a PEM encoded TLS certificate to
  10681. use to verify connections to the TPP instance. If specified,
  10682. system roots will not be used and the issuing CA for the
  10683. TPP instance must be verifiable using the provided root.
  10684. If not specified, the connection will be verified using
  10685. the cert-manager system root certificates.
  10686. format: byte
  10687. type: string
  10688. credentialsRef:
  10689. description: CredentialsRef is a reference to a Secret containing
  10690. the username and password for the TPP server. The secret
  10691. must contain two keys, 'username' and 'password'.
  10692. properties:
  10693. name:
  10694. description: 'Name of the resource being referred to.
  10695. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10696. type: string
  10697. required:
  10698. - name
  10699. type: object
  10700. url:
  10701. description: 'URL is the base URL for the vedsdk endpoint
  10702. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  10703. type: string
  10704. required:
  10705. - credentialsRef
  10706. - url
  10707. type: object
  10708. zone:
  10709. description: Zone is the Venafi Policy Zone to use for this issuer.
  10710. All requests made to the Venafi platform will be restricted
  10711. by the named zone policy. This field is required.
  10712. type: string
  10713. required:
  10714. - zone
  10715. type: object
  10716. type: object
  10717. status:
  10718. description: Status of the ClusterIssuer. This is set and managed automatically.
  10719. properties:
  10720. acme:
  10721. description: ACME specific status options. This field should only
  10722. be set if the Issuer is configured to use an ACME server to issue
  10723. certificates.
  10724. properties:
  10725. lastRegisteredEmail:
  10726. description: LastRegisteredEmail is the email associated with
  10727. the latest registered ACME account, in order to track changes
  10728. made to registered account associated with the Issuer
  10729. type: string
  10730. uri:
  10731. description: URI is the unique account identifier, which can also
  10732. be used to retrieve account details from the CA
  10733. type: string
  10734. type: object
  10735. conditions:
  10736. description: List of status conditions to indicate the status of a
  10737. CertificateRequest. Known condition types are `Ready`.
  10738. items:
  10739. description: IssuerCondition contains condition information for
  10740. an Issuer.
  10741. properties:
  10742. lastTransitionTime:
  10743. description: LastTransitionTime is the timestamp corresponding
  10744. to the last status change of this condition.
  10745. format: date-time
  10746. type: string
  10747. message:
  10748. description: Message is a human readable description of the
  10749. details of the last transition, complementing reason.
  10750. type: string
  10751. observedGeneration:
  10752. description: If set, this represents the .metadata.generation
  10753. that the condition was set based upon. For instance, if .metadata.generation
  10754. is currently 12, but the .status.condition[x].observedGeneration
  10755. is 9, the condition is out of date with respect to the current
  10756. state of the Issuer.
  10757. format: int64
  10758. type: integer
  10759. reason:
  10760. description: Reason is a brief machine readable explanation
  10761. for the condition's last transition.
  10762. type: string
  10763. status:
  10764. description: Status of the condition, one of (`True`, `False`,
  10765. `Unknown`).
  10766. enum:
  10767. - "True"
  10768. - "False"
  10769. - Unknown
  10770. type: string
  10771. type:
  10772. description: Type of the condition, known values are (`Ready`).
  10773. type: string
  10774. required:
  10775. - status
  10776. - type
  10777. type: object
  10778. type: array
  10779. type: object
  10780. type: object
  10781. served: true
  10782. storage: false
  10783. subresources:
  10784. status: {}
  10785. - additionalPrinterColumns:
  10786. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  10787. name: Ready
  10788. type: string
  10789. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  10790. name: Status
  10791. priority: 1
  10792. type: string
  10793. - description: CreationTimestamp is a timestamp representing the server time when
  10794. this object was created. It is not guaranteed to be set in happens-before
  10795. order across separate operations. Clients may not set this value. It is represented
  10796. in RFC3339 form and is in UTC.
  10797. jsonPath: .metadata.creationTimestamp
  10798. name: Age
  10799. type: date
  10800. name: v1alpha3
  10801. schema:
  10802. openAPIV3Schema:
  10803. description: A ClusterIssuer represents a certificate issuing authority which
  10804. can be referenced as part of `issuerRef` fields. It is similar to an Issuer,
  10805. however it is cluster-scoped and therefore can be referenced by resources
  10806. that exist in *any* namespace, not just the same namespace as the referent.
  10807. properties:
  10808. apiVersion:
  10809. description: 'APIVersion defines the versioned schema of this representation
  10810. of an object. Servers should convert recognized schemas to the latest
  10811. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  10812. type: string
  10813. kind:
  10814. description: 'Kind is a string value representing the REST resource this
  10815. object represents. Servers may infer this from the endpoint the client
  10816. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  10817. type: string
  10818. metadata:
  10819. type: object
  10820. spec:
  10821. description: Desired state of the ClusterIssuer resource.
  10822. properties:
  10823. acme:
  10824. description: ACME configures this issuer to communicate with a RFC8555
  10825. (ACME) server to obtain signed x509 certificates.
  10826. properties:
  10827. disableAccountKeyGeneration:
  10828. description: Enables or disables generating a new ACME account
  10829. key. If true, the Issuer resource will *not* request a new account
  10830. but will expect the account key to be supplied via an existing
  10831. secret. If false, the cert-manager system will generate a new
  10832. ACME account key for the Issuer. Defaults to false.
  10833. type: boolean
  10834. email:
  10835. description: Email is the email address to be associated with
  10836. the ACME account. This field is optional, but it is strongly
  10837. recommended to be set. It will be used to contact you in case
  10838. of issues with your account or certificates, including expiry
  10839. notification emails. This field may be updated after the account
  10840. is initially registered.
  10841. type: string
  10842. enableDurationFeature:
  10843. description: Enables requesting a Not After date on certificates
  10844. that matches the duration of the certificate. This is not supported
  10845. by all ACME servers like Let's Encrypt. If set to true when
  10846. the ACME server does not support it it will create an error
  10847. on the Order. Defaults to false.
  10848. type: boolean
  10849. externalAccountBinding:
  10850. description: ExternalAccountBinding is a reference to a CA external
  10851. account of the ACME server. If set, upon registration cert-manager
  10852. will attempt to associate the given external account credentials
  10853. with the registered ACME account.
  10854. properties:
  10855. keyAlgorithm:
  10856. description: keyAlgorithm is the MAC key algorithm that the
  10857. key is used for. Valid values are "HS256", "HS384" and "HS512".
  10858. enum:
  10859. - HS256
  10860. - HS384
  10861. - HS512
  10862. type: string
  10863. keyID:
  10864. description: keyID is the ID of the CA key that the External
  10865. Account is bound to.
  10866. type: string
  10867. keySecretRef:
  10868. description: keySecretRef is a Secret Key Selector referencing
  10869. a data item in a Kubernetes Secret which holds the symmetric
  10870. MAC key of the External Account Binding. The `key` is the
  10871. index string that is paired with the key data in the Secret
  10872. and should not be confused with the key data itself, or
  10873. indeed with the External Account Binding keyID above. The
  10874. secret key stored in the Secret **must** be un-padded, base64
  10875. URL encoded data.
  10876. properties:
  10877. key:
  10878. description: The key of the entry in the Secret resource's
  10879. `data` field to be used. Some instances of this field
  10880. may be defaulted, in others it may be required.
  10881. type: string
  10882. name:
  10883. description: 'Name of the resource being referred to.
  10884. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10885. type: string
  10886. required:
  10887. - name
  10888. type: object
  10889. required:
  10890. - keyAlgorithm
  10891. - keyID
  10892. - keySecretRef
  10893. type: object
  10894. preferredChain:
  10895. description: 'PreferredChain is the chain to use if the ACME server
  10896. outputs multiple. PreferredChain is no guarantee that this one
  10897. gets delivered by the ACME endpoint. For example, for Let''s
  10898. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  10899. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  10900. picks the first certificate bundle in the ACME alternative chains
  10901. that has a certificate with this value as its issuer''s CN'
  10902. maxLength: 64
  10903. type: string
  10904. privateKeySecretRef:
  10905. description: PrivateKey is the name of a Kubernetes Secret resource
  10906. that will be used to store the automatically generated ACME
  10907. account private key. Optionally, a `key` may be specified to
  10908. select a specific entry within the named Secret resource. If
  10909. `key` is not specified, a default of `tls.key` will be used.
  10910. properties:
  10911. key:
  10912. description: The key of the entry in the Secret resource's
  10913. `data` field to be used. Some instances of this field may
  10914. be defaulted, in others it may be required.
  10915. type: string
  10916. name:
  10917. description: 'Name of the resource being referred to. More
  10918. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10919. type: string
  10920. required:
  10921. - name
  10922. type: object
  10923. server:
  10924. description: 'Server is the URL used to access the ACME server''s
  10925. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  10926. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  10927. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  10928. type: string
  10929. skipTLSVerify:
  10930. description: Enables or disables validation of the ACME server
  10931. TLS certificate. If true, requests to the ACME server will not
  10932. have their TLS certificate validated (i.e. insecure connections
  10933. will be allowed). Only enable this option in development environments.
  10934. The cert-manager system installed roots will be used to verify
  10935. connections to the ACME server if this is false. Defaults to
  10936. false.
  10937. type: boolean
  10938. solvers:
  10939. description: 'Solvers is a list of challenge solvers that will
  10940. be used to solve ACME challenges for the matching domains. Solver
  10941. configurations must be provided in order to obtain certificates
  10942. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  10943. items:
  10944. description: Configures an issuer to solve challenges using
  10945. the specified options. Only one of HTTP01 or DNS01 may be
  10946. provided.
  10947. properties:
  10948. dns01:
  10949. description: Configures cert-manager to attempt to complete
  10950. authorizations by performing the DNS01 challenge flow.
  10951. properties:
  10952. acmedns:
  10953. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  10954. API to manage DNS01 challenge records.
  10955. properties:
  10956. accountSecretRef:
  10957. description: A reference to a specific 'key' within
  10958. a Secret resource. In some instances, `key` is
  10959. a required field.
  10960. properties:
  10961. key:
  10962. description: The key of the entry in the Secret
  10963. resource's `data` field to be used. Some instances
  10964. of this field may be defaulted, in others
  10965. it may be required.
  10966. type: string
  10967. name:
  10968. description: 'Name of the resource being referred
  10969. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10970. type: string
  10971. required:
  10972. - name
  10973. type: object
  10974. host:
  10975. type: string
  10976. required:
  10977. - accountSecretRef
  10978. - host
  10979. type: object
  10980. akamai:
  10981. description: Use the Akamai DNS zone management API
  10982. to manage DNS01 challenge records.
  10983. properties:
  10984. accessTokenSecretRef:
  10985. description: A reference to a specific 'key' within
  10986. a Secret resource. In some instances, `key` is
  10987. a required field.
  10988. properties:
  10989. key:
  10990. description: The key of the entry in the Secret
  10991. resource's `data` field to be used. Some instances
  10992. of this field may be defaulted, in others
  10993. it may be required.
  10994. type: string
  10995. name:
  10996. description: 'Name of the resource being referred
  10997. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  10998. type: string
  10999. required:
  11000. - name
  11001. type: object
  11002. clientSecretSecretRef:
  11003. description: A reference to a specific 'key' within
  11004. a Secret resource. In some instances, `key` is
  11005. a required field.
  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. clientTokenSecretRef:
  11021. description: A reference to a specific 'key' within
  11022. a Secret resource. In some instances, `key` is
  11023. a required field.
  11024. properties:
  11025. key:
  11026. description: The key of the entry in the Secret
  11027. resource's `data` field to be used. Some instances
  11028. of this field may be defaulted, in others
  11029. it may be required.
  11030. type: string
  11031. name:
  11032. description: 'Name of the resource being referred
  11033. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  11034. type: string
  11035. required:
  11036. - name
  11037. type: object
  11038. serviceConsumerDomain:
  11039. type: string
  11040. required:
  11041. - accessTokenSecretRef
  11042. - clientSecretSecretRef
  11043. - clientTokenSecretRef
  11044. - serviceConsumerDomain
  11045. type: object
  11046. azuredns:
  11047. description: Use the Microsoft Azure DNS API to manage
  11048. DNS01 challenge records.
  11049. properties:
  11050. clientID:
  11051. description: if both this and ClientSecret are left
  11052. unset MSI will be used
  11053. type: string
  11054. clientSecretSecretRef:
  11055. description: if both this and ClientID are left
  11056. unset MSI will be used
  11057. properties:
  11058. key:
  11059. description: The key of the entry in the Secret
  11060. resource's `data` field to be used. Some instances
  11061. of this field may be defaulted, in others
  11062. it may be required.
  11063. type: string
  11064. name:
  11065. description: 'Name of the resource being referred
  11066. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  11067. type: string
  11068. required:
  11069. - name
  11070. type: object
  11071. environment:
  11072. enum:
  11073. - AzurePublicCloud
  11074. - AzureChinaCloud
  11075. - AzureGermanCloud
  11076. - AzureUSGovernmentCloud
  11077. type: string
  11078. hostedZoneName:
  11079. type: string
  11080. resourceGroupName:
  11081. type: string
  11082. subscriptionID:
  11083. type: string
  11084. tenantID:
  11085. description: when specifying ClientID and ClientSecret
  11086. then this field is also needed
  11087. type: string
  11088. required:
  11089. - resourceGroupName
  11090. - subscriptionID
  11091. type: object
  11092. clouddns:
  11093. description: Use the Google Cloud DNS API to manage
  11094. DNS01 challenge records.
  11095. properties:
  11096. hostedZoneName:
  11097. description: HostedZoneName is an optional field
  11098. that tells cert-manager in which Cloud DNS zone
  11099. the challenge record has to be created. If left
  11100. empty cert-manager will automatically choose a
  11101. zone.
  11102. type: string
  11103. project:
  11104. type: string
  11105. serviceAccountSecretRef:
  11106. description: A reference to a specific 'key' within
  11107. a Secret resource. In some instances, `key` is
  11108. a required field.
  11109. properties:
  11110. key:
  11111. description: The key of the entry in the Secret
  11112. resource's `data` field to be used. Some instances
  11113. of this field may be defaulted, in others
  11114. it may be required.
  11115. type: string
  11116. name:
  11117. description: 'Name of the resource being referred
  11118. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  11119. type: string
  11120. required:
  11121. - name
  11122. type: object
  11123. required:
  11124. - project
  11125. type: object
  11126. cloudflare:
  11127. description: Use the Cloudflare API to manage DNS01
  11128. challenge records.
  11129. properties:
  11130. apiKeySecretRef:
  11131. description: 'API key to use to authenticate with
  11132. Cloudflare. Note: using an API token to authenticate
  11133. is now the recommended method as it allows greater
  11134. control of permissions.'
  11135. properties:
  11136. key:
  11137. description: The key of the entry in the Secret
  11138. resource's `data` field to be used. Some instances
  11139. of this field may be defaulted, in others
  11140. it may be required.
  11141. type: string
  11142. name:
  11143. description: 'Name of the resource being referred
  11144. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  11145. type: string
  11146. required:
  11147. - name
  11148. type: object
  11149. apiTokenSecretRef:
  11150. description: API token used to authenticate with
  11151. Cloudflare.
  11152. properties:
  11153. key:
  11154. description: The key of the entry in the Secret
  11155. resource's `data` field to be used. Some instances
  11156. of this field may be defaulted, in others
  11157. it may be required.
  11158. type: string
  11159. name:
  11160. description: 'Name of the resource being referred
  11161. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  11162. type: string
  11163. required:
  11164. - name
  11165. type: object
  11166. email:
  11167. description: Email of the account, only required
  11168. when using API key based authentication.
  11169. type: string
  11170. type: object
  11171. cnameStrategy:
  11172. description: CNAMEStrategy configures how the DNS01
  11173. provider should handle CNAME records when found in
  11174. DNS zones.
  11175. enum:
  11176. - None
  11177. - Follow
  11178. type: string
  11179. digitalocean:
  11180. description: Use the DigitalOcean DNS API to manage
  11181. DNS01 challenge records.
  11182. properties:
  11183. tokenSecretRef:
  11184. description: A reference to a specific 'key' within
  11185. a Secret resource. In some instances, `key` is
  11186. a required field.
  11187. properties:
  11188. key:
  11189. description: The key of the entry in the Secret
  11190. resource's `data` field to be used. Some instances
  11191. of this field may be defaulted, in others
  11192. it may be required.
  11193. type: string
  11194. name:
  11195. description: 'Name of the resource being referred
  11196. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  11197. type: string
  11198. required:
  11199. - name
  11200. type: object
  11201. required:
  11202. - tokenSecretRef
  11203. type: object
  11204. rfc2136:
  11205. description: Use RFC2136 ("Dynamic Updates in the Domain
  11206. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  11207. to manage DNS01 challenge records.
  11208. properties:
  11209. nameserver:
  11210. description: The IP address or hostname of an authoritative
  11211. DNS server supporting RFC2136 in the form host:port.
  11212. If the host is an IPv6 address it must be enclosed
  11213. in square brackets (e.g [2001:db8::1]) ; port
  11214. is optional. This field is required.
  11215. type: string
  11216. tsigAlgorithm:
  11217. description: 'The TSIG Algorithm configured in the
  11218. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  11219. and ``tsigKeyName`` are defined. Supported values
  11220. are (case-insensitive): ``HMACMD5`` (default),
  11221. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  11222. type: string
  11223. tsigKeyName:
  11224. description: The TSIG Key name configured in the
  11225. DNS. If ``tsigSecretSecretRef`` is defined, this
  11226. field is required.
  11227. type: string
  11228. tsigSecretSecretRef:
  11229. description: The name of the secret containing the
  11230. TSIG value. If ``tsigKeyName`` is defined, this
  11231. field is required.
  11232. properties:
  11233. key:
  11234. description: The key of the entry in the Secret
  11235. resource's `data` field to be used. Some instances
  11236. of this field may be defaulted, in others
  11237. it may be required.
  11238. type: string
  11239. name:
  11240. description: 'Name of the resource being referred
  11241. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  11242. type: string
  11243. required:
  11244. - name
  11245. type: object
  11246. required:
  11247. - nameserver
  11248. type: object
  11249. route53:
  11250. description: Use the AWS Route53 API to manage DNS01
  11251. challenge records.
  11252. properties:
  11253. accessKeyID:
  11254. description: 'The AccessKeyID is used for authentication.
  11255. If not set we fall-back to using env vars, shared
  11256. credentials file or AWS Instance metadata see:
  11257. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  11258. type: string
  11259. hostedZoneID:
  11260. description: If set, the provider will manage only
  11261. this zone in Route53 and will not do an lookup
  11262. using the route53:ListHostedZonesByName api call.
  11263. type: string
  11264. region:
  11265. description: Always set the region when using AccessKeyID
  11266. and SecretAccessKey
  11267. type: string
  11268. role:
  11269. description: Role is a Role ARN which the Route53
  11270. provider will assume using either the explicit
  11271. credentials AccessKeyID/SecretAccessKey or the
  11272. inferred credentials from environment variables,
  11273. shared credentials file or AWS Instance metadata
  11274. type: string
  11275. secretAccessKeySecretRef:
  11276. description: The SecretAccessKey is used for authentication.
  11277. If not set we fall-back to using env vars, shared
  11278. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  11279. properties:
  11280. key:
  11281. description: The key of the entry in the Secret
  11282. resource's `data` field to be used. Some instances
  11283. of this field may be defaulted, in others
  11284. it may be required.
  11285. type: string
  11286. name:
  11287. description: 'Name of the resource being referred
  11288. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  11289. type: string
  11290. required:
  11291. - name
  11292. type: object
  11293. required:
  11294. - region
  11295. type: object
  11296. webhook:
  11297. description: Configure an external webhook based DNS01
  11298. challenge solver to manage DNS01 challenge records.
  11299. properties:
  11300. config:
  11301. description: Additional configuration that should
  11302. be passed to the webhook apiserver when challenges
  11303. are processed. This can contain arbitrary JSON
  11304. data. Secret values should not be specified in
  11305. this stanza. If secret values are needed (e.g.
  11306. credentials for a DNS service), you should use
  11307. a SecretKeySelector to reference a Secret resource.
  11308. For details on the schema of this field, consult
  11309. the webhook provider implementation's documentation.
  11310. x-kubernetes-preserve-unknown-fields: true
  11311. groupName:
  11312. description: The API group name that should be used
  11313. when POSTing ChallengePayload resources to the
  11314. webhook apiserver. This should be the same as
  11315. the GroupName specified in the webhook provider
  11316. implementation.
  11317. type: string
  11318. solverName:
  11319. description: The name of the solver to use, as defined
  11320. in the webhook provider implementation. This will
  11321. typically be the name of the provider, e.g. 'cloudflare'.
  11322. type: string
  11323. required:
  11324. - groupName
  11325. - solverName
  11326. type: object
  11327. type: object
  11328. http01:
  11329. description: Configures cert-manager to attempt to complete
  11330. authorizations by performing the HTTP01 challenge flow.
  11331. It is not possible to obtain certificates for wildcard
  11332. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  11333. mechanism.
  11334. properties:
  11335. ingress:
  11336. description: The ingress based HTTP01 challenge solver
  11337. will solve challenges by creating or modifying Ingress
  11338. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  11339. to 'challenge solver' pods that are provisioned by
  11340. cert-manager for each Challenge to be completed.
  11341. properties:
  11342. class:
  11343. description: The ingress class to use when creating
  11344. Ingress resources to solve ACME challenges that
  11345. use this challenge solver. Only one of 'class'
  11346. or 'name' may be specified.
  11347. type: string
  11348. ingressTemplate:
  11349. description: Optional ingress template used to configure
  11350. the ACME challenge solver ingress used for HTTP01
  11351. challenges
  11352. properties:
  11353. metadata:
  11354. description: ObjectMeta overrides for the ingress
  11355. used to solve HTTP01 challenges. Only the
  11356. 'labels' and 'annotations' fields may be set.
  11357. If labels or annotations overlap with in-built
  11358. values, the values here will override the
  11359. in-built values.
  11360. properties:
  11361. annotations:
  11362. additionalProperties:
  11363. type: string
  11364. description: Annotations that should be
  11365. added to the created ACME HTTP01 solver
  11366. ingress.
  11367. type: object
  11368. labels:
  11369. additionalProperties:
  11370. type: string
  11371. description: Labels that should be added
  11372. to the created ACME HTTP01 solver ingress.
  11373. type: object
  11374. type: object
  11375. type: object
  11376. name:
  11377. description: The name of the ingress resource that
  11378. should have ACME challenge solving routes inserted
  11379. into it in order to solve HTTP01 challenges. This
  11380. is typically used in conjunction with ingress
  11381. controllers like ingress-gce, which maintains
  11382. a 1:1 mapping between external IPs and ingress
  11383. resources.
  11384. type: string
  11385. podTemplate:
  11386. description: Optional pod template used to configure
  11387. the ACME challenge solver pods used for HTTP01
  11388. challenges
  11389. properties:
  11390. metadata:
  11391. description: ObjectMeta overrides for the pod
  11392. used to solve HTTP01 challenges. Only the
  11393. 'labels' and 'annotations' fields may be set.
  11394. If labels or annotations overlap with in-built
  11395. values, the values here will override the
  11396. in-built values.
  11397. properties:
  11398. annotations:
  11399. additionalProperties:
  11400. type: string
  11401. description: Annotations that should be
  11402. added to the create ACME HTTP01 solver
  11403. pods.
  11404. type: object
  11405. labels:
  11406. additionalProperties:
  11407. type: string
  11408. description: Labels that should be added
  11409. to the created ACME HTTP01 solver pods.
  11410. type: object
  11411. type: object
  11412. spec:
  11413. description: PodSpec defines overrides for the
  11414. HTTP01 challenge solver pod. Only the 'priorityClassName',
  11415. 'nodeSelector', 'affinity', 'serviceAccountName'
  11416. and 'tolerations' fields are supported currently.
  11417. All other fields will be ignored.
  11418. properties:
  11419. affinity:
  11420. description: If specified, the pod's scheduling
  11421. constraints
  11422. properties:
  11423. nodeAffinity:
  11424. description: Describes node affinity
  11425. scheduling rules for the pod.
  11426. properties:
  11427. preferredDuringSchedulingIgnoredDuringExecution:
  11428. description: The scheduler will
  11429. prefer to schedule pods to nodes
  11430. that satisfy the affinity expressions
  11431. specified by this field, but it
  11432. may choose a node that violates
  11433. one or more of the expressions.
  11434. The node that is most preferred
  11435. is the one with the greatest sum
  11436. of weights, i.e. for each node
  11437. that meets all of the scheduling
  11438. requirements (resource request,
  11439. requiredDuringScheduling affinity
  11440. expressions, etc.), compute a
  11441. sum by iterating through the elements
  11442. of this field and adding "weight"
  11443. to the sum if the node matches
  11444. the corresponding matchExpressions;
  11445. the node(s) with the highest sum
  11446. are the most preferred.
  11447. items:
  11448. description: An empty preferred
  11449. scheduling term matches all
  11450. objects with implicit weight
  11451. 0 (i.e. it's a no-op). A null
  11452. preferred scheduling term matches
  11453. no objects (i.e. is also a no-op).
  11454. properties:
  11455. preference:
  11456. description: A node selector
  11457. term, associated with the
  11458. corresponding weight.
  11459. properties:
  11460. matchExpressions:
  11461. description: A list of
  11462. node selector requirements
  11463. by node's labels.
  11464. items:
  11465. description: A node
  11466. selector requirement
  11467. is a selector that
  11468. contains values, a
  11469. key, and an operator
  11470. that relates the key
  11471. and values.
  11472. properties:
  11473. key:
  11474. description: The
  11475. label key that
  11476. the selector applies
  11477. to.
  11478. type: string
  11479. operator:
  11480. description: Represents
  11481. a key's relationship
  11482. to a set of values.
  11483. Valid operators
  11484. are In, NotIn,
  11485. Exists, DoesNotExist.
  11486. Gt, and Lt.
  11487. type: string
  11488. values:
  11489. description: An
  11490. array of string
  11491. values. If the
  11492. operator is In
  11493. or NotIn, the
  11494. values array must
  11495. be non-empty.
  11496. If the operator
  11497. is Exists or DoesNotExist,
  11498. the values array
  11499. must be empty.
  11500. If the operator
  11501. is Gt or Lt, the
  11502. values array must
  11503. have a single
  11504. element, which
  11505. will be interpreted
  11506. as an integer.
  11507. This array is
  11508. replaced during
  11509. a strategic merge
  11510. patch.
  11511. items:
  11512. type: string
  11513. type: array
  11514. required:
  11515. - key
  11516. - operator
  11517. type: object
  11518. type: array
  11519. matchFields:
  11520. description: A list of
  11521. node selector requirements
  11522. by node's fields.
  11523. items:
  11524. description: A node
  11525. selector requirement
  11526. is a selector that
  11527. contains values, a
  11528. key, and an operator
  11529. that relates the key
  11530. and values.
  11531. properties:
  11532. key:
  11533. description: The
  11534. label key that
  11535. the selector applies
  11536. to.
  11537. type: string
  11538. operator:
  11539. description: Represents
  11540. a key's relationship
  11541. to a set of values.
  11542. Valid operators
  11543. are In, NotIn,
  11544. Exists, DoesNotExist.
  11545. Gt, and Lt.
  11546. type: string
  11547. values:
  11548. description: An
  11549. array of string
  11550. values. If the
  11551. operator is In
  11552. or NotIn, the
  11553. values array must
  11554. be non-empty.
  11555. If the operator
  11556. is Exists or DoesNotExist,
  11557. the values array
  11558. must be empty.
  11559. If the operator
  11560. is Gt or Lt, the
  11561. values array must
  11562. have a single
  11563. element, which
  11564. will be interpreted
  11565. as an integer.
  11566. This array is
  11567. replaced during
  11568. a strategic merge
  11569. patch.
  11570. items:
  11571. type: string
  11572. type: array
  11573. required:
  11574. - key
  11575. - operator
  11576. type: object
  11577. type: array
  11578. type: object
  11579. weight:
  11580. description: Weight associated
  11581. with matching the corresponding
  11582. nodeSelectorTerm, in the
  11583. range 1-100.
  11584. format: int32
  11585. type: integer
  11586. required:
  11587. - preference
  11588. - weight
  11589. type: object
  11590. type: array
  11591. requiredDuringSchedulingIgnoredDuringExecution:
  11592. description: If the affinity requirements
  11593. specified by this field are not
  11594. met at scheduling time, the pod
  11595. will not be scheduled onto the
  11596. node. If the affinity requirements
  11597. specified by this field cease
  11598. to be met at some point during
  11599. pod execution (e.g. due to an
  11600. update), the system may or may
  11601. not try to eventually evict the
  11602. pod from its node.
  11603. properties:
  11604. nodeSelectorTerms:
  11605. description: Required. A list
  11606. of node selector terms. The
  11607. terms are ORed.
  11608. items:
  11609. description: A null or empty
  11610. node selector term matches
  11611. no objects. The requirements
  11612. of them are ANDed. The TopologySelectorTerm
  11613. type implements a subset
  11614. of the NodeSelectorTerm.
  11615. properties:
  11616. matchExpressions:
  11617. description: A list of
  11618. node selector requirements
  11619. by node's labels.
  11620. items:
  11621. description: A node
  11622. selector requirement
  11623. is a selector that
  11624. contains values, a
  11625. key, and an operator
  11626. that relates the key
  11627. and values.
  11628. properties:
  11629. key:
  11630. description: The
  11631. label key that
  11632. the selector applies
  11633. to.
  11634. type: string
  11635. operator:
  11636. description: Represents
  11637. a key's relationship
  11638. to a set of values.
  11639. Valid operators
  11640. are In, NotIn,
  11641. Exists, DoesNotExist.
  11642. Gt, and Lt.
  11643. type: string
  11644. values:
  11645. description: An
  11646. array of string
  11647. values. If the
  11648. operator is In
  11649. or NotIn, the
  11650. values array must
  11651. be non-empty.
  11652. If the operator
  11653. is Exists or DoesNotExist,
  11654. the values array
  11655. must be empty.
  11656. If the operator
  11657. is Gt or Lt, the
  11658. values array must
  11659. have a single
  11660. element, which
  11661. will be interpreted
  11662. as an integer.
  11663. This array is
  11664. replaced during
  11665. a strategic merge
  11666. patch.
  11667. items:
  11668. type: string
  11669. type: array
  11670. required:
  11671. - key
  11672. - operator
  11673. type: object
  11674. type: array
  11675. matchFields:
  11676. description: A list of
  11677. node selector requirements
  11678. by node's fields.
  11679. items:
  11680. description: A node
  11681. selector requirement
  11682. is a selector that
  11683. contains values, a
  11684. key, and an operator
  11685. that relates the key
  11686. and values.
  11687. properties:
  11688. key:
  11689. description: The
  11690. label key that
  11691. the selector applies
  11692. to.
  11693. type: string
  11694. operator:
  11695. description: Represents
  11696. a key's relationship
  11697. to a set of values.
  11698. Valid operators
  11699. are In, NotIn,
  11700. Exists, DoesNotExist.
  11701. Gt, and Lt.
  11702. type: string
  11703. values:
  11704. description: An
  11705. array of string
  11706. values. If the
  11707. operator is In
  11708. or NotIn, the
  11709. values array must
  11710. be non-empty.
  11711. If the operator
  11712. is Exists or DoesNotExist,
  11713. the values array
  11714. must be empty.
  11715. If the operator
  11716. is Gt or Lt, the
  11717. values array must
  11718. have a single
  11719. element, which
  11720. will be interpreted
  11721. as an integer.
  11722. This array is
  11723. replaced during
  11724. a strategic merge
  11725. patch.
  11726. items:
  11727. type: string
  11728. type: array
  11729. required:
  11730. - key
  11731. - operator
  11732. type: object
  11733. type: array
  11734. type: object
  11735. type: array
  11736. required:
  11737. - nodeSelectorTerms
  11738. type: object
  11739. type: object
  11740. podAffinity:
  11741. description: Describes pod affinity
  11742. scheduling rules (e.g. co-locate this
  11743. pod in the same node, zone, etc. as
  11744. some other pod(s)).
  11745. properties:
  11746. preferredDuringSchedulingIgnoredDuringExecution:
  11747. description: The scheduler will
  11748. prefer to schedule pods to nodes
  11749. that satisfy the affinity expressions
  11750. specified by this field, but it
  11751. may choose a node that violates
  11752. one or more of the expressions.
  11753. The node that is most preferred
  11754. is the one with the greatest sum
  11755. of weights, i.e. for each node
  11756. that meets all of the scheduling
  11757. requirements (resource request,
  11758. requiredDuringScheduling affinity
  11759. expressions, etc.), compute a
  11760. sum by iterating through the elements
  11761. of this field and adding "weight"
  11762. to the sum if the node has pods
  11763. which matches the corresponding
  11764. podAffinityTerm; the node(s) with
  11765. the highest sum are the most preferred.
  11766. items:
  11767. description: The weights of all
  11768. of the matched WeightedPodAffinityTerm
  11769. fields are added per-node to
  11770. find the most preferred node(s)
  11771. properties:
  11772. podAffinityTerm:
  11773. description: Required. A pod
  11774. affinity term, associated
  11775. with the corresponding weight.
  11776. properties:
  11777. labelSelector:
  11778. description: A label query
  11779. over a set of resources,
  11780. in this case pods.
  11781. properties:
  11782. matchExpressions:
  11783. description: matchExpressions
  11784. is a list of label
  11785. selector requirements.
  11786. The requirements
  11787. are ANDed.
  11788. items:
  11789. description: A label
  11790. selector requirement
  11791. is a selector
  11792. that contains
  11793. values, a key,
  11794. and an operator
  11795. that relates the
  11796. key and values.
  11797. properties:
  11798. key:
  11799. description: key
  11800. is the label
  11801. key that the
  11802. selector applies
  11803. to.
  11804. type: string
  11805. operator:
  11806. description: operator
  11807. represents
  11808. a key's relationship
  11809. to a set of
  11810. values. Valid
  11811. operators
  11812. are In, NotIn,
  11813. Exists and
  11814. DoesNotExist.
  11815. type: string
  11816. values:
  11817. description: values
  11818. is an array
  11819. of string
  11820. values. If
  11821. the operator
  11822. is In or NotIn,
  11823. the values
  11824. array must
  11825. be non-empty.
  11826. If the operator
  11827. is Exists
  11828. or DoesNotExist,
  11829. the values
  11830. array must
  11831. be empty.
  11832. This array
  11833. is replaced
  11834. during a strategic
  11835. merge patch.
  11836. items:
  11837. type: string
  11838. type: array
  11839. required:
  11840. - key
  11841. - operator
  11842. type: object
  11843. type: array
  11844. matchLabels:
  11845. additionalProperties:
  11846. type: string
  11847. description: matchLabels
  11848. is a map of {key,value}
  11849. pairs. A single
  11850. {key,value} in the
  11851. matchLabels map
  11852. is equivalent to
  11853. an element of matchExpressions,
  11854. whose key field
  11855. is "key", the operator
  11856. is "In", and the
  11857. values array contains
  11858. only "value". The
  11859. requirements are
  11860. ANDed.
  11861. type: object
  11862. type: object
  11863. namespaces:
  11864. description: namespaces
  11865. specifies which namespaces
  11866. the labelSelector applies
  11867. to (matches against);
  11868. null or empty list means
  11869. "this pod's namespace"
  11870. items:
  11871. type: string
  11872. type: array
  11873. topologyKey:
  11874. description: This pod
  11875. should be co-located
  11876. (affinity) or not co-located
  11877. (anti-affinity) with
  11878. the pods matching the
  11879. labelSelector in the
  11880. specified namespaces,
  11881. where co-located is
  11882. defined as running on
  11883. a node whose value of
  11884. the label with key topologyKey
  11885. matches that of any
  11886. node on which any of
  11887. the selected pods is
  11888. running. Empty topologyKey
  11889. is not allowed.
  11890. type: string
  11891. required:
  11892. - topologyKey
  11893. type: object
  11894. weight:
  11895. description: weight associated
  11896. with matching the corresponding
  11897. podAffinityTerm, in the
  11898. range 1-100.
  11899. format: int32
  11900. type: integer
  11901. required:
  11902. - podAffinityTerm
  11903. - weight
  11904. type: object
  11905. type: array
  11906. requiredDuringSchedulingIgnoredDuringExecution:
  11907. description: If the affinity requirements
  11908. specified by this field are not
  11909. met at scheduling time, the pod
  11910. will not be scheduled onto the
  11911. node. If the affinity requirements
  11912. specified by this field cease
  11913. to be met at some point during
  11914. pod execution (e.g. due to a pod
  11915. label update), the system may
  11916. or may not try to eventually evict
  11917. the pod from its node. When there
  11918. are multiple elements, the lists
  11919. of nodes corresponding to each
  11920. podAffinityTerm are intersected,
  11921. i.e. all terms must be satisfied.
  11922. items:
  11923. description: Defines a set of
  11924. pods (namely those matching
  11925. the labelSelector relative to
  11926. the given namespace(s)) that
  11927. this pod should be co-located
  11928. (affinity) or not co-located
  11929. (anti-affinity) with, where
  11930. co-located is defined as running
  11931. on a node whose value of the
  11932. label with key <topologyKey>
  11933. matches that of any node on
  11934. which a pod of the set of pods
  11935. is running
  11936. properties:
  11937. labelSelector:
  11938. description: A label query
  11939. over a set of resources,
  11940. in this case pods.
  11941. properties:
  11942. matchExpressions:
  11943. description: matchExpressions
  11944. is a list of label selector
  11945. requirements. The requirements
  11946. are ANDed.
  11947. items:
  11948. description: A label
  11949. selector requirement
  11950. is a selector that
  11951. contains values, a
  11952. key, and an operator
  11953. that relates the key
  11954. and values.
  11955. properties:
  11956. key:
  11957. description: key
  11958. is the label key
  11959. that the selector
  11960. applies to.
  11961. type: string
  11962. operator:
  11963. description: operator
  11964. represents a key's
  11965. relationship to
  11966. a set of values.
  11967. Valid operators
  11968. are In, NotIn,
  11969. Exists and DoesNotExist.
  11970. type: string
  11971. values:
  11972. description: values
  11973. is an array of
  11974. string values.
  11975. If the operator
  11976. is In or NotIn,
  11977. the values array
  11978. must be non-empty.
  11979. If the operator
  11980. is Exists or DoesNotExist,
  11981. the values array
  11982. must be empty.
  11983. This array is
  11984. replaced during
  11985. a strategic merge
  11986. patch.
  11987. items:
  11988. type: string
  11989. type: array
  11990. required:
  11991. - key
  11992. - operator
  11993. type: object
  11994. type: array
  11995. matchLabels:
  11996. additionalProperties:
  11997. type: string
  11998. description: matchLabels
  11999. is a map of {key,value}
  12000. pairs. A single {key,value}
  12001. in the matchLabels map
  12002. is equivalent to an
  12003. element of matchExpressions,
  12004. whose key field is "key",
  12005. the operator is "In",
  12006. and the values array
  12007. contains only "value".
  12008. The requirements are
  12009. ANDed.
  12010. type: object
  12011. type: object
  12012. namespaces:
  12013. description: namespaces specifies
  12014. which namespaces the labelSelector
  12015. applies to (matches against);
  12016. null or empty list means
  12017. "this pod's namespace"
  12018. items:
  12019. type: string
  12020. type: array
  12021. topologyKey:
  12022. description: This pod should
  12023. be co-located (affinity)
  12024. or not co-located (anti-affinity)
  12025. with the pods matching the
  12026. labelSelector in the specified
  12027. namespaces, where co-located
  12028. is defined as running on
  12029. a node whose value of the
  12030. label with key topologyKey
  12031. matches that of any node
  12032. on which any of the selected
  12033. pods is running. Empty topologyKey
  12034. is not allowed.
  12035. type: string
  12036. required:
  12037. - topologyKey
  12038. type: object
  12039. type: array
  12040. type: object
  12041. podAntiAffinity:
  12042. description: Describes pod anti-affinity
  12043. scheduling rules (e.g. avoid putting
  12044. this pod in the same node, zone, etc.
  12045. as some other pod(s)).
  12046. properties:
  12047. preferredDuringSchedulingIgnoredDuringExecution:
  12048. description: The scheduler will
  12049. prefer to schedule pods to nodes
  12050. that satisfy the anti-affinity
  12051. expressions specified by this
  12052. field, but it may choose a node
  12053. that violates one or more of the
  12054. expressions. The node that is
  12055. most preferred is the one with
  12056. the greatest sum of weights, i.e.
  12057. for each node that meets all of
  12058. the scheduling requirements (resource
  12059. request, requiredDuringScheduling
  12060. anti-affinity expressions, etc.),
  12061. compute a sum by iterating through
  12062. the elements of this field and
  12063. adding "weight" to the sum if
  12064. the node has pods which matches
  12065. the corresponding podAffinityTerm;
  12066. the node(s) with the highest sum
  12067. are the most preferred.
  12068. items:
  12069. description: The weights of all
  12070. of the matched WeightedPodAffinityTerm
  12071. fields are added per-node to
  12072. find the most preferred node(s)
  12073. properties:
  12074. podAffinityTerm:
  12075. description: Required. A pod
  12076. affinity term, associated
  12077. with the corresponding weight.
  12078. properties:
  12079. labelSelector:
  12080. description: A label query
  12081. over a set of resources,
  12082. in this case pods.
  12083. properties:
  12084. matchExpressions:
  12085. description: matchExpressions
  12086. is a list of label
  12087. selector requirements.
  12088. The requirements
  12089. are ANDed.
  12090. items:
  12091. description: A label
  12092. selector requirement
  12093. is a selector
  12094. that contains
  12095. values, a key,
  12096. and an operator
  12097. that relates the
  12098. key and values.
  12099. properties:
  12100. key:
  12101. description: key
  12102. is the label
  12103. key that the
  12104. selector applies
  12105. to.
  12106. type: string
  12107. operator:
  12108. description: operator
  12109. represents
  12110. a key's relationship
  12111. to a set of
  12112. values. Valid
  12113. operators
  12114. are In, NotIn,
  12115. Exists and
  12116. DoesNotExist.
  12117. type: string
  12118. values:
  12119. description: values
  12120. is an array
  12121. of string
  12122. values. If
  12123. the operator
  12124. is In or NotIn,
  12125. the values
  12126. array must
  12127. be non-empty.
  12128. If the operator
  12129. is Exists
  12130. or DoesNotExist,
  12131. the values
  12132. array must
  12133. be empty.
  12134. This array
  12135. is replaced
  12136. during a strategic
  12137. merge patch.
  12138. items:
  12139. type: string
  12140. type: array
  12141. required:
  12142. - key
  12143. - operator
  12144. type: object
  12145. type: array
  12146. matchLabels:
  12147. additionalProperties:
  12148. type: string
  12149. description: matchLabels
  12150. is a map of {key,value}
  12151. pairs. A single
  12152. {key,value} in the
  12153. matchLabels map
  12154. is equivalent to
  12155. an element of matchExpressions,
  12156. whose key field
  12157. is "key", the operator
  12158. is "In", and the
  12159. values array contains
  12160. only "value". The
  12161. requirements are
  12162. ANDed.
  12163. type: object
  12164. type: object
  12165. namespaces:
  12166. description: namespaces
  12167. specifies which namespaces
  12168. the labelSelector applies
  12169. to (matches against);
  12170. null or empty list means
  12171. "this pod's namespace"
  12172. items:
  12173. type: string
  12174. type: array
  12175. topologyKey:
  12176. description: This pod
  12177. should be co-located
  12178. (affinity) or not co-located
  12179. (anti-affinity) with
  12180. the pods matching the
  12181. labelSelector in the
  12182. specified namespaces,
  12183. where co-located is
  12184. defined as running on
  12185. a node whose value of
  12186. the label with key topologyKey
  12187. matches that of any
  12188. node on which any of
  12189. the selected pods is
  12190. running. Empty topologyKey
  12191. is not allowed.
  12192. type: string
  12193. required:
  12194. - topologyKey
  12195. type: object
  12196. weight:
  12197. description: weight associated
  12198. with matching the corresponding
  12199. podAffinityTerm, in the
  12200. range 1-100.
  12201. format: int32
  12202. type: integer
  12203. required:
  12204. - podAffinityTerm
  12205. - weight
  12206. type: object
  12207. type: array
  12208. requiredDuringSchedulingIgnoredDuringExecution:
  12209. description: If the anti-affinity
  12210. requirements specified by this
  12211. field are not met at scheduling
  12212. time, the pod will not be scheduled
  12213. onto the node. If the anti-affinity
  12214. requirements specified by this
  12215. field cease to be met at some
  12216. point during pod execution (e.g.
  12217. due to a pod label update), the
  12218. system may or may not try to eventually
  12219. evict the pod from its node. When
  12220. there are multiple elements, the
  12221. lists of nodes corresponding to
  12222. each podAffinityTerm are intersected,
  12223. i.e. all terms must be satisfied.
  12224. items:
  12225. description: Defines a set of
  12226. pods (namely those matching
  12227. the labelSelector relative to
  12228. the given namespace(s)) that
  12229. this pod should be co-located
  12230. (affinity) or not co-located
  12231. (anti-affinity) with, where
  12232. co-located is defined as running
  12233. on a node whose value of the
  12234. label with key <topologyKey>
  12235. matches that of any node on
  12236. which a pod of the set of pods
  12237. is running
  12238. properties:
  12239. labelSelector:
  12240. description: A label query
  12241. over a set of resources,
  12242. in this case pods.
  12243. properties:
  12244. matchExpressions:
  12245. description: matchExpressions
  12246. is a list of label selector
  12247. requirements. The requirements
  12248. are ANDed.
  12249. items:
  12250. description: A label
  12251. selector requirement
  12252. is a selector that
  12253. contains values, a
  12254. key, and an operator
  12255. that relates the key
  12256. and values.
  12257. properties:
  12258. key:
  12259. description: key
  12260. is the label key
  12261. that the selector
  12262. applies to.
  12263. type: string
  12264. operator:
  12265. description: operator
  12266. represents a key's
  12267. relationship to
  12268. a set of values.
  12269. Valid operators
  12270. are In, NotIn,
  12271. Exists and DoesNotExist.
  12272. type: string
  12273. values:
  12274. description: values
  12275. is an array of
  12276. string values.
  12277. If the operator
  12278. is In or NotIn,
  12279. the values array
  12280. must be non-empty.
  12281. If the operator
  12282. is Exists or DoesNotExist,
  12283. the values array
  12284. must be empty.
  12285. This array is
  12286. replaced during
  12287. a strategic merge
  12288. patch.
  12289. items:
  12290. type: string
  12291. type: array
  12292. required:
  12293. - key
  12294. - operator
  12295. type: object
  12296. type: array
  12297. matchLabels:
  12298. additionalProperties:
  12299. type: string
  12300. description: matchLabels
  12301. is a map of {key,value}
  12302. pairs. A single {key,value}
  12303. in the matchLabels map
  12304. is equivalent to an
  12305. element of matchExpressions,
  12306. whose key field is "key",
  12307. the operator is "In",
  12308. and the values array
  12309. contains only "value".
  12310. The requirements are
  12311. ANDed.
  12312. type: object
  12313. type: object
  12314. namespaces:
  12315. description: namespaces specifies
  12316. which namespaces the labelSelector
  12317. applies to (matches against);
  12318. null or empty list means
  12319. "this pod's namespace"
  12320. items:
  12321. type: string
  12322. type: array
  12323. topologyKey:
  12324. description: This pod should
  12325. be co-located (affinity)
  12326. or not co-located (anti-affinity)
  12327. with the pods matching the
  12328. labelSelector in the specified
  12329. namespaces, where co-located
  12330. is defined as running on
  12331. a node whose value of the
  12332. label with key topologyKey
  12333. matches that of any node
  12334. on which any of the selected
  12335. pods is running. Empty topologyKey
  12336. is not allowed.
  12337. type: string
  12338. required:
  12339. - topologyKey
  12340. type: object
  12341. type: array
  12342. type: object
  12343. type: object
  12344. nodeSelector:
  12345. additionalProperties:
  12346. type: string
  12347. description: 'NodeSelector is a selector
  12348. which must be true for the pod to fit
  12349. on a node. Selector which must match a
  12350. node''s labels for the pod to be scheduled
  12351. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  12352. type: object
  12353. priorityClassName:
  12354. description: If specified, the pod's priorityClassName.
  12355. type: string
  12356. serviceAccountName:
  12357. description: If specified, the pod's service
  12358. account
  12359. type: string
  12360. tolerations:
  12361. description: If specified, the pod's tolerations.
  12362. items:
  12363. description: The pod this Toleration is
  12364. attached to tolerates any taint that
  12365. matches the triple <key,value,effect>
  12366. using the matching operator <operator>.
  12367. properties:
  12368. effect:
  12369. description: Effect indicates the
  12370. taint effect to match. Empty means
  12371. match all taint effects. When specified,
  12372. allowed values are NoSchedule, PreferNoSchedule
  12373. and NoExecute.
  12374. type: string
  12375. key:
  12376. description: Key is the taint key
  12377. that the toleration applies to.
  12378. Empty means match all taint keys.
  12379. If the key is empty, operator must
  12380. be Exists; this combination means
  12381. to match all values and all keys.
  12382. type: string
  12383. operator:
  12384. description: Operator represents a
  12385. key's relationship to the value.
  12386. Valid operators are Exists and Equal.
  12387. Defaults to Equal. Exists is equivalent
  12388. to wildcard for value, so that a
  12389. pod can tolerate all taints of a
  12390. particular category.
  12391. type: string
  12392. tolerationSeconds:
  12393. description: TolerationSeconds represents
  12394. the period of time the toleration
  12395. (which must be of effect NoExecute,
  12396. otherwise this field is ignored)
  12397. tolerates the taint. By default,
  12398. it is not set, which means tolerate
  12399. the taint forever (do not evict).
  12400. Zero and negative values will be
  12401. treated as 0 (evict immediately)
  12402. by the system.
  12403. format: int64
  12404. type: integer
  12405. value:
  12406. description: Value is the taint value
  12407. the toleration matches to. If the
  12408. operator is Exists, the value should
  12409. be empty, otherwise just a regular
  12410. string.
  12411. type: string
  12412. type: object
  12413. type: array
  12414. type: object
  12415. type: object
  12416. serviceType:
  12417. description: Optional service type for Kubernetes
  12418. solver service
  12419. type: string
  12420. type: object
  12421. type: object
  12422. selector:
  12423. description: Selector selects a set of DNSNames on the Certificate
  12424. resource that should be solved using this challenge solver.
  12425. If not specified, the solver will be treated as the 'default'
  12426. solver with the lowest priority, i.e. if any other solver
  12427. has a more specific match, it will be used instead.
  12428. properties:
  12429. dnsNames:
  12430. description: List of DNSNames that this solver will
  12431. be used to solve. If specified and a match is found,
  12432. a dnsNames selector will take precedence over a dnsZones
  12433. selector. If multiple solvers match with the same
  12434. dnsNames value, the solver with the most matching
  12435. labels in matchLabels will be selected. If neither
  12436. has more matches, the solver defined earlier in the
  12437. list will be selected.
  12438. items:
  12439. type: string
  12440. type: array
  12441. dnsZones:
  12442. description: List of DNSZones that this solver will
  12443. be used to solve. The most specific DNS zone match
  12444. specified here will take precedence over other DNS
  12445. zone matches, so a solver specifying sys.example.com
  12446. will be selected over one specifying example.com for
  12447. the domain www.sys.example.com. If multiple solvers
  12448. match with the same dnsZones value, the solver with
  12449. the most matching labels in matchLabels will be selected.
  12450. If neither has more matches, the solver defined earlier
  12451. in the list will be selected.
  12452. items:
  12453. type: string
  12454. type: array
  12455. matchLabels:
  12456. additionalProperties:
  12457. type: string
  12458. description: A label selector that is used to refine
  12459. the set of certificate's that this challenge solver
  12460. will apply to.
  12461. type: object
  12462. type: object
  12463. type: object
  12464. type: array
  12465. required:
  12466. - privateKeySecretRef
  12467. - server
  12468. type: object
  12469. ca:
  12470. description: CA configures this issuer to sign certificates using
  12471. a signing CA keypair stored in a Secret resource. This is used to
  12472. build internal PKIs that are managed by cert-manager.
  12473. properties:
  12474. crlDistributionPoints:
  12475. description: The CRL distribution points is an X.509 v3 certificate
  12476. extension which identifies the location of the CRL from which
  12477. the revocation of this certificate can be checked. If not set,
  12478. certificates will be issued without distribution points set.
  12479. items:
  12480. type: string
  12481. type: array
  12482. ocspServers:
  12483. description: The OCSP server list is an X.509 v3 extension that
  12484. defines a list of URLs of OCSP responders. The OCSP responders
  12485. can be queried for the revocation status of an issued certificate.
  12486. If not set, the certificate will be issued with no OCSP servers
  12487. set. For example, an OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
  12488. items:
  12489. type: string
  12490. type: array
  12491. secretName:
  12492. description: SecretName is the name of the secret used to sign
  12493. Certificates issued by this Issuer.
  12494. type: string
  12495. required:
  12496. - secretName
  12497. type: object
  12498. selfSigned:
  12499. description: SelfSigned configures this issuer to 'self sign' certificates
  12500. using the private key used to create the CertificateRequest object.
  12501. properties:
  12502. crlDistributionPoints:
  12503. description: The CRL distribution points is an X.509 v3 certificate
  12504. extension which identifies the location of the CRL from which
  12505. the revocation of this certificate can be checked. If not set
  12506. certificate will be issued without CDP. Values are strings.
  12507. items:
  12508. type: string
  12509. type: array
  12510. type: object
  12511. vault:
  12512. description: Vault configures this issuer to sign certificates using
  12513. a HashiCorp Vault PKI backend.
  12514. properties:
  12515. auth:
  12516. description: Auth configures how cert-manager authenticates with
  12517. the Vault server.
  12518. properties:
  12519. appRole:
  12520. description: AppRole authenticates with Vault using the App
  12521. Role auth mechanism, with the role and secret stored in
  12522. a Kubernetes Secret resource.
  12523. properties:
  12524. path:
  12525. description: 'Path where the App Role authentication backend
  12526. is mounted in Vault, e.g: "approle"'
  12527. type: string
  12528. roleId:
  12529. description: RoleID configured in the App Role authentication
  12530. backend when setting up the authentication backend in
  12531. Vault.
  12532. type: string
  12533. secretRef:
  12534. description: Reference to a key in a Secret that contains
  12535. the App Role secret used to authenticate with Vault.
  12536. The `key` field must be specified and denotes which
  12537. entry within the Secret resource is used as the app
  12538. role secret.
  12539. properties:
  12540. key:
  12541. description: The key of the entry in the Secret resource's
  12542. `data` field to be used. Some instances of this
  12543. field may be defaulted, in others it may be required.
  12544. type: string
  12545. name:
  12546. description: 'Name of the resource being referred
  12547. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12548. type: string
  12549. required:
  12550. - name
  12551. type: object
  12552. required:
  12553. - path
  12554. - roleId
  12555. - secretRef
  12556. type: object
  12557. kubernetes:
  12558. description: Kubernetes authenticates with Vault by passing
  12559. the ServiceAccount token stored in the named Secret resource
  12560. to the Vault server.
  12561. properties:
  12562. mountPath:
  12563. description: The Vault mountPath here is the mount path
  12564. to use when authenticating with Vault. For example,
  12565. setting a value to `/v1/auth/foo`, will use the path
  12566. `/v1/auth/foo/login` to authenticate with Vault. If
  12567. unspecified, the default value "/v1/auth/kubernetes"
  12568. will be used.
  12569. type: string
  12570. role:
  12571. description: A required field containing the Vault Role
  12572. to assume. A Role binds a Kubernetes ServiceAccount
  12573. with a set of Vault policies.
  12574. type: string
  12575. secretRef:
  12576. description: The required Secret field containing a Kubernetes
  12577. ServiceAccount JWT used for authenticating with Vault.
  12578. Use of 'ambient credentials' is not supported.
  12579. properties:
  12580. key:
  12581. description: The key of the entry in the Secret resource's
  12582. `data` field to be used. Some instances of this
  12583. field may be defaulted, in others it may be required.
  12584. type: string
  12585. name:
  12586. description: 'Name of the resource being referred
  12587. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12588. type: string
  12589. required:
  12590. - name
  12591. type: object
  12592. required:
  12593. - role
  12594. - secretRef
  12595. type: object
  12596. tokenSecretRef:
  12597. description: TokenSecretRef authenticates with Vault by presenting
  12598. a token.
  12599. properties:
  12600. key:
  12601. description: The key of the entry in the Secret resource's
  12602. `data` field to be used. Some instances of this field
  12603. may be defaulted, in others it may be required.
  12604. type: string
  12605. name:
  12606. description: 'Name of the resource being referred to.
  12607. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12608. type: string
  12609. required:
  12610. - name
  12611. type: object
  12612. type: object
  12613. caBundle:
  12614. description: PEM encoded CA bundle used to validate Vault server
  12615. certificate. Only used if the Server URL is using HTTPS protocol.
  12616. This parameter is ignored for plain HTTP protocol connection.
  12617. If not set the system root certificates are used to validate
  12618. the TLS connection.
  12619. format: byte
  12620. type: string
  12621. namespace:
  12622. description: 'Name of the vault namespace. Namespaces is a set
  12623. of features within Vault Enterprise that allows Vault environments
  12624. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  12625. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  12626. type: string
  12627. path:
  12628. description: 'Path is the mount path of the Vault PKI backend''s
  12629. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  12630. type: string
  12631. server:
  12632. description: 'Server is the connection address for the Vault server,
  12633. e.g: "https://vault.example.com:8200".'
  12634. type: string
  12635. required:
  12636. - auth
  12637. - path
  12638. - server
  12639. type: object
  12640. venafi:
  12641. description: Venafi configures this issuer to sign certificates using
  12642. a Venafi TPP or Venafi Cloud policy zone.
  12643. properties:
  12644. cloud:
  12645. description: Cloud specifies the Venafi cloud configuration settings.
  12646. Only one of TPP or Cloud may be specified.
  12647. properties:
  12648. apiTokenSecretRef:
  12649. description: APITokenSecretRef is a secret key selector for
  12650. the Venafi Cloud API token.
  12651. properties:
  12652. key:
  12653. description: The key of the entry in the Secret resource's
  12654. `data` field to be used. Some instances of this field
  12655. may be defaulted, in others it may be required.
  12656. type: string
  12657. name:
  12658. description: 'Name of the resource being referred to.
  12659. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12660. type: string
  12661. required:
  12662. - name
  12663. type: object
  12664. url:
  12665. description: URL is the base URL for Venafi Cloud. Defaults
  12666. to "https://api.venafi.cloud/v1".
  12667. type: string
  12668. required:
  12669. - apiTokenSecretRef
  12670. type: object
  12671. tpp:
  12672. description: TPP specifies Trust Protection Platform configuration
  12673. settings. Only one of TPP or Cloud may be specified.
  12674. properties:
  12675. caBundle:
  12676. description: CABundle is a PEM encoded TLS certificate to
  12677. use to verify connections to the TPP instance. If specified,
  12678. system roots will not be used and the issuing CA for the
  12679. TPP instance must be verifiable using the provided root.
  12680. If not specified, the connection will be verified using
  12681. the cert-manager system root certificates.
  12682. format: byte
  12683. type: string
  12684. credentialsRef:
  12685. description: CredentialsRef is a reference to a Secret containing
  12686. the username and password for the TPP server. The secret
  12687. must contain two keys, 'username' and 'password'.
  12688. properties:
  12689. name:
  12690. description: 'Name of the resource being referred to.
  12691. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12692. type: string
  12693. required:
  12694. - name
  12695. type: object
  12696. url:
  12697. description: 'URL is the base URL for the vedsdk endpoint
  12698. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  12699. type: string
  12700. required:
  12701. - credentialsRef
  12702. - url
  12703. type: object
  12704. zone:
  12705. description: Zone is the Venafi Policy Zone to use for this issuer.
  12706. All requests made to the Venafi platform will be restricted
  12707. by the named zone policy. This field is required.
  12708. type: string
  12709. required:
  12710. - zone
  12711. type: object
  12712. type: object
  12713. status:
  12714. description: Status of the ClusterIssuer. This is set and managed automatically.
  12715. properties:
  12716. acme:
  12717. description: ACME specific status options. This field should only
  12718. be set if the Issuer is configured to use an ACME server to issue
  12719. certificates.
  12720. properties:
  12721. lastRegisteredEmail:
  12722. description: LastRegisteredEmail is the email associated with
  12723. the latest registered ACME account, in order to track changes
  12724. made to registered account associated with the Issuer
  12725. type: string
  12726. uri:
  12727. description: URI is the unique account identifier, which can also
  12728. be used to retrieve account details from the CA
  12729. type: string
  12730. type: object
  12731. conditions:
  12732. description: List of status conditions to indicate the status of a
  12733. CertificateRequest. Known condition types are `Ready`.
  12734. items:
  12735. description: IssuerCondition contains condition information for
  12736. an Issuer.
  12737. properties:
  12738. lastTransitionTime:
  12739. description: LastTransitionTime is the timestamp corresponding
  12740. to the last status change of this condition.
  12741. format: date-time
  12742. type: string
  12743. message:
  12744. description: Message is a human readable description of the
  12745. details of the last transition, complementing reason.
  12746. type: string
  12747. observedGeneration:
  12748. description: If set, this represents the .metadata.generation
  12749. that the condition was set based upon. For instance, if .metadata.generation
  12750. is currently 12, but the .status.condition[x].observedGeneration
  12751. is 9, the condition is out of date with respect to the current
  12752. state of the Issuer.
  12753. format: int64
  12754. type: integer
  12755. reason:
  12756. description: Reason is a brief machine readable explanation
  12757. for the condition's last transition.
  12758. type: string
  12759. status:
  12760. description: Status of the condition, one of (`True`, `False`,
  12761. `Unknown`).
  12762. enum:
  12763. - "True"
  12764. - "False"
  12765. - Unknown
  12766. type: string
  12767. type:
  12768. description: Type of the condition, known values are (`Ready`).
  12769. type: string
  12770. required:
  12771. - status
  12772. - type
  12773. type: object
  12774. type: array
  12775. type: object
  12776. type: object
  12777. served: true
  12778. storage: false
  12779. subresources:
  12780. status: {}
  12781. - additionalPrinterColumns:
  12782. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  12783. name: Ready
  12784. type: string
  12785. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  12786. name: Status
  12787. priority: 1
  12788. type: string
  12789. - description: CreationTimestamp is a timestamp representing the server time when
  12790. this object was created. It is not guaranteed to be set in happens-before
  12791. order across separate operations. Clients may not set this value. It is represented
  12792. in RFC3339 form and is in UTC.
  12793. jsonPath: .metadata.creationTimestamp
  12794. name: Age
  12795. type: date
  12796. name: v1beta1
  12797. schema:
  12798. openAPIV3Schema:
  12799. description: A ClusterIssuer represents a certificate issuing authority which
  12800. can be referenced as part of `issuerRef` fields. It is similar to an Issuer,
  12801. however it is cluster-scoped and therefore can be referenced by resources
  12802. that exist in *any* namespace, not just the same namespace as the referent.
  12803. properties:
  12804. apiVersion:
  12805. description: 'APIVersion defines the versioned schema of this representation
  12806. of an object. Servers should convert recognized schemas to the latest
  12807. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  12808. type: string
  12809. kind:
  12810. description: 'Kind is a string value representing the REST resource this
  12811. object represents. Servers may infer this from the endpoint the client
  12812. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  12813. type: string
  12814. metadata:
  12815. type: object
  12816. spec:
  12817. description: Desired state of the ClusterIssuer resource.
  12818. properties:
  12819. acme:
  12820. description: ACME configures this issuer to communicate with a RFC8555
  12821. (ACME) server to obtain signed x509 certificates.
  12822. properties:
  12823. disableAccountKeyGeneration:
  12824. description: Enables or disables generating a new ACME account
  12825. key. If true, the Issuer resource will *not* request a new account
  12826. but will expect the account key to be supplied via an existing
  12827. secret. If false, the cert-manager system will generate a new
  12828. ACME account key for the Issuer. Defaults to false.
  12829. type: boolean
  12830. email:
  12831. description: Email is the email address to be associated with
  12832. the ACME account. This field is optional, but it is strongly
  12833. recommended to be set. It will be used to contact you in case
  12834. of issues with your account or certificates, including expiry
  12835. notification emails. This field may be updated after the account
  12836. is initially registered.
  12837. type: string
  12838. enableDurationFeature:
  12839. description: Enables requesting a Not After date on certificates
  12840. that matches the duration of the certificate. This is not supported
  12841. by all ACME servers like Let's Encrypt. If set to true when
  12842. the ACME server does not support it it will create an error
  12843. on the Order. Defaults to false.
  12844. type: boolean
  12845. externalAccountBinding:
  12846. description: ExternalAccountBinding is a reference to a CA external
  12847. account of the ACME server. If set, upon registration cert-manager
  12848. will attempt to associate the given external account credentials
  12849. with the registered ACME account.
  12850. properties:
  12851. keyAlgorithm:
  12852. description: keyAlgorithm is the MAC key algorithm that the
  12853. key is used for. Valid values are "HS256", "HS384" and "HS512".
  12854. enum:
  12855. - HS256
  12856. - HS384
  12857. - HS512
  12858. type: string
  12859. keyID:
  12860. description: keyID is the ID of the CA key that the External
  12861. Account is bound to.
  12862. type: string
  12863. keySecretRef:
  12864. description: keySecretRef is a Secret Key Selector referencing
  12865. a data item in a Kubernetes Secret which holds the symmetric
  12866. MAC key of the External Account Binding. The `key` is the
  12867. index string that is paired with the key data in the Secret
  12868. and should not be confused with the key data itself, or
  12869. indeed with the External Account Binding keyID above. The
  12870. secret key stored in the Secret **must** be un-padded, base64
  12871. URL encoded data.
  12872. properties:
  12873. key:
  12874. description: The key of the entry in the Secret resource's
  12875. `data` field to be used. Some instances of this field
  12876. may be defaulted, in others it may be required.
  12877. type: string
  12878. name:
  12879. description: 'Name of the resource being referred to.
  12880. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12881. type: string
  12882. required:
  12883. - name
  12884. type: object
  12885. required:
  12886. - keyAlgorithm
  12887. - keyID
  12888. - keySecretRef
  12889. type: object
  12890. preferredChain:
  12891. description: 'PreferredChain is the chain to use if the ACME server
  12892. outputs multiple. PreferredChain is no guarantee that this one
  12893. gets delivered by the ACME endpoint. For example, for Let''s
  12894. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  12895. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  12896. picks the first certificate bundle in the ACME alternative chains
  12897. that has a certificate with this value as its issuer''s CN'
  12898. maxLength: 64
  12899. type: string
  12900. privateKeySecretRef:
  12901. description: PrivateKey is the name of a Kubernetes Secret resource
  12902. that will be used to store the automatically generated ACME
  12903. account private key. Optionally, a `key` may be specified to
  12904. select a specific entry within the named Secret resource. If
  12905. `key` is not specified, a default of `tls.key` will be used.
  12906. properties:
  12907. key:
  12908. description: The key of the entry in the Secret resource's
  12909. `data` field to be used. Some instances of this field may
  12910. be defaulted, in others it may be required.
  12911. type: string
  12912. name:
  12913. description: 'Name of the resource being referred to. More
  12914. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12915. type: string
  12916. required:
  12917. - name
  12918. type: object
  12919. server:
  12920. description: 'Server is the URL used to access the ACME server''s
  12921. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  12922. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  12923. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  12924. type: string
  12925. skipTLSVerify:
  12926. description: Enables or disables validation of the ACME server
  12927. TLS certificate. If true, requests to the ACME server will not
  12928. have their TLS certificate validated (i.e. insecure connections
  12929. will be allowed). Only enable this option in development environments.
  12930. The cert-manager system installed roots will be used to verify
  12931. connections to the ACME server if this is false. Defaults to
  12932. false.
  12933. type: boolean
  12934. solvers:
  12935. description: 'Solvers is a list of challenge solvers that will
  12936. be used to solve ACME challenges for the matching domains. Solver
  12937. configurations must be provided in order to obtain certificates
  12938. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  12939. items:
  12940. description: Configures an issuer to solve challenges using
  12941. the specified options. Only one of HTTP01 or DNS01 may be
  12942. provided.
  12943. properties:
  12944. dns01:
  12945. description: Configures cert-manager to attempt to complete
  12946. authorizations by performing the DNS01 challenge flow.
  12947. properties:
  12948. acmeDNS:
  12949. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  12950. API to manage DNS01 challenge records.
  12951. properties:
  12952. accountSecretRef:
  12953. description: A reference to a specific 'key' within
  12954. a Secret resource. In some instances, `key` is
  12955. a required field.
  12956. properties:
  12957. key:
  12958. description: The key of the entry in the Secret
  12959. resource's `data` field to be used. Some instances
  12960. of this field may be defaulted, in others
  12961. it may be required.
  12962. type: string
  12963. name:
  12964. description: 'Name of the resource being referred
  12965. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12966. type: string
  12967. required:
  12968. - name
  12969. type: object
  12970. host:
  12971. type: string
  12972. required:
  12973. - accountSecretRef
  12974. - host
  12975. type: object
  12976. akamai:
  12977. description: Use the Akamai DNS zone management API
  12978. to manage DNS01 challenge records.
  12979. properties:
  12980. accessTokenSecretRef:
  12981. description: A reference to a specific 'key' within
  12982. a Secret resource. In some instances, `key` is
  12983. a required field.
  12984. properties:
  12985. key:
  12986. description: The key of the entry in the Secret
  12987. resource's `data` field to be used. Some instances
  12988. of this field may be defaulted, in others
  12989. it may be required.
  12990. type: string
  12991. name:
  12992. description: 'Name of the resource being referred
  12993. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  12994. type: string
  12995. required:
  12996. - name
  12997. type: object
  12998. clientSecretSecretRef:
  12999. description: A reference to a specific 'key' within
  13000. a Secret resource. In some instances, `key` is
  13001. a required field.
  13002. properties:
  13003. key:
  13004. description: The key of the entry in the Secret
  13005. resource's `data` field to be used. Some instances
  13006. of this field may be defaulted, in others
  13007. it may be required.
  13008. type: string
  13009. name:
  13010. description: 'Name of the resource being referred
  13011. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  13012. type: string
  13013. required:
  13014. - name
  13015. type: object
  13016. clientTokenSecretRef:
  13017. description: A reference to a specific 'key' within
  13018. a Secret resource. In some instances, `key` is
  13019. a required field.
  13020. properties:
  13021. key:
  13022. description: The key of the entry in the Secret
  13023. resource's `data` field to be used. Some instances
  13024. of this field may be defaulted, in others
  13025. it may be required.
  13026. type: string
  13027. name:
  13028. description: 'Name of the resource being referred
  13029. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  13030. type: string
  13031. required:
  13032. - name
  13033. type: object
  13034. serviceConsumerDomain:
  13035. type: string
  13036. required:
  13037. - accessTokenSecretRef
  13038. - clientSecretSecretRef
  13039. - clientTokenSecretRef
  13040. - serviceConsumerDomain
  13041. type: object
  13042. azureDNS:
  13043. description: Use the Microsoft Azure DNS API to manage
  13044. DNS01 challenge records.
  13045. properties:
  13046. clientID:
  13047. description: if both this and ClientSecret are left
  13048. unset MSI will be used
  13049. type: string
  13050. clientSecretSecretRef:
  13051. description: if both this and ClientID are left
  13052. unset MSI will be used
  13053. properties:
  13054. key:
  13055. description: The key of the entry in the Secret
  13056. resource's `data` field to be used. Some instances
  13057. of this field may be defaulted, in others
  13058. it may be required.
  13059. type: string
  13060. name:
  13061. description: 'Name of the resource being referred
  13062. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  13063. type: string
  13064. required:
  13065. - name
  13066. type: object
  13067. environment:
  13068. enum:
  13069. - AzurePublicCloud
  13070. - AzureChinaCloud
  13071. - AzureGermanCloud
  13072. - AzureUSGovernmentCloud
  13073. type: string
  13074. hostedZoneName:
  13075. type: string
  13076. resourceGroupName:
  13077. type: string
  13078. subscriptionID:
  13079. type: string
  13080. tenantID:
  13081. description: when specifying ClientID and ClientSecret
  13082. then this field is also needed
  13083. type: string
  13084. required:
  13085. - resourceGroupName
  13086. - subscriptionID
  13087. type: object
  13088. cloudDNS:
  13089. description: Use the Google Cloud DNS API to manage
  13090. DNS01 challenge records.
  13091. properties:
  13092. hostedZoneName:
  13093. description: HostedZoneName is an optional field
  13094. that tells cert-manager in which Cloud DNS zone
  13095. the challenge record has to be created. If left
  13096. empty cert-manager will automatically choose a
  13097. zone.
  13098. type: string
  13099. project:
  13100. type: string
  13101. serviceAccountSecretRef:
  13102. description: A reference to a specific 'key' within
  13103. a Secret resource. In some instances, `key` is
  13104. a required field.
  13105. properties:
  13106. key:
  13107. description: The key of the entry in the Secret
  13108. resource's `data` field to be used. Some instances
  13109. of this field may be defaulted, in others
  13110. it may be required.
  13111. type: string
  13112. name:
  13113. description: 'Name of the resource being referred
  13114. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  13115. type: string
  13116. required:
  13117. - name
  13118. type: object
  13119. required:
  13120. - project
  13121. type: object
  13122. cloudflare:
  13123. description: Use the Cloudflare API to manage DNS01
  13124. challenge records.
  13125. properties:
  13126. apiKeySecretRef:
  13127. description: 'API key to use to authenticate with
  13128. Cloudflare. Note: using an API token to authenticate
  13129. is now the recommended method as it allows greater
  13130. control of permissions.'
  13131. properties:
  13132. key:
  13133. description: The key of the entry in the Secret
  13134. resource's `data` field to be used. Some instances
  13135. of this field may be defaulted, in others
  13136. it may be required.
  13137. type: string
  13138. name:
  13139. description: 'Name of the resource being referred
  13140. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  13141. type: string
  13142. required:
  13143. - name
  13144. type: object
  13145. apiTokenSecretRef:
  13146. description: API token used to authenticate with
  13147. Cloudflare.
  13148. properties:
  13149. key:
  13150. description: The key of the entry in the Secret
  13151. resource's `data` field to be used. Some instances
  13152. of this field may be defaulted, in others
  13153. it may be required.
  13154. type: string
  13155. name:
  13156. description: 'Name of the resource being referred
  13157. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  13158. type: string
  13159. required:
  13160. - name
  13161. type: object
  13162. email:
  13163. description: Email of the account, only required
  13164. when using API key based authentication.
  13165. type: string
  13166. type: object
  13167. cnameStrategy:
  13168. description: CNAMEStrategy configures how the DNS01
  13169. provider should handle CNAME records when found in
  13170. DNS zones.
  13171. enum:
  13172. - None
  13173. - Follow
  13174. type: string
  13175. digitalocean:
  13176. description: Use the DigitalOcean DNS API to manage
  13177. DNS01 challenge records.
  13178. properties:
  13179. tokenSecretRef:
  13180. description: A reference to a specific 'key' within
  13181. a Secret resource. In some instances, `key` is
  13182. a required field.
  13183. properties:
  13184. key:
  13185. description: The key of the entry in the Secret
  13186. resource's `data` field to be used. Some instances
  13187. of this field may be defaulted, in others
  13188. it may be required.
  13189. type: string
  13190. name:
  13191. description: 'Name of the resource being referred
  13192. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  13193. type: string
  13194. required:
  13195. - name
  13196. type: object
  13197. required:
  13198. - tokenSecretRef
  13199. type: object
  13200. rfc2136:
  13201. description: Use RFC2136 ("Dynamic Updates in the Domain
  13202. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  13203. to manage DNS01 challenge records.
  13204. properties:
  13205. nameserver:
  13206. description: The IP address or hostname of an authoritative
  13207. DNS server supporting RFC2136 in the form host:port.
  13208. If the host is an IPv6 address it must be enclosed
  13209. in square brackets (e.g [2001:db8::1]) ; port
  13210. is optional. This field is required.
  13211. type: string
  13212. tsigAlgorithm:
  13213. description: 'The TSIG Algorithm configured in the
  13214. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  13215. and ``tsigKeyName`` are defined. Supported values
  13216. are (case-insensitive): ``HMACMD5`` (default),
  13217. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  13218. type: string
  13219. tsigKeyName:
  13220. description: The TSIG Key name configured in the
  13221. DNS. If ``tsigSecretSecretRef`` is defined, this
  13222. field is required.
  13223. type: string
  13224. tsigSecretSecretRef:
  13225. description: The name of the secret containing the
  13226. TSIG value. If ``tsigKeyName`` is defined, this
  13227. field is required.
  13228. properties:
  13229. key:
  13230. description: The key of the entry in the Secret
  13231. resource's `data` field to be used. Some instances
  13232. of this field may be defaulted, in others
  13233. it may be required.
  13234. type: string
  13235. name:
  13236. description: 'Name of the resource being referred
  13237. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  13238. type: string
  13239. required:
  13240. - name
  13241. type: object
  13242. required:
  13243. - nameserver
  13244. type: object
  13245. route53:
  13246. description: Use the AWS Route53 API to manage DNS01
  13247. challenge records.
  13248. properties:
  13249. accessKeyID:
  13250. description: 'The AccessKeyID is used for authentication.
  13251. If not set we fall-back to using env vars, shared
  13252. credentials file or AWS Instance metadata see:
  13253. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  13254. type: string
  13255. hostedZoneID:
  13256. description: If set, the provider will manage only
  13257. this zone in Route53 and will not do an lookup
  13258. using the route53:ListHostedZonesByName api call.
  13259. type: string
  13260. region:
  13261. description: Always set the region when using AccessKeyID
  13262. and SecretAccessKey
  13263. type: string
  13264. role:
  13265. description: Role is a Role ARN which the Route53
  13266. provider will assume using either the explicit
  13267. credentials AccessKeyID/SecretAccessKey or the
  13268. inferred credentials from environment variables,
  13269. shared credentials file or AWS Instance metadata
  13270. type: string
  13271. secretAccessKeySecretRef:
  13272. description: The SecretAccessKey is used for authentication.
  13273. If not set we fall-back to using env vars, shared
  13274. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  13275. properties:
  13276. key:
  13277. description: The key of the entry in the Secret
  13278. resource's `data` field to be used. Some instances
  13279. of this field may be defaulted, in others
  13280. it may be required.
  13281. type: string
  13282. name:
  13283. description: 'Name of the resource being referred
  13284. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  13285. type: string
  13286. required:
  13287. - name
  13288. type: object
  13289. required:
  13290. - region
  13291. type: object
  13292. webhook:
  13293. description: Configure an external webhook based DNS01
  13294. challenge solver to manage DNS01 challenge records.
  13295. properties:
  13296. config:
  13297. description: Additional configuration that should
  13298. be passed to the webhook apiserver when challenges
  13299. are processed. This can contain arbitrary JSON
  13300. data. Secret values should not be specified in
  13301. this stanza. If secret values are needed (e.g.
  13302. credentials for a DNS service), you should use
  13303. a SecretKeySelector to reference a Secret resource.
  13304. For details on the schema of this field, consult
  13305. the webhook provider implementation's documentation.
  13306. x-kubernetes-preserve-unknown-fields: true
  13307. groupName:
  13308. description: The API group name that should be used
  13309. when POSTing ChallengePayload resources to the
  13310. webhook apiserver. This should be the same as
  13311. the GroupName specified in the webhook provider
  13312. implementation.
  13313. type: string
  13314. solverName:
  13315. description: The name of the solver to use, as defined
  13316. in the webhook provider implementation. This will
  13317. typically be the name of the provider, e.g. 'cloudflare'.
  13318. type: string
  13319. required:
  13320. - groupName
  13321. - solverName
  13322. type: object
  13323. type: object
  13324. http01:
  13325. description: Configures cert-manager to attempt to complete
  13326. authorizations by performing the HTTP01 challenge flow.
  13327. It is not possible to obtain certificates for wildcard
  13328. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  13329. mechanism.
  13330. properties:
  13331. ingress:
  13332. description: The ingress based HTTP01 challenge solver
  13333. will solve challenges by creating or modifying Ingress
  13334. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  13335. to 'challenge solver' pods that are provisioned by
  13336. cert-manager for each Challenge to be completed.
  13337. properties:
  13338. class:
  13339. description: The ingress class to use when creating
  13340. Ingress resources to solve ACME challenges that
  13341. use this challenge solver. Only one of 'class'
  13342. or 'name' may be specified.
  13343. type: string
  13344. ingressTemplate:
  13345. description: Optional ingress template used to configure
  13346. the ACME challenge solver ingress used for HTTP01
  13347. challenges
  13348. properties:
  13349. metadata:
  13350. description: ObjectMeta overrides for the ingress
  13351. used to solve HTTP01 challenges. Only the
  13352. 'labels' and 'annotations' fields may be set.
  13353. If labels or annotations overlap with in-built
  13354. values, the values here will override the
  13355. in-built values.
  13356. properties:
  13357. annotations:
  13358. additionalProperties:
  13359. type: string
  13360. description: Annotations that should be
  13361. added to the created ACME HTTP01 solver
  13362. ingress.
  13363. type: object
  13364. labels:
  13365. additionalProperties:
  13366. type: string
  13367. description: Labels that should be added
  13368. to the created ACME HTTP01 solver ingress.
  13369. type: object
  13370. type: object
  13371. type: object
  13372. name:
  13373. description: The name of the ingress resource that
  13374. should have ACME challenge solving routes inserted
  13375. into it in order to solve HTTP01 challenges. This
  13376. is typically used in conjunction with ingress
  13377. controllers like ingress-gce, which maintains
  13378. a 1:1 mapping between external IPs and ingress
  13379. resources.
  13380. type: string
  13381. podTemplate:
  13382. description: Optional pod template used to configure
  13383. the ACME challenge solver pods used for HTTP01
  13384. challenges
  13385. properties:
  13386. metadata:
  13387. description: ObjectMeta overrides for the pod
  13388. used to solve HTTP01 challenges. Only the
  13389. 'labels' and 'annotations' fields may be set.
  13390. If labels or annotations overlap with in-built
  13391. values, the values here will override the
  13392. in-built values.
  13393. properties:
  13394. annotations:
  13395. additionalProperties:
  13396. type: string
  13397. description: Annotations that should be
  13398. added to the create ACME HTTP01 solver
  13399. pods.
  13400. type: object
  13401. labels:
  13402. additionalProperties:
  13403. type: string
  13404. description: Labels that should be added
  13405. to the created ACME HTTP01 solver pods.
  13406. type: object
  13407. type: object
  13408. spec:
  13409. description: PodSpec defines overrides for the
  13410. HTTP01 challenge solver pod. Only the 'priorityClassName',
  13411. 'nodeSelector', 'affinity', 'serviceAccountName'
  13412. and 'tolerations' fields are supported currently.
  13413. All other fields will be ignored.
  13414. properties:
  13415. affinity:
  13416. description: If specified, the pod's scheduling
  13417. constraints
  13418. properties:
  13419. nodeAffinity:
  13420. description: Describes node affinity
  13421. scheduling rules for the pod.
  13422. properties:
  13423. preferredDuringSchedulingIgnoredDuringExecution:
  13424. description: The scheduler will
  13425. prefer to schedule pods to nodes
  13426. that satisfy the affinity expressions
  13427. specified by this field, but it
  13428. may choose a node that violates
  13429. one or more of the expressions.
  13430. The node that is most preferred
  13431. is the one with the greatest sum
  13432. of weights, i.e. for each node
  13433. that meets all of the scheduling
  13434. requirements (resource request,
  13435. requiredDuringScheduling affinity
  13436. expressions, etc.), compute a
  13437. sum by iterating through the elements
  13438. of this field and adding "weight"
  13439. to the sum if the node matches
  13440. the corresponding matchExpressions;
  13441. the node(s) with the highest sum
  13442. are the most preferred.
  13443. items:
  13444. description: An empty preferred
  13445. scheduling term matches all
  13446. objects with implicit weight
  13447. 0 (i.e. it's a no-op). A null
  13448. preferred scheduling term matches
  13449. no objects (i.e. is also a no-op).
  13450. properties:
  13451. preference:
  13452. description: A node selector
  13453. term, associated with the
  13454. corresponding weight.
  13455. properties:
  13456. matchExpressions:
  13457. description: A list of
  13458. node selector requirements
  13459. by node's labels.
  13460. items:
  13461. description: A node
  13462. selector requirement
  13463. is a selector that
  13464. contains values, a
  13465. key, and an operator
  13466. that relates the key
  13467. and values.
  13468. properties:
  13469. key:
  13470. description: The
  13471. label key that
  13472. the selector applies
  13473. to.
  13474. type: string
  13475. operator:
  13476. description: Represents
  13477. a key's relationship
  13478. to a set of values.
  13479. Valid operators
  13480. are In, NotIn,
  13481. Exists, DoesNotExist.
  13482. Gt, and Lt.
  13483. type: string
  13484. values:
  13485. description: An
  13486. array of string
  13487. values. If the
  13488. operator is In
  13489. or NotIn, the
  13490. values array must
  13491. be non-empty.
  13492. If the operator
  13493. is Exists or DoesNotExist,
  13494. the values array
  13495. must be empty.
  13496. If the operator
  13497. is Gt or Lt, the
  13498. values array must
  13499. have a single
  13500. element, which
  13501. will be interpreted
  13502. as an integer.
  13503. This array is
  13504. replaced during
  13505. a strategic merge
  13506. patch.
  13507. items:
  13508. type: string
  13509. type: array
  13510. required:
  13511. - key
  13512. - operator
  13513. type: object
  13514. type: array
  13515. matchFields:
  13516. description: A list of
  13517. node selector requirements
  13518. by node's fields.
  13519. items:
  13520. description: A node
  13521. selector requirement
  13522. is a selector that
  13523. contains values, a
  13524. key, and an operator
  13525. that relates the key
  13526. and values.
  13527. properties:
  13528. key:
  13529. description: The
  13530. label key that
  13531. the selector applies
  13532. to.
  13533. type: string
  13534. operator:
  13535. description: Represents
  13536. a key's relationship
  13537. to a set of values.
  13538. Valid operators
  13539. are In, NotIn,
  13540. Exists, DoesNotExist.
  13541. Gt, and Lt.
  13542. type: string
  13543. values:
  13544. description: An
  13545. array of string
  13546. values. If the
  13547. operator is In
  13548. or NotIn, the
  13549. values array must
  13550. be non-empty.
  13551. If the operator
  13552. is Exists or DoesNotExist,
  13553. the values array
  13554. must be empty.
  13555. If the operator
  13556. is Gt or Lt, the
  13557. values array must
  13558. have a single
  13559. element, which
  13560. will be interpreted
  13561. as an integer.
  13562. This array is
  13563. replaced during
  13564. a strategic merge
  13565. patch.
  13566. items:
  13567. type: string
  13568. type: array
  13569. required:
  13570. - key
  13571. - operator
  13572. type: object
  13573. type: array
  13574. type: object
  13575. weight:
  13576. description: Weight associated
  13577. with matching the corresponding
  13578. nodeSelectorTerm, in the
  13579. range 1-100.
  13580. format: int32
  13581. type: integer
  13582. required:
  13583. - preference
  13584. - weight
  13585. type: object
  13586. type: array
  13587. requiredDuringSchedulingIgnoredDuringExecution:
  13588. description: If the affinity requirements
  13589. specified by this field are not
  13590. met at scheduling time, the pod
  13591. will not be scheduled onto the
  13592. node. If the affinity requirements
  13593. specified by this field cease
  13594. to be met at some point during
  13595. pod execution (e.g. due to an
  13596. update), the system may or may
  13597. not try to eventually evict the
  13598. pod from its node.
  13599. properties:
  13600. nodeSelectorTerms:
  13601. description: Required. A list
  13602. of node selector terms. The
  13603. terms are ORed.
  13604. items:
  13605. description: A null or empty
  13606. node selector term matches
  13607. no objects. The requirements
  13608. of them are ANDed. The TopologySelectorTerm
  13609. type implements a subset
  13610. of the NodeSelectorTerm.
  13611. properties:
  13612. matchExpressions:
  13613. description: A list of
  13614. node selector requirements
  13615. by node's labels.
  13616. items:
  13617. description: A node
  13618. selector requirement
  13619. is a selector that
  13620. contains values, a
  13621. key, and an operator
  13622. that relates the key
  13623. and values.
  13624. properties:
  13625. key:
  13626. description: The
  13627. label key that
  13628. the selector applies
  13629. to.
  13630. type: string
  13631. operator:
  13632. description: Represents
  13633. a key's relationship
  13634. to a set of values.
  13635. Valid operators
  13636. are In, NotIn,
  13637. Exists, DoesNotExist.
  13638. Gt, and Lt.
  13639. type: string
  13640. values:
  13641. description: An
  13642. array of string
  13643. values. If the
  13644. operator is In
  13645. or NotIn, the
  13646. values array must
  13647. be non-empty.
  13648. If the operator
  13649. is Exists or DoesNotExist,
  13650. the values array
  13651. must be empty.
  13652. If the operator
  13653. is Gt or Lt, the
  13654. values array must
  13655. have a single
  13656. element, which
  13657. will be interpreted
  13658. as an integer.
  13659. This array is
  13660. replaced during
  13661. a strategic merge
  13662. patch.
  13663. items:
  13664. type: string
  13665. type: array
  13666. required:
  13667. - key
  13668. - operator
  13669. type: object
  13670. type: array
  13671. matchFields:
  13672. description: A list of
  13673. node selector requirements
  13674. by node's fields.
  13675. items:
  13676. description: A node
  13677. selector requirement
  13678. is a selector that
  13679. contains values, a
  13680. key, and an operator
  13681. that relates the key
  13682. and values.
  13683. properties:
  13684. key:
  13685. description: The
  13686. label key that
  13687. the selector applies
  13688. to.
  13689. type: string
  13690. operator:
  13691. description: Represents
  13692. a key's relationship
  13693. to a set of values.
  13694. Valid operators
  13695. are In, NotIn,
  13696. Exists, DoesNotExist.
  13697. Gt, and Lt.
  13698. type: string
  13699. values:
  13700. description: An
  13701. array of string
  13702. values. If the
  13703. operator is In
  13704. or NotIn, the
  13705. values array must
  13706. be non-empty.
  13707. If the operator
  13708. is Exists or DoesNotExist,
  13709. the values array
  13710. must be empty.
  13711. If the operator
  13712. is Gt or Lt, the
  13713. values array must
  13714. have a single
  13715. element, which
  13716. will be interpreted
  13717. as an integer.
  13718. This array is
  13719. replaced during
  13720. a strategic merge
  13721. patch.
  13722. items:
  13723. type: string
  13724. type: array
  13725. required:
  13726. - key
  13727. - operator
  13728. type: object
  13729. type: array
  13730. type: object
  13731. type: array
  13732. required:
  13733. - nodeSelectorTerms
  13734. type: object
  13735. type: object
  13736. podAffinity:
  13737. description: Describes pod affinity
  13738. scheduling rules (e.g. co-locate this
  13739. pod in the same node, zone, etc. as
  13740. some other pod(s)).
  13741. properties:
  13742. preferredDuringSchedulingIgnoredDuringExecution:
  13743. description: The scheduler will
  13744. prefer to schedule pods to nodes
  13745. that satisfy the affinity expressions
  13746. specified by this field, but it
  13747. may choose a node that violates
  13748. one or more of the expressions.
  13749. The node that is most preferred
  13750. is the one with the greatest sum
  13751. of weights, i.e. for each node
  13752. that meets all of the scheduling
  13753. requirements (resource request,
  13754. requiredDuringScheduling affinity
  13755. expressions, etc.), compute a
  13756. sum by iterating through the elements
  13757. of this field and adding "weight"
  13758. to the sum if the node has pods
  13759. which matches the corresponding
  13760. podAffinityTerm; the node(s) with
  13761. the highest sum are the most preferred.
  13762. items:
  13763. description: The weights of all
  13764. of the matched WeightedPodAffinityTerm
  13765. fields are added per-node to
  13766. find the most preferred node(s)
  13767. properties:
  13768. podAffinityTerm:
  13769. description: Required. A pod
  13770. affinity term, associated
  13771. with the corresponding weight.
  13772. properties:
  13773. labelSelector:
  13774. description: A label query
  13775. over a set of resources,
  13776. in this case pods.
  13777. properties:
  13778. matchExpressions:
  13779. description: matchExpressions
  13780. is a list of label
  13781. selector requirements.
  13782. The requirements
  13783. are ANDed.
  13784. items:
  13785. description: A label
  13786. selector requirement
  13787. is a selector
  13788. that contains
  13789. values, a key,
  13790. and an operator
  13791. that relates the
  13792. key and values.
  13793. properties:
  13794. key:
  13795. description: key
  13796. is the label
  13797. key that the
  13798. selector applies
  13799. to.
  13800. type: string
  13801. operator:
  13802. description: operator
  13803. represents
  13804. a key's relationship
  13805. to a set of
  13806. values. Valid
  13807. operators
  13808. are In, NotIn,
  13809. Exists and
  13810. DoesNotExist.
  13811. type: string
  13812. values:
  13813. description: values
  13814. is an array
  13815. of string
  13816. values. If
  13817. the operator
  13818. is In or NotIn,
  13819. the values
  13820. array must
  13821. be non-empty.
  13822. If the operator
  13823. is Exists
  13824. or DoesNotExist,
  13825. the values
  13826. array must
  13827. be empty.
  13828. This array
  13829. is replaced
  13830. during a strategic
  13831. merge patch.
  13832. items:
  13833. type: string
  13834. type: array
  13835. required:
  13836. - key
  13837. - operator
  13838. type: object
  13839. type: array
  13840. matchLabels:
  13841. additionalProperties:
  13842. type: string
  13843. description: matchLabels
  13844. is a map of {key,value}
  13845. pairs. A single
  13846. {key,value} in the
  13847. matchLabels map
  13848. is equivalent to
  13849. an element of matchExpressions,
  13850. whose key field
  13851. is "key", the operator
  13852. is "In", and the
  13853. values array contains
  13854. only "value". The
  13855. requirements are
  13856. ANDed.
  13857. type: object
  13858. type: object
  13859. namespaces:
  13860. description: namespaces
  13861. specifies which namespaces
  13862. the labelSelector applies
  13863. to (matches against);
  13864. null or empty list means
  13865. "this pod's namespace"
  13866. items:
  13867. type: string
  13868. type: array
  13869. topologyKey:
  13870. description: This pod
  13871. should be co-located
  13872. (affinity) or not co-located
  13873. (anti-affinity) with
  13874. the pods matching the
  13875. labelSelector in the
  13876. specified namespaces,
  13877. where co-located is
  13878. defined as running on
  13879. a node whose value of
  13880. the label with key topologyKey
  13881. matches that of any
  13882. node on which any of
  13883. the selected pods is
  13884. running. Empty topologyKey
  13885. is not allowed.
  13886. type: string
  13887. required:
  13888. - topologyKey
  13889. type: object
  13890. weight:
  13891. description: weight associated
  13892. with matching the corresponding
  13893. podAffinityTerm, in the
  13894. range 1-100.
  13895. format: int32
  13896. type: integer
  13897. required:
  13898. - podAffinityTerm
  13899. - weight
  13900. type: object
  13901. type: array
  13902. requiredDuringSchedulingIgnoredDuringExecution:
  13903. description: If the affinity requirements
  13904. specified by this field are not
  13905. met at scheduling time, the pod
  13906. will not be scheduled onto the
  13907. node. If the affinity requirements
  13908. specified by this field cease
  13909. to be met at some point during
  13910. pod execution (e.g. due to a pod
  13911. label update), the system may
  13912. or may not try to eventually evict
  13913. the pod from its node. When there
  13914. are multiple elements, the lists
  13915. of nodes corresponding to each
  13916. podAffinityTerm are intersected,
  13917. i.e. all terms must be satisfied.
  13918. items:
  13919. description: Defines a set of
  13920. pods (namely those matching
  13921. the labelSelector relative to
  13922. the given namespace(s)) that
  13923. this pod should be co-located
  13924. (affinity) or not co-located
  13925. (anti-affinity) with, where
  13926. co-located is defined as running
  13927. on a node whose value of the
  13928. label with key <topologyKey>
  13929. matches that of any node on
  13930. which a pod of the set of pods
  13931. is running
  13932. properties:
  13933. labelSelector:
  13934. description: A label query
  13935. over a set of resources,
  13936. in this case pods.
  13937. properties:
  13938. matchExpressions:
  13939. description: matchExpressions
  13940. is a list of label selector
  13941. requirements. The requirements
  13942. are ANDed.
  13943. items:
  13944. description: A label
  13945. selector requirement
  13946. is a selector that
  13947. contains values, a
  13948. key, and an operator
  13949. that relates the key
  13950. and values.
  13951. properties:
  13952. key:
  13953. description: key
  13954. is the label key
  13955. that the selector
  13956. applies to.
  13957. type: string
  13958. operator:
  13959. description: operator
  13960. represents a key's
  13961. relationship to
  13962. a set of values.
  13963. Valid operators
  13964. are In, NotIn,
  13965. Exists and DoesNotExist.
  13966. type: string
  13967. values:
  13968. description: values
  13969. is an array of
  13970. string values.
  13971. If the operator
  13972. is In or NotIn,
  13973. the values array
  13974. must be non-empty.
  13975. If the operator
  13976. is Exists or DoesNotExist,
  13977. the values array
  13978. must be empty.
  13979. This array is
  13980. replaced during
  13981. a strategic merge
  13982. patch.
  13983. items:
  13984. type: string
  13985. type: array
  13986. required:
  13987. - key
  13988. - operator
  13989. type: object
  13990. type: array
  13991. matchLabels:
  13992. additionalProperties:
  13993. type: string
  13994. description: matchLabels
  13995. is a map of {key,value}
  13996. pairs. A single {key,value}
  13997. in the matchLabels map
  13998. is equivalent to an
  13999. element of matchExpressions,
  14000. whose key field is "key",
  14001. the operator is "In",
  14002. and the values array
  14003. contains only "value".
  14004. The requirements are
  14005. ANDed.
  14006. type: object
  14007. type: object
  14008. namespaces:
  14009. description: namespaces specifies
  14010. which namespaces the labelSelector
  14011. applies to (matches against);
  14012. null or empty list means
  14013. "this pod's namespace"
  14014. items:
  14015. type: string
  14016. type: array
  14017. topologyKey:
  14018. description: This pod should
  14019. be co-located (affinity)
  14020. or not co-located (anti-affinity)
  14021. with the pods matching the
  14022. labelSelector in the specified
  14023. namespaces, where co-located
  14024. is defined as running on
  14025. a node whose value of the
  14026. label with key topologyKey
  14027. matches that of any node
  14028. on which any of the selected
  14029. pods is running. Empty topologyKey
  14030. is not allowed.
  14031. type: string
  14032. required:
  14033. - topologyKey
  14034. type: object
  14035. type: array
  14036. type: object
  14037. podAntiAffinity:
  14038. description: Describes pod anti-affinity
  14039. scheduling rules (e.g. avoid putting
  14040. this pod in the same node, zone, etc.
  14041. as some other pod(s)).
  14042. properties:
  14043. preferredDuringSchedulingIgnoredDuringExecution:
  14044. description: The scheduler will
  14045. prefer to schedule pods to nodes
  14046. that satisfy the anti-affinity
  14047. expressions specified by this
  14048. field, but it may choose a node
  14049. that violates one or more of the
  14050. expressions. The node that is
  14051. most preferred is the one with
  14052. the greatest sum of weights, i.e.
  14053. for each node that meets all of
  14054. the scheduling requirements (resource
  14055. request, requiredDuringScheduling
  14056. anti-affinity expressions, etc.),
  14057. compute a sum by iterating through
  14058. the elements of this field and
  14059. adding "weight" to the sum if
  14060. the node has pods which matches
  14061. the corresponding podAffinityTerm;
  14062. the node(s) with the highest sum
  14063. are the most preferred.
  14064. items:
  14065. description: The weights of all
  14066. of the matched WeightedPodAffinityTerm
  14067. fields are added per-node to
  14068. find the most preferred node(s)
  14069. properties:
  14070. podAffinityTerm:
  14071. description: Required. A pod
  14072. affinity term, associated
  14073. with the corresponding weight.
  14074. properties:
  14075. labelSelector:
  14076. description: A label query
  14077. over a set of resources,
  14078. in this case pods.
  14079. properties:
  14080. matchExpressions:
  14081. description: matchExpressions
  14082. is a list of label
  14083. selector requirements.
  14084. The requirements
  14085. are ANDed.
  14086. items:
  14087. description: A label
  14088. selector requirement
  14089. is a selector
  14090. that contains
  14091. values, a key,
  14092. and an operator
  14093. that relates the
  14094. key and values.
  14095. properties:
  14096. key:
  14097. description: key
  14098. is the label
  14099. key that the
  14100. selector applies
  14101. to.
  14102. type: string
  14103. operator:
  14104. description: operator
  14105. represents
  14106. a key's relationship
  14107. to a set of
  14108. values. Valid
  14109. operators
  14110. are In, NotIn,
  14111. Exists and
  14112. DoesNotExist.
  14113. type: string
  14114. values:
  14115. description: values
  14116. is an array
  14117. of string
  14118. values. If
  14119. the operator
  14120. is In or NotIn,
  14121. the values
  14122. array must
  14123. be non-empty.
  14124. If the operator
  14125. is Exists
  14126. or DoesNotExist,
  14127. the values
  14128. array must
  14129. be empty.
  14130. This array
  14131. is replaced
  14132. during a strategic
  14133. merge patch.
  14134. items:
  14135. type: string
  14136. type: array
  14137. required:
  14138. - key
  14139. - operator
  14140. type: object
  14141. type: array
  14142. matchLabels:
  14143. additionalProperties:
  14144. type: string
  14145. description: matchLabels
  14146. is a map of {key,value}
  14147. pairs. A single
  14148. {key,value} in the
  14149. matchLabels map
  14150. is equivalent to
  14151. an element of matchExpressions,
  14152. whose key field
  14153. is "key", the operator
  14154. is "In", and the
  14155. values array contains
  14156. only "value". The
  14157. requirements are
  14158. ANDed.
  14159. type: object
  14160. type: object
  14161. namespaces:
  14162. description: namespaces
  14163. specifies which namespaces
  14164. the labelSelector applies
  14165. to (matches against);
  14166. null or empty list means
  14167. "this pod's namespace"
  14168. items:
  14169. type: string
  14170. type: array
  14171. topologyKey:
  14172. description: This pod
  14173. should be co-located
  14174. (affinity) or not co-located
  14175. (anti-affinity) with
  14176. the pods matching the
  14177. labelSelector in the
  14178. specified namespaces,
  14179. where co-located is
  14180. defined as running on
  14181. a node whose value of
  14182. the label with key topologyKey
  14183. matches that of any
  14184. node on which any of
  14185. the selected pods is
  14186. running. Empty topologyKey
  14187. is not allowed.
  14188. type: string
  14189. required:
  14190. - topologyKey
  14191. type: object
  14192. weight:
  14193. description: weight associated
  14194. with matching the corresponding
  14195. podAffinityTerm, in the
  14196. range 1-100.
  14197. format: int32
  14198. type: integer
  14199. required:
  14200. - podAffinityTerm
  14201. - weight
  14202. type: object
  14203. type: array
  14204. requiredDuringSchedulingIgnoredDuringExecution:
  14205. description: If the anti-affinity
  14206. requirements specified by this
  14207. field are not met at scheduling
  14208. time, the pod will not be scheduled
  14209. onto the node. If the anti-affinity
  14210. requirements specified by this
  14211. field cease to be met at some
  14212. point during pod execution (e.g.
  14213. due to a pod label update), the
  14214. system may or may not try to eventually
  14215. evict the pod from its node. When
  14216. there are multiple elements, the
  14217. lists of nodes corresponding to
  14218. each podAffinityTerm are intersected,
  14219. i.e. all terms must be satisfied.
  14220. items:
  14221. description: Defines a set of
  14222. pods (namely those matching
  14223. the labelSelector relative to
  14224. the given namespace(s)) that
  14225. this pod should be co-located
  14226. (affinity) or not co-located
  14227. (anti-affinity) with, where
  14228. co-located is defined as running
  14229. on a node whose value of the
  14230. label with key <topologyKey>
  14231. matches that of any node on
  14232. which a pod of the set of pods
  14233. is running
  14234. properties:
  14235. labelSelector:
  14236. description: A label query
  14237. over a set of resources,
  14238. in this case pods.
  14239. properties:
  14240. matchExpressions:
  14241. description: matchExpressions
  14242. is a list of label selector
  14243. requirements. The requirements
  14244. are ANDed.
  14245. items:
  14246. description: A label
  14247. selector requirement
  14248. is a selector that
  14249. contains values, a
  14250. key, and an operator
  14251. that relates the key
  14252. and values.
  14253. properties:
  14254. key:
  14255. description: key
  14256. is the label key
  14257. that the selector
  14258. applies to.
  14259. type: string
  14260. operator:
  14261. description: operator
  14262. represents a key's
  14263. relationship to
  14264. a set of values.
  14265. Valid operators
  14266. are In, NotIn,
  14267. Exists and DoesNotExist.
  14268. type: string
  14269. values:
  14270. description: values
  14271. is an array of
  14272. string values.
  14273. If the operator
  14274. is In or NotIn,
  14275. the values array
  14276. must be non-empty.
  14277. If the operator
  14278. is Exists or DoesNotExist,
  14279. the values array
  14280. must be empty.
  14281. This array is
  14282. replaced during
  14283. a strategic merge
  14284. patch.
  14285. items:
  14286. type: string
  14287. type: array
  14288. required:
  14289. - key
  14290. - operator
  14291. type: object
  14292. type: array
  14293. matchLabels:
  14294. additionalProperties:
  14295. type: string
  14296. description: matchLabels
  14297. is a map of {key,value}
  14298. pairs. A single {key,value}
  14299. in the matchLabels map
  14300. is equivalent to an
  14301. element of matchExpressions,
  14302. whose key field is "key",
  14303. the operator is "In",
  14304. and the values array
  14305. contains only "value".
  14306. The requirements are
  14307. ANDed.
  14308. type: object
  14309. type: object
  14310. namespaces:
  14311. description: namespaces specifies
  14312. which namespaces the labelSelector
  14313. applies to (matches against);
  14314. null or empty list means
  14315. "this pod's namespace"
  14316. items:
  14317. type: string
  14318. type: array
  14319. topologyKey:
  14320. description: This pod should
  14321. be co-located (affinity)
  14322. or not co-located (anti-affinity)
  14323. with the pods matching the
  14324. labelSelector in the specified
  14325. namespaces, where co-located
  14326. is defined as running on
  14327. a node whose value of the
  14328. label with key topologyKey
  14329. matches that of any node
  14330. on which any of the selected
  14331. pods is running. Empty topologyKey
  14332. is not allowed.
  14333. type: string
  14334. required:
  14335. - topologyKey
  14336. type: object
  14337. type: array
  14338. type: object
  14339. type: object
  14340. nodeSelector:
  14341. additionalProperties:
  14342. type: string
  14343. description: 'NodeSelector is a selector
  14344. which must be true for the pod to fit
  14345. on a node. Selector which must match a
  14346. node''s labels for the pod to be scheduled
  14347. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  14348. type: object
  14349. priorityClassName:
  14350. description: If specified, the pod's priorityClassName.
  14351. type: string
  14352. serviceAccountName:
  14353. description: If specified, the pod's service
  14354. account
  14355. type: string
  14356. tolerations:
  14357. description: If specified, the pod's tolerations.
  14358. items:
  14359. description: The pod this Toleration is
  14360. attached to tolerates any taint that
  14361. matches the triple <key,value,effect>
  14362. using the matching operator <operator>.
  14363. properties:
  14364. effect:
  14365. description: Effect indicates the
  14366. taint effect to match. Empty means
  14367. match all taint effects. When specified,
  14368. allowed values are NoSchedule, PreferNoSchedule
  14369. and NoExecute.
  14370. type: string
  14371. key:
  14372. description: Key is the taint key
  14373. that the toleration applies to.
  14374. Empty means match all taint keys.
  14375. If the key is empty, operator must
  14376. be Exists; this combination means
  14377. to match all values and all keys.
  14378. type: string
  14379. operator:
  14380. description: Operator represents a
  14381. key's relationship to the value.
  14382. Valid operators are Exists and Equal.
  14383. Defaults to Equal. Exists is equivalent
  14384. to wildcard for value, so that a
  14385. pod can tolerate all taints of a
  14386. particular category.
  14387. type: string
  14388. tolerationSeconds:
  14389. description: TolerationSeconds represents
  14390. the period of time the toleration
  14391. (which must be of effect NoExecute,
  14392. otherwise this field is ignored)
  14393. tolerates the taint. By default,
  14394. it is not set, which means tolerate
  14395. the taint forever (do not evict).
  14396. Zero and negative values will be
  14397. treated as 0 (evict immediately)
  14398. by the system.
  14399. format: int64
  14400. type: integer
  14401. value:
  14402. description: Value is the taint value
  14403. the toleration matches to. If the
  14404. operator is Exists, the value should
  14405. be empty, otherwise just a regular
  14406. string.
  14407. type: string
  14408. type: object
  14409. type: array
  14410. type: object
  14411. type: object
  14412. serviceType:
  14413. description: Optional service type for Kubernetes
  14414. solver service
  14415. type: string
  14416. type: object
  14417. type: object
  14418. selector:
  14419. description: Selector selects a set of DNSNames on the Certificate
  14420. resource that should be solved using this challenge solver.
  14421. If not specified, the solver will be treated as the 'default'
  14422. solver with the lowest priority, i.e. if any other solver
  14423. has a more specific match, it will be used instead.
  14424. properties:
  14425. dnsNames:
  14426. description: List of DNSNames that this solver will
  14427. be used to solve. If specified and a match is found,
  14428. a dnsNames selector will take precedence over a dnsZones
  14429. selector. If multiple solvers match with the same
  14430. dnsNames value, the solver with the most matching
  14431. labels in matchLabels will be selected. If neither
  14432. has more matches, the solver defined earlier in the
  14433. list will be selected.
  14434. items:
  14435. type: string
  14436. type: array
  14437. dnsZones:
  14438. description: List of DNSZones that this solver will
  14439. be used to solve. The most specific DNS zone match
  14440. specified here will take precedence over other DNS
  14441. zone matches, so a solver specifying sys.example.com
  14442. will be selected over one specifying example.com for
  14443. the domain www.sys.example.com. If multiple solvers
  14444. match with the same dnsZones value, the solver with
  14445. the most matching labels in matchLabels will be selected.
  14446. If neither has more matches, the solver defined earlier
  14447. in the list will be selected.
  14448. items:
  14449. type: string
  14450. type: array
  14451. matchLabels:
  14452. additionalProperties:
  14453. type: string
  14454. description: A label selector that is used to refine
  14455. the set of certificate's that this challenge solver
  14456. will apply to.
  14457. type: object
  14458. type: object
  14459. type: object
  14460. type: array
  14461. required:
  14462. - privateKeySecretRef
  14463. - server
  14464. type: object
  14465. ca:
  14466. description: CA configures this issuer to sign certificates using
  14467. a signing CA keypair stored in a Secret resource. This is used to
  14468. build internal PKIs that are managed by cert-manager.
  14469. properties:
  14470. crlDistributionPoints:
  14471. description: The CRL distribution points is an X.509 v3 certificate
  14472. extension which identifies the location of the CRL from which
  14473. the revocation of this certificate can be checked. If not set,
  14474. certificates will be issued without distribution points set.
  14475. items:
  14476. type: string
  14477. type: array
  14478. ocspServers:
  14479. description: The OCSP server list is an X.509 v3 extension that
  14480. defines a list of URLs of OCSP responders. The OCSP responders
  14481. can be queried for the revocation status of an issued certificate.
  14482. If not set, the certificate will be issued with no OCSP servers
  14483. set. For example, an OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
  14484. items:
  14485. type: string
  14486. type: array
  14487. secretName:
  14488. description: SecretName is the name of the secret used to sign
  14489. Certificates issued by this Issuer.
  14490. type: string
  14491. required:
  14492. - secretName
  14493. type: object
  14494. selfSigned:
  14495. description: SelfSigned configures this issuer to 'self sign' certificates
  14496. using the private key used to create the CertificateRequest object.
  14497. properties:
  14498. crlDistributionPoints:
  14499. description: The CRL distribution points is an X.509 v3 certificate
  14500. extension which identifies the location of the CRL from which
  14501. the revocation of this certificate can be checked. If not set
  14502. certificate will be issued without CDP. Values are strings.
  14503. items:
  14504. type: string
  14505. type: array
  14506. type: object
  14507. vault:
  14508. description: Vault configures this issuer to sign certificates using
  14509. a HashiCorp Vault PKI backend.
  14510. properties:
  14511. auth:
  14512. description: Auth configures how cert-manager authenticates with
  14513. the Vault server.
  14514. properties:
  14515. appRole:
  14516. description: AppRole authenticates with Vault using the App
  14517. Role auth mechanism, with the role and secret stored in
  14518. a Kubernetes Secret resource.
  14519. properties:
  14520. path:
  14521. description: 'Path where the App Role authentication backend
  14522. is mounted in Vault, e.g: "approle"'
  14523. type: string
  14524. roleId:
  14525. description: RoleID configured in the App Role authentication
  14526. backend when setting up the authentication backend in
  14527. Vault.
  14528. type: string
  14529. secretRef:
  14530. description: Reference to a key in a Secret that contains
  14531. the App Role secret used to authenticate with Vault.
  14532. The `key` field must be specified and denotes which
  14533. entry within the Secret resource is used as the app
  14534. role secret.
  14535. properties:
  14536. key:
  14537. description: The key of the entry in the Secret resource's
  14538. `data` field to be used. Some instances of this
  14539. field may be defaulted, in others it may be required.
  14540. type: string
  14541. name:
  14542. description: 'Name of the resource being referred
  14543. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14544. type: string
  14545. required:
  14546. - name
  14547. type: object
  14548. required:
  14549. - path
  14550. - roleId
  14551. - secretRef
  14552. type: object
  14553. kubernetes:
  14554. description: Kubernetes authenticates with Vault by passing
  14555. the ServiceAccount token stored in the named Secret resource
  14556. to the Vault server.
  14557. properties:
  14558. mountPath:
  14559. description: The Vault mountPath here is the mount path
  14560. to use when authenticating with Vault. For example,
  14561. setting a value to `/v1/auth/foo`, will use the path
  14562. `/v1/auth/foo/login` to authenticate with Vault. If
  14563. unspecified, the default value "/v1/auth/kubernetes"
  14564. will be used.
  14565. type: string
  14566. role:
  14567. description: A required field containing the Vault Role
  14568. to assume. A Role binds a Kubernetes ServiceAccount
  14569. with a set of Vault policies.
  14570. type: string
  14571. secretRef:
  14572. description: The required Secret field containing a Kubernetes
  14573. ServiceAccount JWT used for authenticating with Vault.
  14574. Use of 'ambient credentials' is not supported.
  14575. properties:
  14576. key:
  14577. description: The key of the entry in the Secret resource's
  14578. `data` field to be used. Some instances of this
  14579. field may be defaulted, in others it may be required.
  14580. type: string
  14581. name:
  14582. description: 'Name of the resource being referred
  14583. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14584. type: string
  14585. required:
  14586. - name
  14587. type: object
  14588. required:
  14589. - role
  14590. - secretRef
  14591. type: object
  14592. tokenSecretRef:
  14593. description: TokenSecretRef authenticates with Vault by presenting
  14594. a token.
  14595. properties:
  14596. key:
  14597. description: The key of the entry in the Secret resource's
  14598. `data` field to be used. Some instances of this field
  14599. may be defaulted, in others it may be required.
  14600. type: string
  14601. name:
  14602. description: 'Name of the resource being referred to.
  14603. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14604. type: string
  14605. required:
  14606. - name
  14607. type: object
  14608. type: object
  14609. caBundle:
  14610. description: PEM encoded CA bundle used to validate Vault server
  14611. certificate. Only used if the Server URL is using HTTPS protocol.
  14612. This parameter is ignored for plain HTTP protocol connection.
  14613. If not set the system root certificates are used to validate
  14614. the TLS connection.
  14615. format: byte
  14616. type: string
  14617. namespace:
  14618. description: 'Name of the vault namespace. Namespaces is a set
  14619. of features within Vault Enterprise that allows Vault environments
  14620. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  14621. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  14622. type: string
  14623. path:
  14624. description: 'Path is the mount path of the Vault PKI backend''s
  14625. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  14626. type: string
  14627. server:
  14628. description: 'Server is the connection address for the Vault server,
  14629. e.g: "https://vault.example.com:8200".'
  14630. type: string
  14631. required:
  14632. - auth
  14633. - path
  14634. - server
  14635. type: object
  14636. venafi:
  14637. description: Venafi configures this issuer to sign certificates using
  14638. a Venafi TPP or Venafi Cloud policy zone.
  14639. properties:
  14640. cloud:
  14641. description: Cloud specifies the Venafi cloud configuration settings.
  14642. Only one of TPP or Cloud may be specified.
  14643. properties:
  14644. apiTokenSecretRef:
  14645. description: APITokenSecretRef is a secret key selector for
  14646. the Venafi Cloud API token.
  14647. properties:
  14648. key:
  14649. description: The key of the entry in the Secret resource's
  14650. `data` field to be used. Some instances of this field
  14651. may be defaulted, in others it may be required.
  14652. type: string
  14653. name:
  14654. description: 'Name of the resource being referred to.
  14655. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14656. type: string
  14657. required:
  14658. - name
  14659. type: object
  14660. url:
  14661. description: URL is the base URL for Venafi Cloud. Defaults
  14662. to "https://api.venafi.cloud/v1".
  14663. type: string
  14664. required:
  14665. - apiTokenSecretRef
  14666. type: object
  14667. tpp:
  14668. description: TPP specifies Trust Protection Platform configuration
  14669. settings. Only one of TPP or Cloud may be specified.
  14670. properties:
  14671. caBundle:
  14672. description: CABundle is a PEM encoded TLS certificate to
  14673. use to verify connections to the TPP instance. If specified,
  14674. system roots will not be used and the issuing CA for the
  14675. TPP instance must be verifiable using the provided root.
  14676. If not specified, the connection will be verified using
  14677. the cert-manager system root certificates.
  14678. format: byte
  14679. type: string
  14680. credentialsRef:
  14681. description: CredentialsRef is a reference to a Secret containing
  14682. the username and password for the TPP server. The secret
  14683. must contain two keys, 'username' and 'password'.
  14684. properties:
  14685. name:
  14686. description: 'Name of the resource being referred to.
  14687. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14688. type: string
  14689. required:
  14690. - name
  14691. type: object
  14692. url:
  14693. description: 'URL is the base URL for the vedsdk endpoint
  14694. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  14695. type: string
  14696. required:
  14697. - credentialsRef
  14698. - url
  14699. type: object
  14700. zone:
  14701. description: Zone is the Venafi Policy Zone to use for this issuer.
  14702. All requests made to the Venafi platform will be restricted
  14703. by the named zone policy. This field is required.
  14704. type: string
  14705. required:
  14706. - zone
  14707. type: object
  14708. type: object
  14709. status:
  14710. description: Status of the ClusterIssuer. This is set and managed automatically.
  14711. properties:
  14712. acme:
  14713. description: ACME specific status options. This field should only
  14714. be set if the Issuer is configured to use an ACME server to issue
  14715. certificates.
  14716. properties:
  14717. lastRegisteredEmail:
  14718. description: LastRegisteredEmail is the email associated with
  14719. the latest registered ACME account, in order to track changes
  14720. made to registered account associated with the Issuer
  14721. type: string
  14722. uri:
  14723. description: URI is the unique account identifier, which can also
  14724. be used to retrieve account details from the CA
  14725. type: string
  14726. type: object
  14727. conditions:
  14728. description: List of status conditions to indicate the status of a
  14729. CertificateRequest. Known condition types are `Ready`.
  14730. items:
  14731. description: IssuerCondition contains condition information for
  14732. an Issuer.
  14733. properties:
  14734. lastTransitionTime:
  14735. description: LastTransitionTime is the timestamp corresponding
  14736. to the last status change of this condition.
  14737. format: date-time
  14738. type: string
  14739. message:
  14740. description: Message is a human readable description of the
  14741. details of the last transition, complementing reason.
  14742. type: string
  14743. observedGeneration:
  14744. description: If set, this represents the .metadata.generation
  14745. that the condition was set based upon. For instance, if .metadata.generation
  14746. is currently 12, but the .status.condition[x].observedGeneration
  14747. is 9, the condition is out of date with respect to the current
  14748. state of the Issuer.
  14749. format: int64
  14750. type: integer
  14751. reason:
  14752. description: Reason is a brief machine readable explanation
  14753. for the condition's last transition.
  14754. type: string
  14755. status:
  14756. description: Status of the condition, one of (`True`, `False`,
  14757. `Unknown`).
  14758. enum:
  14759. - "True"
  14760. - "False"
  14761. - Unknown
  14762. type: string
  14763. type:
  14764. description: Type of the condition, known values are (`Ready`).
  14765. type: string
  14766. required:
  14767. - status
  14768. - type
  14769. type: object
  14770. type: array
  14771. type: object
  14772. required:
  14773. - spec
  14774. type: object
  14775. served: true
  14776. storage: false
  14777. subresources:
  14778. status: {}
  14779. - additionalPrinterColumns:
  14780. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  14781. name: Ready
  14782. type: string
  14783. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  14784. name: Status
  14785. priority: 1
  14786. type: string
  14787. - description: CreationTimestamp is a timestamp representing the server time when
  14788. this object was created. It is not guaranteed to be set in happens-before
  14789. order across separate operations. Clients may not set this value. It is represented
  14790. in RFC3339 form and is in UTC.
  14791. jsonPath: .metadata.creationTimestamp
  14792. name: Age
  14793. type: date
  14794. name: v1
  14795. schema:
  14796. openAPIV3Schema:
  14797. description: A ClusterIssuer represents a certificate issuing authority which
  14798. can be referenced as part of `issuerRef` fields. It is similar to an Issuer,
  14799. however it is cluster-scoped and therefore can be referenced by resources
  14800. that exist in *any* namespace, not just the same namespace as the referent.
  14801. properties:
  14802. apiVersion:
  14803. description: 'APIVersion defines the versioned schema of this representation
  14804. of an object. Servers should convert recognized schemas to the latest
  14805. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  14806. type: string
  14807. kind:
  14808. description: 'Kind is a string value representing the REST resource this
  14809. object represents. Servers may infer this from the endpoint the client
  14810. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  14811. type: string
  14812. metadata:
  14813. type: object
  14814. spec:
  14815. description: Desired state of the ClusterIssuer resource.
  14816. properties:
  14817. acme:
  14818. description: ACME configures this issuer to communicate with a RFC8555
  14819. (ACME) server to obtain signed x509 certificates.
  14820. properties:
  14821. disableAccountKeyGeneration:
  14822. description: Enables or disables generating a new ACME account
  14823. key. If true, the Issuer resource will *not* request a new account
  14824. but will expect the account key to be supplied via an existing
  14825. secret. If false, the cert-manager system will generate a new
  14826. ACME account key for the Issuer. Defaults to false.
  14827. type: boolean
  14828. email:
  14829. description: Email is the email address to be associated with
  14830. the ACME account. This field is optional, but it is strongly
  14831. recommended to be set. It will be used to contact you in case
  14832. of issues with your account or certificates, including expiry
  14833. notification emails. This field may be updated after the account
  14834. is initially registered.
  14835. type: string
  14836. enableDurationFeature:
  14837. description: Enables requesting a Not After date on certificates
  14838. that matches the duration of the certificate. This is not supported
  14839. by all ACME servers like Let's Encrypt. If set to true when
  14840. the ACME server does not support it it will create an error
  14841. on the Order. Defaults to false.
  14842. type: boolean
  14843. externalAccountBinding:
  14844. description: ExternalAccountBinding is a reference to a CA external
  14845. account of the ACME server. If set, upon registration cert-manager
  14846. will attempt to associate the given external account credentials
  14847. with the registered ACME account.
  14848. properties:
  14849. keyAlgorithm:
  14850. description: keyAlgorithm is the MAC key algorithm that the
  14851. key is used for. Valid values are "HS256", "HS384" and "HS512".
  14852. enum:
  14853. - HS256
  14854. - HS384
  14855. - HS512
  14856. type: string
  14857. keyID:
  14858. description: keyID is the ID of the CA key that the External
  14859. Account is bound to.
  14860. type: string
  14861. keySecretRef:
  14862. description: keySecretRef is a Secret Key Selector referencing
  14863. a data item in a Kubernetes Secret which holds the symmetric
  14864. MAC key of the External Account Binding. The `key` is the
  14865. index string that is paired with the key data in the Secret
  14866. and should not be confused with the key data itself, or
  14867. indeed with the External Account Binding keyID above. The
  14868. secret key stored in the Secret **must** be un-padded, base64
  14869. URL encoded data.
  14870. properties:
  14871. key:
  14872. description: The key of the entry in the Secret resource's
  14873. `data` field to be used. Some instances of this field
  14874. may be defaulted, in others it may be required.
  14875. type: string
  14876. name:
  14877. description: 'Name of the resource being referred to.
  14878. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14879. type: string
  14880. required:
  14881. - name
  14882. type: object
  14883. required:
  14884. - keyAlgorithm
  14885. - keyID
  14886. - keySecretRef
  14887. type: object
  14888. preferredChain:
  14889. description: 'PreferredChain is the chain to use if the ACME server
  14890. outputs multiple. PreferredChain is no guarantee that this one
  14891. gets delivered by the ACME endpoint. For example, for Let''s
  14892. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  14893. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  14894. picks the first certificate bundle in the ACME alternative chains
  14895. that has a certificate with this value as its issuer''s CN'
  14896. maxLength: 64
  14897. type: string
  14898. privateKeySecretRef:
  14899. description: PrivateKey is the name of a Kubernetes Secret resource
  14900. that will be used to store the automatically generated ACME
  14901. account private key. Optionally, a `key` may be specified to
  14902. select a specific entry within the named Secret resource. If
  14903. `key` is not specified, a default of `tls.key` will be used.
  14904. properties:
  14905. key:
  14906. description: The key of the entry in the Secret resource's
  14907. `data` field to be used. Some instances of this field may
  14908. be defaulted, in others it may be required.
  14909. type: string
  14910. name:
  14911. description: 'Name of the resource being referred to. More
  14912. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14913. type: string
  14914. required:
  14915. - name
  14916. type: object
  14917. server:
  14918. description: 'Server is the URL used to access the ACME server''s
  14919. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  14920. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  14921. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  14922. type: string
  14923. skipTLSVerify:
  14924. description: Enables or disables validation of the ACME server
  14925. TLS certificate. If true, requests to the ACME server will not
  14926. have their TLS certificate validated (i.e. insecure connections
  14927. will be allowed). Only enable this option in development environments.
  14928. The cert-manager system installed roots will be used to verify
  14929. connections to the ACME server if this is false. Defaults to
  14930. false.
  14931. type: boolean
  14932. solvers:
  14933. description: 'Solvers is a list of challenge solvers that will
  14934. be used to solve ACME challenges for the matching domains. Solver
  14935. configurations must be provided in order to obtain certificates
  14936. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  14937. items:
  14938. description: Configures an issuer to solve challenges using
  14939. the specified options. Only one of HTTP01 or DNS01 may be
  14940. provided.
  14941. properties:
  14942. dns01:
  14943. description: Configures cert-manager to attempt to complete
  14944. authorizations by performing the DNS01 challenge flow.
  14945. properties:
  14946. acmeDNS:
  14947. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  14948. API to manage DNS01 challenge records.
  14949. properties:
  14950. accountSecretRef:
  14951. description: A reference to a specific 'key' within
  14952. a Secret resource. In some instances, `key` is
  14953. a required field.
  14954. properties:
  14955. key:
  14956. description: The key of the entry in the Secret
  14957. resource's `data` field to be used. Some instances
  14958. of this field may be defaulted, in others
  14959. it may be required.
  14960. type: string
  14961. name:
  14962. description: 'Name of the resource being referred
  14963. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14964. type: string
  14965. required:
  14966. - name
  14967. type: object
  14968. host:
  14969. type: string
  14970. required:
  14971. - accountSecretRef
  14972. - host
  14973. type: object
  14974. akamai:
  14975. description: Use the Akamai DNS zone management API
  14976. to manage DNS01 challenge records.
  14977. properties:
  14978. accessTokenSecretRef:
  14979. description: A reference to a specific 'key' within
  14980. a Secret resource. In some instances, `key` is
  14981. a required field.
  14982. properties:
  14983. key:
  14984. description: The key of the entry in the Secret
  14985. resource's `data` field to be used. Some instances
  14986. of this field may be defaulted, in others
  14987. it may be required.
  14988. type: string
  14989. name:
  14990. description: 'Name of the resource being referred
  14991. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  14992. type: string
  14993. required:
  14994. - name
  14995. type: object
  14996. clientSecretSecretRef:
  14997. description: A reference to a specific 'key' within
  14998. a Secret resource. In some instances, `key` is
  14999. a required field.
  15000. properties:
  15001. key:
  15002. description: The key of the entry in the Secret
  15003. resource's `data` field to be used. Some instances
  15004. of this field may be defaulted, in others
  15005. it may be required.
  15006. type: string
  15007. name:
  15008. description: 'Name of the resource being referred
  15009. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  15010. type: string
  15011. required:
  15012. - name
  15013. type: object
  15014. clientTokenSecretRef:
  15015. description: A reference to a specific 'key' within
  15016. a Secret resource. In some instances, `key` is
  15017. a required field.
  15018. properties:
  15019. key:
  15020. description: The key of the entry in the Secret
  15021. resource's `data` field to be used. Some instances
  15022. of this field may be defaulted, in others
  15023. it may be required.
  15024. type: string
  15025. name:
  15026. description: 'Name of the resource being referred
  15027. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  15028. type: string
  15029. required:
  15030. - name
  15031. type: object
  15032. serviceConsumerDomain:
  15033. type: string
  15034. required:
  15035. - accessTokenSecretRef
  15036. - clientSecretSecretRef
  15037. - clientTokenSecretRef
  15038. - serviceConsumerDomain
  15039. type: object
  15040. azureDNS:
  15041. description: Use the Microsoft Azure DNS API to manage
  15042. DNS01 challenge records.
  15043. properties:
  15044. clientID:
  15045. description: if both this and ClientSecret are left
  15046. unset MSI will be used
  15047. type: string
  15048. clientSecretSecretRef:
  15049. description: if both this and ClientID are left
  15050. unset MSI will be used
  15051. properties:
  15052. key:
  15053. description: The key of the entry in the Secret
  15054. resource's `data` field to be used. Some instances
  15055. of this field may be defaulted, in others
  15056. it may be required.
  15057. type: string
  15058. name:
  15059. description: 'Name of the resource being referred
  15060. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  15061. type: string
  15062. required:
  15063. - name
  15064. type: object
  15065. environment:
  15066. enum:
  15067. - AzurePublicCloud
  15068. - AzureChinaCloud
  15069. - AzureGermanCloud
  15070. - AzureUSGovernmentCloud
  15071. type: string
  15072. hostedZoneName:
  15073. type: string
  15074. resourceGroupName:
  15075. type: string
  15076. subscriptionID:
  15077. type: string
  15078. tenantID:
  15079. description: when specifying ClientID and ClientSecret
  15080. then this field is also needed
  15081. type: string
  15082. required:
  15083. - resourceGroupName
  15084. - subscriptionID
  15085. type: object
  15086. cloudDNS:
  15087. description: Use the Google Cloud DNS API to manage
  15088. DNS01 challenge records.
  15089. properties:
  15090. hostedZoneName:
  15091. description: HostedZoneName is an optional field
  15092. that tells cert-manager in which Cloud DNS zone
  15093. the challenge record has to be created. If left
  15094. empty cert-manager will automatically choose a
  15095. zone.
  15096. type: string
  15097. project:
  15098. type: string
  15099. serviceAccountSecretRef:
  15100. description: A reference to a specific 'key' within
  15101. a Secret resource. In some instances, `key` is
  15102. a required field.
  15103. properties:
  15104. key:
  15105. description: The key of the entry in the Secret
  15106. resource's `data` field to be used. Some instances
  15107. of this field may be defaulted, in others
  15108. it may be required.
  15109. type: string
  15110. name:
  15111. description: 'Name of the resource being referred
  15112. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  15113. type: string
  15114. required:
  15115. - name
  15116. type: object
  15117. required:
  15118. - project
  15119. type: object
  15120. cloudflare:
  15121. description: Use the Cloudflare API to manage DNS01
  15122. challenge records.
  15123. properties:
  15124. apiKeySecretRef:
  15125. description: 'API key to use to authenticate with
  15126. Cloudflare. Note: using an API token to authenticate
  15127. is now the recommended method as it allows greater
  15128. control of permissions.'
  15129. properties:
  15130. key:
  15131. description: The key of the entry in the Secret
  15132. resource's `data` field to be used. Some instances
  15133. of this field may be defaulted, in others
  15134. it may be required.
  15135. type: string
  15136. name:
  15137. description: 'Name of the resource being referred
  15138. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  15139. type: string
  15140. required:
  15141. - name
  15142. type: object
  15143. apiTokenSecretRef:
  15144. description: API token used to authenticate with
  15145. Cloudflare.
  15146. properties:
  15147. key:
  15148. description: The key of the entry in the Secret
  15149. resource's `data` field to be used. Some instances
  15150. of this field may be defaulted, in others
  15151. it may be required.
  15152. type: string
  15153. name:
  15154. description: 'Name of the resource being referred
  15155. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  15156. type: string
  15157. required:
  15158. - name
  15159. type: object
  15160. email:
  15161. description: Email of the account, only required
  15162. when using API key based authentication.
  15163. type: string
  15164. type: object
  15165. cnameStrategy:
  15166. description: CNAMEStrategy configures how the DNS01
  15167. provider should handle CNAME records when found in
  15168. DNS zones.
  15169. enum:
  15170. - None
  15171. - Follow
  15172. type: string
  15173. digitalocean:
  15174. description: Use the DigitalOcean DNS API to manage
  15175. DNS01 challenge records.
  15176. properties:
  15177. tokenSecretRef:
  15178. description: A reference to a specific 'key' within
  15179. a Secret resource. In some instances, `key` is
  15180. a required field.
  15181. properties:
  15182. key:
  15183. description: The key of the entry in the Secret
  15184. resource's `data` field to be used. Some instances
  15185. of this field may be defaulted, in others
  15186. it may be required.
  15187. type: string
  15188. name:
  15189. description: 'Name of the resource being referred
  15190. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  15191. type: string
  15192. required:
  15193. - name
  15194. type: object
  15195. required:
  15196. - tokenSecretRef
  15197. type: object
  15198. rfc2136:
  15199. description: Use RFC2136 ("Dynamic Updates in the Domain
  15200. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  15201. to manage DNS01 challenge records.
  15202. properties:
  15203. nameserver:
  15204. description: The IP address or hostname of an authoritative
  15205. DNS server supporting RFC2136 in the form host:port.
  15206. If the host is an IPv6 address it must be enclosed
  15207. in square brackets (e.g [2001:db8::1]) ; port
  15208. is optional. This field is required.
  15209. type: string
  15210. tsigAlgorithm:
  15211. description: 'The TSIG Algorithm configured in the
  15212. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  15213. and ``tsigKeyName`` are defined. Supported values
  15214. are (case-insensitive): ``HMACMD5`` (default),
  15215. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  15216. type: string
  15217. tsigKeyName:
  15218. description: The TSIG Key name configured in the
  15219. DNS. If ``tsigSecretSecretRef`` is defined, this
  15220. field is required.
  15221. type: string
  15222. tsigSecretSecretRef:
  15223. description: The name of the secret containing the
  15224. TSIG value. If ``tsigKeyName`` is defined, this
  15225. field is required.
  15226. properties:
  15227. key:
  15228. description: The key of the entry in the Secret
  15229. resource's `data` field to be used. Some instances
  15230. of this field may be defaulted, in others
  15231. it may be required.
  15232. type: string
  15233. name:
  15234. description: 'Name of the resource being referred
  15235. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  15236. type: string
  15237. required:
  15238. - name
  15239. type: object
  15240. required:
  15241. - nameserver
  15242. type: object
  15243. route53:
  15244. description: Use the AWS Route53 API to manage DNS01
  15245. challenge records.
  15246. properties:
  15247. accessKeyID:
  15248. description: 'The AccessKeyID is used for authentication.
  15249. If not set we fall-back to using env vars, shared
  15250. credentials file or AWS Instance metadata see:
  15251. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  15252. type: string
  15253. hostedZoneID:
  15254. description: If set, the provider will manage only
  15255. this zone in Route53 and will not do an lookup
  15256. using the route53:ListHostedZonesByName api call.
  15257. type: string
  15258. region:
  15259. description: Always set the region when using AccessKeyID
  15260. and SecretAccessKey
  15261. type: string
  15262. role:
  15263. description: Role is a Role ARN which the Route53
  15264. provider will assume using either the explicit
  15265. credentials AccessKeyID/SecretAccessKey or the
  15266. inferred credentials from environment variables,
  15267. shared credentials file or AWS Instance metadata
  15268. type: string
  15269. secretAccessKeySecretRef:
  15270. description: The SecretAccessKey is used for authentication.
  15271. If not set we fall-back to using env vars, shared
  15272. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  15273. properties:
  15274. key:
  15275. description: The key of the entry in the Secret
  15276. resource's `data` field to be used. Some instances
  15277. of this field may be defaulted, in others
  15278. it may be required.
  15279. type: string
  15280. name:
  15281. description: 'Name of the resource being referred
  15282. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  15283. type: string
  15284. required:
  15285. - name
  15286. type: object
  15287. required:
  15288. - region
  15289. type: object
  15290. webhook:
  15291. description: Configure an external webhook based DNS01
  15292. challenge solver to manage DNS01 challenge records.
  15293. properties:
  15294. config:
  15295. description: Additional configuration that should
  15296. be passed to the webhook apiserver when challenges
  15297. are processed. This can contain arbitrary JSON
  15298. data. Secret values should not be specified in
  15299. this stanza. If secret values are needed (e.g.
  15300. credentials for a DNS service), you should use
  15301. a SecretKeySelector to reference a Secret resource.
  15302. For details on the schema of this field, consult
  15303. the webhook provider implementation's documentation.
  15304. x-kubernetes-preserve-unknown-fields: true
  15305. groupName:
  15306. description: The API group name that should be used
  15307. when POSTing ChallengePayload resources to the
  15308. webhook apiserver. This should be the same as
  15309. the GroupName specified in the webhook provider
  15310. implementation.
  15311. type: string
  15312. solverName:
  15313. description: The name of the solver to use, as defined
  15314. in the webhook provider implementation. This will
  15315. typically be the name of the provider, e.g. 'cloudflare'.
  15316. type: string
  15317. required:
  15318. - groupName
  15319. - solverName
  15320. type: object
  15321. type: object
  15322. http01:
  15323. description: Configures cert-manager to attempt to complete
  15324. authorizations by performing the HTTP01 challenge flow.
  15325. It is not possible to obtain certificates for wildcard
  15326. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  15327. mechanism.
  15328. properties:
  15329. ingress:
  15330. description: The ingress based HTTP01 challenge solver
  15331. will solve challenges by creating or modifying Ingress
  15332. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  15333. to 'challenge solver' pods that are provisioned by
  15334. cert-manager for each Challenge to be completed.
  15335. properties:
  15336. class:
  15337. description: The ingress class to use when creating
  15338. Ingress resources to solve ACME challenges that
  15339. use this challenge solver. Only one of 'class'
  15340. or 'name' may be specified.
  15341. type: string
  15342. ingressTemplate:
  15343. description: Optional ingress template used to configure
  15344. the ACME challenge solver ingress used for HTTP01
  15345. challenges
  15346. properties:
  15347. metadata:
  15348. description: ObjectMeta overrides for the ingress
  15349. used to solve HTTP01 challenges. Only the
  15350. 'labels' and 'annotations' fields may be set.
  15351. If labels or annotations overlap with in-built
  15352. values, the values here will override the
  15353. in-built values.
  15354. properties:
  15355. annotations:
  15356. additionalProperties:
  15357. type: string
  15358. description: Annotations that should be
  15359. added to the created ACME HTTP01 solver
  15360. ingress.
  15361. type: object
  15362. labels:
  15363. additionalProperties:
  15364. type: string
  15365. description: Labels that should be added
  15366. to the created ACME HTTP01 solver ingress.
  15367. type: object
  15368. type: object
  15369. type: object
  15370. name:
  15371. description: The name of the ingress resource that
  15372. should have ACME challenge solving routes inserted
  15373. into it in order to solve HTTP01 challenges. This
  15374. is typically used in conjunction with ingress
  15375. controllers like ingress-gce, which maintains
  15376. a 1:1 mapping between external IPs and ingress
  15377. resources.
  15378. type: string
  15379. podTemplate:
  15380. description: Optional pod template used to configure
  15381. the ACME challenge solver pods used for HTTP01
  15382. challenges
  15383. properties:
  15384. metadata:
  15385. description: ObjectMeta overrides for the pod
  15386. used to solve HTTP01 challenges. Only the
  15387. 'labels' and 'annotations' fields may be set.
  15388. If labels or annotations overlap with in-built
  15389. values, the values here will override the
  15390. in-built values.
  15391. properties:
  15392. annotations:
  15393. additionalProperties:
  15394. type: string
  15395. description: Annotations that should be
  15396. added to the create ACME HTTP01 solver
  15397. pods.
  15398. type: object
  15399. labels:
  15400. additionalProperties:
  15401. type: string
  15402. description: Labels that should be added
  15403. to the created ACME HTTP01 solver pods.
  15404. type: object
  15405. type: object
  15406. spec:
  15407. description: PodSpec defines overrides for the
  15408. HTTP01 challenge solver pod. Only the 'priorityClassName',
  15409. 'nodeSelector', 'affinity', 'serviceAccountName'
  15410. and 'tolerations' fields are supported currently.
  15411. All other fields will be ignored.
  15412. properties:
  15413. affinity:
  15414. description: If specified, the pod's scheduling
  15415. constraints
  15416. properties:
  15417. nodeAffinity:
  15418. description: Describes node affinity
  15419. scheduling rules for the pod.
  15420. properties:
  15421. preferredDuringSchedulingIgnoredDuringExecution:
  15422. description: The scheduler will
  15423. prefer to schedule pods to nodes
  15424. that satisfy the affinity expressions
  15425. specified by this field, but it
  15426. may choose a node that violates
  15427. one or more of the expressions.
  15428. The node that is most preferred
  15429. is the one with the greatest sum
  15430. of weights, i.e. for each node
  15431. that meets all of the scheduling
  15432. requirements (resource request,
  15433. requiredDuringScheduling affinity
  15434. expressions, etc.), compute a
  15435. sum by iterating through the elements
  15436. of this field and adding "weight"
  15437. to the sum if the node matches
  15438. the corresponding matchExpressions;
  15439. the node(s) with the highest sum
  15440. are the most preferred.
  15441. items:
  15442. description: An empty preferred
  15443. scheduling term matches all
  15444. objects with implicit weight
  15445. 0 (i.e. it's a no-op). A null
  15446. preferred scheduling term matches
  15447. no objects (i.e. is also a no-op).
  15448. properties:
  15449. preference:
  15450. description: A node selector
  15451. term, associated with the
  15452. corresponding weight.
  15453. properties:
  15454. matchExpressions:
  15455. description: A list of
  15456. node selector requirements
  15457. by node's labels.
  15458. items:
  15459. description: A node
  15460. selector requirement
  15461. is a selector that
  15462. contains values, a
  15463. key, and an operator
  15464. that relates the key
  15465. and values.
  15466. properties:
  15467. key:
  15468. description: The
  15469. label key that
  15470. the selector applies
  15471. to.
  15472. type: string
  15473. operator:
  15474. description: Represents
  15475. a key's relationship
  15476. to a set of values.
  15477. Valid operators
  15478. are In, NotIn,
  15479. Exists, DoesNotExist.
  15480. Gt, and Lt.
  15481. type: string
  15482. values:
  15483. description: An
  15484. array of string
  15485. values. If the
  15486. operator is In
  15487. or NotIn, the
  15488. values array must
  15489. be non-empty.
  15490. If the operator
  15491. is Exists or DoesNotExist,
  15492. the values array
  15493. must be empty.
  15494. If the operator
  15495. is Gt or Lt, the
  15496. values array must
  15497. have a single
  15498. element, which
  15499. will be interpreted
  15500. as an integer.
  15501. This array is
  15502. replaced during
  15503. a strategic merge
  15504. patch.
  15505. items:
  15506. type: string
  15507. type: array
  15508. required:
  15509. - key
  15510. - operator
  15511. type: object
  15512. type: array
  15513. matchFields:
  15514. description: A list of
  15515. node selector requirements
  15516. by node's fields.
  15517. items:
  15518. description: A node
  15519. selector requirement
  15520. is a selector that
  15521. contains values, a
  15522. key, and an operator
  15523. that relates the key
  15524. and values.
  15525. properties:
  15526. key:
  15527. description: The
  15528. label key that
  15529. the selector applies
  15530. to.
  15531. type: string
  15532. operator:
  15533. description: Represents
  15534. a key's relationship
  15535. to a set of values.
  15536. Valid operators
  15537. are In, NotIn,
  15538. Exists, DoesNotExist.
  15539. Gt, and Lt.
  15540. type: string
  15541. values:
  15542. description: An
  15543. array of string
  15544. values. If the
  15545. operator is In
  15546. or NotIn, the
  15547. values array must
  15548. be non-empty.
  15549. If the operator
  15550. is Exists or DoesNotExist,
  15551. the values array
  15552. must be empty.
  15553. If the operator
  15554. is Gt or Lt, the
  15555. values array must
  15556. have a single
  15557. element, which
  15558. will be interpreted
  15559. as an integer.
  15560. This array is
  15561. replaced during
  15562. a strategic merge
  15563. patch.
  15564. items:
  15565. type: string
  15566. type: array
  15567. required:
  15568. - key
  15569. - operator
  15570. type: object
  15571. type: array
  15572. type: object
  15573. weight:
  15574. description: Weight associated
  15575. with matching the corresponding
  15576. nodeSelectorTerm, in the
  15577. range 1-100.
  15578. format: int32
  15579. type: integer
  15580. required:
  15581. - preference
  15582. - weight
  15583. type: object
  15584. type: array
  15585. requiredDuringSchedulingIgnoredDuringExecution:
  15586. description: If the affinity requirements
  15587. specified by this field are not
  15588. met at scheduling time, the pod
  15589. will not be scheduled onto the
  15590. node. If the affinity requirements
  15591. specified by this field cease
  15592. to be met at some point during
  15593. pod execution (e.g. due to an
  15594. update), the system may or may
  15595. not try to eventually evict the
  15596. pod from its node.
  15597. properties:
  15598. nodeSelectorTerms:
  15599. description: Required. A list
  15600. of node selector terms. The
  15601. terms are ORed.
  15602. items:
  15603. description: A null or empty
  15604. node selector term matches
  15605. no objects. The requirements
  15606. of them are ANDed. The TopologySelectorTerm
  15607. type implements a subset
  15608. of the NodeSelectorTerm.
  15609. properties:
  15610. matchExpressions:
  15611. description: A list of
  15612. node selector requirements
  15613. by node's labels.
  15614. items:
  15615. description: A node
  15616. selector requirement
  15617. is a selector that
  15618. contains values, a
  15619. key, and an operator
  15620. that relates the key
  15621. and values.
  15622. properties:
  15623. key:
  15624. description: The
  15625. label key that
  15626. the selector applies
  15627. to.
  15628. type: string
  15629. operator:
  15630. description: Represents
  15631. a key's relationship
  15632. to a set of values.
  15633. Valid operators
  15634. are In, NotIn,
  15635. Exists, DoesNotExist.
  15636. Gt, and Lt.
  15637. type: string
  15638. values:
  15639. description: An
  15640. array of string
  15641. values. If the
  15642. operator is In
  15643. or NotIn, the
  15644. values array must
  15645. be non-empty.
  15646. If the operator
  15647. is Exists or DoesNotExist,
  15648. the values array
  15649. must be empty.
  15650. If the operator
  15651. is Gt or Lt, the
  15652. values array must
  15653. have a single
  15654. element, which
  15655. will be interpreted
  15656. as an integer.
  15657. This array is
  15658. replaced during
  15659. a strategic merge
  15660. patch.
  15661. items:
  15662. type: string
  15663. type: array
  15664. required:
  15665. - key
  15666. - operator
  15667. type: object
  15668. type: array
  15669. matchFields:
  15670. description: A list of
  15671. node selector requirements
  15672. by node's fields.
  15673. items:
  15674. description: A node
  15675. selector requirement
  15676. is a selector that
  15677. contains values, a
  15678. key, and an operator
  15679. that relates the key
  15680. and values.
  15681. properties:
  15682. key:
  15683. description: The
  15684. label key that
  15685. the selector applies
  15686. to.
  15687. type: string
  15688. operator:
  15689. description: Represents
  15690. a key's relationship
  15691. to a set of values.
  15692. Valid operators
  15693. are In, NotIn,
  15694. Exists, DoesNotExist.
  15695. Gt, and Lt.
  15696. type: string
  15697. values:
  15698. description: An
  15699. array of string
  15700. values. If the
  15701. operator is In
  15702. or NotIn, the
  15703. values array must
  15704. be non-empty.
  15705. If the operator
  15706. is Exists or DoesNotExist,
  15707. the values array
  15708. must be empty.
  15709. If the operator
  15710. is Gt or Lt, the
  15711. values array must
  15712. have a single
  15713. element, which
  15714. will be interpreted
  15715. as an integer.
  15716. This array is
  15717. replaced during
  15718. a strategic merge
  15719. patch.
  15720. items:
  15721. type: string
  15722. type: array
  15723. required:
  15724. - key
  15725. - operator
  15726. type: object
  15727. type: array
  15728. type: object
  15729. type: array
  15730. required:
  15731. - nodeSelectorTerms
  15732. type: object
  15733. type: object
  15734. podAffinity:
  15735. description: Describes pod affinity
  15736. scheduling rules (e.g. co-locate this
  15737. pod in the same node, zone, etc. as
  15738. some other pod(s)).
  15739. properties:
  15740. preferredDuringSchedulingIgnoredDuringExecution:
  15741. description: The scheduler will
  15742. prefer to schedule pods to nodes
  15743. that satisfy the affinity expressions
  15744. specified by this field, but it
  15745. may choose a node that violates
  15746. one or more of the expressions.
  15747. The node that is most preferred
  15748. is the one with the greatest sum
  15749. of weights, i.e. for each node
  15750. that meets all of the scheduling
  15751. requirements (resource request,
  15752. requiredDuringScheduling affinity
  15753. expressions, etc.), compute a
  15754. sum by iterating through the elements
  15755. of this field and adding "weight"
  15756. to the sum if the node has pods
  15757. which matches the corresponding
  15758. podAffinityTerm; the node(s) with
  15759. the highest sum are the most preferred.
  15760. items:
  15761. description: The weights of all
  15762. of the matched WeightedPodAffinityTerm
  15763. fields are added per-node to
  15764. find the most preferred node(s)
  15765. properties:
  15766. podAffinityTerm:
  15767. description: Required. A pod
  15768. affinity term, associated
  15769. with the corresponding weight.
  15770. properties:
  15771. labelSelector:
  15772. description: A label query
  15773. over a set of resources,
  15774. in this case pods.
  15775. properties:
  15776. matchExpressions:
  15777. description: matchExpressions
  15778. is a list of label
  15779. selector requirements.
  15780. The requirements
  15781. are ANDed.
  15782. items:
  15783. description: A label
  15784. selector requirement
  15785. is a selector
  15786. that contains
  15787. values, a key,
  15788. and an operator
  15789. that relates the
  15790. key and values.
  15791. properties:
  15792. key:
  15793. description: key
  15794. is the label
  15795. key that the
  15796. selector applies
  15797. to.
  15798. type: string
  15799. operator:
  15800. description: operator
  15801. represents
  15802. a key's relationship
  15803. to a set of
  15804. values. Valid
  15805. operators
  15806. are In, NotIn,
  15807. Exists and
  15808. DoesNotExist.
  15809. type: string
  15810. values:
  15811. description: values
  15812. is an array
  15813. of string
  15814. values. If
  15815. the operator
  15816. is In or NotIn,
  15817. the values
  15818. array must
  15819. be non-empty.
  15820. If the operator
  15821. is Exists
  15822. or DoesNotExist,
  15823. the values
  15824. array must
  15825. be empty.
  15826. This array
  15827. is replaced
  15828. during a strategic
  15829. merge patch.
  15830. items:
  15831. type: string
  15832. type: array
  15833. required:
  15834. - key
  15835. - operator
  15836. type: object
  15837. type: array
  15838. matchLabels:
  15839. additionalProperties:
  15840. type: string
  15841. description: matchLabels
  15842. is a map of {key,value}
  15843. pairs. A single
  15844. {key,value} in the
  15845. matchLabels map
  15846. is equivalent to
  15847. an element of matchExpressions,
  15848. whose key field
  15849. is "key", the operator
  15850. is "In", and the
  15851. values array contains
  15852. only "value". The
  15853. requirements are
  15854. ANDed.
  15855. type: object
  15856. type: object
  15857. namespaces:
  15858. description: namespaces
  15859. specifies which namespaces
  15860. the labelSelector applies
  15861. to (matches against);
  15862. null or empty list means
  15863. "this pod's namespace"
  15864. items:
  15865. type: string
  15866. type: array
  15867. topologyKey:
  15868. description: This pod
  15869. should be co-located
  15870. (affinity) or not co-located
  15871. (anti-affinity) with
  15872. the pods matching the
  15873. labelSelector in the
  15874. specified namespaces,
  15875. where co-located is
  15876. defined as running on
  15877. a node whose value of
  15878. the label with key topologyKey
  15879. matches that of any
  15880. node on which any of
  15881. the selected pods is
  15882. running. Empty topologyKey
  15883. is not allowed.
  15884. type: string
  15885. required:
  15886. - topologyKey
  15887. type: object
  15888. weight:
  15889. description: weight associated
  15890. with matching the corresponding
  15891. podAffinityTerm, in the
  15892. range 1-100.
  15893. format: int32
  15894. type: integer
  15895. required:
  15896. - podAffinityTerm
  15897. - weight
  15898. type: object
  15899. type: array
  15900. requiredDuringSchedulingIgnoredDuringExecution:
  15901. description: If the affinity requirements
  15902. specified by this field are not
  15903. met at scheduling time, the pod
  15904. will not be scheduled onto the
  15905. node. If the affinity requirements
  15906. specified by this field cease
  15907. to be met at some point during
  15908. pod execution (e.g. due to a pod
  15909. label update), the system may
  15910. or may not try to eventually evict
  15911. the pod from its node. When there
  15912. are multiple elements, the lists
  15913. of nodes corresponding to each
  15914. podAffinityTerm are intersected,
  15915. i.e. all terms must be satisfied.
  15916. items:
  15917. description: Defines a set of
  15918. pods (namely those matching
  15919. the labelSelector relative to
  15920. the given namespace(s)) that
  15921. this pod should be co-located
  15922. (affinity) or not co-located
  15923. (anti-affinity) with, where
  15924. co-located is defined as running
  15925. on a node whose value of the
  15926. label with key <topologyKey>
  15927. matches that of any node on
  15928. which a pod of the set of pods
  15929. is running
  15930. properties:
  15931. labelSelector:
  15932. description: A label query
  15933. over a set of resources,
  15934. in this case pods.
  15935. properties:
  15936. matchExpressions:
  15937. description: matchExpressions
  15938. is a list of label selector
  15939. requirements. The requirements
  15940. are ANDed.
  15941. items:
  15942. description: A label
  15943. selector requirement
  15944. is a selector that
  15945. contains values, a
  15946. key, and an operator
  15947. that relates the key
  15948. and values.
  15949. properties:
  15950. key:
  15951. description: key
  15952. is the label key
  15953. that the selector
  15954. applies to.
  15955. type: string
  15956. operator:
  15957. description: operator
  15958. represents a key's
  15959. relationship to
  15960. a set of values.
  15961. Valid operators
  15962. are In, NotIn,
  15963. Exists and DoesNotExist.
  15964. type: string
  15965. values:
  15966. description: values
  15967. is an array of
  15968. string values.
  15969. If the operator
  15970. is In or NotIn,
  15971. the values array
  15972. must be non-empty.
  15973. If the operator
  15974. is Exists or DoesNotExist,
  15975. the values array
  15976. must be empty.
  15977. This array is
  15978. replaced during
  15979. a strategic merge
  15980. patch.
  15981. items:
  15982. type: string
  15983. type: array
  15984. required:
  15985. - key
  15986. - operator
  15987. type: object
  15988. type: array
  15989. matchLabels:
  15990. additionalProperties:
  15991. type: string
  15992. description: matchLabels
  15993. is a map of {key,value}
  15994. pairs. A single {key,value}
  15995. in the matchLabels map
  15996. is equivalent to an
  15997. element of matchExpressions,
  15998. whose key field is "key",
  15999. the operator is "In",
  16000. and the values array
  16001. contains only "value".
  16002. The requirements are
  16003. ANDed.
  16004. type: object
  16005. type: object
  16006. namespaces:
  16007. description: namespaces specifies
  16008. which namespaces the labelSelector
  16009. applies to (matches against);
  16010. null or empty list means
  16011. "this pod's namespace"
  16012. items:
  16013. type: string
  16014. type: array
  16015. topologyKey:
  16016. description: This pod should
  16017. be co-located (affinity)
  16018. or not co-located (anti-affinity)
  16019. with the pods matching the
  16020. labelSelector in the specified
  16021. namespaces, where co-located
  16022. is defined as running on
  16023. a node whose value of the
  16024. label with key topologyKey
  16025. matches that of any node
  16026. on which any of the selected
  16027. pods is running. Empty topologyKey
  16028. is not allowed.
  16029. type: string
  16030. required:
  16031. - topologyKey
  16032. type: object
  16033. type: array
  16034. type: object
  16035. podAntiAffinity:
  16036. description: Describes pod anti-affinity
  16037. scheduling rules (e.g. avoid putting
  16038. this pod in the same node, zone, etc.
  16039. as some other pod(s)).
  16040. properties:
  16041. preferredDuringSchedulingIgnoredDuringExecution:
  16042. description: The scheduler will
  16043. prefer to schedule pods to nodes
  16044. that satisfy the anti-affinity
  16045. expressions specified by this
  16046. field, but it may choose a node
  16047. that violates one or more of the
  16048. expressions. The node that is
  16049. most preferred is the one with
  16050. the greatest sum of weights, i.e.
  16051. for each node that meets all of
  16052. the scheduling requirements (resource
  16053. request, requiredDuringScheduling
  16054. anti-affinity expressions, etc.),
  16055. compute a sum by iterating through
  16056. the elements of this field and
  16057. adding "weight" to the sum if
  16058. the node has pods which matches
  16059. the corresponding podAffinityTerm;
  16060. the node(s) with the highest sum
  16061. are the most preferred.
  16062. items:
  16063. description: The weights of all
  16064. of the matched WeightedPodAffinityTerm
  16065. fields are added per-node to
  16066. find the most preferred node(s)
  16067. properties:
  16068. podAffinityTerm:
  16069. description: Required. A pod
  16070. affinity term, associated
  16071. with the corresponding weight.
  16072. properties:
  16073. labelSelector:
  16074. description: A label query
  16075. over a set of resources,
  16076. in this case pods.
  16077. properties:
  16078. matchExpressions:
  16079. description: matchExpressions
  16080. is a list of label
  16081. selector requirements.
  16082. The requirements
  16083. are ANDed.
  16084. items:
  16085. description: A label
  16086. selector requirement
  16087. is a selector
  16088. that contains
  16089. values, a key,
  16090. and an operator
  16091. that relates the
  16092. key and values.
  16093. properties:
  16094. key:
  16095. description: key
  16096. is the label
  16097. key that the
  16098. selector applies
  16099. to.
  16100. type: string
  16101. operator:
  16102. description: operator
  16103. represents
  16104. a key's relationship
  16105. to a set of
  16106. values. Valid
  16107. operators
  16108. are In, NotIn,
  16109. Exists and
  16110. DoesNotExist.
  16111. type: string
  16112. values:
  16113. description: values
  16114. is an array
  16115. of string
  16116. values. If
  16117. the operator
  16118. is In or NotIn,
  16119. the values
  16120. array must
  16121. be non-empty.
  16122. If the operator
  16123. is Exists
  16124. or DoesNotExist,
  16125. the values
  16126. array must
  16127. be empty.
  16128. This array
  16129. is replaced
  16130. during a strategic
  16131. merge patch.
  16132. items:
  16133. type: string
  16134. type: array
  16135. required:
  16136. - key
  16137. - operator
  16138. type: object
  16139. type: array
  16140. matchLabels:
  16141. additionalProperties:
  16142. type: string
  16143. description: matchLabels
  16144. is a map of {key,value}
  16145. pairs. A single
  16146. {key,value} in the
  16147. matchLabels map
  16148. is equivalent to
  16149. an element of matchExpressions,
  16150. whose key field
  16151. is "key", the operator
  16152. is "In", and the
  16153. values array contains
  16154. only "value". The
  16155. requirements are
  16156. ANDed.
  16157. type: object
  16158. type: object
  16159. namespaces:
  16160. description: namespaces
  16161. specifies which namespaces
  16162. the labelSelector applies
  16163. to (matches against);
  16164. null or empty list means
  16165. "this pod's namespace"
  16166. items:
  16167. type: string
  16168. type: array
  16169. topologyKey:
  16170. description: This pod
  16171. should be co-located
  16172. (affinity) or not co-located
  16173. (anti-affinity) with
  16174. the pods matching the
  16175. labelSelector in the
  16176. specified namespaces,
  16177. where co-located is
  16178. defined as running on
  16179. a node whose value of
  16180. the label with key topologyKey
  16181. matches that of any
  16182. node on which any of
  16183. the selected pods is
  16184. running. Empty topologyKey
  16185. is not allowed.
  16186. type: string
  16187. required:
  16188. - topologyKey
  16189. type: object
  16190. weight:
  16191. description: weight associated
  16192. with matching the corresponding
  16193. podAffinityTerm, in the
  16194. range 1-100.
  16195. format: int32
  16196. type: integer
  16197. required:
  16198. - podAffinityTerm
  16199. - weight
  16200. type: object
  16201. type: array
  16202. requiredDuringSchedulingIgnoredDuringExecution:
  16203. description: If the anti-affinity
  16204. requirements specified by this
  16205. field are not met at scheduling
  16206. time, the pod will not be scheduled
  16207. onto the node. If the anti-affinity
  16208. requirements specified by this
  16209. field cease to be met at some
  16210. point during pod execution (e.g.
  16211. due to a pod label update), the
  16212. system may or may not try to eventually
  16213. evict the pod from its node. When
  16214. there are multiple elements, the
  16215. lists of nodes corresponding to
  16216. each podAffinityTerm are intersected,
  16217. i.e. all terms must be satisfied.
  16218. items:
  16219. description: Defines a set of
  16220. pods (namely those matching
  16221. the labelSelector relative to
  16222. the given namespace(s)) that
  16223. this pod should be co-located
  16224. (affinity) or not co-located
  16225. (anti-affinity) with, where
  16226. co-located is defined as running
  16227. on a node whose value of the
  16228. label with key <topologyKey>
  16229. matches that of any node on
  16230. which a pod of the set of pods
  16231. is running
  16232. properties:
  16233. labelSelector:
  16234. description: A label query
  16235. over a set of resources,
  16236. in this case pods.
  16237. properties:
  16238. matchExpressions:
  16239. description: matchExpressions
  16240. is a list of label selector
  16241. requirements. The requirements
  16242. are ANDed.
  16243. items:
  16244. description: A label
  16245. selector requirement
  16246. is a selector that
  16247. contains values, a
  16248. key, and an operator
  16249. that relates the key
  16250. and values.
  16251. properties:
  16252. key:
  16253. description: key
  16254. is the label key
  16255. that the selector
  16256. applies to.
  16257. type: string
  16258. operator:
  16259. description: operator
  16260. represents a key's
  16261. relationship to
  16262. a set of values.
  16263. Valid operators
  16264. are In, NotIn,
  16265. Exists and DoesNotExist.
  16266. type: string
  16267. values:
  16268. description: values
  16269. is an array of
  16270. string values.
  16271. If the operator
  16272. is In or NotIn,
  16273. the values array
  16274. must be non-empty.
  16275. If the operator
  16276. is Exists or DoesNotExist,
  16277. the values array
  16278. must be empty.
  16279. This array is
  16280. replaced during
  16281. a strategic merge
  16282. patch.
  16283. items:
  16284. type: string
  16285. type: array
  16286. required:
  16287. - key
  16288. - operator
  16289. type: object
  16290. type: array
  16291. matchLabels:
  16292. additionalProperties:
  16293. type: string
  16294. description: matchLabels
  16295. is a map of {key,value}
  16296. pairs. A single {key,value}
  16297. in the matchLabels map
  16298. is equivalent to an
  16299. element of matchExpressions,
  16300. whose key field is "key",
  16301. the operator is "In",
  16302. and the values array
  16303. contains only "value".
  16304. The requirements are
  16305. ANDed.
  16306. type: object
  16307. type: object
  16308. namespaces:
  16309. description: namespaces specifies
  16310. which namespaces the labelSelector
  16311. applies to (matches against);
  16312. null or empty list means
  16313. "this pod's namespace"
  16314. items:
  16315. type: string
  16316. type: array
  16317. topologyKey:
  16318. description: This pod should
  16319. be co-located (affinity)
  16320. or not co-located (anti-affinity)
  16321. with the pods matching the
  16322. labelSelector in the specified
  16323. namespaces, where co-located
  16324. is defined as running on
  16325. a node whose value of the
  16326. label with key topologyKey
  16327. matches that of any node
  16328. on which any of the selected
  16329. pods is running. Empty topologyKey
  16330. is not allowed.
  16331. type: string
  16332. required:
  16333. - topologyKey
  16334. type: object
  16335. type: array
  16336. type: object
  16337. type: object
  16338. nodeSelector:
  16339. additionalProperties:
  16340. type: string
  16341. description: 'NodeSelector is a selector
  16342. which must be true for the pod to fit
  16343. on a node. Selector which must match a
  16344. node''s labels for the pod to be scheduled
  16345. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  16346. type: object
  16347. priorityClassName:
  16348. description: If specified, the pod's priorityClassName.
  16349. type: string
  16350. serviceAccountName:
  16351. description: If specified, the pod's service
  16352. account
  16353. type: string
  16354. tolerations:
  16355. description: If specified, the pod's tolerations.
  16356. items:
  16357. description: The pod this Toleration is
  16358. attached to tolerates any taint that
  16359. matches the triple <key,value,effect>
  16360. using the matching operator <operator>.
  16361. properties:
  16362. effect:
  16363. description: Effect indicates the
  16364. taint effect to match. Empty means
  16365. match all taint effects. When specified,
  16366. allowed values are NoSchedule, PreferNoSchedule
  16367. and NoExecute.
  16368. type: string
  16369. key:
  16370. description: Key is the taint key
  16371. that the toleration applies to.
  16372. Empty means match all taint keys.
  16373. If the key is empty, operator must
  16374. be Exists; this combination means
  16375. to match all values and all keys.
  16376. type: string
  16377. operator:
  16378. description: Operator represents a
  16379. key's relationship to the value.
  16380. Valid operators are Exists and Equal.
  16381. Defaults to Equal. Exists is equivalent
  16382. to wildcard for value, so that a
  16383. pod can tolerate all taints of a
  16384. particular category.
  16385. type: string
  16386. tolerationSeconds:
  16387. description: TolerationSeconds represents
  16388. the period of time the toleration
  16389. (which must be of effect NoExecute,
  16390. otherwise this field is ignored)
  16391. tolerates the taint. By default,
  16392. it is not set, which means tolerate
  16393. the taint forever (do not evict).
  16394. Zero and negative values will be
  16395. treated as 0 (evict immediately)
  16396. by the system.
  16397. format: int64
  16398. type: integer
  16399. value:
  16400. description: Value is the taint value
  16401. the toleration matches to. If the
  16402. operator is Exists, the value should
  16403. be empty, otherwise just a regular
  16404. string.
  16405. type: string
  16406. type: object
  16407. type: array
  16408. type: object
  16409. type: object
  16410. serviceType:
  16411. description: Optional service type for Kubernetes
  16412. solver service
  16413. type: string
  16414. type: object
  16415. type: object
  16416. selector:
  16417. description: Selector selects a set of DNSNames on the Certificate
  16418. resource that should be solved using this challenge solver.
  16419. If not specified, the solver will be treated as the 'default'
  16420. solver with the lowest priority, i.e. if any other solver
  16421. has a more specific match, it will be used instead.
  16422. properties:
  16423. dnsNames:
  16424. description: List of DNSNames that this solver will
  16425. be used to solve. If specified and a match is found,
  16426. a dnsNames selector will take precedence over a dnsZones
  16427. selector. If multiple solvers match with the same
  16428. dnsNames value, the solver with the most matching
  16429. labels in matchLabels will be selected. If neither
  16430. has more matches, the solver defined earlier in the
  16431. list will be selected.
  16432. items:
  16433. type: string
  16434. type: array
  16435. dnsZones:
  16436. description: List of DNSZones that this solver will
  16437. be used to solve. The most specific DNS zone match
  16438. specified here will take precedence over other DNS
  16439. zone matches, so a solver specifying sys.example.com
  16440. will be selected over one specifying example.com for
  16441. the domain www.sys.example.com. If multiple solvers
  16442. match with the same dnsZones value, the solver with
  16443. the most matching labels in matchLabels will be selected.
  16444. If neither has more matches, the solver defined earlier
  16445. in the list will be selected.
  16446. items:
  16447. type: string
  16448. type: array
  16449. matchLabels:
  16450. additionalProperties:
  16451. type: string
  16452. description: A label selector that is used to refine
  16453. the set of certificate's that this challenge solver
  16454. will apply to.
  16455. type: object
  16456. type: object
  16457. type: object
  16458. type: array
  16459. required:
  16460. - privateKeySecretRef
  16461. - server
  16462. type: object
  16463. ca:
  16464. description: CA configures this issuer to sign certificates using
  16465. a signing CA keypair stored in a Secret resource. This is used to
  16466. build internal PKIs that are managed by cert-manager.
  16467. properties:
  16468. crlDistributionPoints:
  16469. description: The CRL distribution points is an X.509 v3 certificate
  16470. extension which identifies the location of the CRL from which
  16471. the revocation of this certificate can be checked. If not set,
  16472. certificates will be issued without distribution points set.
  16473. items:
  16474. type: string
  16475. type: array
  16476. ocspServers:
  16477. description: The OCSP server list is an X.509 v3 extension that
  16478. defines a list of URLs of OCSP responders. The OCSP responders
  16479. can be queried for the revocation status of an issued certificate.
  16480. If not set, the certificate will be issued with no OCSP servers
  16481. set. For example, an OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
  16482. items:
  16483. type: string
  16484. type: array
  16485. secretName:
  16486. description: SecretName is the name of the secret used to sign
  16487. Certificates issued by this Issuer.
  16488. type: string
  16489. required:
  16490. - secretName
  16491. type: object
  16492. selfSigned:
  16493. description: SelfSigned configures this issuer to 'self sign' certificates
  16494. using the private key used to create the CertificateRequest object.
  16495. properties:
  16496. crlDistributionPoints:
  16497. description: The CRL distribution points is an X.509 v3 certificate
  16498. extension which identifies the location of the CRL from which
  16499. the revocation of this certificate can be checked. If not set
  16500. certificate will be issued without CDP. Values are strings.
  16501. items:
  16502. type: string
  16503. type: array
  16504. type: object
  16505. vault:
  16506. description: Vault configures this issuer to sign certificates using
  16507. a HashiCorp Vault PKI backend.
  16508. properties:
  16509. auth:
  16510. description: Auth configures how cert-manager authenticates with
  16511. the Vault server.
  16512. properties:
  16513. appRole:
  16514. description: AppRole authenticates with Vault using the App
  16515. Role auth mechanism, with the role and secret stored in
  16516. a Kubernetes Secret resource.
  16517. properties:
  16518. path:
  16519. description: 'Path where the App Role authentication backend
  16520. is mounted in Vault, e.g: "approle"'
  16521. type: string
  16522. roleId:
  16523. description: RoleID configured in the App Role authentication
  16524. backend when setting up the authentication backend in
  16525. Vault.
  16526. type: string
  16527. secretRef:
  16528. description: Reference to a key in a Secret that contains
  16529. the App Role secret used to authenticate with Vault.
  16530. The `key` field must be specified and denotes which
  16531. entry within the Secret resource is used as the app
  16532. role secret.
  16533. properties:
  16534. key:
  16535. description: The key of the entry in the Secret resource's
  16536. `data` field to be used. Some instances of this
  16537. field may be defaulted, in others it may be required.
  16538. type: string
  16539. name:
  16540. description: 'Name of the resource being referred
  16541. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16542. type: string
  16543. required:
  16544. - name
  16545. type: object
  16546. required:
  16547. - path
  16548. - roleId
  16549. - secretRef
  16550. type: object
  16551. kubernetes:
  16552. description: Kubernetes authenticates with Vault by passing
  16553. the ServiceAccount token stored in the named Secret resource
  16554. to the Vault server.
  16555. properties:
  16556. mountPath:
  16557. description: The Vault mountPath here is the mount path
  16558. to use when authenticating with Vault. For example,
  16559. setting a value to `/v1/auth/foo`, will use the path
  16560. `/v1/auth/foo/login` to authenticate with Vault. If
  16561. unspecified, the default value "/v1/auth/kubernetes"
  16562. will be used.
  16563. type: string
  16564. role:
  16565. description: A required field containing the Vault Role
  16566. to assume. A Role binds a Kubernetes ServiceAccount
  16567. with a set of Vault policies.
  16568. type: string
  16569. secretRef:
  16570. description: The required Secret field containing a Kubernetes
  16571. ServiceAccount JWT used for authenticating with Vault.
  16572. Use of 'ambient credentials' is not supported.
  16573. properties:
  16574. key:
  16575. description: The key of the entry in the Secret resource's
  16576. `data` field to be used. Some instances of this
  16577. field may be defaulted, in others it may be required.
  16578. type: string
  16579. name:
  16580. description: 'Name of the resource being referred
  16581. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16582. type: string
  16583. required:
  16584. - name
  16585. type: object
  16586. required:
  16587. - role
  16588. - secretRef
  16589. type: object
  16590. tokenSecretRef:
  16591. description: TokenSecretRef authenticates with Vault by presenting
  16592. a token.
  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
  16597. may be defaulted, in others it may be required.
  16598. type: string
  16599. name:
  16600. description: 'Name of the resource being referred to.
  16601. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16602. type: string
  16603. required:
  16604. - name
  16605. type: object
  16606. type: object
  16607. caBundle:
  16608. description: PEM encoded CA bundle used to validate Vault server
  16609. certificate. Only used if the Server URL is using HTTPS protocol.
  16610. This parameter is ignored for plain HTTP protocol connection.
  16611. If not set the system root certificates are used to validate
  16612. the TLS connection.
  16613. format: byte
  16614. type: string
  16615. namespace:
  16616. description: 'Name of the vault namespace. Namespaces is a set
  16617. of features within Vault Enterprise that allows Vault environments
  16618. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  16619. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  16620. type: string
  16621. path:
  16622. description: 'Path is the mount path of the Vault PKI backend''s
  16623. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  16624. type: string
  16625. server:
  16626. description: 'Server is the connection address for the Vault server,
  16627. e.g: "https://vault.example.com:8200".'
  16628. type: string
  16629. required:
  16630. - auth
  16631. - path
  16632. - server
  16633. type: object
  16634. venafi:
  16635. description: Venafi configures this issuer to sign certificates using
  16636. a Venafi TPP or Venafi Cloud policy zone.
  16637. properties:
  16638. cloud:
  16639. description: Cloud specifies the Venafi cloud configuration settings.
  16640. Only one of TPP or Cloud may be specified.
  16641. properties:
  16642. apiTokenSecretRef:
  16643. description: APITokenSecretRef is a secret key selector for
  16644. the Venafi Cloud API token.
  16645. properties:
  16646. key:
  16647. description: The key of the entry in the Secret resource's
  16648. `data` field to be used. Some instances of this field
  16649. may be defaulted, in others it may be required.
  16650. type: string
  16651. name:
  16652. description: 'Name of the resource being referred to.
  16653. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16654. type: string
  16655. required:
  16656. - name
  16657. type: object
  16658. url:
  16659. description: URL is the base URL for Venafi Cloud. Defaults
  16660. to "https://api.venafi.cloud/v1".
  16661. type: string
  16662. required:
  16663. - apiTokenSecretRef
  16664. type: object
  16665. tpp:
  16666. description: TPP specifies Trust Protection Platform configuration
  16667. settings. Only one of TPP or Cloud may be specified.
  16668. properties:
  16669. caBundle:
  16670. description: CABundle is a PEM encoded TLS certificate to
  16671. use to verify connections to the TPP instance. If specified,
  16672. system roots will not be used and the issuing CA for the
  16673. TPP instance must be verifiable using the provided root.
  16674. If not specified, the connection will be verified using
  16675. the cert-manager system root certificates.
  16676. format: byte
  16677. type: string
  16678. credentialsRef:
  16679. description: CredentialsRef is a reference to a Secret containing
  16680. the username and password for the TPP server. The secret
  16681. must contain two keys, 'username' and 'password'.
  16682. properties:
  16683. name:
  16684. description: 'Name of the resource being referred to.
  16685. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16686. type: string
  16687. required:
  16688. - name
  16689. type: object
  16690. url:
  16691. description: 'URL is the base URL for the vedsdk endpoint
  16692. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  16693. type: string
  16694. required:
  16695. - credentialsRef
  16696. - url
  16697. type: object
  16698. zone:
  16699. description: Zone is the Venafi Policy Zone to use for this issuer.
  16700. All requests made to the Venafi platform will be restricted
  16701. by the named zone policy. This field is required.
  16702. type: string
  16703. required:
  16704. - zone
  16705. type: object
  16706. type: object
  16707. status:
  16708. description: Status of the ClusterIssuer. This is set and managed automatically.
  16709. properties:
  16710. acme:
  16711. description: ACME specific status options. This field should only
  16712. be set if the Issuer is configured to use an ACME server to issue
  16713. certificates.
  16714. properties:
  16715. lastRegisteredEmail:
  16716. description: LastRegisteredEmail is the email associated with
  16717. the latest registered ACME account, in order to track changes
  16718. made to registered account associated with the Issuer
  16719. type: string
  16720. uri:
  16721. description: URI is the unique account identifier, which can also
  16722. be used to retrieve account details from the CA
  16723. type: string
  16724. type: object
  16725. conditions:
  16726. description: List of status conditions to indicate the status of a
  16727. CertificateRequest. Known condition types are `Ready`.
  16728. items:
  16729. description: IssuerCondition contains condition information for
  16730. an Issuer.
  16731. properties:
  16732. lastTransitionTime:
  16733. description: LastTransitionTime is the timestamp corresponding
  16734. to the last status change of this condition.
  16735. format: date-time
  16736. type: string
  16737. message:
  16738. description: Message is a human readable description of the
  16739. details of the last transition, complementing reason.
  16740. type: string
  16741. observedGeneration:
  16742. description: If set, this represents the .metadata.generation
  16743. that the condition was set based upon. For instance, if .metadata.generation
  16744. is currently 12, but the .status.condition[x].observedGeneration
  16745. is 9, the condition is out of date with respect to the current
  16746. state of the Issuer.
  16747. format: int64
  16748. type: integer
  16749. reason:
  16750. description: Reason is a brief machine readable explanation
  16751. for the condition's last transition.
  16752. type: string
  16753. status:
  16754. description: Status of the condition, one of (`True`, `False`,
  16755. `Unknown`).
  16756. enum:
  16757. - "True"
  16758. - "False"
  16759. - Unknown
  16760. type: string
  16761. type:
  16762. description: Type of the condition, known values are (`Ready`).
  16763. type: string
  16764. required:
  16765. - status
  16766. - type
  16767. type: object
  16768. type: array
  16769. type: object
  16770. required:
  16771. - spec
  16772. type: object
  16773. served: true
  16774. storage: true
  16775. subresources:
  16776. status: {}
  16777. status:
  16778. acceptedNames:
  16779. kind: ""
  16780. plural: ""
  16781. conditions: []
  16782. storedVersions: []
  16783. ---
  16784. apiVersion: apiextensions.k8s.io/v1
  16785. kind: CustomResourceDefinition
  16786. metadata:
  16787. annotations:
  16788. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  16789. labels:
  16790. app: cert-manager
  16791. app.kubernetes.io/instance: cert-manager
  16792. app.kubernetes.io/name: cert-manager
  16793. name: issuers.cert-manager.io
  16794. spec:
  16795. conversion:
  16796. strategy: Webhook
  16797. webhook:
  16798. clientConfig:
  16799. service:
  16800. name: cert-manager-webhook
  16801. namespace: cert-manager
  16802. path: /convert
  16803. conversionReviewVersions:
  16804. - v1
  16805. - v1beta1
  16806. group: cert-manager.io
  16807. names:
  16808. categories:
  16809. - cert-manager
  16810. kind: Issuer
  16811. listKind: IssuerList
  16812. plural: issuers
  16813. singular: issuer
  16814. scope: Namespaced
  16815. versions:
  16816. - additionalPrinterColumns:
  16817. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  16818. name: Ready
  16819. type: string
  16820. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  16821. name: Status
  16822. priority: 1
  16823. type: string
  16824. - description: CreationTimestamp is a timestamp representing the server time when
  16825. this object was created. It is not guaranteed to be set in happens-before
  16826. order across separate operations. Clients may not set this value. It is represented
  16827. in RFC3339 form and is in UTC.
  16828. jsonPath: .metadata.creationTimestamp
  16829. name: Age
  16830. type: date
  16831. name: v1alpha2
  16832. schema:
  16833. openAPIV3Schema:
  16834. description: An Issuer represents a certificate issuing authority which can
  16835. be referenced as part of `issuerRef` fields. It is scoped to a single namespace
  16836. and can therefore only be referenced by resources within the same namespace.
  16837. properties:
  16838. apiVersion:
  16839. description: 'APIVersion defines the versioned schema of this representation
  16840. of an object. Servers should convert recognized schemas to the latest
  16841. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  16842. type: string
  16843. kind:
  16844. description: 'Kind is a string value representing the REST resource this
  16845. object represents. Servers may infer this from the endpoint the client
  16846. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  16847. type: string
  16848. metadata:
  16849. type: object
  16850. spec:
  16851. description: Desired state of the Issuer resource.
  16852. properties:
  16853. acme:
  16854. description: ACME configures this issuer to communicate with a RFC8555
  16855. (ACME) server to obtain signed x509 certificates.
  16856. properties:
  16857. disableAccountKeyGeneration:
  16858. description: Enables or disables generating a new ACME account
  16859. key. If true, the Issuer resource will *not* request a new account
  16860. but will expect the account key to be supplied via an existing
  16861. secret. If false, the cert-manager system will generate a new
  16862. ACME account key for the Issuer. Defaults to false.
  16863. type: boolean
  16864. email:
  16865. description: Email is the email address to be associated with
  16866. the ACME account. This field is optional, but it is strongly
  16867. recommended to be set. It will be used to contact you in case
  16868. of issues with your account or certificates, including expiry
  16869. notification emails. This field may be updated after the account
  16870. is initially registered.
  16871. type: string
  16872. enableDurationFeature:
  16873. description: Enables requesting a Not After date on certificates
  16874. that matches the duration of the certificate. This is not supported
  16875. by all ACME servers like Let's Encrypt. If set to true when
  16876. the ACME server does not support it it will create an error
  16877. on the Order. Defaults to false.
  16878. type: boolean
  16879. externalAccountBinding:
  16880. description: ExternalAccountBinding is a reference to a CA external
  16881. account of the ACME server. If set, upon registration cert-manager
  16882. will attempt to associate the given external account credentials
  16883. with the registered ACME account.
  16884. properties:
  16885. keyAlgorithm:
  16886. description: keyAlgorithm is the MAC key algorithm that the
  16887. key is used for. Valid values are "HS256", "HS384" and "HS512".
  16888. enum:
  16889. - HS256
  16890. - HS384
  16891. - HS512
  16892. type: string
  16893. keyID:
  16894. description: keyID is the ID of the CA key that the External
  16895. Account is bound to.
  16896. type: string
  16897. keySecretRef:
  16898. description: keySecretRef is a Secret Key Selector referencing
  16899. a data item in a Kubernetes Secret which holds the symmetric
  16900. MAC key of the External Account Binding. The `key` is the
  16901. index string that is paired with the key data in the Secret
  16902. and should not be confused with the key data itself, or
  16903. indeed with the External Account Binding keyID above. The
  16904. secret key stored in the Secret **must** be un-padded, base64
  16905. URL encoded data.
  16906. properties:
  16907. key:
  16908. description: The key of the entry in the Secret resource's
  16909. `data` field to be used. Some instances of this field
  16910. may be defaulted, in others it may be required.
  16911. type: string
  16912. name:
  16913. description: 'Name of the resource being referred to.
  16914. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16915. type: string
  16916. required:
  16917. - name
  16918. type: object
  16919. required:
  16920. - keyAlgorithm
  16921. - keyID
  16922. - keySecretRef
  16923. type: object
  16924. preferredChain:
  16925. description: 'PreferredChain is the chain to use if the ACME server
  16926. outputs multiple. PreferredChain is no guarantee that this one
  16927. gets delivered by the ACME endpoint. For example, for Let''s
  16928. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  16929. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  16930. picks the first certificate bundle in the ACME alternative chains
  16931. that has a certificate with this value as its issuer''s CN'
  16932. maxLength: 64
  16933. type: string
  16934. privateKeySecretRef:
  16935. description: PrivateKey is the name of a Kubernetes Secret resource
  16936. that will be used to store the automatically generated ACME
  16937. account private key. Optionally, a `key` may be specified to
  16938. select a specific entry within the named Secret resource. If
  16939. `key` is not specified, a default of `tls.key` will be used.
  16940. properties:
  16941. key:
  16942. description: The key of the entry in the Secret resource's
  16943. `data` field to be used. Some instances of this field may
  16944. be defaulted, in others it may be required.
  16945. type: string
  16946. name:
  16947. description: 'Name of the resource being referred to. More
  16948. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  16949. type: string
  16950. required:
  16951. - name
  16952. type: object
  16953. server:
  16954. description: 'Server is the URL used to access the ACME server''s
  16955. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  16956. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  16957. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  16958. type: string
  16959. skipTLSVerify:
  16960. description: Enables or disables validation of the ACME server
  16961. TLS certificate. If true, requests to the ACME server will not
  16962. have their TLS certificate validated (i.e. insecure connections
  16963. will be allowed). Only enable this option in development environments.
  16964. The cert-manager system installed roots will be used to verify
  16965. connections to the ACME server if this is false. Defaults to
  16966. false.
  16967. type: boolean
  16968. solvers:
  16969. description: 'Solvers is a list of challenge solvers that will
  16970. be used to solve ACME challenges for the matching domains. Solver
  16971. configurations must be provided in order to obtain certificates
  16972. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  16973. items:
  16974. description: Configures an issuer to solve challenges using
  16975. the specified options. Only one of HTTP01 or DNS01 may be
  16976. provided.
  16977. properties:
  16978. dns01:
  16979. description: Configures cert-manager to attempt to complete
  16980. authorizations by performing the DNS01 challenge flow.
  16981. properties:
  16982. acmedns:
  16983. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  16984. API to manage DNS01 challenge records.
  16985. properties:
  16986. accountSecretRef:
  16987. description: A reference to a specific 'key' within
  16988. a Secret resource. In some instances, `key` is
  16989. a required field.
  16990. properties:
  16991. key:
  16992. description: The key of the entry in the Secret
  16993. resource's `data` field to be used. Some instances
  16994. of this field may be defaulted, in others
  16995. it may be required.
  16996. type: string
  16997. name:
  16998. description: 'Name of the resource being referred
  16999. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17000. type: string
  17001. required:
  17002. - name
  17003. type: object
  17004. host:
  17005. type: string
  17006. required:
  17007. - accountSecretRef
  17008. - host
  17009. type: object
  17010. akamai:
  17011. description: Use the Akamai DNS zone management API
  17012. to manage DNS01 challenge records.
  17013. properties:
  17014. accessTokenSecretRef:
  17015. description: A reference to a specific 'key' within
  17016. a Secret resource. In some instances, `key` is
  17017. a required field.
  17018. properties:
  17019. key:
  17020. description: The key of the entry in the Secret
  17021. resource's `data` field to be used. Some instances
  17022. of this field may be defaulted, in others
  17023. it may be required.
  17024. type: string
  17025. name:
  17026. description: 'Name of the resource being referred
  17027. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17028. type: string
  17029. required:
  17030. - name
  17031. type: object
  17032. clientSecretSecretRef:
  17033. description: A reference to a specific 'key' within
  17034. a Secret resource. In some instances, `key` is
  17035. a required field.
  17036. properties:
  17037. key:
  17038. description: The key of the entry in the Secret
  17039. resource's `data` field to be used. Some instances
  17040. of this field may be defaulted, in others
  17041. it may be required.
  17042. type: string
  17043. name:
  17044. description: 'Name of the resource being referred
  17045. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17046. type: string
  17047. required:
  17048. - name
  17049. type: object
  17050. clientTokenSecretRef:
  17051. description: A reference to a specific 'key' within
  17052. a Secret resource. In some instances, `key` is
  17053. a required field.
  17054. properties:
  17055. key:
  17056. description: The key of the entry in the Secret
  17057. resource's `data` field to be used. Some instances
  17058. of this field may be defaulted, in others
  17059. it may be required.
  17060. type: string
  17061. name:
  17062. description: 'Name of the resource being referred
  17063. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17064. type: string
  17065. required:
  17066. - name
  17067. type: object
  17068. serviceConsumerDomain:
  17069. type: string
  17070. required:
  17071. - accessTokenSecretRef
  17072. - clientSecretSecretRef
  17073. - clientTokenSecretRef
  17074. - serviceConsumerDomain
  17075. type: object
  17076. azuredns:
  17077. description: Use the Microsoft Azure DNS API to manage
  17078. DNS01 challenge records.
  17079. properties:
  17080. clientID:
  17081. description: if both this and ClientSecret are left
  17082. unset MSI will be used
  17083. type: string
  17084. clientSecretSecretRef:
  17085. description: if both this and ClientID are left
  17086. unset MSI will be used
  17087. properties:
  17088. key:
  17089. description: The key of the entry in the Secret
  17090. resource's `data` field to be used. Some instances
  17091. of this field may be defaulted, in others
  17092. it may be required.
  17093. type: string
  17094. name:
  17095. description: 'Name of the resource being referred
  17096. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17097. type: string
  17098. required:
  17099. - name
  17100. type: object
  17101. environment:
  17102. enum:
  17103. - AzurePublicCloud
  17104. - AzureChinaCloud
  17105. - AzureGermanCloud
  17106. - AzureUSGovernmentCloud
  17107. type: string
  17108. hostedZoneName:
  17109. type: string
  17110. resourceGroupName:
  17111. type: string
  17112. subscriptionID:
  17113. type: string
  17114. tenantID:
  17115. description: when specifying ClientID and ClientSecret
  17116. then this field is also needed
  17117. type: string
  17118. required:
  17119. - resourceGroupName
  17120. - subscriptionID
  17121. type: object
  17122. clouddns:
  17123. description: Use the Google Cloud DNS API to manage
  17124. DNS01 challenge records.
  17125. properties:
  17126. hostedZoneName:
  17127. description: HostedZoneName is an optional field
  17128. that tells cert-manager in which Cloud DNS zone
  17129. the challenge record has to be created. If left
  17130. empty cert-manager will automatically choose a
  17131. zone.
  17132. type: string
  17133. project:
  17134. type: string
  17135. serviceAccountSecretRef:
  17136. description: A reference to a specific 'key' within
  17137. a Secret resource. In some instances, `key` is
  17138. a required field.
  17139. properties:
  17140. key:
  17141. description: The key of the entry in the Secret
  17142. resource's `data` field to be used. Some instances
  17143. of this field may be defaulted, in others
  17144. it may be required.
  17145. type: string
  17146. name:
  17147. description: 'Name of the resource being referred
  17148. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17149. type: string
  17150. required:
  17151. - name
  17152. type: object
  17153. required:
  17154. - project
  17155. type: object
  17156. cloudflare:
  17157. description: Use the Cloudflare API to manage DNS01
  17158. challenge records.
  17159. properties:
  17160. apiKeySecretRef:
  17161. description: 'API key to use to authenticate with
  17162. Cloudflare. Note: using an API token to authenticate
  17163. is now the recommended method as it allows greater
  17164. control of permissions.'
  17165. properties:
  17166. key:
  17167. description: The key of the entry in the Secret
  17168. resource's `data` field to be used. Some instances
  17169. of this field may be defaulted, in others
  17170. it may be required.
  17171. type: string
  17172. name:
  17173. description: 'Name of the resource being referred
  17174. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17175. type: string
  17176. required:
  17177. - name
  17178. type: object
  17179. apiTokenSecretRef:
  17180. description: API token used to authenticate with
  17181. Cloudflare.
  17182. properties:
  17183. key:
  17184. description: The key of the entry in the Secret
  17185. resource's `data` field to be used. Some instances
  17186. of this field may be defaulted, in others
  17187. it may be required.
  17188. type: string
  17189. name:
  17190. description: 'Name of the resource being referred
  17191. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17192. type: string
  17193. required:
  17194. - name
  17195. type: object
  17196. email:
  17197. description: Email of the account, only required
  17198. when using API key based authentication.
  17199. type: string
  17200. type: object
  17201. cnameStrategy:
  17202. description: CNAMEStrategy configures how the DNS01
  17203. provider should handle CNAME records when found in
  17204. DNS zones.
  17205. enum:
  17206. - None
  17207. - Follow
  17208. type: string
  17209. digitalocean:
  17210. description: Use the DigitalOcean DNS API to manage
  17211. DNS01 challenge records.
  17212. properties:
  17213. tokenSecretRef:
  17214. description: A reference to a specific 'key' within
  17215. a Secret resource. In some instances, `key` is
  17216. a required field.
  17217. properties:
  17218. key:
  17219. description: The key of the entry in the Secret
  17220. resource's `data` field to be used. Some instances
  17221. of this field may be defaulted, in others
  17222. it may be required.
  17223. type: string
  17224. name:
  17225. description: 'Name of the resource being referred
  17226. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17227. type: string
  17228. required:
  17229. - name
  17230. type: object
  17231. required:
  17232. - tokenSecretRef
  17233. type: object
  17234. rfc2136:
  17235. description: Use RFC2136 ("Dynamic Updates in the Domain
  17236. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  17237. to manage DNS01 challenge records.
  17238. properties:
  17239. nameserver:
  17240. description: The IP address or hostname of an authoritative
  17241. DNS server supporting RFC2136 in the form host:port.
  17242. If the host is an IPv6 address it must be enclosed
  17243. in square brackets (e.g [2001:db8::1]) ; port
  17244. is optional. This field is required.
  17245. type: string
  17246. tsigAlgorithm:
  17247. description: 'The TSIG Algorithm configured in the
  17248. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  17249. and ``tsigKeyName`` are defined. Supported values
  17250. are (case-insensitive): ``HMACMD5`` (default),
  17251. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  17252. type: string
  17253. tsigKeyName:
  17254. description: The TSIG Key name configured in the
  17255. DNS. If ``tsigSecretSecretRef`` is defined, this
  17256. field is required.
  17257. type: string
  17258. tsigSecretSecretRef:
  17259. description: The name of the secret containing the
  17260. TSIG value. If ``tsigKeyName`` is defined, this
  17261. field is required.
  17262. properties:
  17263. key:
  17264. description: The key of the entry in the Secret
  17265. resource's `data` field to be used. Some instances
  17266. of this field may be defaulted, in others
  17267. it may be required.
  17268. type: string
  17269. name:
  17270. description: 'Name of the resource being referred
  17271. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17272. type: string
  17273. required:
  17274. - name
  17275. type: object
  17276. required:
  17277. - nameserver
  17278. type: object
  17279. route53:
  17280. description: Use the AWS Route53 API to manage DNS01
  17281. challenge records.
  17282. properties:
  17283. accessKeyID:
  17284. description: 'The AccessKeyID is used for authentication.
  17285. If not set we fall-back to using env vars, shared
  17286. credentials file or AWS Instance metadata see:
  17287. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  17288. type: string
  17289. hostedZoneID:
  17290. description: If set, the provider will manage only
  17291. this zone in Route53 and will not do an lookup
  17292. using the route53:ListHostedZonesByName api call.
  17293. type: string
  17294. region:
  17295. description: Always set the region when using AccessKeyID
  17296. and SecretAccessKey
  17297. type: string
  17298. role:
  17299. description: Role is a Role ARN which the Route53
  17300. provider will assume using either the explicit
  17301. credentials AccessKeyID/SecretAccessKey or the
  17302. inferred credentials from environment variables,
  17303. shared credentials file or AWS Instance metadata
  17304. type: string
  17305. secretAccessKeySecretRef:
  17306. description: The SecretAccessKey is used for authentication.
  17307. If not set we fall-back to using env vars, shared
  17308. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  17309. properties:
  17310. key:
  17311. description: The key of the entry in the Secret
  17312. resource's `data` field to be used. Some instances
  17313. of this field may be defaulted, in others
  17314. it may be required.
  17315. type: string
  17316. name:
  17317. description: 'Name of the resource being referred
  17318. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  17319. type: string
  17320. required:
  17321. - name
  17322. type: object
  17323. required:
  17324. - region
  17325. type: object
  17326. webhook:
  17327. description: Configure an external webhook based DNS01
  17328. challenge solver to manage DNS01 challenge records.
  17329. properties:
  17330. config:
  17331. description: Additional configuration that should
  17332. be passed to the webhook apiserver when challenges
  17333. are processed. This can contain arbitrary JSON
  17334. data. Secret values should not be specified in
  17335. this stanza. If secret values are needed (e.g.
  17336. credentials for a DNS service), you should use
  17337. a SecretKeySelector to reference a Secret resource.
  17338. For details on the schema of this field, consult
  17339. the webhook provider implementation's documentation.
  17340. x-kubernetes-preserve-unknown-fields: true
  17341. groupName:
  17342. description: The API group name that should be used
  17343. when POSTing ChallengePayload resources to the
  17344. webhook apiserver. This should be the same as
  17345. the GroupName specified in the webhook provider
  17346. implementation.
  17347. type: string
  17348. solverName:
  17349. description: The name of the solver to use, as defined
  17350. in the webhook provider implementation. This will
  17351. typically be the name of the provider, e.g. 'cloudflare'.
  17352. type: string
  17353. required:
  17354. - groupName
  17355. - solverName
  17356. type: object
  17357. type: object
  17358. http01:
  17359. description: Configures cert-manager to attempt to complete
  17360. authorizations by performing the HTTP01 challenge flow.
  17361. It is not possible to obtain certificates for wildcard
  17362. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  17363. mechanism.
  17364. properties:
  17365. ingress:
  17366. description: The ingress based HTTP01 challenge solver
  17367. will solve challenges by creating or modifying Ingress
  17368. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  17369. to 'challenge solver' pods that are provisioned by
  17370. cert-manager for each Challenge to be completed.
  17371. properties:
  17372. class:
  17373. description: The ingress class to use when creating
  17374. Ingress resources to solve ACME challenges that
  17375. use this challenge solver. Only one of 'class'
  17376. or 'name' may be specified.
  17377. type: string
  17378. ingressTemplate:
  17379. description: Optional ingress template used to configure
  17380. the ACME challenge solver ingress used for HTTP01
  17381. challenges
  17382. properties:
  17383. metadata:
  17384. description: ObjectMeta overrides for the ingress
  17385. used to solve HTTP01 challenges. Only the
  17386. 'labels' and 'annotations' fields may be set.
  17387. If labels or annotations overlap with in-built
  17388. values, the values here will override the
  17389. in-built values.
  17390. properties:
  17391. annotations:
  17392. additionalProperties:
  17393. type: string
  17394. description: Annotations that should be
  17395. added to the created ACME HTTP01 solver
  17396. ingress.
  17397. type: object
  17398. labels:
  17399. additionalProperties:
  17400. type: string
  17401. description: Labels that should be added
  17402. to the created ACME HTTP01 solver ingress.
  17403. type: object
  17404. type: object
  17405. type: object
  17406. name:
  17407. description: The name of the ingress resource that
  17408. should have ACME challenge solving routes inserted
  17409. into it in order to solve HTTP01 challenges. This
  17410. is typically used in conjunction with ingress
  17411. controllers like ingress-gce, which maintains
  17412. a 1:1 mapping between external IPs and ingress
  17413. resources.
  17414. type: string
  17415. podTemplate:
  17416. description: Optional pod template used to configure
  17417. the ACME challenge solver pods used for HTTP01
  17418. challenges
  17419. properties:
  17420. metadata:
  17421. description: ObjectMeta overrides for the pod
  17422. used to solve HTTP01 challenges. Only the
  17423. 'labels' and 'annotations' fields may be set.
  17424. If labels or annotations overlap with in-built
  17425. values, the values here will override the
  17426. in-built values.
  17427. properties:
  17428. annotations:
  17429. additionalProperties:
  17430. type: string
  17431. description: Annotations that should be
  17432. added to the create ACME HTTP01 solver
  17433. pods.
  17434. type: object
  17435. labels:
  17436. additionalProperties:
  17437. type: string
  17438. description: Labels that should be added
  17439. to the created ACME HTTP01 solver pods.
  17440. type: object
  17441. type: object
  17442. spec:
  17443. description: PodSpec defines overrides for the
  17444. HTTP01 challenge solver pod. Only the 'priorityClassName',
  17445. 'nodeSelector', 'affinity', 'serviceAccountName'
  17446. and 'tolerations' fields are supported currently.
  17447. All other fields will be ignored.
  17448. properties:
  17449. affinity:
  17450. description: If specified, the pod's scheduling
  17451. constraints
  17452. properties:
  17453. nodeAffinity:
  17454. description: Describes node affinity
  17455. scheduling rules for the pod.
  17456. properties:
  17457. preferredDuringSchedulingIgnoredDuringExecution:
  17458. description: The scheduler will
  17459. prefer to schedule pods to nodes
  17460. that satisfy the affinity expressions
  17461. specified by this field, but it
  17462. may choose a node that violates
  17463. one or more of the expressions.
  17464. The node that is most preferred
  17465. is the one with the greatest sum
  17466. of weights, i.e. for each node
  17467. that meets all of the scheduling
  17468. requirements (resource request,
  17469. requiredDuringScheduling affinity
  17470. expressions, etc.), compute a
  17471. sum by iterating through the elements
  17472. of this field and adding "weight"
  17473. to the sum if the node matches
  17474. the corresponding matchExpressions;
  17475. the node(s) with the highest sum
  17476. are the most preferred.
  17477. items:
  17478. description: An empty preferred
  17479. scheduling term matches all
  17480. objects with implicit weight
  17481. 0 (i.e. it's a no-op). A null
  17482. preferred scheduling term matches
  17483. no objects (i.e. is also a no-op).
  17484. properties:
  17485. preference:
  17486. description: A node selector
  17487. term, associated with the
  17488. corresponding weight.
  17489. properties:
  17490. matchExpressions:
  17491. description: A list of
  17492. node selector requirements
  17493. by node's labels.
  17494. items:
  17495. description: A node
  17496. selector requirement
  17497. is a selector that
  17498. contains values, a
  17499. key, and an operator
  17500. that relates the key
  17501. and values.
  17502. properties:
  17503. key:
  17504. description: The
  17505. label key that
  17506. the selector applies
  17507. to.
  17508. type: string
  17509. operator:
  17510. description: Represents
  17511. a key's relationship
  17512. to a set of values.
  17513. Valid operators
  17514. are In, NotIn,
  17515. Exists, DoesNotExist.
  17516. Gt, and Lt.
  17517. type: string
  17518. values:
  17519. description: An
  17520. array of string
  17521. values. If the
  17522. operator is In
  17523. or NotIn, the
  17524. values array must
  17525. be non-empty.
  17526. If the operator
  17527. is Exists or DoesNotExist,
  17528. the values array
  17529. must be empty.
  17530. If the operator
  17531. is Gt or Lt, the
  17532. values array must
  17533. have a single
  17534. element, which
  17535. will be interpreted
  17536. as an integer.
  17537. This array is
  17538. replaced during
  17539. a strategic merge
  17540. patch.
  17541. items:
  17542. type: string
  17543. type: array
  17544. required:
  17545. - key
  17546. - operator
  17547. type: object
  17548. type: array
  17549. matchFields:
  17550. description: A list of
  17551. node selector requirements
  17552. by node's fields.
  17553. items:
  17554. description: A node
  17555. selector requirement
  17556. is a selector that
  17557. contains values, a
  17558. key, and an operator
  17559. that relates the key
  17560. and values.
  17561. properties:
  17562. key:
  17563. description: The
  17564. label key that
  17565. the selector applies
  17566. to.
  17567. type: string
  17568. operator:
  17569. description: Represents
  17570. a key's relationship
  17571. to a set of values.
  17572. Valid operators
  17573. are In, NotIn,
  17574. Exists, DoesNotExist.
  17575. Gt, and Lt.
  17576. type: string
  17577. values:
  17578. description: An
  17579. array of string
  17580. values. If the
  17581. operator is In
  17582. or NotIn, the
  17583. values array must
  17584. be non-empty.
  17585. If the operator
  17586. is Exists or DoesNotExist,
  17587. the values array
  17588. must be empty.
  17589. If the operator
  17590. is Gt or Lt, the
  17591. values array must
  17592. have a single
  17593. element, which
  17594. will be interpreted
  17595. as an integer.
  17596. This array is
  17597. replaced during
  17598. a strategic merge
  17599. patch.
  17600. items:
  17601. type: string
  17602. type: array
  17603. required:
  17604. - key
  17605. - operator
  17606. type: object
  17607. type: array
  17608. type: object
  17609. weight:
  17610. description: Weight associated
  17611. with matching the corresponding
  17612. nodeSelectorTerm, in the
  17613. range 1-100.
  17614. format: int32
  17615. type: integer
  17616. required:
  17617. - preference
  17618. - weight
  17619. type: object
  17620. type: array
  17621. requiredDuringSchedulingIgnoredDuringExecution:
  17622. description: If the affinity requirements
  17623. specified by this field are not
  17624. met at scheduling time, the pod
  17625. will not be scheduled onto the
  17626. node. If the affinity requirements
  17627. specified by this field cease
  17628. to be met at some point during
  17629. pod execution (e.g. due to an
  17630. update), the system may or may
  17631. not try to eventually evict the
  17632. pod from its node.
  17633. properties:
  17634. nodeSelectorTerms:
  17635. description: Required. A list
  17636. of node selector terms. The
  17637. terms are ORed.
  17638. items:
  17639. description: A null or empty
  17640. node selector term matches
  17641. no objects. The requirements
  17642. of them are ANDed. The TopologySelectorTerm
  17643. type implements a subset
  17644. of the NodeSelectorTerm.
  17645. properties:
  17646. matchExpressions:
  17647. description: A list of
  17648. node selector requirements
  17649. by node's labels.
  17650. items:
  17651. description: A node
  17652. selector requirement
  17653. is a selector that
  17654. contains values, a
  17655. key, and an operator
  17656. that relates the key
  17657. and values.
  17658. properties:
  17659. key:
  17660. description: The
  17661. label key that
  17662. the selector applies
  17663. to.
  17664. type: string
  17665. operator:
  17666. description: Represents
  17667. a key's relationship
  17668. to a set of values.
  17669. Valid operators
  17670. are In, NotIn,
  17671. Exists, DoesNotExist.
  17672. Gt, and Lt.
  17673. type: string
  17674. values:
  17675. description: An
  17676. array of string
  17677. values. If the
  17678. operator is In
  17679. or NotIn, the
  17680. values array must
  17681. be non-empty.
  17682. If the operator
  17683. is Exists or DoesNotExist,
  17684. the values array
  17685. must be empty.
  17686. If the operator
  17687. is Gt or Lt, the
  17688. values array must
  17689. have a single
  17690. element, which
  17691. will be interpreted
  17692. as an integer.
  17693. This array is
  17694. replaced during
  17695. a strategic merge
  17696. patch.
  17697. items:
  17698. type: string
  17699. type: array
  17700. required:
  17701. - key
  17702. - operator
  17703. type: object
  17704. type: array
  17705. matchFields:
  17706. description: A list of
  17707. node selector requirements
  17708. by node's fields.
  17709. items:
  17710. description: A node
  17711. selector requirement
  17712. is a selector that
  17713. contains values, a
  17714. key, and an operator
  17715. that relates the key
  17716. and values.
  17717. properties:
  17718. key:
  17719. description: The
  17720. label key that
  17721. the selector applies
  17722. to.
  17723. type: string
  17724. operator:
  17725. description: Represents
  17726. a key's relationship
  17727. to a set of values.
  17728. Valid operators
  17729. are In, NotIn,
  17730. Exists, DoesNotExist.
  17731. Gt, and Lt.
  17732. type: string
  17733. values:
  17734. description: An
  17735. array of string
  17736. values. If the
  17737. operator is In
  17738. or NotIn, the
  17739. values array must
  17740. be non-empty.
  17741. If the operator
  17742. is Exists or DoesNotExist,
  17743. the values array
  17744. must be empty.
  17745. If the operator
  17746. is Gt or Lt, the
  17747. values array must
  17748. have a single
  17749. element, which
  17750. will be interpreted
  17751. as an integer.
  17752. This array is
  17753. replaced during
  17754. a strategic merge
  17755. patch.
  17756. items:
  17757. type: string
  17758. type: array
  17759. required:
  17760. - key
  17761. - operator
  17762. type: object
  17763. type: array
  17764. type: object
  17765. type: array
  17766. required:
  17767. - nodeSelectorTerms
  17768. type: object
  17769. type: object
  17770. podAffinity:
  17771. description: Describes pod affinity
  17772. scheduling rules (e.g. co-locate this
  17773. pod in the same node, zone, etc. as
  17774. some other pod(s)).
  17775. properties:
  17776. preferredDuringSchedulingIgnoredDuringExecution:
  17777. description: The scheduler will
  17778. prefer to schedule pods to nodes
  17779. that satisfy the affinity expressions
  17780. specified by this field, but it
  17781. may choose a node that violates
  17782. one or more of the expressions.
  17783. The node that is most preferred
  17784. is the one with the greatest sum
  17785. of weights, i.e. for each node
  17786. that meets all of the scheduling
  17787. requirements (resource request,
  17788. requiredDuringScheduling affinity
  17789. expressions, etc.), compute a
  17790. sum by iterating through the elements
  17791. of this field and adding "weight"
  17792. to the sum if the node has pods
  17793. which matches the corresponding
  17794. podAffinityTerm; the node(s) with
  17795. the highest sum are the most preferred.
  17796. items:
  17797. description: The weights of all
  17798. of the matched WeightedPodAffinityTerm
  17799. fields are added per-node to
  17800. find the most preferred node(s)
  17801. properties:
  17802. podAffinityTerm:
  17803. description: Required. A pod
  17804. affinity term, associated
  17805. with the corresponding weight.
  17806. properties:
  17807. labelSelector:
  17808. description: A label query
  17809. over a set of resources,
  17810. in this case pods.
  17811. properties:
  17812. matchExpressions:
  17813. description: matchExpressions
  17814. is a list of label
  17815. selector requirements.
  17816. The requirements
  17817. are ANDed.
  17818. items:
  17819. description: A label
  17820. selector requirement
  17821. is a selector
  17822. that contains
  17823. values, a key,
  17824. and an operator
  17825. that relates the
  17826. key and values.
  17827. properties:
  17828. key:
  17829. description: key
  17830. is the label
  17831. key that the
  17832. selector applies
  17833. to.
  17834. type: string
  17835. operator:
  17836. description: operator
  17837. represents
  17838. a key's relationship
  17839. to a set of
  17840. values. Valid
  17841. operators
  17842. are In, NotIn,
  17843. Exists and
  17844. DoesNotExist.
  17845. type: string
  17846. values:
  17847. description: values
  17848. is an array
  17849. of string
  17850. values. If
  17851. the operator
  17852. is In or NotIn,
  17853. the values
  17854. array must
  17855. be non-empty.
  17856. If the operator
  17857. is Exists
  17858. or DoesNotExist,
  17859. the values
  17860. array must
  17861. be empty.
  17862. This array
  17863. is replaced
  17864. during a strategic
  17865. merge patch.
  17866. items:
  17867. type: string
  17868. type: array
  17869. required:
  17870. - key
  17871. - operator
  17872. type: object
  17873. type: array
  17874. matchLabels:
  17875. additionalProperties:
  17876. type: string
  17877. description: matchLabels
  17878. is a map of {key,value}
  17879. pairs. A single
  17880. {key,value} in the
  17881. matchLabels map
  17882. is equivalent to
  17883. an element of matchExpressions,
  17884. whose key field
  17885. is "key", the operator
  17886. is "In", and the
  17887. values array contains
  17888. only "value". The
  17889. requirements are
  17890. ANDed.
  17891. type: object
  17892. type: object
  17893. namespaces:
  17894. description: namespaces
  17895. specifies which namespaces
  17896. the labelSelector applies
  17897. to (matches against);
  17898. null or empty list means
  17899. "this pod's namespace"
  17900. items:
  17901. type: string
  17902. type: array
  17903. topologyKey:
  17904. description: This pod
  17905. should be co-located
  17906. (affinity) or not co-located
  17907. (anti-affinity) with
  17908. the pods matching the
  17909. labelSelector in the
  17910. specified namespaces,
  17911. where co-located is
  17912. defined as running on
  17913. a node whose value of
  17914. the label with key topologyKey
  17915. matches that of any
  17916. node on which any of
  17917. the selected pods is
  17918. running. Empty topologyKey
  17919. is not allowed.
  17920. type: string
  17921. required:
  17922. - topologyKey
  17923. type: object
  17924. weight:
  17925. description: weight associated
  17926. with matching the corresponding
  17927. podAffinityTerm, in the
  17928. range 1-100.
  17929. format: int32
  17930. type: integer
  17931. required:
  17932. - podAffinityTerm
  17933. - weight
  17934. type: object
  17935. type: array
  17936. requiredDuringSchedulingIgnoredDuringExecution:
  17937. description: If the affinity requirements
  17938. specified by this field are not
  17939. met at scheduling time, the pod
  17940. will not be scheduled onto the
  17941. node. If the affinity requirements
  17942. specified by this field cease
  17943. to be met at some point during
  17944. pod execution (e.g. due to a pod
  17945. label update), the system may
  17946. or may not try to eventually evict
  17947. the pod from its node. When there
  17948. are multiple elements, the lists
  17949. of nodes corresponding to each
  17950. podAffinityTerm are intersected,
  17951. i.e. all terms must be satisfied.
  17952. items:
  17953. description: Defines a set of
  17954. pods (namely those matching
  17955. the labelSelector relative to
  17956. the given namespace(s)) that
  17957. this pod should be co-located
  17958. (affinity) or not co-located
  17959. (anti-affinity) with, where
  17960. co-located is defined as running
  17961. on a node whose value of the
  17962. label with key <topologyKey>
  17963. matches that of any node on
  17964. which a pod of the set of pods
  17965. is running
  17966. properties:
  17967. labelSelector:
  17968. description: A label query
  17969. over a set of resources,
  17970. in this case pods.
  17971. properties:
  17972. matchExpressions:
  17973. description: matchExpressions
  17974. is a list of label selector
  17975. requirements. The requirements
  17976. are ANDed.
  17977. items:
  17978. description: A label
  17979. selector requirement
  17980. is a selector that
  17981. contains values, a
  17982. key, and an operator
  17983. that relates the key
  17984. and values.
  17985. properties:
  17986. key:
  17987. description: key
  17988. is the label key
  17989. that the selector
  17990. applies to.
  17991. type: string
  17992. operator:
  17993. description: operator
  17994. represents a key's
  17995. relationship to
  17996. a set of values.
  17997. Valid operators
  17998. are In, NotIn,
  17999. Exists and DoesNotExist.
  18000. type: string
  18001. values:
  18002. description: values
  18003. is an array of
  18004. string values.
  18005. If the operator
  18006. is In or NotIn,
  18007. the values array
  18008. must be non-empty.
  18009. If the operator
  18010. is Exists or DoesNotExist,
  18011. the values array
  18012. must be empty.
  18013. This array is
  18014. replaced during
  18015. a strategic merge
  18016. patch.
  18017. items:
  18018. type: string
  18019. type: array
  18020. required:
  18021. - key
  18022. - operator
  18023. type: object
  18024. type: array
  18025. matchLabels:
  18026. additionalProperties:
  18027. type: string
  18028. description: matchLabels
  18029. is a map of {key,value}
  18030. pairs. A single {key,value}
  18031. in the matchLabels map
  18032. is equivalent to an
  18033. element of matchExpressions,
  18034. whose key field is "key",
  18035. the operator is "In",
  18036. and the values array
  18037. contains only "value".
  18038. The requirements are
  18039. ANDed.
  18040. type: object
  18041. type: object
  18042. namespaces:
  18043. description: namespaces specifies
  18044. which namespaces the labelSelector
  18045. applies to (matches against);
  18046. null or empty list means
  18047. "this pod's namespace"
  18048. items:
  18049. type: string
  18050. type: array
  18051. topologyKey:
  18052. description: This pod should
  18053. be co-located (affinity)
  18054. or not co-located (anti-affinity)
  18055. with the pods matching the
  18056. labelSelector in the specified
  18057. namespaces, where co-located
  18058. is defined as running on
  18059. a node whose value of the
  18060. label with key topologyKey
  18061. matches that of any node
  18062. on which any of the selected
  18063. pods is running. Empty topologyKey
  18064. is not allowed.
  18065. type: string
  18066. required:
  18067. - topologyKey
  18068. type: object
  18069. type: array
  18070. type: object
  18071. podAntiAffinity:
  18072. description: Describes pod anti-affinity
  18073. scheduling rules (e.g. avoid putting
  18074. this pod in the same node, zone, etc.
  18075. as some other pod(s)).
  18076. properties:
  18077. preferredDuringSchedulingIgnoredDuringExecution:
  18078. description: The scheduler will
  18079. prefer to schedule pods to nodes
  18080. that satisfy the anti-affinity
  18081. expressions specified by this
  18082. field, but it may choose a node
  18083. that violates one or more of the
  18084. expressions. The node that is
  18085. most preferred is the one with
  18086. the greatest sum of weights, i.e.
  18087. for each node that meets all of
  18088. the scheduling requirements (resource
  18089. request, requiredDuringScheduling
  18090. anti-affinity expressions, etc.),
  18091. compute a sum by iterating through
  18092. the elements of this field and
  18093. adding "weight" to the sum if
  18094. the node has pods which matches
  18095. the corresponding podAffinityTerm;
  18096. the node(s) with the highest sum
  18097. are the most preferred.
  18098. items:
  18099. description: The weights of all
  18100. of the matched WeightedPodAffinityTerm
  18101. fields are added per-node to
  18102. find the most preferred node(s)
  18103. properties:
  18104. podAffinityTerm:
  18105. description: Required. A pod
  18106. affinity term, associated
  18107. with the corresponding weight.
  18108. properties:
  18109. labelSelector:
  18110. description: A label query
  18111. over a set of resources,
  18112. in this case pods.
  18113. properties:
  18114. matchExpressions:
  18115. description: matchExpressions
  18116. is a list of label
  18117. selector requirements.
  18118. The requirements
  18119. are ANDed.
  18120. items:
  18121. description: A label
  18122. selector requirement
  18123. is a selector
  18124. that contains
  18125. values, a key,
  18126. and an operator
  18127. that relates the
  18128. key and values.
  18129. properties:
  18130. key:
  18131. description: key
  18132. is the label
  18133. key that the
  18134. selector applies
  18135. to.
  18136. type: string
  18137. operator:
  18138. description: operator
  18139. represents
  18140. a key's relationship
  18141. to a set of
  18142. values. Valid
  18143. operators
  18144. are In, NotIn,
  18145. Exists and
  18146. DoesNotExist.
  18147. type: string
  18148. values:
  18149. description: values
  18150. is an array
  18151. of string
  18152. values. If
  18153. the operator
  18154. is In or NotIn,
  18155. the values
  18156. array must
  18157. be non-empty.
  18158. If the operator
  18159. is Exists
  18160. or DoesNotExist,
  18161. the values
  18162. array must
  18163. be empty.
  18164. This array
  18165. is replaced
  18166. during a strategic
  18167. merge patch.
  18168. items:
  18169. type: string
  18170. type: array
  18171. required:
  18172. - key
  18173. - operator
  18174. type: object
  18175. type: array
  18176. matchLabels:
  18177. additionalProperties:
  18178. type: string
  18179. description: matchLabels
  18180. is a map of {key,value}
  18181. pairs. A single
  18182. {key,value} in the
  18183. matchLabels map
  18184. is equivalent to
  18185. an element of matchExpressions,
  18186. whose key field
  18187. is "key", the operator
  18188. is "In", and the
  18189. values array contains
  18190. only "value". The
  18191. requirements are
  18192. ANDed.
  18193. type: object
  18194. type: object
  18195. namespaces:
  18196. description: namespaces
  18197. specifies which namespaces
  18198. the labelSelector applies
  18199. to (matches against);
  18200. null or empty list means
  18201. "this pod's namespace"
  18202. items:
  18203. type: string
  18204. type: array
  18205. topologyKey:
  18206. description: This pod
  18207. should be co-located
  18208. (affinity) or not co-located
  18209. (anti-affinity) with
  18210. the pods matching the
  18211. labelSelector in the
  18212. specified namespaces,
  18213. where co-located is
  18214. defined as running on
  18215. a node whose value of
  18216. the label with key topologyKey
  18217. matches that of any
  18218. node on which any of
  18219. the selected pods is
  18220. running. Empty topologyKey
  18221. is not allowed.
  18222. type: string
  18223. required:
  18224. - topologyKey
  18225. type: object
  18226. weight:
  18227. description: weight associated
  18228. with matching the corresponding
  18229. podAffinityTerm, in the
  18230. range 1-100.
  18231. format: int32
  18232. type: integer
  18233. required:
  18234. - podAffinityTerm
  18235. - weight
  18236. type: object
  18237. type: array
  18238. requiredDuringSchedulingIgnoredDuringExecution:
  18239. description: If the anti-affinity
  18240. requirements specified by this
  18241. field are not met at scheduling
  18242. time, the pod will not be scheduled
  18243. onto the node. If the anti-affinity
  18244. requirements specified by this
  18245. field cease to be met at some
  18246. point during pod execution (e.g.
  18247. due to a pod label update), the
  18248. system may or may not try to eventually
  18249. evict the pod from its node. When
  18250. there are multiple elements, the
  18251. lists of nodes corresponding to
  18252. each podAffinityTerm are intersected,
  18253. i.e. all terms must be satisfied.
  18254. items:
  18255. description: Defines a set of
  18256. pods (namely those matching
  18257. the labelSelector relative to
  18258. the given namespace(s)) that
  18259. this pod should be co-located
  18260. (affinity) or not co-located
  18261. (anti-affinity) with, where
  18262. co-located is defined as running
  18263. on a node whose value of the
  18264. label with key <topologyKey>
  18265. matches that of any node on
  18266. which a pod of the set of pods
  18267. is running
  18268. properties:
  18269. labelSelector:
  18270. description: A label query
  18271. over a set of resources,
  18272. in this case pods.
  18273. properties:
  18274. matchExpressions:
  18275. description: matchExpressions
  18276. is a list of label selector
  18277. requirements. The requirements
  18278. are ANDed.
  18279. items:
  18280. description: A label
  18281. selector requirement
  18282. is a selector that
  18283. contains values, a
  18284. key, and an operator
  18285. that relates the key
  18286. and values.
  18287. properties:
  18288. key:
  18289. description: key
  18290. is the label key
  18291. that the selector
  18292. applies to.
  18293. type: string
  18294. operator:
  18295. description: operator
  18296. represents a key's
  18297. relationship to
  18298. a set of values.
  18299. Valid operators
  18300. are In, NotIn,
  18301. Exists and DoesNotExist.
  18302. type: string
  18303. values:
  18304. description: values
  18305. is an array of
  18306. string values.
  18307. If the operator
  18308. is In or NotIn,
  18309. the values array
  18310. must be non-empty.
  18311. If the operator
  18312. is Exists or DoesNotExist,
  18313. the values array
  18314. must be empty.
  18315. This array is
  18316. replaced during
  18317. a strategic merge
  18318. patch.
  18319. items:
  18320. type: string
  18321. type: array
  18322. required:
  18323. - key
  18324. - operator
  18325. type: object
  18326. type: array
  18327. matchLabels:
  18328. additionalProperties:
  18329. type: string
  18330. description: matchLabels
  18331. is a map of {key,value}
  18332. pairs. A single {key,value}
  18333. in the matchLabels map
  18334. is equivalent to an
  18335. element of matchExpressions,
  18336. whose key field is "key",
  18337. the operator is "In",
  18338. and the values array
  18339. contains only "value".
  18340. The requirements are
  18341. ANDed.
  18342. type: object
  18343. type: object
  18344. namespaces:
  18345. description: namespaces specifies
  18346. which namespaces the labelSelector
  18347. applies to (matches against);
  18348. null or empty list means
  18349. "this pod's namespace"
  18350. items:
  18351. type: string
  18352. type: array
  18353. topologyKey:
  18354. description: This pod should
  18355. be co-located (affinity)
  18356. or not co-located (anti-affinity)
  18357. with the pods matching the
  18358. labelSelector in the specified
  18359. namespaces, where co-located
  18360. is defined as running on
  18361. a node whose value of the
  18362. label with key topologyKey
  18363. matches that of any node
  18364. on which any of the selected
  18365. pods is running. Empty topologyKey
  18366. is not allowed.
  18367. type: string
  18368. required:
  18369. - topologyKey
  18370. type: object
  18371. type: array
  18372. type: object
  18373. type: object
  18374. nodeSelector:
  18375. additionalProperties:
  18376. type: string
  18377. description: 'NodeSelector is a selector
  18378. which must be true for the pod to fit
  18379. on a node. Selector which must match a
  18380. node''s labels for the pod to be scheduled
  18381. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  18382. type: object
  18383. priorityClassName:
  18384. description: If specified, the pod's priorityClassName.
  18385. type: string
  18386. serviceAccountName:
  18387. description: If specified, the pod's service
  18388. account
  18389. type: string
  18390. tolerations:
  18391. description: If specified, the pod's tolerations.
  18392. items:
  18393. description: The pod this Toleration is
  18394. attached to tolerates any taint that
  18395. matches the triple <key,value,effect>
  18396. using the matching operator <operator>.
  18397. properties:
  18398. effect:
  18399. description: Effect indicates the
  18400. taint effect to match. Empty means
  18401. match all taint effects. When specified,
  18402. allowed values are NoSchedule, PreferNoSchedule
  18403. and NoExecute.
  18404. type: string
  18405. key:
  18406. description: Key is the taint key
  18407. that the toleration applies to.
  18408. Empty means match all taint keys.
  18409. If the key is empty, operator must
  18410. be Exists; this combination means
  18411. to match all values and all keys.
  18412. type: string
  18413. operator:
  18414. description: Operator represents a
  18415. key's relationship to the value.
  18416. Valid operators are Exists and Equal.
  18417. Defaults to Equal. Exists is equivalent
  18418. to wildcard for value, so that a
  18419. pod can tolerate all taints of a
  18420. particular category.
  18421. type: string
  18422. tolerationSeconds:
  18423. description: TolerationSeconds represents
  18424. the period of time the toleration
  18425. (which must be of effect NoExecute,
  18426. otherwise this field is ignored)
  18427. tolerates the taint. By default,
  18428. it is not set, which means tolerate
  18429. the taint forever (do not evict).
  18430. Zero and negative values will be
  18431. treated as 0 (evict immediately)
  18432. by the system.
  18433. format: int64
  18434. type: integer
  18435. value:
  18436. description: Value is the taint value
  18437. the toleration matches to. If the
  18438. operator is Exists, the value should
  18439. be empty, otherwise just a regular
  18440. string.
  18441. type: string
  18442. type: object
  18443. type: array
  18444. type: object
  18445. type: object
  18446. serviceType:
  18447. description: Optional service type for Kubernetes
  18448. solver service
  18449. type: string
  18450. type: object
  18451. type: object
  18452. selector:
  18453. description: Selector selects a set of DNSNames on the Certificate
  18454. resource that should be solved using this challenge solver.
  18455. If not specified, the solver will be treated as the 'default'
  18456. solver with the lowest priority, i.e. if any other solver
  18457. has a more specific match, it will be used instead.
  18458. properties:
  18459. dnsNames:
  18460. description: List of DNSNames that this solver will
  18461. be used to solve. If specified and a match is found,
  18462. a dnsNames selector will take precedence over a dnsZones
  18463. selector. If multiple solvers match with the same
  18464. dnsNames value, the solver with the most matching
  18465. labels in matchLabels will be selected. If neither
  18466. has more matches, the solver defined earlier in the
  18467. list will be selected.
  18468. items:
  18469. type: string
  18470. type: array
  18471. dnsZones:
  18472. description: List of DNSZones that this solver will
  18473. be used to solve. The most specific DNS zone match
  18474. specified here will take precedence over other DNS
  18475. zone matches, so a solver specifying sys.example.com
  18476. will be selected over one specifying example.com for
  18477. the domain www.sys.example.com. If multiple solvers
  18478. match with the same dnsZones value, the solver with
  18479. the most matching labels in matchLabels will be selected.
  18480. If neither has more matches, the solver defined earlier
  18481. in the list will be selected.
  18482. items:
  18483. type: string
  18484. type: array
  18485. matchLabels:
  18486. additionalProperties:
  18487. type: string
  18488. description: A label selector that is used to refine
  18489. the set of certificate's that this challenge solver
  18490. will apply to.
  18491. type: object
  18492. type: object
  18493. type: object
  18494. type: array
  18495. required:
  18496. - privateKeySecretRef
  18497. - server
  18498. type: object
  18499. ca:
  18500. description: CA configures this issuer to sign certificates using
  18501. a signing CA keypair stored in a Secret resource. This is used to
  18502. build internal PKIs that are managed by cert-manager.
  18503. properties:
  18504. crlDistributionPoints:
  18505. description: The CRL distribution points is an X.509 v3 certificate
  18506. extension which identifies the location of the CRL from which
  18507. the revocation of this certificate can be checked. If not set,
  18508. certificates will be issued without distribution points set.
  18509. items:
  18510. type: string
  18511. type: array
  18512. ocspServers:
  18513. description: The OCSP server list is an X.509 v3 extension that
  18514. defines a list of URLs of OCSP responders. The OCSP responders
  18515. can be queried for the revocation status of an issued certificate.
  18516. If not set, the certificate will be issued with no OCSP servers
  18517. set. For example, an OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
  18518. items:
  18519. type: string
  18520. type: array
  18521. secretName:
  18522. description: SecretName is the name of the secret used to sign
  18523. Certificates issued by this Issuer.
  18524. type: string
  18525. required:
  18526. - secretName
  18527. type: object
  18528. selfSigned:
  18529. description: SelfSigned configures this issuer to 'self sign' certificates
  18530. using the private key used to create the CertificateRequest object.
  18531. properties:
  18532. crlDistributionPoints:
  18533. description: The CRL distribution points is an X.509 v3 certificate
  18534. extension which identifies the location of the CRL from which
  18535. the revocation of this certificate can be checked. If not set
  18536. certificate will be issued without CDP. Values are strings.
  18537. items:
  18538. type: string
  18539. type: array
  18540. type: object
  18541. vault:
  18542. description: Vault configures this issuer to sign certificates using
  18543. a HashiCorp Vault PKI backend.
  18544. properties:
  18545. auth:
  18546. description: Auth configures how cert-manager authenticates with
  18547. the Vault server.
  18548. properties:
  18549. appRole:
  18550. description: AppRole authenticates with Vault using the App
  18551. Role auth mechanism, with the role and secret stored in
  18552. a Kubernetes Secret resource.
  18553. properties:
  18554. path:
  18555. description: 'Path where the App Role authentication backend
  18556. is mounted in Vault, e.g: "approle"'
  18557. type: string
  18558. roleId:
  18559. description: RoleID configured in the App Role authentication
  18560. backend when setting up the authentication backend in
  18561. Vault.
  18562. type: string
  18563. secretRef:
  18564. description: Reference to a key in a Secret that contains
  18565. the App Role secret used to authenticate with Vault.
  18566. The `key` field must be specified and denotes which
  18567. entry within the Secret resource is used as the app
  18568. role secret.
  18569. properties:
  18570. key:
  18571. description: The key of the entry in the Secret resource's
  18572. `data` field to be used. Some instances of this
  18573. field may be defaulted, in others it may be required.
  18574. type: string
  18575. name:
  18576. description: 'Name of the resource being referred
  18577. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18578. type: string
  18579. required:
  18580. - name
  18581. type: object
  18582. required:
  18583. - path
  18584. - roleId
  18585. - secretRef
  18586. type: object
  18587. kubernetes:
  18588. description: Kubernetes authenticates with Vault by passing
  18589. the ServiceAccount token stored in the named Secret resource
  18590. to the Vault server.
  18591. properties:
  18592. mountPath:
  18593. description: The Vault mountPath here is the mount path
  18594. to use when authenticating with Vault. For example,
  18595. setting a value to `/v1/auth/foo`, will use the path
  18596. `/v1/auth/foo/login` to authenticate with Vault. If
  18597. unspecified, the default value "/v1/auth/kubernetes"
  18598. will be used.
  18599. type: string
  18600. role:
  18601. description: A required field containing the Vault Role
  18602. to assume. A Role binds a Kubernetes ServiceAccount
  18603. with a set of Vault policies.
  18604. type: string
  18605. secretRef:
  18606. description: The required Secret field containing a Kubernetes
  18607. ServiceAccount JWT used for authenticating with Vault.
  18608. Use of 'ambient credentials' is not supported.
  18609. properties:
  18610. key:
  18611. description: The key of the entry in the Secret resource's
  18612. `data` field to be used. Some instances of this
  18613. field may be defaulted, in others it may be required.
  18614. type: string
  18615. name:
  18616. description: 'Name of the resource being referred
  18617. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18618. type: string
  18619. required:
  18620. - name
  18621. type: object
  18622. required:
  18623. - role
  18624. - secretRef
  18625. type: object
  18626. tokenSecretRef:
  18627. description: TokenSecretRef authenticates with Vault by presenting
  18628. a token.
  18629. properties:
  18630. key:
  18631. description: The key of the entry in the Secret resource's
  18632. `data` field to be used. Some instances of this field
  18633. may be defaulted, in others it may be required.
  18634. type: string
  18635. name:
  18636. description: 'Name of the resource being referred to.
  18637. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18638. type: string
  18639. required:
  18640. - name
  18641. type: object
  18642. type: object
  18643. caBundle:
  18644. description: PEM encoded CA bundle used to validate Vault server
  18645. certificate. Only used if the Server URL is using HTTPS protocol.
  18646. This parameter is ignored for plain HTTP protocol connection.
  18647. If not set the system root certificates are used to validate
  18648. the TLS connection.
  18649. format: byte
  18650. type: string
  18651. namespace:
  18652. description: 'Name of the vault namespace. Namespaces is a set
  18653. of features within Vault Enterprise that allows Vault environments
  18654. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  18655. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  18656. type: string
  18657. path:
  18658. description: 'Path is the mount path of the Vault PKI backend''s
  18659. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  18660. type: string
  18661. server:
  18662. description: 'Server is the connection address for the Vault server,
  18663. e.g: "https://vault.example.com:8200".'
  18664. type: string
  18665. required:
  18666. - auth
  18667. - path
  18668. - server
  18669. type: object
  18670. venafi:
  18671. description: Venafi configures this issuer to sign certificates using
  18672. a Venafi TPP or Venafi Cloud policy zone.
  18673. properties:
  18674. cloud:
  18675. description: Cloud specifies the Venafi cloud configuration settings.
  18676. Only one of TPP or Cloud may be specified.
  18677. properties:
  18678. apiTokenSecretRef:
  18679. description: APITokenSecretRef is a secret key selector for
  18680. the Venafi Cloud API token.
  18681. properties:
  18682. key:
  18683. description: The key of the entry in the Secret resource's
  18684. `data` field to be used. Some instances of this field
  18685. may be defaulted, in others it may be required.
  18686. type: string
  18687. name:
  18688. description: 'Name of the resource being referred to.
  18689. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18690. type: string
  18691. required:
  18692. - name
  18693. type: object
  18694. url:
  18695. description: URL is the base URL for Venafi Cloud. Defaults
  18696. to "https://api.venafi.cloud/v1".
  18697. type: string
  18698. required:
  18699. - apiTokenSecretRef
  18700. type: object
  18701. tpp:
  18702. description: TPP specifies Trust Protection Platform configuration
  18703. settings. Only one of TPP or Cloud may be specified.
  18704. properties:
  18705. caBundle:
  18706. description: CABundle is a PEM encoded TLS certificate to
  18707. use to verify connections to the TPP instance. If specified,
  18708. system roots will not be used and the issuing CA for the
  18709. TPP instance must be verifiable using the provided root.
  18710. If not specified, the connection will be verified using
  18711. the cert-manager system root certificates.
  18712. format: byte
  18713. type: string
  18714. credentialsRef:
  18715. description: CredentialsRef is a reference to a Secret containing
  18716. the username and password for the TPP server. The secret
  18717. must contain two keys, 'username' and 'password'.
  18718. properties:
  18719. name:
  18720. description: 'Name of the resource being referred to.
  18721. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18722. type: string
  18723. required:
  18724. - name
  18725. type: object
  18726. url:
  18727. description: 'URL is the base URL for the vedsdk endpoint
  18728. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  18729. type: string
  18730. required:
  18731. - credentialsRef
  18732. - url
  18733. type: object
  18734. zone:
  18735. description: Zone is the Venafi Policy Zone to use for this issuer.
  18736. All requests made to the Venafi platform will be restricted
  18737. by the named zone policy. This field is required.
  18738. type: string
  18739. required:
  18740. - zone
  18741. type: object
  18742. type: object
  18743. status:
  18744. description: Status of the Issuer. This is set and managed automatically.
  18745. properties:
  18746. acme:
  18747. description: ACME specific status options. This field should only
  18748. be set if the Issuer is configured to use an ACME server to issue
  18749. certificates.
  18750. properties:
  18751. lastRegisteredEmail:
  18752. description: LastRegisteredEmail is the email associated with
  18753. the latest registered ACME account, in order to track changes
  18754. made to registered account associated with the Issuer
  18755. type: string
  18756. uri:
  18757. description: URI is the unique account identifier, which can also
  18758. be used to retrieve account details from the CA
  18759. type: string
  18760. type: object
  18761. conditions:
  18762. description: List of status conditions to indicate the status of a
  18763. CertificateRequest. Known condition types are `Ready`.
  18764. items:
  18765. description: IssuerCondition contains condition information for
  18766. an Issuer.
  18767. properties:
  18768. lastTransitionTime:
  18769. description: LastTransitionTime is the timestamp corresponding
  18770. to the last status change of this condition.
  18771. format: date-time
  18772. type: string
  18773. message:
  18774. description: Message is a human readable description of the
  18775. details of the last transition, complementing reason.
  18776. type: string
  18777. observedGeneration:
  18778. description: If set, this represents the .metadata.generation
  18779. that the condition was set based upon. For instance, if .metadata.generation
  18780. is currently 12, but the .status.condition[x].observedGeneration
  18781. is 9, the condition is out of date with respect to the current
  18782. state of the Issuer.
  18783. format: int64
  18784. type: integer
  18785. reason:
  18786. description: Reason is a brief machine readable explanation
  18787. for the condition's last transition.
  18788. type: string
  18789. status:
  18790. description: Status of the condition, one of (`True`, `False`,
  18791. `Unknown`).
  18792. enum:
  18793. - "True"
  18794. - "False"
  18795. - Unknown
  18796. type: string
  18797. type:
  18798. description: Type of the condition, known values are (`Ready`).
  18799. type: string
  18800. required:
  18801. - status
  18802. - type
  18803. type: object
  18804. type: array
  18805. type: object
  18806. type: object
  18807. served: true
  18808. storage: false
  18809. subresources:
  18810. status: {}
  18811. - additionalPrinterColumns:
  18812. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  18813. name: Ready
  18814. type: string
  18815. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  18816. name: Status
  18817. priority: 1
  18818. type: string
  18819. - description: CreationTimestamp is a timestamp representing the server time when
  18820. this object was created. It is not guaranteed to be set in happens-before
  18821. order across separate operations. Clients may not set this value. It is represented
  18822. in RFC3339 form and is in UTC.
  18823. jsonPath: .metadata.creationTimestamp
  18824. name: Age
  18825. type: date
  18826. name: v1alpha3
  18827. schema:
  18828. openAPIV3Schema:
  18829. description: An Issuer represents a certificate issuing authority which can
  18830. be referenced as part of `issuerRef` fields. It is scoped to a single namespace
  18831. and can therefore only be referenced by resources within the same namespace.
  18832. properties:
  18833. apiVersion:
  18834. description: 'APIVersion defines the versioned schema of this representation
  18835. of an object. Servers should convert recognized schemas to the latest
  18836. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  18837. type: string
  18838. kind:
  18839. description: 'Kind is a string value representing the REST resource this
  18840. object represents. Servers may infer this from the endpoint the client
  18841. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  18842. type: string
  18843. metadata:
  18844. type: object
  18845. spec:
  18846. description: Desired state of the Issuer resource.
  18847. properties:
  18848. acme:
  18849. description: ACME configures this issuer to communicate with a RFC8555
  18850. (ACME) server to obtain signed x509 certificates.
  18851. properties:
  18852. disableAccountKeyGeneration:
  18853. description: Enables or disables generating a new ACME account
  18854. key. If true, the Issuer resource will *not* request a new account
  18855. but will expect the account key to be supplied via an existing
  18856. secret. If false, the cert-manager system will generate a new
  18857. ACME account key for the Issuer. Defaults to false.
  18858. type: boolean
  18859. email:
  18860. description: Email is the email address to be associated with
  18861. the ACME account. This field is optional, but it is strongly
  18862. recommended to be set. It will be used to contact you in case
  18863. of issues with your account or certificates, including expiry
  18864. notification emails. This field may be updated after the account
  18865. is initially registered.
  18866. type: string
  18867. enableDurationFeature:
  18868. description: Enables requesting a Not After date on certificates
  18869. that matches the duration of the certificate. This is not supported
  18870. by all ACME servers like Let's Encrypt. If set to true when
  18871. the ACME server does not support it it will create an error
  18872. on the Order. Defaults to false.
  18873. type: boolean
  18874. externalAccountBinding:
  18875. description: ExternalAccountBinding is a reference to a CA external
  18876. account of the ACME server. If set, upon registration cert-manager
  18877. will attempt to associate the given external account credentials
  18878. with the registered ACME account.
  18879. properties:
  18880. keyAlgorithm:
  18881. description: keyAlgorithm is the MAC key algorithm that the
  18882. key is used for. Valid values are "HS256", "HS384" and "HS512".
  18883. enum:
  18884. - HS256
  18885. - HS384
  18886. - HS512
  18887. type: string
  18888. keyID:
  18889. description: keyID is the ID of the CA key that the External
  18890. Account is bound to.
  18891. type: string
  18892. keySecretRef:
  18893. description: keySecretRef is a Secret Key Selector referencing
  18894. a data item in a Kubernetes Secret which holds the symmetric
  18895. MAC key of the External Account Binding. The `key` is the
  18896. index string that is paired with the key data in the Secret
  18897. and should not be confused with the key data itself, or
  18898. indeed with the External Account Binding keyID above. The
  18899. secret key stored in the Secret **must** be un-padded, base64
  18900. URL encoded data.
  18901. properties:
  18902. key:
  18903. description: The key of the entry in the Secret resource's
  18904. `data` field to be used. Some instances of this field
  18905. may be defaulted, in others it may be required.
  18906. type: string
  18907. name:
  18908. description: 'Name of the resource being referred to.
  18909. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18910. type: string
  18911. required:
  18912. - name
  18913. type: object
  18914. required:
  18915. - keyAlgorithm
  18916. - keyID
  18917. - keySecretRef
  18918. type: object
  18919. preferredChain:
  18920. description: 'PreferredChain is the chain to use if the ACME server
  18921. outputs multiple. PreferredChain is no guarantee that this one
  18922. gets delivered by the ACME endpoint. For example, for Let''s
  18923. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  18924. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  18925. picks the first certificate bundle in the ACME alternative chains
  18926. that has a certificate with this value as its issuer''s CN'
  18927. maxLength: 64
  18928. type: string
  18929. privateKeySecretRef:
  18930. description: PrivateKey is the name of a Kubernetes Secret resource
  18931. that will be used to store the automatically generated ACME
  18932. account private key. Optionally, a `key` may be specified to
  18933. select a specific entry within the named Secret resource. If
  18934. `key` is not specified, a default of `tls.key` will be used.
  18935. properties:
  18936. key:
  18937. description: The key of the entry in the Secret resource's
  18938. `data` field to be used. Some instances of this field may
  18939. be defaulted, in others it may be required.
  18940. type: string
  18941. name:
  18942. description: 'Name of the resource being referred to. More
  18943. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18944. type: string
  18945. required:
  18946. - name
  18947. type: object
  18948. server:
  18949. description: 'Server is the URL used to access the ACME server''s
  18950. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  18951. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  18952. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  18953. type: string
  18954. skipTLSVerify:
  18955. description: Enables or disables validation of the ACME server
  18956. TLS certificate. If true, requests to the ACME server will not
  18957. have their TLS certificate validated (i.e. insecure connections
  18958. will be allowed). Only enable this option in development environments.
  18959. The cert-manager system installed roots will be used to verify
  18960. connections to the ACME server if this is false. Defaults to
  18961. false.
  18962. type: boolean
  18963. solvers:
  18964. description: 'Solvers is a list of challenge solvers that will
  18965. be used to solve ACME challenges for the matching domains. Solver
  18966. configurations must be provided in order to obtain certificates
  18967. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  18968. items:
  18969. description: Configures an issuer to solve challenges using
  18970. the specified options. Only one of HTTP01 or DNS01 may be
  18971. provided.
  18972. properties:
  18973. dns01:
  18974. description: Configures cert-manager to attempt to complete
  18975. authorizations by performing the DNS01 challenge flow.
  18976. properties:
  18977. acmedns:
  18978. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  18979. API to manage DNS01 challenge records.
  18980. properties:
  18981. accountSecretRef:
  18982. description: A reference to a specific 'key' within
  18983. a Secret resource. In some instances, `key` is
  18984. a required field.
  18985. properties:
  18986. key:
  18987. description: The key of the entry in the Secret
  18988. resource's `data` field to be used. Some instances
  18989. of this field may be defaulted, in others
  18990. it may be required.
  18991. type: string
  18992. name:
  18993. description: 'Name of the resource being referred
  18994. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  18995. type: string
  18996. required:
  18997. - name
  18998. type: object
  18999. host:
  19000. type: string
  19001. required:
  19002. - accountSecretRef
  19003. - host
  19004. type: object
  19005. akamai:
  19006. description: Use the Akamai DNS zone management API
  19007. to manage DNS01 challenge records.
  19008. properties:
  19009. accessTokenSecretRef:
  19010. description: A reference to a specific 'key' within
  19011. a Secret resource. In some instances, `key` is
  19012. a required field.
  19013. properties:
  19014. key:
  19015. description: The key of the entry in the Secret
  19016. resource's `data` field to be used. Some instances
  19017. of this field may be defaulted, in others
  19018. it may be required.
  19019. type: string
  19020. name:
  19021. description: 'Name of the resource being referred
  19022. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19023. type: string
  19024. required:
  19025. - name
  19026. type: object
  19027. clientSecretSecretRef:
  19028. description: A reference to a specific 'key' within
  19029. a Secret resource. In some instances, `key` is
  19030. a required field.
  19031. properties:
  19032. key:
  19033. description: The key of the entry in the Secret
  19034. resource's `data` field to be used. Some instances
  19035. of this field may be defaulted, in others
  19036. it may be required.
  19037. type: string
  19038. name:
  19039. description: 'Name of the resource being referred
  19040. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19041. type: string
  19042. required:
  19043. - name
  19044. type: object
  19045. clientTokenSecretRef:
  19046. description: A reference to a specific 'key' within
  19047. a Secret resource. In some instances, `key` is
  19048. a required field.
  19049. properties:
  19050. key:
  19051. description: The key of the entry in the Secret
  19052. resource's `data` field to be used. Some instances
  19053. of this field may be defaulted, in others
  19054. it may be required.
  19055. type: string
  19056. name:
  19057. description: 'Name of the resource being referred
  19058. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19059. type: string
  19060. required:
  19061. - name
  19062. type: object
  19063. serviceConsumerDomain:
  19064. type: string
  19065. required:
  19066. - accessTokenSecretRef
  19067. - clientSecretSecretRef
  19068. - clientTokenSecretRef
  19069. - serviceConsumerDomain
  19070. type: object
  19071. azuredns:
  19072. description: Use the Microsoft Azure DNS API to manage
  19073. DNS01 challenge records.
  19074. properties:
  19075. clientID:
  19076. description: if both this and ClientSecret are left
  19077. unset MSI will be used
  19078. type: string
  19079. clientSecretSecretRef:
  19080. description: if both this and ClientID are left
  19081. unset MSI will be used
  19082. properties:
  19083. key:
  19084. description: The key of the entry in the Secret
  19085. resource's `data` field to be used. Some instances
  19086. of this field may be defaulted, in others
  19087. it may be required.
  19088. type: string
  19089. name:
  19090. description: 'Name of the resource being referred
  19091. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19092. type: string
  19093. required:
  19094. - name
  19095. type: object
  19096. environment:
  19097. enum:
  19098. - AzurePublicCloud
  19099. - AzureChinaCloud
  19100. - AzureGermanCloud
  19101. - AzureUSGovernmentCloud
  19102. type: string
  19103. hostedZoneName:
  19104. type: string
  19105. resourceGroupName:
  19106. type: string
  19107. subscriptionID:
  19108. type: string
  19109. tenantID:
  19110. description: when specifying ClientID and ClientSecret
  19111. then this field is also needed
  19112. type: string
  19113. required:
  19114. - resourceGroupName
  19115. - subscriptionID
  19116. type: object
  19117. clouddns:
  19118. description: Use the Google Cloud DNS API to manage
  19119. DNS01 challenge records.
  19120. properties:
  19121. hostedZoneName:
  19122. description: HostedZoneName is an optional field
  19123. that tells cert-manager in which Cloud DNS zone
  19124. the challenge record has to be created. If left
  19125. empty cert-manager will automatically choose a
  19126. zone.
  19127. type: string
  19128. project:
  19129. type: string
  19130. serviceAccountSecretRef:
  19131. description: A reference to a specific 'key' within
  19132. a Secret resource. In some instances, `key` is
  19133. a required field.
  19134. properties:
  19135. key:
  19136. description: The key of the entry in the Secret
  19137. resource's `data` field to be used. Some instances
  19138. of this field may be defaulted, in others
  19139. it may be required.
  19140. type: string
  19141. name:
  19142. description: 'Name of the resource being referred
  19143. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19144. type: string
  19145. required:
  19146. - name
  19147. type: object
  19148. required:
  19149. - project
  19150. type: object
  19151. cloudflare:
  19152. description: Use the Cloudflare API to manage DNS01
  19153. challenge records.
  19154. properties:
  19155. apiKeySecretRef:
  19156. description: 'API key to use to authenticate with
  19157. Cloudflare. Note: using an API token to authenticate
  19158. is now the recommended method as it allows greater
  19159. control of permissions.'
  19160. properties:
  19161. key:
  19162. description: The key of the entry in the Secret
  19163. resource's `data` field to be used. Some instances
  19164. of this field may be defaulted, in others
  19165. it may be required.
  19166. type: string
  19167. name:
  19168. description: 'Name of the resource being referred
  19169. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19170. type: string
  19171. required:
  19172. - name
  19173. type: object
  19174. apiTokenSecretRef:
  19175. description: API token used to authenticate with
  19176. Cloudflare.
  19177. properties:
  19178. key:
  19179. description: The key of the entry in the Secret
  19180. resource's `data` field to be used. Some instances
  19181. of this field may be defaulted, in others
  19182. it may be required.
  19183. type: string
  19184. name:
  19185. description: 'Name of the resource being referred
  19186. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19187. type: string
  19188. required:
  19189. - name
  19190. type: object
  19191. email:
  19192. description: Email of the account, only required
  19193. when using API key based authentication.
  19194. type: string
  19195. type: object
  19196. cnameStrategy:
  19197. description: CNAMEStrategy configures how the DNS01
  19198. provider should handle CNAME records when found in
  19199. DNS zones.
  19200. enum:
  19201. - None
  19202. - Follow
  19203. type: string
  19204. digitalocean:
  19205. description: Use the DigitalOcean DNS API to manage
  19206. DNS01 challenge records.
  19207. properties:
  19208. tokenSecretRef:
  19209. description: A reference to a specific 'key' within
  19210. a Secret resource. In some instances, `key` is
  19211. a required field.
  19212. properties:
  19213. key:
  19214. description: The key of the entry in the Secret
  19215. resource's `data` field to be used. Some instances
  19216. of this field may be defaulted, in others
  19217. it may be required.
  19218. type: string
  19219. name:
  19220. description: 'Name of the resource being referred
  19221. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19222. type: string
  19223. required:
  19224. - name
  19225. type: object
  19226. required:
  19227. - tokenSecretRef
  19228. type: object
  19229. rfc2136:
  19230. description: Use RFC2136 ("Dynamic Updates in the Domain
  19231. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  19232. to manage DNS01 challenge records.
  19233. properties:
  19234. nameserver:
  19235. description: The IP address or hostname of an authoritative
  19236. DNS server supporting RFC2136 in the form host:port.
  19237. If the host is an IPv6 address it must be enclosed
  19238. in square brackets (e.g [2001:db8::1]) ; port
  19239. is optional. This field is required.
  19240. type: string
  19241. tsigAlgorithm:
  19242. description: 'The TSIG Algorithm configured in the
  19243. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  19244. and ``tsigKeyName`` are defined. Supported values
  19245. are (case-insensitive): ``HMACMD5`` (default),
  19246. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  19247. type: string
  19248. tsigKeyName:
  19249. description: The TSIG Key name configured in the
  19250. DNS. If ``tsigSecretSecretRef`` is defined, this
  19251. field is required.
  19252. type: string
  19253. tsigSecretSecretRef:
  19254. description: The name of the secret containing the
  19255. TSIG value. If ``tsigKeyName`` is defined, this
  19256. field is required.
  19257. properties:
  19258. key:
  19259. description: The key of the entry in the Secret
  19260. resource's `data` field to be used. Some instances
  19261. of this field may be defaulted, in others
  19262. it may be required.
  19263. type: string
  19264. name:
  19265. description: 'Name of the resource being referred
  19266. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19267. type: string
  19268. required:
  19269. - name
  19270. type: object
  19271. required:
  19272. - nameserver
  19273. type: object
  19274. route53:
  19275. description: Use the AWS Route53 API to manage DNS01
  19276. challenge records.
  19277. properties:
  19278. accessKeyID:
  19279. description: 'The AccessKeyID is used for authentication.
  19280. If not set we fall-back to using env vars, shared
  19281. credentials file or AWS Instance metadata see:
  19282. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  19283. type: string
  19284. hostedZoneID:
  19285. description: If set, the provider will manage only
  19286. this zone in Route53 and will not do an lookup
  19287. using the route53:ListHostedZonesByName api call.
  19288. type: string
  19289. region:
  19290. description: Always set the region when using AccessKeyID
  19291. and SecretAccessKey
  19292. type: string
  19293. role:
  19294. description: Role is a Role ARN which the Route53
  19295. provider will assume using either the explicit
  19296. credentials AccessKeyID/SecretAccessKey or the
  19297. inferred credentials from environment variables,
  19298. shared credentials file or AWS Instance metadata
  19299. type: string
  19300. secretAccessKeySecretRef:
  19301. description: The SecretAccessKey is used for authentication.
  19302. If not set we fall-back to using env vars, shared
  19303. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  19304. properties:
  19305. key:
  19306. description: The key of the entry in the Secret
  19307. resource's `data` field to be used. Some instances
  19308. of this field may be defaulted, in others
  19309. it may be required.
  19310. type: string
  19311. name:
  19312. description: 'Name of the resource being referred
  19313. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  19314. type: string
  19315. required:
  19316. - name
  19317. type: object
  19318. required:
  19319. - region
  19320. type: object
  19321. webhook:
  19322. description: Configure an external webhook based DNS01
  19323. challenge solver to manage DNS01 challenge records.
  19324. properties:
  19325. config:
  19326. description: Additional configuration that should
  19327. be passed to the webhook apiserver when challenges
  19328. are processed. This can contain arbitrary JSON
  19329. data. Secret values should not be specified in
  19330. this stanza. If secret values are needed (e.g.
  19331. credentials for a DNS service), you should use
  19332. a SecretKeySelector to reference a Secret resource.
  19333. For details on the schema of this field, consult
  19334. the webhook provider implementation's documentation.
  19335. x-kubernetes-preserve-unknown-fields: true
  19336. groupName:
  19337. description: The API group name that should be used
  19338. when POSTing ChallengePayload resources to the
  19339. webhook apiserver. This should be the same as
  19340. the GroupName specified in the webhook provider
  19341. implementation.
  19342. type: string
  19343. solverName:
  19344. description: The name of the solver to use, as defined
  19345. in the webhook provider implementation. This will
  19346. typically be the name of the provider, e.g. 'cloudflare'.
  19347. type: string
  19348. required:
  19349. - groupName
  19350. - solverName
  19351. type: object
  19352. type: object
  19353. http01:
  19354. description: Configures cert-manager to attempt to complete
  19355. authorizations by performing the HTTP01 challenge flow.
  19356. It is not possible to obtain certificates for wildcard
  19357. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  19358. mechanism.
  19359. properties:
  19360. ingress:
  19361. description: The ingress based HTTP01 challenge solver
  19362. will solve challenges by creating or modifying Ingress
  19363. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  19364. to 'challenge solver' pods that are provisioned by
  19365. cert-manager for each Challenge to be completed.
  19366. properties:
  19367. class:
  19368. description: The ingress class to use when creating
  19369. Ingress resources to solve ACME challenges that
  19370. use this challenge solver. Only one of 'class'
  19371. or 'name' may be specified.
  19372. type: string
  19373. ingressTemplate:
  19374. description: Optional ingress template used to configure
  19375. the ACME challenge solver ingress used for HTTP01
  19376. challenges
  19377. properties:
  19378. metadata:
  19379. description: ObjectMeta overrides for the ingress
  19380. used to solve HTTP01 challenges. Only the
  19381. 'labels' and 'annotations' fields may be set.
  19382. If labels or annotations overlap with in-built
  19383. values, the values here will override the
  19384. in-built values.
  19385. properties:
  19386. annotations:
  19387. additionalProperties:
  19388. type: string
  19389. description: Annotations that should be
  19390. added to the created ACME HTTP01 solver
  19391. ingress.
  19392. type: object
  19393. labels:
  19394. additionalProperties:
  19395. type: string
  19396. description: Labels that should be added
  19397. to the created ACME HTTP01 solver ingress.
  19398. type: object
  19399. type: object
  19400. type: object
  19401. name:
  19402. description: The name of the ingress resource that
  19403. should have ACME challenge solving routes inserted
  19404. into it in order to solve HTTP01 challenges. This
  19405. is typically used in conjunction with ingress
  19406. controllers like ingress-gce, which maintains
  19407. a 1:1 mapping between external IPs and ingress
  19408. resources.
  19409. type: string
  19410. podTemplate:
  19411. description: Optional pod template used to configure
  19412. the ACME challenge solver pods used for HTTP01
  19413. challenges
  19414. properties:
  19415. metadata:
  19416. description: ObjectMeta overrides for the pod
  19417. used to solve HTTP01 challenges. Only the
  19418. 'labels' and 'annotations' fields may be set.
  19419. If labels or annotations overlap with in-built
  19420. values, the values here will override the
  19421. in-built values.
  19422. properties:
  19423. annotations:
  19424. additionalProperties:
  19425. type: string
  19426. description: Annotations that should be
  19427. added to the create ACME HTTP01 solver
  19428. pods.
  19429. type: object
  19430. labels:
  19431. additionalProperties:
  19432. type: string
  19433. description: Labels that should be added
  19434. to the created ACME HTTP01 solver pods.
  19435. type: object
  19436. type: object
  19437. spec:
  19438. description: PodSpec defines overrides for the
  19439. HTTP01 challenge solver pod. Only the 'priorityClassName',
  19440. 'nodeSelector', 'affinity', 'serviceAccountName'
  19441. and 'tolerations' fields are supported currently.
  19442. All other fields will be ignored.
  19443. properties:
  19444. affinity:
  19445. description: If specified, the pod's scheduling
  19446. constraints
  19447. properties:
  19448. nodeAffinity:
  19449. description: Describes node affinity
  19450. scheduling rules for the pod.
  19451. properties:
  19452. preferredDuringSchedulingIgnoredDuringExecution:
  19453. description: The scheduler will
  19454. prefer to schedule pods to nodes
  19455. that satisfy the affinity expressions
  19456. specified by this field, but it
  19457. may choose a node that violates
  19458. one or more of the expressions.
  19459. The node that is most preferred
  19460. is the one with the greatest sum
  19461. of weights, i.e. for each node
  19462. that meets all of the scheduling
  19463. requirements (resource request,
  19464. requiredDuringScheduling affinity
  19465. expressions, etc.), compute a
  19466. sum by iterating through the elements
  19467. of this field and adding "weight"
  19468. to the sum if the node matches
  19469. the corresponding matchExpressions;
  19470. the node(s) with the highest sum
  19471. are the most preferred.
  19472. items:
  19473. description: An empty preferred
  19474. scheduling term matches all
  19475. objects with implicit weight
  19476. 0 (i.e. it's a no-op). A null
  19477. preferred scheduling term matches
  19478. no objects (i.e. is also a no-op).
  19479. properties:
  19480. preference:
  19481. description: A node selector
  19482. term, associated with the
  19483. corresponding weight.
  19484. properties:
  19485. matchExpressions:
  19486. description: A list of
  19487. node selector requirements
  19488. by node's labels.
  19489. items:
  19490. description: A node
  19491. selector requirement
  19492. is a selector that
  19493. contains values, a
  19494. key, and an operator
  19495. that relates the key
  19496. and values.
  19497. properties:
  19498. key:
  19499. description: The
  19500. label key that
  19501. the selector applies
  19502. to.
  19503. type: string
  19504. operator:
  19505. description: Represents
  19506. a key's relationship
  19507. to a set of values.
  19508. Valid operators
  19509. are In, NotIn,
  19510. Exists, DoesNotExist.
  19511. Gt, and Lt.
  19512. type: string
  19513. values:
  19514. description: An
  19515. array of string
  19516. values. If the
  19517. operator is In
  19518. or NotIn, the
  19519. values array must
  19520. be non-empty.
  19521. If the operator
  19522. is Exists or DoesNotExist,
  19523. the values array
  19524. must be empty.
  19525. If the operator
  19526. is Gt or Lt, the
  19527. values array must
  19528. have a single
  19529. element, which
  19530. will be interpreted
  19531. as an integer.
  19532. This array is
  19533. replaced during
  19534. a strategic merge
  19535. patch.
  19536. items:
  19537. type: string
  19538. type: array
  19539. required:
  19540. - key
  19541. - operator
  19542. type: object
  19543. type: array
  19544. matchFields:
  19545. description: A list of
  19546. node selector requirements
  19547. by node's fields.
  19548. items:
  19549. description: A node
  19550. selector requirement
  19551. is a selector that
  19552. contains values, a
  19553. key, and an operator
  19554. that relates the key
  19555. and values.
  19556. properties:
  19557. key:
  19558. description: The
  19559. label key that
  19560. the selector applies
  19561. to.
  19562. type: string
  19563. operator:
  19564. description: Represents
  19565. a key's relationship
  19566. to a set of values.
  19567. Valid operators
  19568. are In, NotIn,
  19569. Exists, DoesNotExist.
  19570. Gt, and Lt.
  19571. type: string
  19572. values:
  19573. description: An
  19574. array of string
  19575. values. If the
  19576. operator is In
  19577. or NotIn, the
  19578. values array must
  19579. be non-empty.
  19580. If the operator
  19581. is Exists or DoesNotExist,
  19582. the values array
  19583. must be empty.
  19584. If the operator
  19585. is Gt or Lt, the
  19586. values array must
  19587. have a single
  19588. element, which
  19589. will be interpreted
  19590. as an integer.
  19591. This array is
  19592. replaced during
  19593. a strategic merge
  19594. patch.
  19595. items:
  19596. type: string
  19597. type: array
  19598. required:
  19599. - key
  19600. - operator
  19601. type: object
  19602. type: array
  19603. type: object
  19604. weight:
  19605. description: Weight associated
  19606. with matching the corresponding
  19607. nodeSelectorTerm, in the
  19608. range 1-100.
  19609. format: int32
  19610. type: integer
  19611. required:
  19612. - preference
  19613. - weight
  19614. type: object
  19615. type: array
  19616. requiredDuringSchedulingIgnoredDuringExecution:
  19617. description: If the affinity requirements
  19618. specified by this field are not
  19619. met at scheduling time, the pod
  19620. will not be scheduled onto the
  19621. node. If the affinity requirements
  19622. specified by this field cease
  19623. to be met at some point during
  19624. pod execution (e.g. due to an
  19625. update), the system may or may
  19626. not try to eventually evict the
  19627. pod from its node.
  19628. properties:
  19629. nodeSelectorTerms:
  19630. description: Required. A list
  19631. of node selector terms. The
  19632. terms are ORed.
  19633. items:
  19634. description: A null or empty
  19635. node selector term matches
  19636. no objects. The requirements
  19637. of them are ANDed. The TopologySelectorTerm
  19638. type implements a subset
  19639. of the NodeSelectorTerm.
  19640. properties:
  19641. matchExpressions:
  19642. description: A list of
  19643. node selector requirements
  19644. by node's labels.
  19645. items:
  19646. description: A node
  19647. selector requirement
  19648. is a selector that
  19649. contains values, a
  19650. key, and an operator
  19651. that relates the key
  19652. and values.
  19653. properties:
  19654. key:
  19655. description: The
  19656. label key that
  19657. the selector applies
  19658. to.
  19659. type: string
  19660. operator:
  19661. description: Represents
  19662. a key's relationship
  19663. to a set of values.
  19664. Valid operators
  19665. are In, NotIn,
  19666. Exists, DoesNotExist.
  19667. Gt, and Lt.
  19668. type: string
  19669. values:
  19670. description: An
  19671. array of string
  19672. values. If the
  19673. operator is In
  19674. or NotIn, the
  19675. values array must
  19676. be non-empty.
  19677. If the operator
  19678. is Exists or DoesNotExist,
  19679. the values array
  19680. must be empty.
  19681. If the operator
  19682. is Gt or Lt, the
  19683. values array must
  19684. have a single
  19685. element, which
  19686. will be interpreted
  19687. as an integer.
  19688. This array is
  19689. replaced during
  19690. a strategic merge
  19691. patch.
  19692. items:
  19693. type: string
  19694. type: array
  19695. required:
  19696. - key
  19697. - operator
  19698. type: object
  19699. type: array
  19700. matchFields:
  19701. description: A list of
  19702. node selector requirements
  19703. by node's fields.
  19704. items:
  19705. description: A node
  19706. selector requirement
  19707. is a selector that
  19708. contains values, a
  19709. key, and an operator
  19710. that relates the key
  19711. and values.
  19712. properties:
  19713. key:
  19714. description: The
  19715. label key that
  19716. the selector applies
  19717. to.
  19718. type: string
  19719. operator:
  19720. description: Represents
  19721. a key's relationship
  19722. to a set of values.
  19723. Valid operators
  19724. are In, NotIn,
  19725. Exists, DoesNotExist.
  19726. Gt, and Lt.
  19727. type: string
  19728. values:
  19729. description: An
  19730. array of string
  19731. values. If the
  19732. operator is In
  19733. or NotIn, the
  19734. values array must
  19735. be non-empty.
  19736. If the operator
  19737. is Exists or DoesNotExist,
  19738. the values array
  19739. must be empty.
  19740. If the operator
  19741. is Gt or Lt, the
  19742. values array must
  19743. have a single
  19744. element, which
  19745. will be interpreted
  19746. as an integer.
  19747. This array is
  19748. replaced during
  19749. a strategic merge
  19750. patch.
  19751. items:
  19752. type: string
  19753. type: array
  19754. required:
  19755. - key
  19756. - operator
  19757. type: object
  19758. type: array
  19759. type: object
  19760. type: array
  19761. required:
  19762. - nodeSelectorTerms
  19763. type: object
  19764. type: object
  19765. podAffinity:
  19766. description: Describes pod affinity
  19767. scheduling rules (e.g. co-locate this
  19768. pod in the same node, zone, etc. as
  19769. some other pod(s)).
  19770. properties:
  19771. preferredDuringSchedulingIgnoredDuringExecution:
  19772. description: The scheduler will
  19773. prefer to schedule pods to nodes
  19774. that satisfy the affinity expressions
  19775. specified by this field, but it
  19776. may choose a node that violates
  19777. one or more of the expressions.
  19778. The node that is most preferred
  19779. is the one with the greatest sum
  19780. of weights, i.e. for each node
  19781. that meets all of the scheduling
  19782. requirements (resource request,
  19783. requiredDuringScheduling affinity
  19784. expressions, etc.), compute a
  19785. sum by iterating through the elements
  19786. of this field and adding "weight"
  19787. to the sum if the node has pods
  19788. which matches the corresponding
  19789. podAffinityTerm; the node(s) with
  19790. the highest sum are the most preferred.
  19791. items:
  19792. description: The weights of all
  19793. of the matched WeightedPodAffinityTerm
  19794. fields are added per-node to
  19795. find the most preferred node(s)
  19796. properties:
  19797. podAffinityTerm:
  19798. description: Required. A pod
  19799. affinity term, associated
  19800. with the corresponding weight.
  19801. properties:
  19802. labelSelector:
  19803. description: A label query
  19804. over a set of resources,
  19805. in this case pods.
  19806. properties:
  19807. matchExpressions:
  19808. description: matchExpressions
  19809. is a list of label
  19810. selector requirements.
  19811. The requirements
  19812. are ANDed.
  19813. items:
  19814. description: A label
  19815. selector requirement
  19816. is a selector
  19817. that contains
  19818. values, a key,
  19819. and an operator
  19820. that relates the
  19821. key and values.
  19822. properties:
  19823. key:
  19824. description: key
  19825. is the label
  19826. key that the
  19827. selector applies
  19828. to.
  19829. type: string
  19830. operator:
  19831. description: operator
  19832. represents
  19833. a key's relationship
  19834. to a set of
  19835. values. Valid
  19836. operators
  19837. are In, NotIn,
  19838. Exists and
  19839. DoesNotExist.
  19840. type: string
  19841. values:
  19842. description: values
  19843. is an array
  19844. of string
  19845. values. If
  19846. the operator
  19847. is In or NotIn,
  19848. the values
  19849. array must
  19850. be non-empty.
  19851. If the operator
  19852. is Exists
  19853. or DoesNotExist,
  19854. the values
  19855. array must
  19856. be empty.
  19857. This array
  19858. is replaced
  19859. during a strategic
  19860. merge patch.
  19861. items:
  19862. type: string
  19863. type: array
  19864. required:
  19865. - key
  19866. - operator
  19867. type: object
  19868. type: array
  19869. matchLabels:
  19870. additionalProperties:
  19871. type: string
  19872. description: matchLabels
  19873. is a map of {key,value}
  19874. pairs. A single
  19875. {key,value} in the
  19876. matchLabels map
  19877. is equivalent to
  19878. an element of matchExpressions,
  19879. whose key field
  19880. is "key", the operator
  19881. is "In", and the
  19882. values array contains
  19883. only "value". The
  19884. requirements are
  19885. ANDed.
  19886. type: object
  19887. type: object
  19888. namespaces:
  19889. description: namespaces
  19890. specifies which namespaces
  19891. the labelSelector applies
  19892. to (matches against);
  19893. null or empty list means
  19894. "this pod's namespace"
  19895. items:
  19896. type: string
  19897. type: array
  19898. topologyKey:
  19899. description: This pod
  19900. should be co-located
  19901. (affinity) or not co-located
  19902. (anti-affinity) with
  19903. the pods matching the
  19904. labelSelector in the
  19905. specified namespaces,
  19906. where co-located is
  19907. defined as running on
  19908. a node whose value of
  19909. the label with key topologyKey
  19910. matches that of any
  19911. node on which any of
  19912. the selected pods is
  19913. running. Empty topologyKey
  19914. is not allowed.
  19915. type: string
  19916. required:
  19917. - topologyKey
  19918. type: object
  19919. weight:
  19920. description: weight associated
  19921. with matching the corresponding
  19922. podAffinityTerm, in the
  19923. range 1-100.
  19924. format: int32
  19925. type: integer
  19926. required:
  19927. - podAffinityTerm
  19928. - weight
  19929. type: object
  19930. type: array
  19931. requiredDuringSchedulingIgnoredDuringExecution:
  19932. description: If the affinity requirements
  19933. specified by this field are not
  19934. met at scheduling time, the pod
  19935. will not be scheduled onto the
  19936. node. If the affinity requirements
  19937. specified by this field cease
  19938. to be met at some point during
  19939. pod execution (e.g. due to a pod
  19940. label update), the system may
  19941. or may not try to eventually evict
  19942. the pod from its node. When there
  19943. are multiple elements, the lists
  19944. of nodes corresponding to each
  19945. podAffinityTerm are intersected,
  19946. i.e. all terms must be satisfied.
  19947. items:
  19948. description: Defines a set of
  19949. pods (namely those matching
  19950. the labelSelector relative to
  19951. the given namespace(s)) that
  19952. this pod should be co-located
  19953. (affinity) or not co-located
  19954. (anti-affinity) with, where
  19955. co-located is defined as running
  19956. on a node whose value of the
  19957. label with key <topologyKey>
  19958. matches that of any node on
  19959. which a pod of the set of pods
  19960. is running
  19961. properties:
  19962. labelSelector:
  19963. description: A label query
  19964. over a set of resources,
  19965. in this case pods.
  19966. properties:
  19967. matchExpressions:
  19968. description: matchExpressions
  19969. is a list of label selector
  19970. requirements. The requirements
  19971. are ANDed.
  19972. items:
  19973. description: A label
  19974. selector requirement
  19975. is a selector that
  19976. contains values, a
  19977. key, and an operator
  19978. that relates the key
  19979. and values.
  19980. properties:
  19981. key:
  19982. description: key
  19983. is the label key
  19984. that the selector
  19985. applies to.
  19986. type: string
  19987. operator:
  19988. description: operator
  19989. represents a key's
  19990. relationship to
  19991. a set of values.
  19992. Valid operators
  19993. are In, NotIn,
  19994. Exists and DoesNotExist.
  19995. type: string
  19996. values:
  19997. description: values
  19998. is an array of
  19999. string values.
  20000. If the operator
  20001. is In or NotIn,
  20002. the values array
  20003. must be non-empty.
  20004. If the operator
  20005. is Exists or DoesNotExist,
  20006. the values array
  20007. must be empty.
  20008. This array is
  20009. replaced during
  20010. a strategic merge
  20011. patch.
  20012. items:
  20013. type: string
  20014. type: array
  20015. required:
  20016. - key
  20017. - operator
  20018. type: object
  20019. type: array
  20020. matchLabels:
  20021. additionalProperties:
  20022. type: string
  20023. description: matchLabels
  20024. is a map of {key,value}
  20025. pairs. A single {key,value}
  20026. in the matchLabels map
  20027. is equivalent to an
  20028. element of matchExpressions,
  20029. whose key field is "key",
  20030. the operator is "In",
  20031. and the values array
  20032. contains only "value".
  20033. The requirements are
  20034. ANDed.
  20035. type: object
  20036. type: object
  20037. namespaces:
  20038. description: namespaces specifies
  20039. which namespaces the labelSelector
  20040. applies to (matches against);
  20041. null or empty list means
  20042. "this pod's namespace"
  20043. items:
  20044. type: string
  20045. type: array
  20046. topologyKey:
  20047. description: This pod should
  20048. be co-located (affinity)
  20049. or not co-located (anti-affinity)
  20050. with the pods matching the
  20051. labelSelector in the specified
  20052. namespaces, where co-located
  20053. is defined as running on
  20054. a node whose value of the
  20055. label with key topologyKey
  20056. matches that of any node
  20057. on which any of the selected
  20058. pods is running. Empty topologyKey
  20059. is not allowed.
  20060. type: string
  20061. required:
  20062. - topologyKey
  20063. type: object
  20064. type: array
  20065. type: object
  20066. podAntiAffinity:
  20067. description: Describes pod anti-affinity
  20068. scheduling rules (e.g. avoid putting
  20069. this pod in the same node, zone, etc.
  20070. as some other pod(s)).
  20071. properties:
  20072. preferredDuringSchedulingIgnoredDuringExecution:
  20073. description: The scheduler will
  20074. prefer to schedule pods to nodes
  20075. that satisfy the anti-affinity
  20076. expressions specified by this
  20077. field, but it may choose a node
  20078. that violates one or more of the
  20079. expressions. The node that is
  20080. most preferred is the one with
  20081. the greatest sum of weights, i.e.
  20082. for each node that meets all of
  20083. the scheduling requirements (resource
  20084. request, requiredDuringScheduling
  20085. anti-affinity expressions, etc.),
  20086. compute a sum by iterating through
  20087. the elements of this field and
  20088. adding "weight" to the sum if
  20089. the node has pods which matches
  20090. the corresponding podAffinityTerm;
  20091. the node(s) with the highest sum
  20092. are the most preferred.
  20093. items:
  20094. description: The weights of all
  20095. of the matched WeightedPodAffinityTerm
  20096. fields are added per-node to
  20097. find the most preferred node(s)
  20098. properties:
  20099. podAffinityTerm:
  20100. description: Required. A pod
  20101. affinity term, associated
  20102. with the corresponding weight.
  20103. properties:
  20104. labelSelector:
  20105. description: A label query
  20106. over a set of resources,
  20107. in this case pods.
  20108. properties:
  20109. matchExpressions:
  20110. description: matchExpressions
  20111. is a list of label
  20112. selector requirements.
  20113. The requirements
  20114. are ANDed.
  20115. items:
  20116. description: A label
  20117. selector requirement
  20118. is a selector
  20119. that contains
  20120. values, a key,
  20121. and an operator
  20122. that relates the
  20123. key and values.
  20124. properties:
  20125. key:
  20126. description: key
  20127. is the label
  20128. key that the
  20129. selector applies
  20130. to.
  20131. type: string
  20132. operator:
  20133. description: operator
  20134. represents
  20135. a key's relationship
  20136. to a set of
  20137. values. Valid
  20138. operators
  20139. are In, NotIn,
  20140. Exists and
  20141. DoesNotExist.
  20142. type: string
  20143. values:
  20144. description: values
  20145. is an array
  20146. of string
  20147. values. If
  20148. the operator
  20149. is In or NotIn,
  20150. the values
  20151. array must
  20152. be non-empty.
  20153. If the operator
  20154. is Exists
  20155. or DoesNotExist,
  20156. the values
  20157. array must
  20158. be empty.
  20159. This array
  20160. is replaced
  20161. during a strategic
  20162. merge patch.
  20163. items:
  20164. type: string
  20165. type: array
  20166. required:
  20167. - key
  20168. - operator
  20169. type: object
  20170. type: array
  20171. matchLabels:
  20172. additionalProperties:
  20173. type: string
  20174. description: matchLabels
  20175. is a map of {key,value}
  20176. pairs. A single
  20177. {key,value} in the
  20178. matchLabels map
  20179. is equivalent to
  20180. an element of matchExpressions,
  20181. whose key field
  20182. is "key", the operator
  20183. is "In", and the
  20184. values array contains
  20185. only "value". The
  20186. requirements are
  20187. ANDed.
  20188. type: object
  20189. type: object
  20190. namespaces:
  20191. description: namespaces
  20192. specifies which namespaces
  20193. the labelSelector applies
  20194. to (matches against);
  20195. null or empty list means
  20196. "this pod's namespace"
  20197. items:
  20198. type: string
  20199. type: array
  20200. topologyKey:
  20201. description: This pod
  20202. should be co-located
  20203. (affinity) or not co-located
  20204. (anti-affinity) with
  20205. the pods matching the
  20206. labelSelector in the
  20207. specified namespaces,
  20208. where co-located is
  20209. defined as running on
  20210. a node whose value of
  20211. the label with key topologyKey
  20212. matches that of any
  20213. node on which any of
  20214. the selected pods is
  20215. running. Empty topologyKey
  20216. is not allowed.
  20217. type: string
  20218. required:
  20219. - topologyKey
  20220. type: object
  20221. weight:
  20222. description: weight associated
  20223. with matching the corresponding
  20224. podAffinityTerm, in the
  20225. range 1-100.
  20226. format: int32
  20227. type: integer
  20228. required:
  20229. - podAffinityTerm
  20230. - weight
  20231. type: object
  20232. type: array
  20233. requiredDuringSchedulingIgnoredDuringExecution:
  20234. description: If the anti-affinity
  20235. requirements specified by this
  20236. field are not met at scheduling
  20237. time, the pod will not be scheduled
  20238. onto the node. If the anti-affinity
  20239. requirements specified by this
  20240. field cease to be met at some
  20241. point during pod execution (e.g.
  20242. due to a pod label update), the
  20243. system may or may not try to eventually
  20244. evict the pod from its node. When
  20245. there are multiple elements, the
  20246. lists of nodes corresponding to
  20247. each podAffinityTerm are intersected,
  20248. i.e. all terms must be satisfied.
  20249. items:
  20250. description: Defines a set of
  20251. pods (namely those matching
  20252. the labelSelector relative to
  20253. the given namespace(s)) that
  20254. this pod should be co-located
  20255. (affinity) or not co-located
  20256. (anti-affinity) with, where
  20257. co-located is defined as running
  20258. on a node whose value of the
  20259. label with key <topologyKey>
  20260. matches that of any node on
  20261. which a pod of the set of pods
  20262. is running
  20263. properties:
  20264. labelSelector:
  20265. description: A label query
  20266. over a set of resources,
  20267. in this case pods.
  20268. properties:
  20269. matchExpressions:
  20270. description: matchExpressions
  20271. is a list of label selector
  20272. requirements. The requirements
  20273. are ANDed.
  20274. items:
  20275. description: A label
  20276. selector requirement
  20277. is a selector that
  20278. contains values, a
  20279. key, and an operator
  20280. that relates the key
  20281. and values.
  20282. properties:
  20283. key:
  20284. description: key
  20285. is the label key
  20286. that the selector
  20287. applies to.
  20288. type: string
  20289. operator:
  20290. description: operator
  20291. represents a key's
  20292. relationship to
  20293. a set of values.
  20294. Valid operators
  20295. are In, NotIn,
  20296. Exists and DoesNotExist.
  20297. type: string
  20298. values:
  20299. description: values
  20300. is an array of
  20301. string values.
  20302. If the operator
  20303. is In or NotIn,
  20304. the values array
  20305. must be non-empty.
  20306. If the operator
  20307. is Exists or DoesNotExist,
  20308. the values array
  20309. must be empty.
  20310. This array is
  20311. replaced during
  20312. a strategic merge
  20313. patch.
  20314. items:
  20315. type: string
  20316. type: array
  20317. required:
  20318. - key
  20319. - operator
  20320. type: object
  20321. type: array
  20322. matchLabels:
  20323. additionalProperties:
  20324. type: string
  20325. description: matchLabels
  20326. is a map of {key,value}
  20327. pairs. A single {key,value}
  20328. in the matchLabels map
  20329. is equivalent to an
  20330. element of matchExpressions,
  20331. whose key field is "key",
  20332. the operator is "In",
  20333. and the values array
  20334. contains only "value".
  20335. The requirements are
  20336. ANDed.
  20337. type: object
  20338. type: object
  20339. namespaces:
  20340. description: namespaces specifies
  20341. which namespaces the labelSelector
  20342. applies to (matches against);
  20343. null or empty list means
  20344. "this pod's namespace"
  20345. items:
  20346. type: string
  20347. type: array
  20348. topologyKey:
  20349. description: This pod should
  20350. be co-located (affinity)
  20351. or not co-located (anti-affinity)
  20352. with the pods matching the
  20353. labelSelector in the specified
  20354. namespaces, where co-located
  20355. is defined as running on
  20356. a node whose value of the
  20357. label with key topologyKey
  20358. matches that of any node
  20359. on which any of the selected
  20360. pods is running. Empty topologyKey
  20361. is not allowed.
  20362. type: string
  20363. required:
  20364. - topologyKey
  20365. type: object
  20366. type: array
  20367. type: object
  20368. type: object
  20369. nodeSelector:
  20370. additionalProperties:
  20371. type: string
  20372. description: 'NodeSelector is a selector
  20373. which must be true for the pod to fit
  20374. on a node. Selector which must match a
  20375. node''s labels for the pod to be scheduled
  20376. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  20377. type: object
  20378. priorityClassName:
  20379. description: If specified, the pod's priorityClassName.
  20380. type: string
  20381. serviceAccountName:
  20382. description: If specified, the pod's service
  20383. account
  20384. type: string
  20385. tolerations:
  20386. description: If specified, the pod's tolerations.
  20387. items:
  20388. description: The pod this Toleration is
  20389. attached to tolerates any taint that
  20390. matches the triple <key,value,effect>
  20391. using the matching operator <operator>.
  20392. properties:
  20393. effect:
  20394. description: Effect indicates the
  20395. taint effect to match. Empty means
  20396. match all taint effects. When specified,
  20397. allowed values are NoSchedule, PreferNoSchedule
  20398. and NoExecute.
  20399. type: string
  20400. key:
  20401. description: Key is the taint key
  20402. that the toleration applies to.
  20403. Empty means match all taint keys.
  20404. If the key is empty, operator must
  20405. be Exists; this combination means
  20406. to match all values and all keys.
  20407. type: string
  20408. operator:
  20409. description: Operator represents a
  20410. key's relationship to the value.
  20411. Valid operators are Exists and Equal.
  20412. Defaults to Equal. Exists is equivalent
  20413. to wildcard for value, so that a
  20414. pod can tolerate all taints of a
  20415. particular category.
  20416. type: string
  20417. tolerationSeconds:
  20418. description: TolerationSeconds represents
  20419. the period of time the toleration
  20420. (which must be of effect NoExecute,
  20421. otherwise this field is ignored)
  20422. tolerates the taint. By default,
  20423. it is not set, which means tolerate
  20424. the taint forever (do not evict).
  20425. Zero and negative values will be
  20426. treated as 0 (evict immediately)
  20427. by the system.
  20428. format: int64
  20429. type: integer
  20430. value:
  20431. description: Value is the taint value
  20432. the toleration matches to. If the
  20433. operator is Exists, the value should
  20434. be empty, otherwise just a regular
  20435. string.
  20436. type: string
  20437. type: object
  20438. type: array
  20439. type: object
  20440. type: object
  20441. serviceType:
  20442. description: Optional service type for Kubernetes
  20443. solver service
  20444. type: string
  20445. type: object
  20446. type: object
  20447. selector:
  20448. description: Selector selects a set of DNSNames on the Certificate
  20449. resource that should be solved using this challenge solver.
  20450. If not specified, the solver will be treated as the 'default'
  20451. solver with the lowest priority, i.e. if any other solver
  20452. has a more specific match, it will be used instead.
  20453. properties:
  20454. dnsNames:
  20455. description: List of DNSNames that this solver will
  20456. be used to solve. If specified and a match is found,
  20457. a dnsNames selector will take precedence over a dnsZones
  20458. selector. If multiple solvers match with the same
  20459. dnsNames value, the solver with the most matching
  20460. labels in matchLabels will be selected. If neither
  20461. has more matches, the solver defined earlier in the
  20462. list will be selected.
  20463. items:
  20464. type: string
  20465. type: array
  20466. dnsZones:
  20467. description: List of DNSZones that this solver will
  20468. be used to solve. The most specific DNS zone match
  20469. specified here will take precedence over other DNS
  20470. zone matches, so a solver specifying sys.example.com
  20471. will be selected over one specifying example.com for
  20472. the domain www.sys.example.com. If multiple solvers
  20473. match with the same dnsZones value, the solver with
  20474. the most matching labels in matchLabels will be selected.
  20475. If neither has more matches, the solver defined earlier
  20476. in the list will be selected.
  20477. items:
  20478. type: string
  20479. type: array
  20480. matchLabels:
  20481. additionalProperties:
  20482. type: string
  20483. description: A label selector that is used to refine
  20484. the set of certificate's that this challenge solver
  20485. will apply to.
  20486. type: object
  20487. type: object
  20488. type: object
  20489. type: array
  20490. required:
  20491. - privateKeySecretRef
  20492. - server
  20493. type: object
  20494. ca:
  20495. description: CA configures this issuer to sign certificates using
  20496. a signing CA keypair stored in a Secret resource. This is used to
  20497. build internal PKIs that are managed by cert-manager.
  20498. properties:
  20499. crlDistributionPoints:
  20500. description: The CRL distribution points is an X.509 v3 certificate
  20501. extension which identifies the location of the CRL from which
  20502. the revocation of this certificate can be checked. If not set,
  20503. certificates will be issued without distribution points set.
  20504. items:
  20505. type: string
  20506. type: array
  20507. ocspServers:
  20508. description: The OCSP server list is an X.509 v3 extension that
  20509. defines a list of URLs of OCSP responders. The OCSP responders
  20510. can be queried for the revocation status of an issued certificate.
  20511. If not set, the certificate will be issued with no OCSP servers
  20512. set. For example, an OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
  20513. items:
  20514. type: string
  20515. type: array
  20516. secretName:
  20517. description: SecretName is the name of the secret used to sign
  20518. Certificates issued by this Issuer.
  20519. type: string
  20520. required:
  20521. - secretName
  20522. type: object
  20523. selfSigned:
  20524. description: SelfSigned configures this issuer to 'self sign' certificates
  20525. using the private key used to create the CertificateRequest object.
  20526. properties:
  20527. crlDistributionPoints:
  20528. description: The CRL distribution points is an X.509 v3 certificate
  20529. extension which identifies the location of the CRL from which
  20530. the revocation of this certificate can be checked. If not set
  20531. certificate will be issued without CDP. Values are strings.
  20532. items:
  20533. type: string
  20534. type: array
  20535. type: object
  20536. vault:
  20537. description: Vault configures this issuer to sign certificates using
  20538. a HashiCorp Vault PKI backend.
  20539. properties:
  20540. auth:
  20541. description: Auth configures how cert-manager authenticates with
  20542. the Vault server.
  20543. properties:
  20544. appRole:
  20545. description: AppRole authenticates with Vault using the App
  20546. Role auth mechanism, with the role and secret stored in
  20547. a Kubernetes Secret resource.
  20548. properties:
  20549. path:
  20550. description: 'Path where the App Role authentication backend
  20551. is mounted in Vault, e.g: "approle"'
  20552. type: string
  20553. roleId:
  20554. description: RoleID configured in the App Role authentication
  20555. backend when setting up the authentication backend in
  20556. Vault.
  20557. type: string
  20558. secretRef:
  20559. description: Reference to a key in a Secret that contains
  20560. the App Role secret used to authenticate with Vault.
  20561. The `key` field must be specified and denotes which
  20562. entry within the Secret resource is used as the app
  20563. role secret.
  20564. properties:
  20565. key:
  20566. description: The key of the entry in the Secret resource's
  20567. `data` field to be used. Some instances of this
  20568. field may be defaulted, in others it may be required.
  20569. type: string
  20570. name:
  20571. description: 'Name of the resource being referred
  20572. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20573. type: string
  20574. required:
  20575. - name
  20576. type: object
  20577. required:
  20578. - path
  20579. - roleId
  20580. - secretRef
  20581. type: object
  20582. kubernetes:
  20583. description: Kubernetes authenticates with Vault by passing
  20584. the ServiceAccount token stored in the named Secret resource
  20585. to the Vault server.
  20586. properties:
  20587. mountPath:
  20588. description: The Vault mountPath here is the mount path
  20589. to use when authenticating with Vault. For example,
  20590. setting a value to `/v1/auth/foo`, will use the path
  20591. `/v1/auth/foo/login` to authenticate with Vault. If
  20592. unspecified, the default value "/v1/auth/kubernetes"
  20593. will be used.
  20594. type: string
  20595. role:
  20596. description: A required field containing the Vault Role
  20597. to assume. A Role binds a Kubernetes ServiceAccount
  20598. with a set of Vault policies.
  20599. type: string
  20600. secretRef:
  20601. description: The required Secret field containing a Kubernetes
  20602. ServiceAccount JWT used for authenticating with Vault.
  20603. Use of 'ambient credentials' is not supported.
  20604. properties:
  20605. key:
  20606. description: The key of the entry in the Secret resource's
  20607. `data` field to be used. Some instances of this
  20608. field may be defaulted, in others it may be required.
  20609. type: string
  20610. name:
  20611. description: 'Name of the resource being referred
  20612. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20613. type: string
  20614. required:
  20615. - name
  20616. type: object
  20617. required:
  20618. - role
  20619. - secretRef
  20620. type: object
  20621. tokenSecretRef:
  20622. description: TokenSecretRef authenticates with Vault by presenting
  20623. a token.
  20624. properties:
  20625. key:
  20626. description: The key of the entry in the Secret resource's
  20627. `data` field to be used. Some instances of this field
  20628. may be defaulted, in others it may be required.
  20629. type: string
  20630. name:
  20631. description: 'Name of the resource being referred to.
  20632. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20633. type: string
  20634. required:
  20635. - name
  20636. type: object
  20637. type: object
  20638. caBundle:
  20639. description: PEM encoded CA bundle used to validate Vault server
  20640. certificate. Only used if the Server URL is using HTTPS protocol.
  20641. This parameter is ignored for plain HTTP protocol connection.
  20642. If not set the system root certificates are used to validate
  20643. the TLS connection.
  20644. format: byte
  20645. type: string
  20646. namespace:
  20647. description: 'Name of the vault namespace. Namespaces is a set
  20648. of features within Vault Enterprise that allows Vault environments
  20649. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  20650. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  20651. type: string
  20652. path:
  20653. description: 'Path is the mount path of the Vault PKI backend''s
  20654. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  20655. type: string
  20656. server:
  20657. description: 'Server is the connection address for the Vault server,
  20658. e.g: "https://vault.example.com:8200".'
  20659. type: string
  20660. required:
  20661. - auth
  20662. - path
  20663. - server
  20664. type: object
  20665. venafi:
  20666. description: Venafi configures this issuer to sign certificates using
  20667. a Venafi TPP or Venafi Cloud policy zone.
  20668. properties:
  20669. cloud:
  20670. description: Cloud specifies the Venafi cloud configuration settings.
  20671. Only one of TPP or Cloud may be specified.
  20672. properties:
  20673. apiTokenSecretRef:
  20674. description: APITokenSecretRef is a secret key selector for
  20675. the Venafi Cloud API token.
  20676. properties:
  20677. key:
  20678. description: The key of the entry in the Secret resource's
  20679. `data` field to be used. Some instances of this field
  20680. may be defaulted, in others it may be required.
  20681. type: string
  20682. name:
  20683. description: 'Name of the resource being referred to.
  20684. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20685. type: string
  20686. required:
  20687. - name
  20688. type: object
  20689. url:
  20690. description: URL is the base URL for Venafi Cloud. Defaults
  20691. to "https://api.venafi.cloud/v1".
  20692. type: string
  20693. required:
  20694. - apiTokenSecretRef
  20695. type: object
  20696. tpp:
  20697. description: TPP specifies Trust Protection Platform configuration
  20698. settings. Only one of TPP or Cloud may be specified.
  20699. properties:
  20700. caBundle:
  20701. description: CABundle is a PEM encoded TLS certificate to
  20702. use to verify connections to the TPP instance. If specified,
  20703. system roots will not be used and the issuing CA for the
  20704. TPP instance must be verifiable using the provided root.
  20705. If not specified, the connection will be verified using
  20706. the cert-manager system root certificates.
  20707. format: byte
  20708. type: string
  20709. credentialsRef:
  20710. description: CredentialsRef is a reference to a Secret containing
  20711. the username and password for the TPP server. The secret
  20712. must contain two keys, 'username' and 'password'.
  20713. properties:
  20714. name:
  20715. description: 'Name of the resource being referred to.
  20716. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20717. type: string
  20718. required:
  20719. - name
  20720. type: object
  20721. url:
  20722. description: 'URL is the base URL for the vedsdk endpoint
  20723. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  20724. type: string
  20725. required:
  20726. - credentialsRef
  20727. - url
  20728. type: object
  20729. zone:
  20730. description: Zone is the Venafi Policy Zone to use for this issuer.
  20731. All requests made to the Venafi platform will be restricted
  20732. by the named zone policy. This field is required.
  20733. type: string
  20734. required:
  20735. - zone
  20736. type: object
  20737. type: object
  20738. status:
  20739. description: Status of the Issuer. This is set and managed automatically.
  20740. properties:
  20741. acme:
  20742. description: ACME specific status options. This field should only
  20743. be set if the Issuer is configured to use an ACME server to issue
  20744. certificates.
  20745. properties:
  20746. lastRegisteredEmail:
  20747. description: LastRegisteredEmail is the email associated with
  20748. the latest registered ACME account, in order to track changes
  20749. made to registered account associated with the Issuer
  20750. type: string
  20751. uri:
  20752. description: URI is the unique account identifier, which can also
  20753. be used to retrieve account details from the CA
  20754. type: string
  20755. type: object
  20756. conditions:
  20757. description: List of status conditions to indicate the status of a
  20758. CertificateRequest. Known condition types are `Ready`.
  20759. items:
  20760. description: IssuerCondition contains condition information for
  20761. an Issuer.
  20762. properties:
  20763. lastTransitionTime:
  20764. description: LastTransitionTime is the timestamp corresponding
  20765. to the last status change of this condition.
  20766. format: date-time
  20767. type: string
  20768. message:
  20769. description: Message is a human readable description of the
  20770. details of the last transition, complementing reason.
  20771. type: string
  20772. observedGeneration:
  20773. description: If set, this represents the .metadata.generation
  20774. that the condition was set based upon. For instance, if .metadata.generation
  20775. is currently 12, but the .status.condition[x].observedGeneration
  20776. is 9, the condition is out of date with respect to the current
  20777. state of the Issuer.
  20778. format: int64
  20779. type: integer
  20780. reason:
  20781. description: Reason is a brief machine readable explanation
  20782. for the condition's last transition.
  20783. type: string
  20784. status:
  20785. description: Status of the condition, one of (`True`, `False`,
  20786. `Unknown`).
  20787. enum:
  20788. - "True"
  20789. - "False"
  20790. - Unknown
  20791. type: string
  20792. type:
  20793. description: Type of the condition, known values are (`Ready`).
  20794. type: string
  20795. required:
  20796. - status
  20797. - type
  20798. type: object
  20799. type: array
  20800. type: object
  20801. type: object
  20802. served: true
  20803. storage: false
  20804. subresources:
  20805. status: {}
  20806. - additionalPrinterColumns:
  20807. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  20808. name: Ready
  20809. type: string
  20810. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  20811. name: Status
  20812. priority: 1
  20813. type: string
  20814. - description: CreationTimestamp is a timestamp representing the server time when
  20815. this object was created. It is not guaranteed to be set in happens-before
  20816. order across separate operations. Clients may not set this value. It is represented
  20817. in RFC3339 form and is in UTC.
  20818. jsonPath: .metadata.creationTimestamp
  20819. name: Age
  20820. type: date
  20821. name: v1beta1
  20822. schema:
  20823. openAPIV3Schema:
  20824. description: An Issuer represents a certificate issuing authority which can
  20825. be referenced as part of `issuerRef` fields. It is scoped to a single namespace
  20826. and can therefore only be referenced by resources within the same namespace.
  20827. properties:
  20828. apiVersion:
  20829. description: 'APIVersion defines the versioned schema of this representation
  20830. of an object. Servers should convert recognized schemas to the latest
  20831. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  20832. type: string
  20833. kind:
  20834. description: 'Kind is a string value representing the REST resource this
  20835. object represents. Servers may infer this from the endpoint the client
  20836. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  20837. type: string
  20838. metadata:
  20839. type: object
  20840. spec:
  20841. description: Desired state of the Issuer resource.
  20842. properties:
  20843. acme:
  20844. description: ACME configures this issuer to communicate with a RFC8555
  20845. (ACME) server to obtain signed x509 certificates.
  20846. properties:
  20847. disableAccountKeyGeneration:
  20848. description: Enables or disables generating a new ACME account
  20849. key. If true, the Issuer resource will *not* request a new account
  20850. but will expect the account key to be supplied via an existing
  20851. secret. If false, the cert-manager system will generate a new
  20852. ACME account key for the Issuer. Defaults to false.
  20853. type: boolean
  20854. email:
  20855. description: Email is the email address to be associated with
  20856. the ACME account. This field is optional, but it is strongly
  20857. recommended to be set. It will be used to contact you in case
  20858. of issues with your account or certificates, including expiry
  20859. notification emails. This field may be updated after the account
  20860. is initially registered.
  20861. type: string
  20862. enableDurationFeature:
  20863. description: Enables requesting a Not After date on certificates
  20864. that matches the duration of the certificate. This is not supported
  20865. by all ACME servers like Let's Encrypt. If set to true when
  20866. the ACME server does not support it it will create an error
  20867. on the Order. Defaults to false.
  20868. type: boolean
  20869. externalAccountBinding:
  20870. description: ExternalAccountBinding is a reference to a CA external
  20871. account of the ACME server. If set, upon registration cert-manager
  20872. will attempt to associate the given external account credentials
  20873. with the registered ACME account.
  20874. properties:
  20875. keyAlgorithm:
  20876. description: keyAlgorithm is the MAC key algorithm that the
  20877. key is used for. Valid values are "HS256", "HS384" and "HS512".
  20878. enum:
  20879. - HS256
  20880. - HS384
  20881. - HS512
  20882. type: string
  20883. keyID:
  20884. description: keyID is the ID of the CA key that the External
  20885. Account is bound to.
  20886. type: string
  20887. keySecretRef:
  20888. description: keySecretRef is a Secret Key Selector referencing
  20889. a data item in a Kubernetes Secret which holds the symmetric
  20890. MAC key of the External Account Binding. The `key` is the
  20891. index string that is paired with the key data in the Secret
  20892. and should not be confused with the key data itself, or
  20893. indeed with the External Account Binding keyID above. The
  20894. secret key stored in the Secret **must** be un-padded, base64
  20895. URL encoded data.
  20896. properties:
  20897. key:
  20898. description: The key of the entry in the Secret resource's
  20899. `data` field to be used. Some instances of this field
  20900. may be defaulted, in others it may be required.
  20901. type: string
  20902. name:
  20903. description: 'Name of the resource being referred to.
  20904. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20905. type: string
  20906. required:
  20907. - name
  20908. type: object
  20909. required:
  20910. - keyAlgorithm
  20911. - keyID
  20912. - keySecretRef
  20913. type: object
  20914. preferredChain:
  20915. description: 'PreferredChain is the chain to use if the ACME server
  20916. outputs multiple. PreferredChain is no guarantee that this one
  20917. gets delivered by the ACME endpoint. For example, for Let''s
  20918. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  20919. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  20920. picks the first certificate bundle in the ACME alternative chains
  20921. that has a certificate with this value as its issuer''s CN'
  20922. maxLength: 64
  20923. type: string
  20924. privateKeySecretRef:
  20925. description: PrivateKey is the name of a Kubernetes Secret resource
  20926. that will be used to store the automatically generated ACME
  20927. account private key. Optionally, a `key` may be specified to
  20928. select a specific entry within the named Secret resource. If
  20929. `key` is not specified, a default of `tls.key` will be used.
  20930. properties:
  20931. key:
  20932. description: The key of the entry in the Secret resource's
  20933. `data` field to be used. Some instances of this field may
  20934. be defaulted, in others it may be required.
  20935. type: string
  20936. name:
  20937. description: 'Name of the resource being referred to. More
  20938. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20939. type: string
  20940. required:
  20941. - name
  20942. type: object
  20943. server:
  20944. description: 'Server is the URL used to access the ACME server''s
  20945. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  20946. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  20947. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  20948. type: string
  20949. skipTLSVerify:
  20950. description: Enables or disables validation of the ACME server
  20951. TLS certificate. If true, requests to the ACME server will not
  20952. have their TLS certificate validated (i.e. insecure connections
  20953. will be allowed). Only enable this option in development environments.
  20954. The cert-manager system installed roots will be used to verify
  20955. connections to the ACME server if this is false. Defaults to
  20956. false.
  20957. type: boolean
  20958. solvers:
  20959. description: 'Solvers is a list of challenge solvers that will
  20960. be used to solve ACME challenges for the matching domains. Solver
  20961. configurations must be provided in order to obtain certificates
  20962. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  20963. items:
  20964. description: Configures an issuer to solve challenges using
  20965. the specified options. Only one of HTTP01 or DNS01 may be
  20966. provided.
  20967. properties:
  20968. dns01:
  20969. description: Configures cert-manager to attempt to complete
  20970. authorizations by performing the DNS01 challenge flow.
  20971. properties:
  20972. acmeDNS:
  20973. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  20974. API to manage DNS01 challenge records.
  20975. properties:
  20976. accountSecretRef:
  20977. description: A reference to a specific 'key' within
  20978. a Secret resource. In some instances, `key` is
  20979. a required field.
  20980. properties:
  20981. key:
  20982. description: The key of the entry in the Secret
  20983. resource's `data` field to be used. Some instances
  20984. of this field may be defaulted, in others
  20985. it may be required.
  20986. type: string
  20987. name:
  20988. description: 'Name of the resource being referred
  20989. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  20990. type: string
  20991. required:
  20992. - name
  20993. type: object
  20994. host:
  20995. type: string
  20996. required:
  20997. - accountSecretRef
  20998. - host
  20999. type: object
  21000. akamai:
  21001. description: Use the Akamai DNS zone management API
  21002. to manage DNS01 challenge records.
  21003. properties:
  21004. accessTokenSecretRef:
  21005. description: A reference to a specific 'key' within
  21006. a Secret resource. In some instances, `key` is
  21007. a required field.
  21008. properties:
  21009. key:
  21010. description: The key of the entry in the Secret
  21011. resource's `data` field to be used. Some instances
  21012. of this field may be defaulted, in others
  21013. it may be required.
  21014. type: string
  21015. name:
  21016. description: 'Name of the resource being referred
  21017. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21018. type: string
  21019. required:
  21020. - name
  21021. type: object
  21022. clientSecretSecretRef:
  21023. description: A reference to a specific 'key' within
  21024. a Secret resource. In some instances, `key` is
  21025. a required field.
  21026. properties:
  21027. key:
  21028. description: The key of the entry in the Secret
  21029. resource's `data` field to be used. Some instances
  21030. of this field may be defaulted, in others
  21031. it may be required.
  21032. type: string
  21033. name:
  21034. description: 'Name of the resource being referred
  21035. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21036. type: string
  21037. required:
  21038. - name
  21039. type: object
  21040. clientTokenSecretRef:
  21041. description: A reference to a specific 'key' within
  21042. a Secret resource. In some instances, `key` is
  21043. a required field.
  21044. properties:
  21045. key:
  21046. description: The key of the entry in the Secret
  21047. resource's `data` field to be used. Some instances
  21048. of this field may be defaulted, in others
  21049. it may be required.
  21050. type: string
  21051. name:
  21052. description: 'Name of the resource being referred
  21053. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21054. type: string
  21055. required:
  21056. - name
  21057. type: object
  21058. serviceConsumerDomain:
  21059. type: string
  21060. required:
  21061. - accessTokenSecretRef
  21062. - clientSecretSecretRef
  21063. - clientTokenSecretRef
  21064. - serviceConsumerDomain
  21065. type: object
  21066. azureDNS:
  21067. description: Use the Microsoft Azure DNS API to manage
  21068. DNS01 challenge records.
  21069. properties:
  21070. clientID:
  21071. description: if both this and ClientSecret are left
  21072. unset MSI will be used
  21073. type: string
  21074. clientSecretSecretRef:
  21075. description: if both this and ClientID are left
  21076. unset MSI will be used
  21077. properties:
  21078. key:
  21079. description: The key of the entry in the Secret
  21080. resource's `data` field to be used. Some instances
  21081. of this field may be defaulted, in others
  21082. it may be required.
  21083. type: string
  21084. name:
  21085. description: 'Name of the resource being referred
  21086. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21087. type: string
  21088. required:
  21089. - name
  21090. type: object
  21091. environment:
  21092. enum:
  21093. - AzurePublicCloud
  21094. - AzureChinaCloud
  21095. - AzureGermanCloud
  21096. - AzureUSGovernmentCloud
  21097. type: string
  21098. hostedZoneName:
  21099. type: string
  21100. resourceGroupName:
  21101. type: string
  21102. subscriptionID:
  21103. type: string
  21104. tenantID:
  21105. description: when specifying ClientID and ClientSecret
  21106. then this field is also needed
  21107. type: string
  21108. required:
  21109. - resourceGroupName
  21110. - subscriptionID
  21111. type: object
  21112. cloudDNS:
  21113. description: Use the Google Cloud DNS API to manage
  21114. DNS01 challenge records.
  21115. properties:
  21116. hostedZoneName:
  21117. description: HostedZoneName is an optional field
  21118. that tells cert-manager in which Cloud DNS zone
  21119. the challenge record has to be created. If left
  21120. empty cert-manager will automatically choose a
  21121. zone.
  21122. type: string
  21123. project:
  21124. type: string
  21125. serviceAccountSecretRef:
  21126. description: A reference to a specific 'key' within
  21127. a Secret resource. In some instances, `key` is
  21128. a required field.
  21129. properties:
  21130. key:
  21131. description: The key of the entry in the Secret
  21132. resource's `data` field to be used. Some instances
  21133. of this field may be defaulted, in others
  21134. it may be required.
  21135. type: string
  21136. name:
  21137. description: 'Name of the resource being referred
  21138. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21139. type: string
  21140. required:
  21141. - name
  21142. type: object
  21143. required:
  21144. - project
  21145. type: object
  21146. cloudflare:
  21147. description: Use the Cloudflare API to manage DNS01
  21148. challenge records.
  21149. properties:
  21150. apiKeySecretRef:
  21151. description: 'API key to use to authenticate with
  21152. Cloudflare. Note: using an API token to authenticate
  21153. is now the recommended method as it allows greater
  21154. control of permissions.'
  21155. properties:
  21156. key:
  21157. description: The key of the entry in the Secret
  21158. resource's `data` field to be used. Some instances
  21159. of this field may be defaulted, in others
  21160. it may be required.
  21161. type: string
  21162. name:
  21163. description: 'Name of the resource being referred
  21164. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21165. type: string
  21166. required:
  21167. - name
  21168. type: object
  21169. apiTokenSecretRef:
  21170. description: API token used to authenticate with
  21171. Cloudflare.
  21172. properties:
  21173. key:
  21174. description: The key of the entry in the Secret
  21175. resource's `data` field to be used. Some instances
  21176. of this field may be defaulted, in others
  21177. it may be required.
  21178. type: string
  21179. name:
  21180. description: 'Name of the resource being referred
  21181. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21182. type: string
  21183. required:
  21184. - name
  21185. type: object
  21186. email:
  21187. description: Email of the account, only required
  21188. when using API key based authentication.
  21189. type: string
  21190. type: object
  21191. cnameStrategy:
  21192. description: CNAMEStrategy configures how the DNS01
  21193. provider should handle CNAME records when found in
  21194. DNS zones.
  21195. enum:
  21196. - None
  21197. - Follow
  21198. type: string
  21199. digitalocean:
  21200. description: Use the DigitalOcean DNS API to manage
  21201. DNS01 challenge records.
  21202. properties:
  21203. tokenSecretRef:
  21204. description: A reference to a specific 'key' within
  21205. a Secret resource. In some instances, `key` is
  21206. a required field.
  21207. properties:
  21208. key:
  21209. description: The key of the entry in the Secret
  21210. resource's `data` field to be used. Some instances
  21211. of this field may be defaulted, in others
  21212. it may be required.
  21213. type: string
  21214. name:
  21215. description: 'Name of the resource being referred
  21216. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21217. type: string
  21218. required:
  21219. - name
  21220. type: object
  21221. required:
  21222. - tokenSecretRef
  21223. type: object
  21224. rfc2136:
  21225. description: Use RFC2136 ("Dynamic Updates in the Domain
  21226. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  21227. to manage DNS01 challenge records.
  21228. properties:
  21229. nameserver:
  21230. description: The IP address or hostname of an authoritative
  21231. DNS server supporting RFC2136 in the form host:port.
  21232. If the host is an IPv6 address it must be enclosed
  21233. in square brackets (e.g [2001:db8::1]) ; port
  21234. is optional. This field is required.
  21235. type: string
  21236. tsigAlgorithm:
  21237. description: 'The TSIG Algorithm configured in the
  21238. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  21239. and ``tsigKeyName`` are defined. Supported values
  21240. are (case-insensitive): ``HMACMD5`` (default),
  21241. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  21242. type: string
  21243. tsigKeyName:
  21244. description: The TSIG Key name configured in the
  21245. DNS. If ``tsigSecretSecretRef`` is defined, this
  21246. field is required.
  21247. type: string
  21248. tsigSecretSecretRef:
  21249. description: The name of the secret containing the
  21250. TSIG value. If ``tsigKeyName`` is defined, this
  21251. field is required.
  21252. properties:
  21253. key:
  21254. description: The key of the entry in the Secret
  21255. resource's `data` field to be used. Some instances
  21256. of this field may be defaulted, in others
  21257. it may be required.
  21258. type: string
  21259. name:
  21260. description: 'Name of the resource being referred
  21261. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21262. type: string
  21263. required:
  21264. - name
  21265. type: object
  21266. required:
  21267. - nameserver
  21268. type: object
  21269. route53:
  21270. description: Use the AWS Route53 API to manage DNS01
  21271. challenge records.
  21272. properties:
  21273. accessKeyID:
  21274. description: 'The AccessKeyID is used for authentication.
  21275. If not set we fall-back to using env vars, shared
  21276. credentials file or AWS Instance metadata see:
  21277. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  21278. type: string
  21279. hostedZoneID:
  21280. description: If set, the provider will manage only
  21281. this zone in Route53 and will not do an lookup
  21282. using the route53:ListHostedZonesByName api call.
  21283. type: string
  21284. region:
  21285. description: Always set the region when using AccessKeyID
  21286. and SecretAccessKey
  21287. type: string
  21288. role:
  21289. description: Role is a Role ARN which the Route53
  21290. provider will assume using either the explicit
  21291. credentials AccessKeyID/SecretAccessKey or the
  21292. inferred credentials from environment variables,
  21293. shared credentials file or AWS Instance metadata
  21294. type: string
  21295. secretAccessKeySecretRef:
  21296. description: The SecretAccessKey is used for authentication.
  21297. If not set we fall-back to using env vars, shared
  21298. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  21299. properties:
  21300. key:
  21301. description: The key of the entry in the Secret
  21302. resource's `data` field to be used. Some instances
  21303. of this field may be defaulted, in others
  21304. it may be required.
  21305. type: string
  21306. name:
  21307. description: 'Name of the resource being referred
  21308. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  21309. type: string
  21310. required:
  21311. - name
  21312. type: object
  21313. required:
  21314. - region
  21315. type: object
  21316. webhook:
  21317. description: Configure an external webhook based DNS01
  21318. challenge solver to manage DNS01 challenge records.
  21319. properties:
  21320. config:
  21321. description: Additional configuration that should
  21322. be passed to the webhook apiserver when challenges
  21323. are processed. This can contain arbitrary JSON
  21324. data. Secret values should not be specified in
  21325. this stanza. If secret values are needed (e.g.
  21326. credentials for a DNS service), you should use
  21327. a SecretKeySelector to reference a Secret resource.
  21328. For details on the schema of this field, consult
  21329. the webhook provider implementation's documentation.
  21330. x-kubernetes-preserve-unknown-fields: true
  21331. groupName:
  21332. description: The API group name that should be used
  21333. when POSTing ChallengePayload resources to the
  21334. webhook apiserver. This should be the same as
  21335. the GroupName specified in the webhook provider
  21336. implementation.
  21337. type: string
  21338. solverName:
  21339. description: The name of the solver to use, as defined
  21340. in the webhook provider implementation. This will
  21341. typically be the name of the provider, e.g. 'cloudflare'.
  21342. type: string
  21343. required:
  21344. - groupName
  21345. - solverName
  21346. type: object
  21347. type: object
  21348. http01:
  21349. description: Configures cert-manager to attempt to complete
  21350. authorizations by performing the HTTP01 challenge flow.
  21351. It is not possible to obtain certificates for wildcard
  21352. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  21353. mechanism.
  21354. properties:
  21355. ingress:
  21356. description: The ingress based HTTP01 challenge solver
  21357. will solve challenges by creating or modifying Ingress
  21358. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  21359. to 'challenge solver' pods that are provisioned by
  21360. cert-manager for each Challenge to be completed.
  21361. properties:
  21362. class:
  21363. description: The ingress class to use when creating
  21364. Ingress resources to solve ACME challenges that
  21365. use this challenge solver. Only one of 'class'
  21366. or 'name' may be specified.
  21367. type: string
  21368. ingressTemplate:
  21369. description: Optional ingress template used to configure
  21370. the ACME challenge solver ingress used for HTTP01
  21371. challenges
  21372. properties:
  21373. metadata:
  21374. description: ObjectMeta overrides for the ingress
  21375. used to solve HTTP01 challenges. Only the
  21376. 'labels' and 'annotations' fields may be set.
  21377. If labels or annotations overlap with in-built
  21378. values, the values here will override the
  21379. in-built values.
  21380. properties:
  21381. annotations:
  21382. additionalProperties:
  21383. type: string
  21384. description: Annotations that should be
  21385. added to the created ACME HTTP01 solver
  21386. ingress.
  21387. type: object
  21388. labels:
  21389. additionalProperties:
  21390. type: string
  21391. description: Labels that should be added
  21392. to the created ACME HTTP01 solver ingress.
  21393. type: object
  21394. type: object
  21395. type: object
  21396. name:
  21397. description: The name of the ingress resource that
  21398. should have ACME challenge solving routes inserted
  21399. into it in order to solve HTTP01 challenges. This
  21400. is typically used in conjunction with ingress
  21401. controllers like ingress-gce, which maintains
  21402. a 1:1 mapping between external IPs and ingress
  21403. resources.
  21404. type: string
  21405. podTemplate:
  21406. description: Optional pod template used to configure
  21407. the ACME challenge solver pods used for HTTP01
  21408. challenges
  21409. properties:
  21410. metadata:
  21411. description: ObjectMeta overrides for the pod
  21412. used to solve HTTP01 challenges. Only the
  21413. 'labels' and 'annotations' fields may be set.
  21414. If labels or annotations overlap with in-built
  21415. values, the values here will override the
  21416. in-built values.
  21417. properties:
  21418. annotations:
  21419. additionalProperties:
  21420. type: string
  21421. description: Annotations that should be
  21422. added to the create ACME HTTP01 solver
  21423. pods.
  21424. type: object
  21425. labels:
  21426. additionalProperties:
  21427. type: string
  21428. description: Labels that should be added
  21429. to the created ACME HTTP01 solver pods.
  21430. type: object
  21431. type: object
  21432. spec:
  21433. description: PodSpec defines overrides for the
  21434. HTTP01 challenge solver pod. Only the 'priorityClassName',
  21435. 'nodeSelector', 'affinity', 'serviceAccountName'
  21436. and 'tolerations' fields are supported currently.
  21437. All other fields will be ignored.
  21438. properties:
  21439. affinity:
  21440. description: If specified, the pod's scheduling
  21441. constraints
  21442. properties:
  21443. nodeAffinity:
  21444. description: Describes node affinity
  21445. scheduling rules for the pod.
  21446. properties:
  21447. preferredDuringSchedulingIgnoredDuringExecution:
  21448. description: The scheduler will
  21449. prefer to schedule pods to nodes
  21450. that satisfy the affinity expressions
  21451. specified by this field, but it
  21452. may choose a node that violates
  21453. one or more of the expressions.
  21454. The node that is most preferred
  21455. is the one with the greatest sum
  21456. of weights, i.e. for each node
  21457. that meets all of the scheduling
  21458. requirements (resource request,
  21459. requiredDuringScheduling affinity
  21460. expressions, etc.), compute a
  21461. sum by iterating through the elements
  21462. of this field and adding "weight"
  21463. to the sum if the node matches
  21464. the corresponding matchExpressions;
  21465. the node(s) with the highest sum
  21466. are the most preferred.
  21467. items:
  21468. description: An empty preferred
  21469. scheduling term matches all
  21470. objects with implicit weight
  21471. 0 (i.e. it's a no-op). A null
  21472. preferred scheduling term matches
  21473. no objects (i.e. is also a no-op).
  21474. properties:
  21475. preference:
  21476. description: A node selector
  21477. term, associated with the
  21478. corresponding weight.
  21479. properties:
  21480. matchExpressions:
  21481. description: A list of
  21482. node selector requirements
  21483. by node's labels.
  21484. items:
  21485. description: A node
  21486. selector requirement
  21487. is a selector that
  21488. contains values, a
  21489. key, and an operator
  21490. that relates the key
  21491. and values.
  21492. properties:
  21493. key:
  21494. description: The
  21495. label key that
  21496. the selector applies
  21497. to.
  21498. type: string
  21499. operator:
  21500. description: Represents
  21501. a key's relationship
  21502. to a set of values.
  21503. Valid operators
  21504. are In, NotIn,
  21505. Exists, DoesNotExist.
  21506. Gt, and Lt.
  21507. type: string
  21508. values:
  21509. description: An
  21510. array of string
  21511. values. If the
  21512. operator is In
  21513. or NotIn, the
  21514. values array must
  21515. be non-empty.
  21516. If the operator
  21517. is Exists or DoesNotExist,
  21518. the values array
  21519. must be empty.
  21520. If the operator
  21521. is Gt or Lt, the
  21522. values array must
  21523. have a single
  21524. element, which
  21525. will be interpreted
  21526. as an integer.
  21527. This array is
  21528. replaced during
  21529. a strategic merge
  21530. patch.
  21531. items:
  21532. type: string
  21533. type: array
  21534. required:
  21535. - key
  21536. - operator
  21537. type: object
  21538. type: array
  21539. matchFields:
  21540. description: A list of
  21541. node selector requirements
  21542. by node's fields.
  21543. items:
  21544. description: A node
  21545. selector requirement
  21546. is a selector that
  21547. contains values, a
  21548. key, and an operator
  21549. that relates the key
  21550. and values.
  21551. properties:
  21552. key:
  21553. description: The
  21554. label key that
  21555. the selector applies
  21556. to.
  21557. type: string
  21558. operator:
  21559. description: Represents
  21560. a key's relationship
  21561. to a set of values.
  21562. Valid operators
  21563. are In, NotIn,
  21564. Exists, DoesNotExist.
  21565. Gt, and Lt.
  21566. type: string
  21567. values:
  21568. description: An
  21569. array of string
  21570. values. If the
  21571. operator is In
  21572. or NotIn, the
  21573. values array must
  21574. be non-empty.
  21575. If the operator
  21576. is Exists or DoesNotExist,
  21577. the values array
  21578. must be empty.
  21579. If the operator
  21580. is Gt or Lt, the
  21581. values array must
  21582. have a single
  21583. element, which
  21584. will be interpreted
  21585. as an integer.
  21586. This array is
  21587. replaced during
  21588. a strategic merge
  21589. patch.
  21590. items:
  21591. type: string
  21592. type: array
  21593. required:
  21594. - key
  21595. - operator
  21596. type: object
  21597. type: array
  21598. type: object
  21599. weight:
  21600. description: Weight associated
  21601. with matching the corresponding
  21602. nodeSelectorTerm, in the
  21603. range 1-100.
  21604. format: int32
  21605. type: integer
  21606. required:
  21607. - preference
  21608. - weight
  21609. type: object
  21610. type: array
  21611. requiredDuringSchedulingIgnoredDuringExecution:
  21612. description: If the affinity requirements
  21613. specified by this field are not
  21614. met at scheduling time, the pod
  21615. will not be scheduled onto the
  21616. node. If the affinity requirements
  21617. specified by this field cease
  21618. to be met at some point during
  21619. pod execution (e.g. due to an
  21620. update), the system may or may
  21621. not try to eventually evict the
  21622. pod from its node.
  21623. properties:
  21624. nodeSelectorTerms:
  21625. description: Required. A list
  21626. of node selector terms. The
  21627. terms are ORed.
  21628. items:
  21629. description: A null or empty
  21630. node selector term matches
  21631. no objects. The requirements
  21632. of them are ANDed. The TopologySelectorTerm
  21633. type implements a subset
  21634. of the NodeSelectorTerm.
  21635. properties:
  21636. matchExpressions:
  21637. description: A list of
  21638. node selector requirements
  21639. by node's labels.
  21640. items:
  21641. description: A node
  21642. selector requirement
  21643. is a selector that
  21644. contains values, a
  21645. key, and an operator
  21646. that relates the key
  21647. and values.
  21648. properties:
  21649. key:
  21650. description: The
  21651. label key that
  21652. the selector applies
  21653. to.
  21654. type: string
  21655. operator:
  21656. description: Represents
  21657. a key's relationship
  21658. to a set of values.
  21659. Valid operators
  21660. are In, NotIn,
  21661. Exists, DoesNotExist.
  21662. Gt, and Lt.
  21663. type: string
  21664. values:
  21665. description: An
  21666. array of string
  21667. values. If the
  21668. operator is In
  21669. or NotIn, the
  21670. values array must
  21671. be non-empty.
  21672. If the operator
  21673. is Exists or DoesNotExist,
  21674. the values array
  21675. must be empty.
  21676. If the operator
  21677. is Gt or Lt, the
  21678. values array must
  21679. have a single
  21680. element, which
  21681. will be interpreted
  21682. as an integer.
  21683. This array is
  21684. replaced during
  21685. a strategic merge
  21686. patch.
  21687. items:
  21688. type: string
  21689. type: array
  21690. required:
  21691. - key
  21692. - operator
  21693. type: object
  21694. type: array
  21695. matchFields:
  21696. description: A list of
  21697. node selector requirements
  21698. by node's fields.
  21699. items:
  21700. description: A node
  21701. selector requirement
  21702. is a selector that
  21703. contains values, a
  21704. key, and an operator
  21705. that relates the key
  21706. and values.
  21707. properties:
  21708. key:
  21709. description: The
  21710. label key that
  21711. the selector applies
  21712. to.
  21713. type: string
  21714. operator:
  21715. description: Represents
  21716. a key's relationship
  21717. to a set of values.
  21718. Valid operators
  21719. are In, NotIn,
  21720. Exists, DoesNotExist.
  21721. Gt, and Lt.
  21722. type: string
  21723. values:
  21724. description: An
  21725. array of string
  21726. values. If the
  21727. operator is In
  21728. or NotIn, the
  21729. values array must
  21730. be non-empty.
  21731. If the operator
  21732. is Exists or DoesNotExist,
  21733. the values array
  21734. must be empty.
  21735. If the operator
  21736. is Gt or Lt, the
  21737. values array must
  21738. have a single
  21739. element, which
  21740. will be interpreted
  21741. as an integer.
  21742. This array is
  21743. replaced during
  21744. a strategic merge
  21745. patch.
  21746. items:
  21747. type: string
  21748. type: array
  21749. required:
  21750. - key
  21751. - operator
  21752. type: object
  21753. type: array
  21754. type: object
  21755. type: array
  21756. required:
  21757. - nodeSelectorTerms
  21758. type: object
  21759. type: object
  21760. podAffinity:
  21761. description: Describes pod affinity
  21762. scheduling rules (e.g. co-locate this
  21763. pod in the same node, zone, etc. as
  21764. some other pod(s)).
  21765. properties:
  21766. preferredDuringSchedulingIgnoredDuringExecution:
  21767. description: The scheduler will
  21768. prefer to schedule pods to nodes
  21769. that satisfy the affinity expressions
  21770. specified by this field, but it
  21771. may choose a node that violates
  21772. one or more of the expressions.
  21773. The node that is most preferred
  21774. is the one with the greatest sum
  21775. of weights, i.e. for each node
  21776. that meets all of the scheduling
  21777. requirements (resource request,
  21778. requiredDuringScheduling affinity
  21779. expressions, etc.), compute a
  21780. sum by iterating through the elements
  21781. of this field and adding "weight"
  21782. to the sum if the node has pods
  21783. which matches the corresponding
  21784. podAffinityTerm; the node(s) with
  21785. the highest sum are the most preferred.
  21786. items:
  21787. description: The weights of all
  21788. of the matched WeightedPodAffinityTerm
  21789. fields are added per-node to
  21790. find the most preferred node(s)
  21791. properties:
  21792. podAffinityTerm:
  21793. description: Required. A pod
  21794. affinity term, associated
  21795. with the corresponding weight.
  21796. properties:
  21797. labelSelector:
  21798. description: A label query
  21799. over a set of resources,
  21800. in this case pods.
  21801. properties:
  21802. matchExpressions:
  21803. description: matchExpressions
  21804. is a list of label
  21805. selector requirements.
  21806. The requirements
  21807. are ANDed.
  21808. items:
  21809. description: A label
  21810. selector requirement
  21811. is a selector
  21812. that contains
  21813. values, a key,
  21814. and an operator
  21815. that relates the
  21816. key and values.
  21817. properties:
  21818. key:
  21819. description: key
  21820. is the label
  21821. key that the
  21822. selector applies
  21823. to.
  21824. type: string
  21825. operator:
  21826. description: operator
  21827. represents
  21828. a key's relationship
  21829. to a set of
  21830. values. Valid
  21831. operators
  21832. are In, NotIn,
  21833. Exists and
  21834. DoesNotExist.
  21835. type: string
  21836. values:
  21837. description: values
  21838. is an array
  21839. of string
  21840. values. If
  21841. the operator
  21842. is In or NotIn,
  21843. the values
  21844. array must
  21845. be non-empty.
  21846. If the operator
  21847. is Exists
  21848. or DoesNotExist,
  21849. the values
  21850. array must
  21851. be empty.
  21852. This array
  21853. is replaced
  21854. during a strategic
  21855. merge patch.
  21856. items:
  21857. type: string
  21858. type: array
  21859. required:
  21860. - key
  21861. - operator
  21862. type: object
  21863. type: array
  21864. matchLabels:
  21865. additionalProperties:
  21866. type: string
  21867. description: matchLabels
  21868. is a map of {key,value}
  21869. pairs. A single
  21870. {key,value} in the
  21871. matchLabels map
  21872. is equivalent to
  21873. an element of matchExpressions,
  21874. whose key field
  21875. is "key", the operator
  21876. is "In", and the
  21877. values array contains
  21878. only "value". The
  21879. requirements are
  21880. ANDed.
  21881. type: object
  21882. type: object
  21883. namespaces:
  21884. description: namespaces
  21885. specifies which namespaces
  21886. the labelSelector applies
  21887. to (matches against);
  21888. null or empty list means
  21889. "this pod's namespace"
  21890. items:
  21891. type: string
  21892. type: array
  21893. topologyKey:
  21894. description: This pod
  21895. should be co-located
  21896. (affinity) or not co-located
  21897. (anti-affinity) with
  21898. the pods matching the
  21899. labelSelector in the
  21900. specified namespaces,
  21901. where co-located is
  21902. defined as running on
  21903. a node whose value of
  21904. the label with key topologyKey
  21905. matches that of any
  21906. node on which any of
  21907. the selected pods is
  21908. running. Empty topologyKey
  21909. is not allowed.
  21910. type: string
  21911. required:
  21912. - topologyKey
  21913. type: object
  21914. weight:
  21915. description: weight associated
  21916. with matching the corresponding
  21917. podAffinityTerm, in the
  21918. range 1-100.
  21919. format: int32
  21920. type: integer
  21921. required:
  21922. - podAffinityTerm
  21923. - weight
  21924. type: object
  21925. type: array
  21926. requiredDuringSchedulingIgnoredDuringExecution:
  21927. description: If the affinity requirements
  21928. specified by this field are not
  21929. met at scheduling time, the pod
  21930. will not be scheduled onto the
  21931. node. If the affinity requirements
  21932. specified by this field cease
  21933. to be met at some point during
  21934. pod execution (e.g. due to a pod
  21935. label update), the system may
  21936. or may not try to eventually evict
  21937. the pod from its node. When there
  21938. are multiple elements, the lists
  21939. of nodes corresponding to each
  21940. podAffinityTerm are intersected,
  21941. i.e. all terms must be satisfied.
  21942. items:
  21943. description: Defines a set of
  21944. pods (namely those matching
  21945. the labelSelector relative to
  21946. the given namespace(s)) that
  21947. this pod should be co-located
  21948. (affinity) or not co-located
  21949. (anti-affinity) with, where
  21950. co-located is defined as running
  21951. on a node whose value of the
  21952. label with key <topologyKey>
  21953. matches that of any node on
  21954. which a pod of the set of pods
  21955. is running
  21956. properties:
  21957. labelSelector:
  21958. description: A label query
  21959. over a set of resources,
  21960. in this case pods.
  21961. properties:
  21962. matchExpressions:
  21963. description: matchExpressions
  21964. is a list of label selector
  21965. requirements. The requirements
  21966. are ANDed.
  21967. items:
  21968. description: A label
  21969. selector requirement
  21970. is a selector that
  21971. contains values, a
  21972. key, and an operator
  21973. that relates the key
  21974. and values.
  21975. properties:
  21976. key:
  21977. description: key
  21978. is the label key
  21979. that the selector
  21980. applies to.
  21981. type: string
  21982. operator:
  21983. description: operator
  21984. represents a key's
  21985. relationship to
  21986. a set of values.
  21987. Valid operators
  21988. are In, NotIn,
  21989. Exists and DoesNotExist.
  21990. type: string
  21991. values:
  21992. description: values
  21993. is an array of
  21994. string values.
  21995. If the operator
  21996. is In or NotIn,
  21997. the values array
  21998. must be non-empty.
  21999. If the operator
  22000. is Exists or DoesNotExist,
  22001. the values array
  22002. must be empty.
  22003. This array is
  22004. replaced during
  22005. a strategic merge
  22006. patch.
  22007. items:
  22008. type: string
  22009. type: array
  22010. required:
  22011. - key
  22012. - operator
  22013. type: object
  22014. type: array
  22015. matchLabels:
  22016. additionalProperties:
  22017. type: string
  22018. description: matchLabels
  22019. is a map of {key,value}
  22020. pairs. A single {key,value}
  22021. in the matchLabels map
  22022. is equivalent to an
  22023. element of matchExpressions,
  22024. whose key field is "key",
  22025. the operator is "In",
  22026. and the values array
  22027. contains only "value".
  22028. The requirements are
  22029. ANDed.
  22030. type: object
  22031. type: object
  22032. namespaces:
  22033. description: namespaces specifies
  22034. which namespaces the labelSelector
  22035. applies to (matches against);
  22036. null or empty list means
  22037. "this pod's namespace"
  22038. items:
  22039. type: string
  22040. type: array
  22041. topologyKey:
  22042. description: This pod should
  22043. be co-located (affinity)
  22044. or not co-located (anti-affinity)
  22045. with the pods matching the
  22046. labelSelector in the specified
  22047. namespaces, where co-located
  22048. is defined as running on
  22049. a node whose value of the
  22050. label with key topologyKey
  22051. matches that of any node
  22052. on which any of the selected
  22053. pods is running. Empty topologyKey
  22054. is not allowed.
  22055. type: string
  22056. required:
  22057. - topologyKey
  22058. type: object
  22059. type: array
  22060. type: object
  22061. podAntiAffinity:
  22062. description: Describes pod anti-affinity
  22063. scheduling rules (e.g. avoid putting
  22064. this pod in the same node, zone, etc.
  22065. as some other pod(s)).
  22066. properties:
  22067. preferredDuringSchedulingIgnoredDuringExecution:
  22068. description: The scheduler will
  22069. prefer to schedule pods to nodes
  22070. that satisfy the anti-affinity
  22071. expressions specified by this
  22072. field, but it may choose a node
  22073. that violates one or more of the
  22074. expressions. The node that is
  22075. most preferred is the one with
  22076. the greatest sum of weights, i.e.
  22077. for each node that meets all of
  22078. the scheduling requirements (resource
  22079. request, requiredDuringScheduling
  22080. anti-affinity expressions, etc.),
  22081. compute a sum by iterating through
  22082. the elements of this field and
  22083. adding "weight" to the sum if
  22084. the node has pods which matches
  22085. the corresponding podAffinityTerm;
  22086. the node(s) with the highest sum
  22087. are the most preferred.
  22088. items:
  22089. description: The weights of all
  22090. of the matched WeightedPodAffinityTerm
  22091. fields are added per-node to
  22092. find the most preferred node(s)
  22093. properties:
  22094. podAffinityTerm:
  22095. description: Required. A pod
  22096. affinity term, associated
  22097. with the corresponding weight.
  22098. properties:
  22099. labelSelector:
  22100. description: A label query
  22101. over a set of resources,
  22102. in this case pods.
  22103. properties:
  22104. matchExpressions:
  22105. description: matchExpressions
  22106. is a list of label
  22107. selector requirements.
  22108. The requirements
  22109. are ANDed.
  22110. items:
  22111. description: A label
  22112. selector requirement
  22113. is a selector
  22114. that contains
  22115. values, a key,
  22116. and an operator
  22117. that relates the
  22118. key and values.
  22119. properties:
  22120. key:
  22121. description: key
  22122. is the label
  22123. key that the
  22124. selector applies
  22125. to.
  22126. type: string
  22127. operator:
  22128. description: operator
  22129. represents
  22130. a key's relationship
  22131. to a set of
  22132. values. Valid
  22133. operators
  22134. are In, NotIn,
  22135. Exists and
  22136. DoesNotExist.
  22137. type: string
  22138. values:
  22139. description: values
  22140. is an array
  22141. of string
  22142. values. If
  22143. the operator
  22144. is In or NotIn,
  22145. the values
  22146. array must
  22147. be non-empty.
  22148. If the operator
  22149. is Exists
  22150. or DoesNotExist,
  22151. the values
  22152. array must
  22153. be empty.
  22154. This array
  22155. is replaced
  22156. during a strategic
  22157. merge patch.
  22158. items:
  22159. type: string
  22160. type: array
  22161. required:
  22162. - key
  22163. - operator
  22164. type: object
  22165. type: array
  22166. matchLabels:
  22167. additionalProperties:
  22168. type: string
  22169. description: matchLabels
  22170. is a map of {key,value}
  22171. pairs. A single
  22172. {key,value} in the
  22173. matchLabels map
  22174. is equivalent to
  22175. an element of matchExpressions,
  22176. whose key field
  22177. is "key", the operator
  22178. is "In", and the
  22179. values array contains
  22180. only "value". The
  22181. requirements are
  22182. ANDed.
  22183. type: object
  22184. type: object
  22185. namespaces:
  22186. description: namespaces
  22187. specifies which namespaces
  22188. the labelSelector applies
  22189. to (matches against);
  22190. null or empty list means
  22191. "this pod's namespace"
  22192. items:
  22193. type: string
  22194. type: array
  22195. topologyKey:
  22196. description: This pod
  22197. should be co-located
  22198. (affinity) or not co-located
  22199. (anti-affinity) with
  22200. the pods matching the
  22201. labelSelector in the
  22202. specified namespaces,
  22203. where co-located is
  22204. defined as running on
  22205. a node whose value of
  22206. the label with key topologyKey
  22207. matches that of any
  22208. node on which any of
  22209. the selected pods is
  22210. running. Empty topologyKey
  22211. is not allowed.
  22212. type: string
  22213. required:
  22214. - topologyKey
  22215. type: object
  22216. weight:
  22217. description: weight associated
  22218. with matching the corresponding
  22219. podAffinityTerm, in the
  22220. range 1-100.
  22221. format: int32
  22222. type: integer
  22223. required:
  22224. - podAffinityTerm
  22225. - weight
  22226. type: object
  22227. type: array
  22228. requiredDuringSchedulingIgnoredDuringExecution:
  22229. description: If the anti-affinity
  22230. requirements specified by this
  22231. field are not met at scheduling
  22232. time, the pod will not be scheduled
  22233. onto the node. If the anti-affinity
  22234. requirements specified by this
  22235. field cease to be met at some
  22236. point during pod execution (e.g.
  22237. due to a pod label update), the
  22238. system may or may not try to eventually
  22239. evict the pod from its node. When
  22240. there are multiple elements, the
  22241. lists of nodes corresponding to
  22242. each podAffinityTerm are intersected,
  22243. i.e. all terms must be satisfied.
  22244. items:
  22245. description: Defines a set of
  22246. pods (namely those matching
  22247. the labelSelector relative to
  22248. the given namespace(s)) that
  22249. this pod should be co-located
  22250. (affinity) or not co-located
  22251. (anti-affinity) with, where
  22252. co-located is defined as running
  22253. on a node whose value of the
  22254. label with key <topologyKey>
  22255. matches that of any node on
  22256. which a pod of the set of pods
  22257. is running
  22258. properties:
  22259. labelSelector:
  22260. description: A label query
  22261. over a set of resources,
  22262. in this case pods.
  22263. properties:
  22264. matchExpressions:
  22265. description: matchExpressions
  22266. is a list of label selector
  22267. requirements. The requirements
  22268. are ANDed.
  22269. items:
  22270. description: A label
  22271. selector requirement
  22272. is a selector that
  22273. contains values, a
  22274. key, and an operator
  22275. that relates the key
  22276. and values.
  22277. properties:
  22278. key:
  22279. description: key
  22280. is the label key
  22281. that the selector
  22282. applies to.
  22283. type: string
  22284. operator:
  22285. description: operator
  22286. represents a key's
  22287. relationship to
  22288. a set of values.
  22289. Valid operators
  22290. are In, NotIn,
  22291. Exists and DoesNotExist.
  22292. type: string
  22293. values:
  22294. description: values
  22295. is an array of
  22296. string values.
  22297. If the operator
  22298. is In or NotIn,
  22299. the values array
  22300. must be non-empty.
  22301. If the operator
  22302. is Exists or DoesNotExist,
  22303. the values array
  22304. must be empty.
  22305. This array is
  22306. replaced during
  22307. a strategic merge
  22308. patch.
  22309. items:
  22310. type: string
  22311. type: array
  22312. required:
  22313. - key
  22314. - operator
  22315. type: object
  22316. type: array
  22317. matchLabels:
  22318. additionalProperties:
  22319. type: string
  22320. description: matchLabels
  22321. is a map of {key,value}
  22322. pairs. A single {key,value}
  22323. in the matchLabels map
  22324. is equivalent to an
  22325. element of matchExpressions,
  22326. whose key field is "key",
  22327. the operator is "In",
  22328. and the values array
  22329. contains only "value".
  22330. The requirements are
  22331. ANDed.
  22332. type: object
  22333. type: object
  22334. namespaces:
  22335. description: namespaces specifies
  22336. which namespaces the labelSelector
  22337. applies to (matches against);
  22338. null or empty list means
  22339. "this pod's namespace"
  22340. items:
  22341. type: string
  22342. type: array
  22343. topologyKey:
  22344. description: This pod should
  22345. be co-located (affinity)
  22346. or not co-located (anti-affinity)
  22347. with the pods matching the
  22348. labelSelector in the specified
  22349. namespaces, where co-located
  22350. is defined as running on
  22351. a node whose value of the
  22352. label with key topologyKey
  22353. matches that of any node
  22354. on which any of the selected
  22355. pods is running. Empty topologyKey
  22356. is not allowed.
  22357. type: string
  22358. required:
  22359. - topologyKey
  22360. type: object
  22361. type: array
  22362. type: object
  22363. type: object
  22364. nodeSelector:
  22365. additionalProperties:
  22366. type: string
  22367. description: 'NodeSelector is a selector
  22368. which must be true for the pod to fit
  22369. on a node. Selector which must match a
  22370. node''s labels for the pod to be scheduled
  22371. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  22372. type: object
  22373. priorityClassName:
  22374. description: If specified, the pod's priorityClassName.
  22375. type: string
  22376. serviceAccountName:
  22377. description: If specified, the pod's service
  22378. account
  22379. type: string
  22380. tolerations:
  22381. description: If specified, the pod's tolerations.
  22382. items:
  22383. description: The pod this Toleration is
  22384. attached to tolerates any taint that
  22385. matches the triple <key,value,effect>
  22386. using the matching operator <operator>.
  22387. properties:
  22388. effect:
  22389. description: Effect indicates the
  22390. taint effect to match. Empty means
  22391. match all taint effects. When specified,
  22392. allowed values are NoSchedule, PreferNoSchedule
  22393. and NoExecute.
  22394. type: string
  22395. key:
  22396. description: Key is the taint key
  22397. that the toleration applies to.
  22398. Empty means match all taint keys.
  22399. If the key is empty, operator must
  22400. be Exists; this combination means
  22401. to match all values and all keys.
  22402. type: string
  22403. operator:
  22404. description: Operator represents a
  22405. key's relationship to the value.
  22406. Valid operators are Exists and Equal.
  22407. Defaults to Equal. Exists is equivalent
  22408. to wildcard for value, so that a
  22409. pod can tolerate all taints of a
  22410. particular category.
  22411. type: string
  22412. tolerationSeconds:
  22413. description: TolerationSeconds represents
  22414. the period of time the toleration
  22415. (which must be of effect NoExecute,
  22416. otherwise this field is ignored)
  22417. tolerates the taint. By default,
  22418. it is not set, which means tolerate
  22419. the taint forever (do not evict).
  22420. Zero and negative values will be
  22421. treated as 0 (evict immediately)
  22422. by the system.
  22423. format: int64
  22424. type: integer
  22425. value:
  22426. description: Value is the taint value
  22427. the toleration matches to. If the
  22428. operator is Exists, the value should
  22429. be empty, otherwise just a regular
  22430. string.
  22431. type: string
  22432. type: object
  22433. type: array
  22434. type: object
  22435. type: object
  22436. serviceType:
  22437. description: Optional service type for Kubernetes
  22438. solver service
  22439. type: string
  22440. type: object
  22441. type: object
  22442. selector:
  22443. description: Selector selects a set of DNSNames on the Certificate
  22444. resource that should be solved using this challenge solver.
  22445. If not specified, the solver will be treated as the 'default'
  22446. solver with the lowest priority, i.e. if any other solver
  22447. has a more specific match, it will be used instead.
  22448. properties:
  22449. dnsNames:
  22450. description: List of DNSNames that this solver will
  22451. be used to solve. If specified and a match is found,
  22452. a dnsNames selector will take precedence over a dnsZones
  22453. selector. If multiple solvers match with the same
  22454. dnsNames value, the solver with the most matching
  22455. labels in matchLabels will be selected. If neither
  22456. has more matches, the solver defined earlier in the
  22457. list will be selected.
  22458. items:
  22459. type: string
  22460. type: array
  22461. dnsZones:
  22462. description: List of DNSZones that this solver will
  22463. be used to solve. The most specific DNS zone match
  22464. specified here will take precedence over other DNS
  22465. zone matches, so a solver specifying sys.example.com
  22466. will be selected over one specifying example.com for
  22467. the domain www.sys.example.com. If multiple solvers
  22468. match with the same dnsZones value, the solver with
  22469. the most matching labels in matchLabels will be selected.
  22470. If neither has more matches, the solver defined earlier
  22471. in the list will be selected.
  22472. items:
  22473. type: string
  22474. type: array
  22475. matchLabels:
  22476. additionalProperties:
  22477. type: string
  22478. description: A label selector that is used to refine
  22479. the set of certificate's that this challenge solver
  22480. will apply to.
  22481. type: object
  22482. type: object
  22483. type: object
  22484. type: array
  22485. required:
  22486. - privateKeySecretRef
  22487. - server
  22488. type: object
  22489. ca:
  22490. description: CA configures this issuer to sign certificates using
  22491. a signing CA keypair stored in a Secret resource. This is used to
  22492. build internal PKIs that are managed by cert-manager.
  22493. properties:
  22494. crlDistributionPoints:
  22495. description: The CRL distribution points is an X.509 v3 certificate
  22496. extension which identifies the location of the CRL from which
  22497. the revocation of this certificate can be checked. If not set,
  22498. certificates will be issued without distribution points set.
  22499. items:
  22500. type: string
  22501. type: array
  22502. ocspServers:
  22503. description: The OCSP server list is an X.509 v3 extension that
  22504. defines a list of URLs of OCSP responders. The OCSP responders
  22505. can be queried for the revocation status of an issued certificate.
  22506. If not set, the certificate will be issued with no OCSP servers
  22507. set. For example, an OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
  22508. items:
  22509. type: string
  22510. type: array
  22511. secretName:
  22512. description: SecretName is the name of the secret used to sign
  22513. Certificates issued by this Issuer.
  22514. type: string
  22515. required:
  22516. - secretName
  22517. type: object
  22518. selfSigned:
  22519. description: SelfSigned configures this issuer to 'self sign' certificates
  22520. using the private key used to create the CertificateRequest object.
  22521. properties:
  22522. crlDistributionPoints:
  22523. description: The CRL distribution points is an X.509 v3 certificate
  22524. extension which identifies the location of the CRL from which
  22525. the revocation of this certificate can be checked. If not set
  22526. certificate will be issued without CDP. Values are strings.
  22527. items:
  22528. type: string
  22529. type: array
  22530. type: object
  22531. vault:
  22532. description: Vault configures this issuer to sign certificates using
  22533. a HashiCorp Vault PKI backend.
  22534. properties:
  22535. auth:
  22536. description: Auth configures how cert-manager authenticates with
  22537. the Vault server.
  22538. properties:
  22539. appRole:
  22540. description: AppRole authenticates with Vault using the App
  22541. Role auth mechanism, with the role and secret stored in
  22542. a Kubernetes Secret resource.
  22543. properties:
  22544. path:
  22545. description: 'Path where the App Role authentication backend
  22546. is mounted in Vault, e.g: "approle"'
  22547. type: string
  22548. roleId:
  22549. description: RoleID configured in the App Role authentication
  22550. backend when setting up the authentication backend in
  22551. Vault.
  22552. type: string
  22553. secretRef:
  22554. description: Reference to a key in a Secret that contains
  22555. the App Role secret used to authenticate with Vault.
  22556. The `key` field must be specified and denotes which
  22557. entry within the Secret resource is used as the app
  22558. role secret.
  22559. properties:
  22560. key:
  22561. description: The key of the entry in the Secret resource's
  22562. `data` field to be used. Some instances of this
  22563. field may be defaulted, in others 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. required:
  22573. - path
  22574. - roleId
  22575. - secretRef
  22576. type: object
  22577. kubernetes:
  22578. description: Kubernetes authenticates with Vault by passing
  22579. the ServiceAccount token stored in the named Secret resource
  22580. to the Vault server.
  22581. properties:
  22582. mountPath:
  22583. description: The Vault mountPath here is the mount path
  22584. to use when authenticating with Vault. For example,
  22585. setting a value to `/v1/auth/foo`, will use the path
  22586. `/v1/auth/foo/login` to authenticate with Vault. If
  22587. unspecified, the default value "/v1/auth/kubernetes"
  22588. will be used.
  22589. type: string
  22590. role:
  22591. description: A required field containing the Vault Role
  22592. to assume. A Role binds a Kubernetes ServiceAccount
  22593. with a set of Vault policies.
  22594. type: string
  22595. secretRef:
  22596. description: The required Secret field containing a Kubernetes
  22597. ServiceAccount JWT used for authenticating with Vault.
  22598. Use of 'ambient credentials' is not supported.
  22599. properties:
  22600. key:
  22601. description: The key of the entry in the Secret resource's
  22602. `data` field to be used. Some instances of this
  22603. field may be defaulted, in others it may be required.
  22604. type: string
  22605. name:
  22606. description: 'Name of the resource being referred
  22607. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22608. type: string
  22609. required:
  22610. - name
  22611. type: object
  22612. required:
  22613. - role
  22614. - secretRef
  22615. type: object
  22616. tokenSecretRef:
  22617. description: TokenSecretRef authenticates with Vault by presenting
  22618. a token.
  22619. properties:
  22620. key:
  22621. description: The key of the entry in the Secret resource's
  22622. `data` field to be used. Some instances of this field
  22623. may be defaulted, in others it may be required.
  22624. type: string
  22625. name:
  22626. description: 'Name of the resource being referred to.
  22627. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22628. type: string
  22629. required:
  22630. - name
  22631. type: object
  22632. type: object
  22633. caBundle:
  22634. description: PEM encoded CA bundle used to validate Vault server
  22635. certificate. Only used if the Server URL is using HTTPS protocol.
  22636. This parameter is ignored for plain HTTP protocol connection.
  22637. If not set the system root certificates are used to validate
  22638. the TLS connection.
  22639. format: byte
  22640. type: string
  22641. namespace:
  22642. description: 'Name of the vault namespace. Namespaces is a set
  22643. of features within Vault Enterprise that allows Vault environments
  22644. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  22645. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  22646. type: string
  22647. path:
  22648. description: 'Path is the mount path of the Vault PKI backend''s
  22649. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  22650. type: string
  22651. server:
  22652. description: 'Server is the connection address for the Vault server,
  22653. e.g: "https://vault.example.com:8200".'
  22654. type: string
  22655. required:
  22656. - auth
  22657. - path
  22658. - server
  22659. type: object
  22660. venafi:
  22661. description: Venafi configures this issuer to sign certificates using
  22662. a Venafi TPP or Venafi Cloud policy zone.
  22663. properties:
  22664. cloud:
  22665. description: Cloud specifies the Venafi cloud configuration settings.
  22666. Only one of TPP or Cloud may be specified.
  22667. properties:
  22668. apiTokenSecretRef:
  22669. description: APITokenSecretRef is a secret key selector for
  22670. the Venafi Cloud API token.
  22671. properties:
  22672. key:
  22673. description: The key of the entry in the Secret resource's
  22674. `data` field to be used. Some instances of this field
  22675. may be defaulted, in others it may be required.
  22676. type: string
  22677. name:
  22678. description: 'Name of the resource being referred to.
  22679. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22680. type: string
  22681. required:
  22682. - name
  22683. type: object
  22684. url:
  22685. description: URL is the base URL for Venafi Cloud. Defaults
  22686. to "https://api.venafi.cloud/v1".
  22687. type: string
  22688. required:
  22689. - apiTokenSecretRef
  22690. type: object
  22691. tpp:
  22692. description: TPP specifies Trust Protection Platform configuration
  22693. settings. Only one of TPP or Cloud may be specified.
  22694. properties:
  22695. caBundle:
  22696. description: CABundle is a PEM encoded TLS certificate to
  22697. use to verify connections to the TPP instance. If specified,
  22698. system roots will not be used and the issuing CA for the
  22699. TPP instance must be verifiable using the provided root.
  22700. If not specified, the connection will be verified using
  22701. the cert-manager system root certificates.
  22702. format: byte
  22703. type: string
  22704. credentialsRef:
  22705. description: CredentialsRef is a reference to a Secret containing
  22706. the username and password for the TPP server. The secret
  22707. must contain two keys, 'username' and 'password'.
  22708. properties:
  22709. name:
  22710. description: 'Name of the resource being referred to.
  22711. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22712. type: string
  22713. required:
  22714. - name
  22715. type: object
  22716. url:
  22717. description: 'URL is the base URL for the vedsdk endpoint
  22718. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  22719. type: string
  22720. required:
  22721. - credentialsRef
  22722. - url
  22723. type: object
  22724. zone:
  22725. description: Zone is the Venafi Policy Zone to use for this issuer.
  22726. All requests made to the Venafi platform will be restricted
  22727. by the named zone policy. This field is required.
  22728. type: string
  22729. required:
  22730. - zone
  22731. type: object
  22732. type: object
  22733. status:
  22734. description: Status of the Issuer. This is set and managed automatically.
  22735. properties:
  22736. acme:
  22737. description: ACME specific status options. This field should only
  22738. be set if the Issuer is configured to use an ACME server to issue
  22739. certificates.
  22740. properties:
  22741. lastRegisteredEmail:
  22742. description: LastRegisteredEmail is the email associated with
  22743. the latest registered ACME account, in order to track changes
  22744. made to registered account associated with the Issuer
  22745. type: string
  22746. uri:
  22747. description: URI is the unique account identifier, which can also
  22748. be used to retrieve account details from the CA
  22749. type: string
  22750. type: object
  22751. conditions:
  22752. description: List of status conditions to indicate the status of a
  22753. CertificateRequest. Known condition types are `Ready`.
  22754. items:
  22755. description: IssuerCondition contains condition information for
  22756. an Issuer.
  22757. properties:
  22758. lastTransitionTime:
  22759. description: LastTransitionTime is the timestamp corresponding
  22760. to the last status change of this condition.
  22761. format: date-time
  22762. type: string
  22763. message:
  22764. description: Message is a human readable description of the
  22765. details of the last transition, complementing reason.
  22766. type: string
  22767. observedGeneration:
  22768. description: If set, this represents the .metadata.generation
  22769. that the condition was set based upon. For instance, if .metadata.generation
  22770. is currently 12, but the .status.condition[x].observedGeneration
  22771. is 9, the condition is out of date with respect to the current
  22772. state of the Issuer.
  22773. format: int64
  22774. type: integer
  22775. reason:
  22776. description: Reason is a brief machine readable explanation
  22777. for the condition's last transition.
  22778. type: string
  22779. status:
  22780. description: Status of the condition, one of (`True`, `False`,
  22781. `Unknown`).
  22782. enum:
  22783. - "True"
  22784. - "False"
  22785. - Unknown
  22786. type: string
  22787. type:
  22788. description: Type of the condition, known values are (`Ready`).
  22789. type: string
  22790. required:
  22791. - status
  22792. - type
  22793. type: object
  22794. type: array
  22795. type: object
  22796. required:
  22797. - spec
  22798. type: object
  22799. served: true
  22800. storage: false
  22801. subresources:
  22802. status: {}
  22803. - additionalPrinterColumns:
  22804. - jsonPath: .status.conditions[?(@.type=="Ready")].status
  22805. name: Ready
  22806. type: string
  22807. - jsonPath: .status.conditions[?(@.type=="Ready")].message
  22808. name: Status
  22809. priority: 1
  22810. type: string
  22811. - description: CreationTimestamp is a timestamp representing the server time when
  22812. this object was created. It is not guaranteed to be set in happens-before
  22813. order across separate operations. Clients may not set this value. It is represented
  22814. in RFC3339 form and is in UTC.
  22815. jsonPath: .metadata.creationTimestamp
  22816. name: Age
  22817. type: date
  22818. name: v1
  22819. schema:
  22820. openAPIV3Schema:
  22821. description: An Issuer represents a certificate issuing authority which can
  22822. be referenced as part of `issuerRef` fields. It is scoped to a single namespace
  22823. and can therefore only be referenced by resources within the same namespace.
  22824. properties:
  22825. apiVersion:
  22826. description: 'APIVersion defines the versioned schema of this representation
  22827. of an object. Servers should convert recognized schemas to the latest
  22828. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  22829. type: string
  22830. kind:
  22831. description: 'Kind is a string value representing the REST resource this
  22832. object represents. Servers may infer this from the endpoint the client
  22833. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  22834. type: string
  22835. metadata:
  22836. type: object
  22837. spec:
  22838. description: Desired state of the Issuer resource.
  22839. properties:
  22840. acme:
  22841. description: ACME configures this issuer to communicate with a RFC8555
  22842. (ACME) server to obtain signed x509 certificates.
  22843. properties:
  22844. disableAccountKeyGeneration:
  22845. description: Enables or disables generating a new ACME account
  22846. key. If true, the Issuer resource will *not* request a new account
  22847. but will expect the account key to be supplied via an existing
  22848. secret. If false, the cert-manager system will generate a new
  22849. ACME account key for the Issuer. Defaults to false.
  22850. type: boolean
  22851. email:
  22852. description: Email is the email address to be associated with
  22853. the ACME account. This field is optional, but it is strongly
  22854. recommended to be set. It will be used to contact you in case
  22855. of issues with your account or certificates, including expiry
  22856. notification emails. This field may be updated after the account
  22857. is initially registered.
  22858. type: string
  22859. enableDurationFeature:
  22860. description: Enables requesting a Not After date on certificates
  22861. that matches the duration of the certificate. This is not supported
  22862. by all ACME servers like Let's Encrypt. If set to true when
  22863. the ACME server does not support it it will create an error
  22864. on the Order. Defaults to false.
  22865. type: boolean
  22866. externalAccountBinding:
  22867. description: ExternalAccountBinding is a reference to a CA external
  22868. account of the ACME server. If set, upon registration cert-manager
  22869. will attempt to associate the given external account credentials
  22870. with the registered ACME account.
  22871. properties:
  22872. keyAlgorithm:
  22873. description: keyAlgorithm is the MAC key algorithm that the
  22874. key is used for. Valid values are "HS256", "HS384" and "HS512".
  22875. enum:
  22876. - HS256
  22877. - HS384
  22878. - HS512
  22879. type: string
  22880. keyID:
  22881. description: keyID is the ID of the CA key that the External
  22882. Account is bound to.
  22883. type: string
  22884. keySecretRef:
  22885. description: keySecretRef is a Secret Key Selector referencing
  22886. a data item in a Kubernetes Secret which holds the symmetric
  22887. MAC key of the External Account Binding. The `key` is the
  22888. index string that is paired with the key data in the Secret
  22889. and should not be confused with the key data itself, or
  22890. indeed with the External Account Binding keyID above. The
  22891. secret key stored in the Secret **must** be un-padded, base64
  22892. URL encoded data.
  22893. properties:
  22894. key:
  22895. description: The key of the entry in the Secret resource's
  22896. `data` field to be used. Some instances of this field
  22897. may be defaulted, in others it may be required.
  22898. type: string
  22899. name:
  22900. description: 'Name of the resource being referred to.
  22901. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22902. type: string
  22903. required:
  22904. - name
  22905. type: object
  22906. required:
  22907. - keyAlgorithm
  22908. - keyID
  22909. - keySecretRef
  22910. type: object
  22911. preferredChain:
  22912. description: 'PreferredChain is the chain to use if the ACME server
  22913. outputs multiple. PreferredChain is no guarantee that this one
  22914. gets delivered by the ACME endpoint. For example, for Let''s
  22915. Encrypt''s DST crosssign you would use: "DST Root CA X3" or
  22916. "ISRG Root X1" for the newer Let''s Encrypt root CA. This value
  22917. picks the first certificate bundle in the ACME alternative chains
  22918. that has a certificate with this value as its issuer''s CN'
  22919. maxLength: 64
  22920. type: string
  22921. privateKeySecretRef:
  22922. description: PrivateKey is the name of a Kubernetes Secret resource
  22923. that will be used to store the automatically generated ACME
  22924. account private key. Optionally, a `key` may be specified to
  22925. select a specific entry within the named Secret resource. If
  22926. `key` is not specified, a default of `tls.key` will be used.
  22927. properties:
  22928. key:
  22929. description: The key of the entry in the Secret resource's
  22930. `data` field to be used. Some instances of this field may
  22931. be defaulted, in others it may be required.
  22932. type: string
  22933. name:
  22934. description: 'Name of the resource being referred to. More
  22935. info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22936. type: string
  22937. required:
  22938. - name
  22939. type: object
  22940. server:
  22941. description: 'Server is the URL used to access the ACME server''s
  22942. ''directory'' endpoint. For example, for Let''s Encrypt''s staging
  22943. endpoint, you would use: "https://acme-staging-v02.api.letsencrypt.org/directory".
  22944. Only ACME v2 endpoints (i.e. RFC 8555) are supported.'
  22945. type: string
  22946. skipTLSVerify:
  22947. description: Enables or disables validation of the ACME server
  22948. TLS certificate. If true, requests to the ACME server will not
  22949. have their TLS certificate validated (i.e. insecure connections
  22950. will be allowed). Only enable this option in development environments.
  22951. The cert-manager system installed roots will be used to verify
  22952. connections to the ACME server if this is false. Defaults to
  22953. false.
  22954. type: boolean
  22955. solvers:
  22956. description: 'Solvers is a list of challenge solvers that will
  22957. be used to solve ACME challenges for the matching domains. Solver
  22958. configurations must be provided in order to obtain certificates
  22959. from an ACME server. For more information, see: https://cert-manager.io/docs/configuration/acme/'
  22960. items:
  22961. description: Configures an issuer to solve challenges using
  22962. the specified options. Only one of HTTP01 or DNS01 may be
  22963. provided.
  22964. properties:
  22965. dns01:
  22966. description: Configures cert-manager to attempt to complete
  22967. authorizations by performing the DNS01 challenge flow.
  22968. properties:
  22969. acmeDNS:
  22970. description: Use the 'ACME DNS' (https://github.com/joohoi/acme-dns)
  22971. API to manage DNS01 challenge records.
  22972. properties:
  22973. accountSecretRef:
  22974. description: A reference to a specific 'key' within
  22975. a Secret resource. In some instances, `key` is
  22976. a required field.
  22977. properties:
  22978. key:
  22979. description: The key of the entry in the Secret
  22980. resource's `data` field to be used. Some instances
  22981. of this field may be defaulted, in others
  22982. it may be required.
  22983. type: string
  22984. name:
  22985. description: 'Name of the resource being referred
  22986. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  22987. type: string
  22988. required:
  22989. - name
  22990. type: object
  22991. host:
  22992. type: string
  22993. required:
  22994. - accountSecretRef
  22995. - host
  22996. type: object
  22997. akamai:
  22998. description: Use the Akamai DNS zone management API
  22999. to manage DNS01 challenge records.
  23000. properties:
  23001. accessTokenSecretRef:
  23002. description: A reference to a specific 'key' within
  23003. a Secret resource. In some instances, `key` is
  23004. a required field.
  23005. properties:
  23006. key:
  23007. description: The key of the entry in the Secret
  23008. resource's `data` field to be used. Some instances
  23009. of this field may be defaulted, in others
  23010. it may be required.
  23011. type: string
  23012. name:
  23013. description: 'Name of the resource being referred
  23014. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23015. type: string
  23016. required:
  23017. - name
  23018. type: object
  23019. clientSecretSecretRef:
  23020. description: A reference to a specific 'key' within
  23021. a Secret resource. In some instances, `key` is
  23022. a required field.
  23023. properties:
  23024. key:
  23025. description: The key of the entry in the Secret
  23026. resource's `data` field to be used. Some instances
  23027. of this field may be defaulted, in others
  23028. it may be required.
  23029. type: string
  23030. name:
  23031. description: 'Name of the resource being referred
  23032. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23033. type: string
  23034. required:
  23035. - name
  23036. type: object
  23037. clientTokenSecretRef:
  23038. description: A reference to a specific 'key' within
  23039. a Secret resource. In some instances, `key` is
  23040. a required field.
  23041. properties:
  23042. key:
  23043. description: The key of the entry in the Secret
  23044. resource's `data` field to be used. Some instances
  23045. of this field may be defaulted, in others
  23046. it may be required.
  23047. type: string
  23048. name:
  23049. description: 'Name of the resource being referred
  23050. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23051. type: string
  23052. required:
  23053. - name
  23054. type: object
  23055. serviceConsumerDomain:
  23056. type: string
  23057. required:
  23058. - accessTokenSecretRef
  23059. - clientSecretSecretRef
  23060. - clientTokenSecretRef
  23061. - serviceConsumerDomain
  23062. type: object
  23063. azureDNS:
  23064. description: Use the Microsoft Azure DNS API to manage
  23065. DNS01 challenge records.
  23066. properties:
  23067. clientID:
  23068. description: if both this and ClientSecret are left
  23069. unset MSI will be used
  23070. type: string
  23071. clientSecretSecretRef:
  23072. description: if both this and ClientID are left
  23073. unset MSI will be used
  23074. properties:
  23075. key:
  23076. description: The key of the entry in the Secret
  23077. resource's `data` field to be used. Some instances
  23078. of this field may be defaulted, in others
  23079. it may be required.
  23080. type: string
  23081. name:
  23082. description: 'Name of the resource being referred
  23083. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23084. type: string
  23085. required:
  23086. - name
  23087. type: object
  23088. environment:
  23089. enum:
  23090. - AzurePublicCloud
  23091. - AzureChinaCloud
  23092. - AzureGermanCloud
  23093. - AzureUSGovernmentCloud
  23094. type: string
  23095. hostedZoneName:
  23096. type: string
  23097. resourceGroupName:
  23098. type: string
  23099. subscriptionID:
  23100. type: string
  23101. tenantID:
  23102. description: when specifying ClientID and ClientSecret
  23103. then this field is also needed
  23104. type: string
  23105. required:
  23106. - resourceGroupName
  23107. - subscriptionID
  23108. type: object
  23109. cloudDNS:
  23110. description: Use the Google Cloud DNS API to manage
  23111. DNS01 challenge records.
  23112. properties:
  23113. hostedZoneName:
  23114. description: HostedZoneName is an optional field
  23115. that tells cert-manager in which Cloud DNS zone
  23116. the challenge record has to be created. If left
  23117. empty cert-manager will automatically choose a
  23118. zone.
  23119. type: string
  23120. project:
  23121. type: string
  23122. serviceAccountSecretRef:
  23123. description: A reference to a specific 'key' within
  23124. a Secret resource. In some instances, `key` is
  23125. a required field.
  23126. properties:
  23127. key:
  23128. description: The key of the entry in the Secret
  23129. resource's `data` field to be used. Some instances
  23130. of this field may be defaulted, in others
  23131. it may be required.
  23132. type: string
  23133. name:
  23134. description: 'Name of the resource being referred
  23135. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23136. type: string
  23137. required:
  23138. - name
  23139. type: object
  23140. required:
  23141. - project
  23142. type: object
  23143. cloudflare:
  23144. description: Use the Cloudflare API to manage DNS01
  23145. challenge records.
  23146. properties:
  23147. apiKeySecretRef:
  23148. description: 'API key to use to authenticate with
  23149. Cloudflare. Note: using an API token to authenticate
  23150. is now the recommended method as it allows greater
  23151. control of permissions.'
  23152. properties:
  23153. key:
  23154. description: The key of the entry in the Secret
  23155. resource's `data` field to be used. Some instances
  23156. of this field may be defaulted, in others
  23157. it may be required.
  23158. type: string
  23159. name:
  23160. description: 'Name of the resource being referred
  23161. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23162. type: string
  23163. required:
  23164. - name
  23165. type: object
  23166. apiTokenSecretRef:
  23167. description: API token used to authenticate with
  23168. Cloudflare.
  23169. properties:
  23170. key:
  23171. description: The key of the entry in the Secret
  23172. resource's `data` field to be used. Some instances
  23173. of this field may be defaulted, in others
  23174. it may be required.
  23175. type: string
  23176. name:
  23177. description: 'Name of the resource being referred
  23178. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23179. type: string
  23180. required:
  23181. - name
  23182. type: object
  23183. email:
  23184. description: Email of the account, only required
  23185. when using API key based authentication.
  23186. type: string
  23187. type: object
  23188. cnameStrategy:
  23189. description: CNAMEStrategy configures how the DNS01
  23190. provider should handle CNAME records when found in
  23191. DNS zones.
  23192. enum:
  23193. - None
  23194. - Follow
  23195. type: string
  23196. digitalocean:
  23197. description: Use the DigitalOcean DNS API to manage
  23198. DNS01 challenge records.
  23199. properties:
  23200. tokenSecretRef:
  23201. description: A reference to a specific 'key' within
  23202. a Secret resource. In some instances, `key` is
  23203. a required field.
  23204. properties:
  23205. key:
  23206. description: The key of the entry in the Secret
  23207. resource's `data` field to be used. Some instances
  23208. of this field may be defaulted, in others
  23209. it may be required.
  23210. type: string
  23211. name:
  23212. description: 'Name of the resource being referred
  23213. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23214. type: string
  23215. required:
  23216. - name
  23217. type: object
  23218. required:
  23219. - tokenSecretRef
  23220. type: object
  23221. rfc2136:
  23222. description: Use RFC2136 ("Dynamic Updates in the Domain
  23223. Name System") (https://datatracker.ietf.org/doc/rfc2136/)
  23224. to manage DNS01 challenge records.
  23225. properties:
  23226. nameserver:
  23227. description: The IP address or hostname of an authoritative
  23228. DNS server supporting RFC2136 in the form host:port.
  23229. If the host is an IPv6 address it must be enclosed
  23230. in square brackets (e.g [2001:db8::1]) ; port
  23231. is optional. This field is required.
  23232. type: string
  23233. tsigAlgorithm:
  23234. description: 'The TSIG Algorithm configured in the
  23235. DNS supporting RFC2136. Used only when ``tsigSecretSecretRef``
  23236. and ``tsigKeyName`` are defined. Supported values
  23237. are (case-insensitive): ``HMACMD5`` (default),
  23238. ``HMACSHA1``, ``HMACSHA256`` or ``HMACSHA512``.'
  23239. type: string
  23240. tsigKeyName:
  23241. description: The TSIG Key name configured in the
  23242. DNS. If ``tsigSecretSecretRef`` is defined, this
  23243. field is required.
  23244. type: string
  23245. tsigSecretSecretRef:
  23246. description: The name of the secret containing the
  23247. TSIG value. If ``tsigKeyName`` is defined, this
  23248. field is required.
  23249. properties:
  23250. key:
  23251. description: The key of the entry in the Secret
  23252. resource's `data` field to be used. Some instances
  23253. of this field may be defaulted, in others
  23254. it may be required.
  23255. type: string
  23256. name:
  23257. description: 'Name of the resource being referred
  23258. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23259. type: string
  23260. required:
  23261. - name
  23262. type: object
  23263. required:
  23264. - nameserver
  23265. type: object
  23266. route53:
  23267. description: Use the AWS Route53 API to manage DNS01
  23268. challenge records.
  23269. properties:
  23270. accessKeyID:
  23271. description: 'The AccessKeyID is used for authentication.
  23272. If not set we fall-back to using env vars, shared
  23273. credentials file or AWS Instance metadata see:
  23274. https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials'
  23275. type: string
  23276. hostedZoneID:
  23277. description: If set, the provider will manage only
  23278. this zone in Route53 and will not do an lookup
  23279. using the route53:ListHostedZonesByName api call.
  23280. type: string
  23281. region:
  23282. description: Always set the region when using AccessKeyID
  23283. and SecretAccessKey
  23284. type: string
  23285. role:
  23286. description: Role is a Role ARN which the Route53
  23287. provider will assume using either the explicit
  23288. credentials AccessKeyID/SecretAccessKey or the
  23289. inferred credentials from environment variables,
  23290. shared credentials file or AWS Instance metadata
  23291. type: string
  23292. secretAccessKeySecretRef:
  23293. description: The SecretAccessKey is used for authentication.
  23294. If not set we fall-back to using env vars, shared
  23295. credentials file or AWS Instance metadata https://docs.aws.amazon.com/sdk-for-go/v1/developer-guide/configuring-sdk.html#specifying-credentials
  23296. properties:
  23297. key:
  23298. description: The key of the entry in the Secret
  23299. resource's `data` field to be used. Some instances
  23300. of this field may be defaulted, in others
  23301. it may be required.
  23302. type: string
  23303. name:
  23304. description: 'Name of the resource being referred
  23305. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  23306. type: string
  23307. required:
  23308. - name
  23309. type: object
  23310. required:
  23311. - region
  23312. type: object
  23313. webhook:
  23314. description: Configure an external webhook based DNS01
  23315. challenge solver to manage DNS01 challenge records.
  23316. properties:
  23317. config:
  23318. description: Additional configuration that should
  23319. be passed to the webhook apiserver when challenges
  23320. are processed. This can contain arbitrary JSON
  23321. data. Secret values should not be specified in
  23322. this stanza. If secret values are needed (e.g.
  23323. credentials for a DNS service), you should use
  23324. a SecretKeySelector to reference a Secret resource.
  23325. For details on the schema of this field, consult
  23326. the webhook provider implementation's documentation.
  23327. x-kubernetes-preserve-unknown-fields: true
  23328. groupName:
  23329. description: The API group name that should be used
  23330. when POSTing ChallengePayload resources to the
  23331. webhook apiserver. This should be the same as
  23332. the GroupName specified in the webhook provider
  23333. implementation.
  23334. type: string
  23335. solverName:
  23336. description: The name of the solver to use, as defined
  23337. in the webhook provider implementation. This will
  23338. typically be the name of the provider, e.g. 'cloudflare'.
  23339. type: string
  23340. required:
  23341. - groupName
  23342. - solverName
  23343. type: object
  23344. type: object
  23345. http01:
  23346. description: Configures cert-manager to attempt to complete
  23347. authorizations by performing the HTTP01 challenge flow.
  23348. It is not possible to obtain certificates for wildcard
  23349. domain names (e.g. `*.example.com`) using the HTTP01 challenge
  23350. mechanism.
  23351. properties:
  23352. ingress:
  23353. description: The ingress based HTTP01 challenge solver
  23354. will solve challenges by creating or modifying Ingress
  23355. resources in order to route requests for '/.well-known/acme-challenge/XYZ'
  23356. to 'challenge solver' pods that are provisioned by
  23357. cert-manager for each Challenge to be completed.
  23358. properties:
  23359. class:
  23360. description: The ingress class to use when creating
  23361. Ingress resources to solve ACME challenges that
  23362. use this challenge solver. Only one of 'class'
  23363. or 'name' may be specified.
  23364. type: string
  23365. ingressTemplate:
  23366. description: Optional ingress template used to configure
  23367. the ACME challenge solver ingress used for HTTP01
  23368. challenges
  23369. properties:
  23370. metadata:
  23371. description: ObjectMeta overrides for the ingress
  23372. used to solve HTTP01 challenges. Only the
  23373. 'labels' and 'annotations' fields may be set.
  23374. If labels or annotations overlap with in-built
  23375. values, the values here will override the
  23376. in-built values.
  23377. properties:
  23378. annotations:
  23379. additionalProperties:
  23380. type: string
  23381. description: Annotations that should be
  23382. added to the created ACME HTTP01 solver
  23383. ingress.
  23384. type: object
  23385. labels:
  23386. additionalProperties:
  23387. type: string
  23388. description: Labels that should be added
  23389. to the created ACME HTTP01 solver ingress.
  23390. type: object
  23391. type: object
  23392. type: object
  23393. name:
  23394. description: The name of the ingress resource that
  23395. should have ACME challenge solving routes inserted
  23396. into it in order to solve HTTP01 challenges. This
  23397. is typically used in conjunction with ingress
  23398. controllers like ingress-gce, which maintains
  23399. a 1:1 mapping between external IPs and ingress
  23400. resources.
  23401. type: string
  23402. podTemplate:
  23403. description: Optional pod template used to configure
  23404. the ACME challenge solver pods used for HTTP01
  23405. challenges
  23406. properties:
  23407. metadata:
  23408. description: ObjectMeta overrides for the pod
  23409. used to solve HTTP01 challenges. Only the
  23410. 'labels' and 'annotations' fields may be set.
  23411. If labels or annotations overlap with in-built
  23412. values, the values here will override the
  23413. in-built values.
  23414. properties:
  23415. annotations:
  23416. additionalProperties:
  23417. type: string
  23418. description: Annotations that should be
  23419. added to the create ACME HTTP01 solver
  23420. pods.
  23421. type: object
  23422. labels:
  23423. additionalProperties:
  23424. type: string
  23425. description: Labels that should be added
  23426. to the created ACME HTTP01 solver pods.
  23427. type: object
  23428. type: object
  23429. spec:
  23430. description: PodSpec defines overrides for the
  23431. HTTP01 challenge solver pod. Only the 'priorityClassName',
  23432. 'nodeSelector', 'affinity', 'serviceAccountName'
  23433. and 'tolerations' fields are supported currently.
  23434. All other fields will be ignored.
  23435. properties:
  23436. affinity:
  23437. description: If specified, the pod's scheduling
  23438. constraints
  23439. properties:
  23440. nodeAffinity:
  23441. description: Describes node affinity
  23442. scheduling rules for the pod.
  23443. properties:
  23444. preferredDuringSchedulingIgnoredDuringExecution:
  23445. description: The scheduler will
  23446. prefer to schedule pods to nodes
  23447. that satisfy the affinity expressions
  23448. specified by this field, but it
  23449. may choose a node that violates
  23450. one or more of the expressions.
  23451. The node that is most preferred
  23452. is the one with the greatest sum
  23453. of weights, i.e. for each node
  23454. that meets all of the scheduling
  23455. requirements (resource request,
  23456. requiredDuringScheduling affinity
  23457. expressions, etc.), compute a
  23458. sum by iterating through the elements
  23459. of this field and adding "weight"
  23460. to the sum if the node matches
  23461. the corresponding matchExpressions;
  23462. the node(s) with the highest sum
  23463. are the most preferred.
  23464. items:
  23465. description: An empty preferred
  23466. scheduling term matches all
  23467. objects with implicit weight
  23468. 0 (i.e. it's a no-op). A null
  23469. preferred scheduling term matches
  23470. no objects (i.e. is also a no-op).
  23471. properties:
  23472. preference:
  23473. description: A node selector
  23474. term, associated with the
  23475. corresponding weight.
  23476. properties:
  23477. matchExpressions:
  23478. description: A list of
  23479. node selector requirements
  23480. by node's labels.
  23481. items:
  23482. description: A node
  23483. selector requirement
  23484. is a selector that
  23485. contains values, a
  23486. key, and an operator
  23487. that relates the key
  23488. and values.
  23489. properties:
  23490. key:
  23491. description: The
  23492. label key that
  23493. the selector applies
  23494. to.
  23495. type: string
  23496. operator:
  23497. description: Represents
  23498. a key's relationship
  23499. to a set of values.
  23500. Valid operators
  23501. are In, NotIn,
  23502. Exists, DoesNotExist.
  23503. Gt, and Lt.
  23504. type: string
  23505. values:
  23506. description: An
  23507. array of string
  23508. values. If the
  23509. operator is In
  23510. or NotIn, the
  23511. values array must
  23512. be non-empty.
  23513. If the operator
  23514. is Exists or DoesNotExist,
  23515. the values array
  23516. must be empty.
  23517. If the operator
  23518. is Gt or Lt, the
  23519. values array must
  23520. have a single
  23521. element, which
  23522. will be interpreted
  23523. as an integer.
  23524. This array is
  23525. replaced during
  23526. a strategic merge
  23527. patch.
  23528. items:
  23529. type: string
  23530. type: array
  23531. required:
  23532. - key
  23533. - operator
  23534. type: object
  23535. type: array
  23536. matchFields:
  23537. description: A list of
  23538. node selector requirements
  23539. by node's fields.
  23540. items:
  23541. description: A node
  23542. selector requirement
  23543. is a selector that
  23544. contains values, a
  23545. key, and an operator
  23546. that relates the key
  23547. and values.
  23548. properties:
  23549. key:
  23550. description: The
  23551. label key that
  23552. the selector applies
  23553. to.
  23554. type: string
  23555. operator:
  23556. description: Represents
  23557. a key's relationship
  23558. to a set of values.
  23559. Valid operators
  23560. are In, NotIn,
  23561. Exists, DoesNotExist.
  23562. Gt, and Lt.
  23563. type: string
  23564. values:
  23565. description: An
  23566. array of string
  23567. values. If the
  23568. operator is In
  23569. or NotIn, the
  23570. values array must
  23571. be non-empty.
  23572. If the operator
  23573. is Exists or DoesNotExist,
  23574. the values array
  23575. must be empty.
  23576. If the operator
  23577. is Gt or Lt, the
  23578. values array must
  23579. have a single
  23580. element, which
  23581. will be interpreted
  23582. as an integer.
  23583. This array is
  23584. replaced during
  23585. a strategic merge
  23586. patch.
  23587. items:
  23588. type: string
  23589. type: array
  23590. required:
  23591. - key
  23592. - operator
  23593. type: object
  23594. type: array
  23595. type: object
  23596. weight:
  23597. description: Weight associated
  23598. with matching the corresponding
  23599. nodeSelectorTerm, in the
  23600. range 1-100.
  23601. format: int32
  23602. type: integer
  23603. required:
  23604. - preference
  23605. - weight
  23606. type: object
  23607. type: array
  23608. requiredDuringSchedulingIgnoredDuringExecution:
  23609. description: If the affinity requirements
  23610. specified by this field are not
  23611. met at scheduling time, the pod
  23612. will not be scheduled onto the
  23613. node. If the affinity requirements
  23614. specified by this field cease
  23615. to be met at some point during
  23616. pod execution (e.g. due to an
  23617. update), the system may or may
  23618. not try to eventually evict the
  23619. pod from its node.
  23620. properties:
  23621. nodeSelectorTerms:
  23622. description: Required. A list
  23623. of node selector terms. The
  23624. terms are ORed.
  23625. items:
  23626. description: A null or empty
  23627. node selector term matches
  23628. no objects. The requirements
  23629. of them are ANDed. The TopologySelectorTerm
  23630. type implements a subset
  23631. of the NodeSelectorTerm.
  23632. properties:
  23633. matchExpressions:
  23634. description: A list of
  23635. node selector requirements
  23636. by node's labels.
  23637. items:
  23638. description: A node
  23639. selector requirement
  23640. is a selector that
  23641. contains values, a
  23642. key, and an operator
  23643. that relates the key
  23644. and values.
  23645. properties:
  23646. key:
  23647. description: The
  23648. label key that
  23649. the selector applies
  23650. to.
  23651. type: string
  23652. operator:
  23653. description: Represents
  23654. a key's relationship
  23655. to a set of values.
  23656. Valid operators
  23657. are In, NotIn,
  23658. Exists, DoesNotExist.
  23659. Gt, and Lt.
  23660. type: string
  23661. values:
  23662. description: An
  23663. array of string
  23664. values. If the
  23665. operator is In
  23666. or NotIn, the
  23667. values array must
  23668. be non-empty.
  23669. If the operator
  23670. is Exists or DoesNotExist,
  23671. the values array
  23672. must be empty.
  23673. If the operator
  23674. is Gt or Lt, the
  23675. values array must
  23676. have a single
  23677. element, which
  23678. will be interpreted
  23679. as an integer.
  23680. This array is
  23681. replaced during
  23682. a strategic merge
  23683. patch.
  23684. items:
  23685. type: string
  23686. type: array
  23687. required:
  23688. - key
  23689. - operator
  23690. type: object
  23691. type: array
  23692. matchFields:
  23693. description: A list of
  23694. node selector requirements
  23695. by node's fields.
  23696. items:
  23697. description: A node
  23698. selector requirement
  23699. is a selector that
  23700. contains values, a
  23701. key, and an operator
  23702. that relates the key
  23703. and values.
  23704. properties:
  23705. key:
  23706. description: The
  23707. label key that
  23708. the selector applies
  23709. to.
  23710. type: string
  23711. operator:
  23712. description: Represents
  23713. a key's relationship
  23714. to a set of values.
  23715. Valid operators
  23716. are In, NotIn,
  23717. Exists, DoesNotExist.
  23718. Gt, and Lt.
  23719. type: string
  23720. values:
  23721. description: An
  23722. array of string
  23723. values. If the
  23724. operator is In
  23725. or NotIn, the
  23726. values array must
  23727. be non-empty.
  23728. If the operator
  23729. is Exists or DoesNotExist,
  23730. the values array
  23731. must be empty.
  23732. If the operator
  23733. is Gt or Lt, the
  23734. values array must
  23735. have a single
  23736. element, which
  23737. will be interpreted
  23738. as an integer.
  23739. This array is
  23740. replaced during
  23741. a strategic merge
  23742. patch.
  23743. items:
  23744. type: string
  23745. type: array
  23746. required:
  23747. - key
  23748. - operator
  23749. type: object
  23750. type: array
  23751. type: object
  23752. type: array
  23753. required:
  23754. - nodeSelectorTerms
  23755. type: object
  23756. type: object
  23757. podAffinity:
  23758. description: Describes pod affinity
  23759. scheduling rules (e.g. co-locate this
  23760. pod in the same node, zone, etc. as
  23761. some other pod(s)).
  23762. properties:
  23763. preferredDuringSchedulingIgnoredDuringExecution:
  23764. description: The scheduler will
  23765. prefer to schedule pods to nodes
  23766. that satisfy the affinity expressions
  23767. specified by this field, but it
  23768. may choose a node that violates
  23769. one or more of the expressions.
  23770. The node that is most preferred
  23771. is the one with the greatest sum
  23772. of weights, i.e. for each node
  23773. that meets all of the scheduling
  23774. requirements (resource request,
  23775. requiredDuringScheduling affinity
  23776. expressions, etc.), compute a
  23777. sum by iterating through the elements
  23778. of this field and adding "weight"
  23779. to the sum if the node has pods
  23780. which matches the corresponding
  23781. podAffinityTerm; the node(s) with
  23782. the highest sum are the most preferred.
  23783. items:
  23784. description: The weights of all
  23785. of the matched WeightedPodAffinityTerm
  23786. fields are added per-node to
  23787. find the most preferred node(s)
  23788. properties:
  23789. podAffinityTerm:
  23790. description: Required. A pod
  23791. affinity term, associated
  23792. with the corresponding weight.
  23793. properties:
  23794. labelSelector:
  23795. description: A label query
  23796. over a set of resources,
  23797. in this case pods.
  23798. properties:
  23799. matchExpressions:
  23800. description: matchExpressions
  23801. is a list of label
  23802. selector requirements.
  23803. The requirements
  23804. are ANDed.
  23805. items:
  23806. description: A label
  23807. selector requirement
  23808. is a selector
  23809. that contains
  23810. values, a key,
  23811. and an operator
  23812. that relates the
  23813. key and values.
  23814. properties:
  23815. key:
  23816. description: key
  23817. is the label
  23818. key that the
  23819. selector applies
  23820. to.
  23821. type: string
  23822. operator:
  23823. description: operator
  23824. represents
  23825. a key's relationship
  23826. to a set of
  23827. values. Valid
  23828. operators
  23829. are In, NotIn,
  23830. Exists and
  23831. DoesNotExist.
  23832. type: string
  23833. values:
  23834. description: values
  23835. is an array
  23836. of string
  23837. values. If
  23838. the operator
  23839. is In or NotIn,
  23840. the values
  23841. array must
  23842. be non-empty.
  23843. If the operator
  23844. is Exists
  23845. or DoesNotExist,
  23846. the values
  23847. array must
  23848. be empty.
  23849. This array
  23850. is replaced
  23851. during a strategic
  23852. merge patch.
  23853. items:
  23854. type: string
  23855. type: array
  23856. required:
  23857. - key
  23858. - operator
  23859. type: object
  23860. type: array
  23861. matchLabels:
  23862. additionalProperties:
  23863. type: string
  23864. description: matchLabels
  23865. is a map of {key,value}
  23866. pairs. A single
  23867. {key,value} in the
  23868. matchLabels map
  23869. is equivalent to
  23870. an element of matchExpressions,
  23871. whose key field
  23872. is "key", the operator
  23873. is "In", and the
  23874. values array contains
  23875. only "value". The
  23876. requirements are
  23877. ANDed.
  23878. type: object
  23879. type: object
  23880. namespaces:
  23881. description: namespaces
  23882. specifies which namespaces
  23883. the labelSelector applies
  23884. to (matches against);
  23885. null or empty list means
  23886. "this pod's namespace"
  23887. items:
  23888. type: string
  23889. type: array
  23890. topologyKey:
  23891. description: This pod
  23892. should be co-located
  23893. (affinity) or not co-located
  23894. (anti-affinity) with
  23895. the pods matching the
  23896. labelSelector in the
  23897. specified namespaces,
  23898. where co-located is
  23899. defined as running on
  23900. a node whose value of
  23901. the label with key topologyKey
  23902. matches that of any
  23903. node on which any of
  23904. the selected pods is
  23905. running. Empty topologyKey
  23906. is not allowed.
  23907. type: string
  23908. required:
  23909. - topologyKey
  23910. type: object
  23911. weight:
  23912. description: weight associated
  23913. with matching the corresponding
  23914. podAffinityTerm, in the
  23915. range 1-100.
  23916. format: int32
  23917. type: integer
  23918. required:
  23919. - podAffinityTerm
  23920. - weight
  23921. type: object
  23922. type: array
  23923. requiredDuringSchedulingIgnoredDuringExecution:
  23924. description: If the affinity requirements
  23925. specified by this field are not
  23926. met at scheduling time, the pod
  23927. will not be scheduled onto the
  23928. node. If the affinity requirements
  23929. specified by this field cease
  23930. to be met at some point during
  23931. pod execution (e.g. due to a pod
  23932. label update), the system may
  23933. or may not try to eventually evict
  23934. the pod from its node. When there
  23935. are multiple elements, the lists
  23936. of nodes corresponding to each
  23937. podAffinityTerm are intersected,
  23938. i.e. all terms must be satisfied.
  23939. items:
  23940. description: Defines a set of
  23941. pods (namely those matching
  23942. the labelSelector relative to
  23943. the given namespace(s)) that
  23944. this pod should be co-located
  23945. (affinity) or not co-located
  23946. (anti-affinity) with, where
  23947. co-located is defined as running
  23948. on a node whose value of the
  23949. label with key <topologyKey>
  23950. matches that of any node on
  23951. which a pod of the set of pods
  23952. is running
  23953. properties:
  23954. labelSelector:
  23955. description: A label query
  23956. over a set of resources,
  23957. in this case pods.
  23958. properties:
  23959. matchExpressions:
  23960. description: matchExpressions
  23961. is a list of label selector
  23962. requirements. The requirements
  23963. are ANDed.
  23964. items:
  23965. description: A label
  23966. selector requirement
  23967. is a selector that
  23968. contains values, a
  23969. key, and an operator
  23970. that relates the key
  23971. and values.
  23972. properties:
  23973. key:
  23974. description: key
  23975. is the label key
  23976. that the selector
  23977. applies to.
  23978. type: string
  23979. operator:
  23980. description: operator
  23981. represents a key's
  23982. relationship to
  23983. a set of values.
  23984. Valid operators
  23985. are In, NotIn,
  23986. Exists and DoesNotExist.
  23987. type: string
  23988. values:
  23989. description: values
  23990. is an array of
  23991. string values.
  23992. If the operator
  23993. is In or NotIn,
  23994. the values array
  23995. must be non-empty.
  23996. If the operator
  23997. is Exists or DoesNotExist,
  23998. the values array
  23999. must be empty.
  24000. This array is
  24001. replaced during
  24002. a strategic merge
  24003. patch.
  24004. items:
  24005. type: string
  24006. type: array
  24007. required:
  24008. - key
  24009. - operator
  24010. type: object
  24011. type: array
  24012. matchLabels:
  24013. additionalProperties:
  24014. type: string
  24015. description: matchLabels
  24016. is a map of {key,value}
  24017. pairs. A single {key,value}
  24018. in the matchLabels map
  24019. is equivalent to an
  24020. element of matchExpressions,
  24021. whose key field is "key",
  24022. the operator is "In",
  24023. and the values array
  24024. contains only "value".
  24025. The requirements are
  24026. ANDed.
  24027. type: object
  24028. type: object
  24029. namespaces:
  24030. description: namespaces specifies
  24031. which namespaces the labelSelector
  24032. applies to (matches against);
  24033. null or empty list means
  24034. "this pod's namespace"
  24035. items:
  24036. type: string
  24037. type: array
  24038. topologyKey:
  24039. description: This pod should
  24040. be co-located (affinity)
  24041. or not co-located (anti-affinity)
  24042. with the pods matching the
  24043. labelSelector in the specified
  24044. namespaces, where co-located
  24045. is defined as running on
  24046. a node whose value of the
  24047. label with key topologyKey
  24048. matches that of any node
  24049. on which any of the selected
  24050. pods is running. Empty topologyKey
  24051. is not allowed.
  24052. type: string
  24053. required:
  24054. - topologyKey
  24055. type: object
  24056. type: array
  24057. type: object
  24058. podAntiAffinity:
  24059. description: Describes pod anti-affinity
  24060. scheduling rules (e.g. avoid putting
  24061. this pod in the same node, zone, etc.
  24062. as some other pod(s)).
  24063. properties:
  24064. preferredDuringSchedulingIgnoredDuringExecution:
  24065. description: The scheduler will
  24066. prefer to schedule pods to nodes
  24067. that satisfy the anti-affinity
  24068. expressions specified by this
  24069. field, but it may choose a node
  24070. that violates one or more of the
  24071. expressions. The node that is
  24072. most preferred is the one with
  24073. the greatest sum of weights, i.e.
  24074. for each node that meets all of
  24075. the scheduling requirements (resource
  24076. request, requiredDuringScheduling
  24077. anti-affinity expressions, etc.),
  24078. compute a sum by iterating through
  24079. the elements of this field and
  24080. adding "weight" to the sum if
  24081. the node has pods which matches
  24082. the corresponding podAffinityTerm;
  24083. the node(s) with the highest sum
  24084. are the most preferred.
  24085. items:
  24086. description: The weights of all
  24087. of the matched WeightedPodAffinityTerm
  24088. fields are added per-node to
  24089. find the most preferred node(s)
  24090. properties:
  24091. podAffinityTerm:
  24092. description: Required. A pod
  24093. affinity term, associated
  24094. with the corresponding weight.
  24095. properties:
  24096. labelSelector:
  24097. description: A label query
  24098. over a set of resources,
  24099. in this case pods.
  24100. properties:
  24101. matchExpressions:
  24102. description: matchExpressions
  24103. is a list of label
  24104. selector requirements.
  24105. The requirements
  24106. are ANDed.
  24107. items:
  24108. description: A label
  24109. selector requirement
  24110. is a selector
  24111. that contains
  24112. values, a key,
  24113. and an operator
  24114. that relates the
  24115. key and values.
  24116. properties:
  24117. key:
  24118. description: key
  24119. is the label
  24120. key that the
  24121. selector applies
  24122. to.
  24123. type: string
  24124. operator:
  24125. description: operator
  24126. represents
  24127. a key's relationship
  24128. to a set of
  24129. values. Valid
  24130. operators
  24131. are In, NotIn,
  24132. Exists and
  24133. DoesNotExist.
  24134. type: string
  24135. values:
  24136. description: values
  24137. is an array
  24138. of string
  24139. values. If
  24140. the operator
  24141. is In or NotIn,
  24142. the values
  24143. array must
  24144. be non-empty.
  24145. If the operator
  24146. is Exists
  24147. or DoesNotExist,
  24148. the values
  24149. array must
  24150. be empty.
  24151. This array
  24152. is replaced
  24153. during a strategic
  24154. merge patch.
  24155. items:
  24156. type: string
  24157. type: array
  24158. required:
  24159. - key
  24160. - operator
  24161. type: object
  24162. type: array
  24163. matchLabels:
  24164. additionalProperties:
  24165. type: string
  24166. description: matchLabels
  24167. is a map of {key,value}
  24168. pairs. A single
  24169. {key,value} in the
  24170. matchLabels map
  24171. is equivalent to
  24172. an element of matchExpressions,
  24173. whose key field
  24174. is "key", the operator
  24175. is "In", and the
  24176. values array contains
  24177. only "value". The
  24178. requirements are
  24179. ANDed.
  24180. type: object
  24181. type: object
  24182. namespaces:
  24183. description: namespaces
  24184. specifies which namespaces
  24185. the labelSelector applies
  24186. to (matches against);
  24187. null or empty list means
  24188. "this pod's namespace"
  24189. items:
  24190. type: string
  24191. type: array
  24192. topologyKey:
  24193. description: This pod
  24194. should be co-located
  24195. (affinity) or not co-located
  24196. (anti-affinity) with
  24197. the pods matching the
  24198. labelSelector in the
  24199. specified namespaces,
  24200. where co-located is
  24201. defined as running on
  24202. a node whose value of
  24203. the label with key topologyKey
  24204. matches that of any
  24205. node on which any of
  24206. the selected pods is
  24207. running. Empty topologyKey
  24208. is not allowed.
  24209. type: string
  24210. required:
  24211. - topologyKey
  24212. type: object
  24213. weight:
  24214. description: weight associated
  24215. with matching the corresponding
  24216. podAffinityTerm, in the
  24217. range 1-100.
  24218. format: int32
  24219. type: integer
  24220. required:
  24221. - podAffinityTerm
  24222. - weight
  24223. type: object
  24224. type: array
  24225. requiredDuringSchedulingIgnoredDuringExecution:
  24226. description: If the anti-affinity
  24227. requirements specified by this
  24228. field are not met at scheduling
  24229. time, the pod will not be scheduled
  24230. onto the node. If the anti-affinity
  24231. requirements specified by this
  24232. field cease to be met at some
  24233. point during pod execution (e.g.
  24234. due to a pod label update), the
  24235. system may or may not try to eventually
  24236. evict the pod from its node. When
  24237. there are multiple elements, the
  24238. lists of nodes corresponding to
  24239. each podAffinityTerm are intersected,
  24240. i.e. all terms must be satisfied.
  24241. items:
  24242. description: Defines a set of
  24243. pods (namely those matching
  24244. the labelSelector relative to
  24245. the given namespace(s)) that
  24246. this pod should be co-located
  24247. (affinity) or not co-located
  24248. (anti-affinity) with, where
  24249. co-located is defined as running
  24250. on a node whose value of the
  24251. label with key <topologyKey>
  24252. matches that of any node on
  24253. which a pod of the set of pods
  24254. is running
  24255. properties:
  24256. labelSelector:
  24257. description: A label query
  24258. over a set of resources,
  24259. in this case pods.
  24260. properties:
  24261. matchExpressions:
  24262. description: matchExpressions
  24263. is a list of label selector
  24264. requirements. The requirements
  24265. are ANDed.
  24266. items:
  24267. description: A label
  24268. selector requirement
  24269. is a selector that
  24270. contains values, a
  24271. key, and an operator
  24272. that relates the key
  24273. and values.
  24274. properties:
  24275. key:
  24276. description: key
  24277. is the label key
  24278. that the selector
  24279. applies to.
  24280. type: string
  24281. operator:
  24282. description: operator
  24283. represents a key's
  24284. relationship to
  24285. a set of values.
  24286. Valid operators
  24287. are In, NotIn,
  24288. Exists and DoesNotExist.
  24289. type: string
  24290. values:
  24291. description: values
  24292. is an array of
  24293. string values.
  24294. If the operator
  24295. is In or NotIn,
  24296. the values array
  24297. must be non-empty.
  24298. If the operator
  24299. is Exists or DoesNotExist,
  24300. the values array
  24301. must be empty.
  24302. This array is
  24303. replaced during
  24304. a strategic merge
  24305. patch.
  24306. items:
  24307. type: string
  24308. type: array
  24309. required:
  24310. - key
  24311. - operator
  24312. type: object
  24313. type: array
  24314. matchLabels:
  24315. additionalProperties:
  24316. type: string
  24317. description: matchLabels
  24318. is a map of {key,value}
  24319. pairs. A single {key,value}
  24320. in the matchLabels map
  24321. is equivalent to an
  24322. element of matchExpressions,
  24323. whose key field is "key",
  24324. the operator is "In",
  24325. and the values array
  24326. contains only "value".
  24327. The requirements are
  24328. ANDed.
  24329. type: object
  24330. type: object
  24331. namespaces:
  24332. description: namespaces specifies
  24333. which namespaces the labelSelector
  24334. applies to (matches against);
  24335. null or empty list means
  24336. "this pod's namespace"
  24337. items:
  24338. type: string
  24339. type: array
  24340. topologyKey:
  24341. description: This pod should
  24342. be co-located (affinity)
  24343. or not co-located (anti-affinity)
  24344. with the pods matching the
  24345. labelSelector in the specified
  24346. namespaces, where co-located
  24347. is defined as running on
  24348. a node whose value of the
  24349. label with key topologyKey
  24350. matches that of any node
  24351. on which any of the selected
  24352. pods is running. Empty topologyKey
  24353. is not allowed.
  24354. type: string
  24355. required:
  24356. - topologyKey
  24357. type: object
  24358. type: array
  24359. type: object
  24360. type: object
  24361. nodeSelector:
  24362. additionalProperties:
  24363. type: string
  24364. description: 'NodeSelector is a selector
  24365. which must be true for the pod to fit
  24366. on a node. Selector which must match a
  24367. node''s labels for the pod to be scheduled
  24368. on that node. More info: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/'
  24369. type: object
  24370. priorityClassName:
  24371. description: If specified, the pod's priorityClassName.
  24372. type: string
  24373. serviceAccountName:
  24374. description: If specified, the pod's service
  24375. account
  24376. type: string
  24377. tolerations:
  24378. description: If specified, the pod's tolerations.
  24379. items:
  24380. description: The pod this Toleration is
  24381. attached to tolerates any taint that
  24382. matches the triple <key,value,effect>
  24383. using the matching operator <operator>.
  24384. properties:
  24385. effect:
  24386. description: Effect indicates the
  24387. taint effect to match. Empty means
  24388. match all taint effects. When specified,
  24389. allowed values are NoSchedule, PreferNoSchedule
  24390. and NoExecute.
  24391. type: string
  24392. key:
  24393. description: Key is the taint key
  24394. that the toleration applies to.
  24395. Empty means match all taint keys.
  24396. If the key is empty, operator must
  24397. be Exists; this combination means
  24398. to match all values and all keys.
  24399. type: string
  24400. operator:
  24401. description: Operator represents a
  24402. key's relationship to the value.
  24403. Valid operators are Exists and Equal.
  24404. Defaults to Equal. Exists is equivalent
  24405. to wildcard for value, so that a
  24406. pod can tolerate all taints of a
  24407. particular category.
  24408. type: string
  24409. tolerationSeconds:
  24410. description: TolerationSeconds represents
  24411. the period of time the toleration
  24412. (which must be of effect NoExecute,
  24413. otherwise this field is ignored)
  24414. tolerates the taint. By default,
  24415. it is not set, which means tolerate
  24416. the taint forever (do not evict).
  24417. Zero and negative values will be
  24418. treated as 0 (evict immediately)
  24419. by the system.
  24420. format: int64
  24421. type: integer
  24422. value:
  24423. description: Value is the taint value
  24424. the toleration matches to. If the
  24425. operator is Exists, the value should
  24426. be empty, otherwise just a regular
  24427. string.
  24428. type: string
  24429. type: object
  24430. type: array
  24431. type: object
  24432. type: object
  24433. serviceType:
  24434. description: Optional service type for Kubernetes
  24435. solver service
  24436. type: string
  24437. type: object
  24438. type: object
  24439. selector:
  24440. description: Selector selects a set of DNSNames on the Certificate
  24441. resource that should be solved using this challenge solver.
  24442. If not specified, the solver will be treated as the 'default'
  24443. solver with the lowest priority, i.e. if any other solver
  24444. has a more specific match, it will be used instead.
  24445. properties:
  24446. dnsNames:
  24447. description: List of DNSNames that this solver will
  24448. be used to solve. If specified and a match is found,
  24449. a dnsNames selector will take precedence over a dnsZones
  24450. selector. If multiple solvers match with the same
  24451. dnsNames value, the solver with the most matching
  24452. labels in matchLabels will be selected. If neither
  24453. has more matches, the solver defined earlier in the
  24454. list will be selected.
  24455. items:
  24456. type: string
  24457. type: array
  24458. dnsZones:
  24459. description: List of DNSZones that this solver will
  24460. be used to solve. The most specific DNS zone match
  24461. specified here will take precedence over other DNS
  24462. zone matches, so a solver specifying sys.example.com
  24463. will be selected over one specifying example.com for
  24464. the domain www.sys.example.com. If multiple solvers
  24465. match with the same dnsZones value, the solver with
  24466. the most matching labels in matchLabels will be selected.
  24467. If neither has more matches, the solver defined earlier
  24468. in the list will be selected.
  24469. items:
  24470. type: string
  24471. type: array
  24472. matchLabels:
  24473. additionalProperties:
  24474. type: string
  24475. description: A label selector that is used to refine
  24476. the set of certificate's that this challenge solver
  24477. will apply to.
  24478. type: object
  24479. type: object
  24480. type: object
  24481. type: array
  24482. required:
  24483. - privateKeySecretRef
  24484. - server
  24485. type: object
  24486. ca:
  24487. description: CA configures this issuer to sign certificates using
  24488. a signing CA keypair stored in a Secret resource. This is used to
  24489. build internal PKIs that are managed by cert-manager.
  24490. properties:
  24491. crlDistributionPoints:
  24492. description: The CRL distribution points is an X.509 v3 certificate
  24493. extension which identifies the location of the CRL from which
  24494. the revocation of this certificate can be checked. If not set,
  24495. certificates will be issued without distribution points set.
  24496. items:
  24497. type: string
  24498. type: array
  24499. ocspServers:
  24500. description: The OCSP server list is an X.509 v3 extension that
  24501. defines a list of URLs of OCSP responders. The OCSP responders
  24502. can be queried for the revocation status of an issued certificate.
  24503. If not set, the certificate will be issued with no OCSP servers
  24504. set. For example, an OCSP server URL could be "http://ocsp.int-x3.letsencrypt.org".
  24505. items:
  24506. type: string
  24507. type: array
  24508. secretName:
  24509. description: SecretName is the name of the secret used to sign
  24510. Certificates issued by this Issuer.
  24511. type: string
  24512. required:
  24513. - secretName
  24514. type: object
  24515. selfSigned:
  24516. description: SelfSigned configures this issuer to 'self sign' certificates
  24517. using the private key used to create the CertificateRequest object.
  24518. properties:
  24519. crlDistributionPoints:
  24520. description: The CRL distribution points is an X.509 v3 certificate
  24521. extension which identifies the location of the CRL from which
  24522. the revocation of this certificate can be checked. If not set
  24523. certificate will be issued without CDP. Values are strings.
  24524. items:
  24525. type: string
  24526. type: array
  24527. type: object
  24528. vault:
  24529. description: Vault configures this issuer to sign certificates using
  24530. a HashiCorp Vault PKI backend.
  24531. properties:
  24532. auth:
  24533. description: Auth configures how cert-manager authenticates with
  24534. the Vault server.
  24535. properties:
  24536. appRole:
  24537. description: AppRole authenticates with Vault using the App
  24538. Role auth mechanism, with the role and secret stored in
  24539. a Kubernetes Secret resource.
  24540. properties:
  24541. path:
  24542. description: 'Path where the App Role authentication backend
  24543. is mounted in Vault, e.g: "approle"'
  24544. type: string
  24545. roleId:
  24546. description: RoleID configured in the App Role authentication
  24547. backend when setting up the authentication backend in
  24548. Vault.
  24549. type: string
  24550. secretRef:
  24551. description: Reference to a key in a Secret that contains
  24552. the App Role secret used to authenticate with Vault.
  24553. The `key` field must be specified and denotes which
  24554. entry within the Secret resource is used as the app
  24555. role secret.
  24556. properties:
  24557. key:
  24558. description: The key of the entry in the Secret resource's
  24559. `data` field to be used. Some instances of this
  24560. field may be defaulted, in others it may be required.
  24561. type: string
  24562. name:
  24563. description: 'Name of the resource being referred
  24564. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24565. type: string
  24566. required:
  24567. - name
  24568. type: object
  24569. required:
  24570. - path
  24571. - roleId
  24572. - secretRef
  24573. type: object
  24574. kubernetes:
  24575. description: Kubernetes authenticates with Vault by passing
  24576. the ServiceAccount token stored in the named Secret resource
  24577. to the Vault server.
  24578. properties:
  24579. mountPath:
  24580. description: The Vault mountPath here is the mount path
  24581. to use when authenticating with Vault. For example,
  24582. setting a value to `/v1/auth/foo`, will use the path
  24583. `/v1/auth/foo/login` to authenticate with Vault. If
  24584. unspecified, the default value "/v1/auth/kubernetes"
  24585. will be used.
  24586. type: string
  24587. role:
  24588. description: A required field containing the Vault Role
  24589. to assume. A Role binds a Kubernetes ServiceAccount
  24590. with a set of Vault policies.
  24591. type: string
  24592. secretRef:
  24593. description: The required Secret field containing a Kubernetes
  24594. ServiceAccount JWT used for authenticating with Vault.
  24595. Use of 'ambient credentials' is not supported.
  24596. properties:
  24597. key:
  24598. description: The key of the entry in the Secret resource's
  24599. `data` field to be used. Some instances of this
  24600. field may be defaulted, in others it may be required.
  24601. type: string
  24602. name:
  24603. description: 'Name of the resource being referred
  24604. to. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24605. type: string
  24606. required:
  24607. - name
  24608. type: object
  24609. required:
  24610. - role
  24611. - secretRef
  24612. type: object
  24613. tokenSecretRef:
  24614. description: TokenSecretRef authenticates with Vault by presenting
  24615. a token.
  24616. properties:
  24617. key:
  24618. description: The key of the entry in the Secret resource's
  24619. `data` field to be used. Some instances of this field
  24620. may be defaulted, in others it may be required.
  24621. type: string
  24622. name:
  24623. description: 'Name of the resource being referred to.
  24624. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24625. type: string
  24626. required:
  24627. - name
  24628. type: object
  24629. type: object
  24630. caBundle:
  24631. description: PEM encoded CA bundle used to validate Vault server
  24632. certificate. Only used if the Server URL is using HTTPS protocol.
  24633. This parameter is ignored for plain HTTP protocol connection.
  24634. If not set the system root certificates are used to validate
  24635. the TLS connection.
  24636. format: byte
  24637. type: string
  24638. namespace:
  24639. description: 'Name of the vault namespace. Namespaces is a set
  24640. of features within Vault Enterprise that allows Vault environments
  24641. to support Secure Multi-tenancy. e.g: "ns1" More about namespaces
  24642. can be found here https://www.vaultproject.io/docs/enterprise/namespaces'
  24643. type: string
  24644. path:
  24645. description: 'Path is the mount path of the Vault PKI backend''s
  24646. `sign` endpoint, e.g: "my_pki_mount/sign/my-role-name".'
  24647. type: string
  24648. server:
  24649. description: 'Server is the connection address for the Vault server,
  24650. e.g: "https://vault.example.com:8200".'
  24651. type: string
  24652. required:
  24653. - auth
  24654. - path
  24655. - server
  24656. type: object
  24657. venafi:
  24658. description: Venafi configures this issuer to sign certificates using
  24659. a Venafi TPP or Venafi Cloud policy zone.
  24660. properties:
  24661. cloud:
  24662. description: Cloud specifies the Venafi cloud configuration settings.
  24663. Only one of TPP or Cloud may be specified.
  24664. properties:
  24665. apiTokenSecretRef:
  24666. description: APITokenSecretRef is a secret key selector for
  24667. the Venafi Cloud API token.
  24668. properties:
  24669. key:
  24670. description: The key of the entry in the Secret resource's
  24671. `data` field to be used. Some instances of this field
  24672. may be defaulted, in others it may be required.
  24673. type: string
  24674. name:
  24675. description: 'Name of the resource being referred to.
  24676. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24677. type: string
  24678. required:
  24679. - name
  24680. type: object
  24681. url:
  24682. description: URL is the base URL for Venafi Cloud. Defaults
  24683. to "https://api.venafi.cloud/v1".
  24684. type: string
  24685. required:
  24686. - apiTokenSecretRef
  24687. type: object
  24688. tpp:
  24689. description: TPP specifies Trust Protection Platform configuration
  24690. settings. Only one of TPP or Cloud may be specified.
  24691. properties:
  24692. caBundle:
  24693. description: CABundle is a PEM encoded TLS certificate to
  24694. use to verify connections to the TPP instance. If specified,
  24695. system roots will not be used and the issuing CA for the
  24696. TPP instance must be verifiable using the provided root.
  24697. If not specified, the connection will be verified using
  24698. the cert-manager system root certificates.
  24699. format: byte
  24700. type: string
  24701. credentialsRef:
  24702. description: CredentialsRef is a reference to a Secret containing
  24703. the username and password for the TPP server. The secret
  24704. must contain two keys, 'username' and 'password'.
  24705. properties:
  24706. name:
  24707. description: 'Name of the resource being referred to.
  24708. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
  24709. type: string
  24710. required:
  24711. - name
  24712. type: object
  24713. url:
  24714. description: 'URL is the base URL for the vedsdk endpoint
  24715. of the Venafi TPP instance, for example: "https://tpp.example.com/vedsdk".'
  24716. type: string
  24717. required:
  24718. - credentialsRef
  24719. - url
  24720. type: object
  24721. zone:
  24722. description: Zone is the Venafi Policy Zone to use for this issuer.
  24723. All requests made to the Venafi platform will be restricted
  24724. by the named zone policy. This field is required.
  24725. type: string
  24726. required:
  24727. - zone
  24728. type: object
  24729. type: object
  24730. status:
  24731. description: Status of the Issuer. This is set and managed automatically.
  24732. properties:
  24733. acme:
  24734. description: ACME specific status options. This field should only
  24735. be set if the Issuer is configured to use an ACME server to issue
  24736. certificates.
  24737. properties:
  24738. lastRegisteredEmail:
  24739. description: LastRegisteredEmail is the email associated with
  24740. the latest registered ACME account, in order to track changes
  24741. made to registered account associated with the Issuer
  24742. type: string
  24743. uri:
  24744. description: URI is the unique account identifier, which can also
  24745. be used to retrieve account details from the CA
  24746. type: string
  24747. type: object
  24748. conditions:
  24749. description: List of status conditions to indicate the status of a
  24750. CertificateRequest. Known condition types are `Ready`.
  24751. items:
  24752. description: IssuerCondition contains condition information for
  24753. an Issuer.
  24754. properties:
  24755. lastTransitionTime:
  24756. description: LastTransitionTime is the timestamp corresponding
  24757. to the last status change of this condition.
  24758. format: date-time
  24759. type: string
  24760. message:
  24761. description: Message is a human readable description of the
  24762. details of the last transition, complementing reason.
  24763. type: string
  24764. observedGeneration:
  24765. description: If set, this represents the .metadata.generation
  24766. that the condition was set based upon. For instance, if .metadata.generation
  24767. is currently 12, but the .status.condition[x].observedGeneration
  24768. is 9, the condition is out of date with respect to the current
  24769. state of the Issuer.
  24770. format: int64
  24771. type: integer
  24772. reason:
  24773. description: Reason is a brief machine readable explanation
  24774. for the condition's last transition.
  24775. type: string
  24776. status:
  24777. description: Status of the condition, one of (`True`, `False`,
  24778. `Unknown`).
  24779. enum:
  24780. - "True"
  24781. - "False"
  24782. - Unknown
  24783. type: string
  24784. type:
  24785. description: Type of the condition, known values are (`Ready`).
  24786. type: string
  24787. required:
  24788. - status
  24789. - type
  24790. type: object
  24791. type: array
  24792. type: object
  24793. required:
  24794. - spec
  24795. type: object
  24796. served: true
  24797. storage: true
  24798. subresources:
  24799. status: {}
  24800. status:
  24801. acceptedNames:
  24802. kind: ""
  24803. plural: ""
  24804. conditions: []
  24805. storedVersions: []
  24806. ---
  24807. apiVersion: apiextensions.k8s.io/v1
  24808. kind: CustomResourceDefinition
  24809. metadata:
  24810. annotations:
  24811. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  24812. labels:
  24813. app: cert-manager
  24814. app.kubernetes.io/instance: cert-manager
  24815. app.kubernetes.io/name: cert-manager
  24816. name: orders.acme.cert-manager.io
  24817. spec:
  24818. conversion:
  24819. strategy: Webhook
  24820. webhook:
  24821. clientConfig:
  24822. service:
  24823. name: cert-manager-webhook
  24824. namespace: cert-manager
  24825. path: /convert
  24826. conversionReviewVersions:
  24827. - v1
  24828. - v1beta1
  24829. group: acme.cert-manager.io
  24830. names:
  24831. categories:
  24832. - cert-manager
  24833. - cert-manager-acme
  24834. kind: Order
  24835. listKind: OrderList
  24836. plural: orders
  24837. singular: order
  24838. scope: Namespaced
  24839. versions:
  24840. - additionalPrinterColumns:
  24841. - jsonPath: .status.state
  24842. name: State
  24843. type: string
  24844. - jsonPath: .spec.issuerRef.name
  24845. name: Issuer
  24846. priority: 1
  24847. type: string
  24848. - jsonPath: .status.reason
  24849. name: Reason
  24850. priority: 1
  24851. type: string
  24852. - description: CreationTimestamp is a timestamp representing the server time when
  24853. this object was created. It is not guaranteed to be set in happens-before
  24854. order across separate operations. Clients may not set this value. It is represented
  24855. in RFC3339 form and is in UTC.
  24856. jsonPath: .metadata.creationTimestamp
  24857. name: Age
  24858. type: date
  24859. name: v1alpha2
  24860. schema:
  24861. openAPIV3Schema:
  24862. description: Order is a type to represent an Order with an ACME server
  24863. properties:
  24864. apiVersion:
  24865. description: 'APIVersion defines the versioned schema of this representation
  24866. of an object. Servers should convert recognized schemas to the latest
  24867. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  24868. type: string
  24869. kind:
  24870. description: 'Kind is a string value representing the REST resource this
  24871. object represents. Servers may infer this from the endpoint the client
  24872. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  24873. type: string
  24874. metadata:
  24875. type: object
  24876. spec:
  24877. properties:
  24878. commonName:
  24879. description: CommonName is the common name as specified on the DER
  24880. encoded CSR. If specified, this value must also be present in `dnsNames`
  24881. or `ipAddresses`. This field must match the corresponding field
  24882. on the DER encoded CSR.
  24883. type: string
  24884. csr:
  24885. description: Certificate signing request bytes in DER encoding. This
  24886. will be used when finalizing the order. This field must be set on
  24887. the order.
  24888. format: byte
  24889. type: string
  24890. dnsNames:
  24891. description: DNSNames is a list of DNS names that should be included
  24892. as part of the Order validation process. This field must match the
  24893. corresponding field on the DER encoded CSR.
  24894. items:
  24895. type: string
  24896. type: array
  24897. duration:
  24898. description: Duration is the duration for the not after date for the
  24899. requested certificate. this is set on order creation as pe the ACME
  24900. spec.
  24901. type: string
  24902. ipAddresses:
  24903. description: IPAddresses is a list of IP addresses that should be
  24904. included as part of the Order validation process. This field must
  24905. match the corresponding field on the DER encoded CSR.
  24906. items:
  24907. type: string
  24908. type: array
  24909. issuerRef:
  24910. description: IssuerRef references a properly configured ACME-type
  24911. Issuer which should be used to create this Order. If the Issuer
  24912. does not exist, processing will be retried. If the Issuer is not
  24913. an 'ACME' Issuer, an error will be returned and the Order will be
  24914. marked as failed.
  24915. properties:
  24916. group:
  24917. description: Group of the resource being referred to.
  24918. type: string
  24919. kind:
  24920. description: Kind of the resource being referred to.
  24921. type: string
  24922. name:
  24923. description: Name of the resource being referred to.
  24924. type: string
  24925. required:
  24926. - name
  24927. type: object
  24928. required:
  24929. - csr
  24930. - issuerRef
  24931. type: object
  24932. status:
  24933. properties:
  24934. authorizations:
  24935. description: Authorizations contains data returned from the ACME server
  24936. on what authorizations must be completed in order to validate the
  24937. DNS names specified on the Order.
  24938. items:
  24939. description: ACMEAuthorization contains data returned from the ACME
  24940. server on an authorization that must be completed in order validate
  24941. a DNS name on an ACME Order resource.
  24942. properties:
  24943. challenges:
  24944. description: Challenges specifies the challenge types offered
  24945. by the ACME server. One of these challenge types will be selected
  24946. when validating the DNS name and an appropriate Challenge
  24947. resource will be created to perform the ACME challenge process.
  24948. items:
  24949. description: Challenge specifies a challenge offered by the
  24950. ACME server for an Order. An appropriate Challenge resource
  24951. can be created to perform the ACME challenge process.
  24952. properties:
  24953. token:
  24954. description: Token is the token that must be presented
  24955. for this challenge. This is used to compute the 'key'
  24956. that must also be presented.
  24957. type: string
  24958. type:
  24959. description: Type is the type of challenge being offered,
  24960. e.g. 'http-01', 'dns-01', 'tls-sni-01', etc. This is
  24961. the raw value retrieved from the ACME server. Only 'http-01'
  24962. and 'dns-01' are supported by cert-manager, other values
  24963. will be ignored.
  24964. type: string
  24965. url:
  24966. description: URL is the URL of this challenge. It can
  24967. be used to retrieve additional metadata about the Challenge
  24968. from the ACME server.
  24969. type: string
  24970. required:
  24971. - token
  24972. - type
  24973. - url
  24974. type: object
  24975. type: array
  24976. identifier:
  24977. description: Identifier is the DNS name to be validated as part
  24978. of this authorization
  24979. type: string
  24980. initialState:
  24981. description: InitialState is the initial state of the ACME authorization
  24982. when first fetched from the ACME server. If an Authorization
  24983. is already 'valid', the Order controller will not create a
  24984. Challenge resource for the authorization. This will occur
  24985. when working with an ACME server that enables 'authz reuse'
  24986. (such as Let's Encrypt's production endpoint). If not set
  24987. and 'identifier' is set, the state is assumed to be pending
  24988. and a Challenge will be created.
  24989. enum:
  24990. - valid
  24991. - ready
  24992. - pending
  24993. - processing
  24994. - invalid
  24995. - expired
  24996. - errored
  24997. type: string
  24998. url:
  24999. description: URL is the URL of the Authorization that must be
  25000. completed
  25001. type: string
  25002. wildcard:
  25003. description: Wildcard will be true if this authorization is
  25004. for a wildcard DNS name. If this is true, the identifier will
  25005. be the *non-wildcard* version of the DNS name. For example,
  25006. if '*.example.com' is the DNS name being validated, this field
  25007. will be 'true' and the 'identifier' field will be 'example.com'.
  25008. type: boolean
  25009. required:
  25010. - url
  25011. type: object
  25012. type: array
  25013. certificate:
  25014. description: Certificate is a copy of the PEM encoded certificate
  25015. for this Order. This field will be populated after the order has
  25016. been successfully finalized with the ACME server, and the order
  25017. has transitioned to the 'valid' state.
  25018. format: byte
  25019. type: string
  25020. failureTime:
  25021. description: FailureTime stores the time that this order failed. This
  25022. is used to influence garbage collection and back-off.
  25023. format: date-time
  25024. type: string
  25025. finalizeURL:
  25026. description: FinalizeURL of the Order. This is used to obtain certificates
  25027. for this order once it has been completed.
  25028. type: string
  25029. reason:
  25030. description: Reason optionally provides more information about a why
  25031. the order is in the current state.
  25032. type: string
  25033. state:
  25034. description: State contains the current state of this Order resource.
  25035. States 'success' and 'expired' are 'final'
  25036. enum:
  25037. - valid
  25038. - ready
  25039. - pending
  25040. - processing
  25041. - invalid
  25042. - expired
  25043. - errored
  25044. type: string
  25045. url:
  25046. description: URL of the Order. This will initially be empty when the
  25047. resource is first created. The Order controller will populate this
  25048. field when the Order is first processed. This field will be immutable
  25049. after it is initially set.
  25050. type: string
  25051. type: object
  25052. required:
  25053. - metadata
  25054. type: object
  25055. served: true
  25056. storage: false
  25057. subresources:
  25058. status: {}
  25059. - additionalPrinterColumns:
  25060. - jsonPath: .status.state
  25061. name: State
  25062. type: string
  25063. - jsonPath: .spec.issuerRef.name
  25064. name: Issuer
  25065. priority: 1
  25066. type: string
  25067. - jsonPath: .status.reason
  25068. name: Reason
  25069. priority: 1
  25070. type: string
  25071. - description: CreationTimestamp is a timestamp representing the server time when
  25072. this object was created. It is not guaranteed to be set in happens-before
  25073. order across separate operations. Clients may not set this value. It is represented
  25074. in RFC3339 form and is in UTC.
  25075. jsonPath: .metadata.creationTimestamp
  25076. name: Age
  25077. type: date
  25078. name: v1alpha3
  25079. schema:
  25080. openAPIV3Schema:
  25081. description: Order is a type to represent an Order with an ACME server
  25082. properties:
  25083. apiVersion:
  25084. description: 'APIVersion defines the versioned schema of this representation
  25085. of an object. Servers should convert recognized schemas to the latest
  25086. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  25087. type: string
  25088. kind:
  25089. description: 'Kind is a string value representing the REST resource this
  25090. object represents. Servers may infer this from the endpoint the client
  25091. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  25092. type: string
  25093. metadata:
  25094. type: object
  25095. spec:
  25096. properties:
  25097. commonName:
  25098. description: CommonName is the common name as specified on the DER
  25099. encoded CSR. If specified, this value must also be present in `dnsNames`
  25100. or `ipAddresses`. This field must match the corresponding field
  25101. on the DER encoded CSR.
  25102. type: string
  25103. csr:
  25104. description: Certificate signing request bytes in DER encoding. This
  25105. will be used when finalizing the order. This field must be set on
  25106. the order.
  25107. format: byte
  25108. type: string
  25109. dnsNames:
  25110. description: DNSNames is a list of DNS names that should be included
  25111. as part of the Order validation process. This field must match the
  25112. corresponding field on the DER encoded CSR.
  25113. items:
  25114. type: string
  25115. type: array
  25116. duration:
  25117. description: Duration is the duration for the not after date for the
  25118. requested certificate. this is set on order creation as pe the ACME
  25119. spec.
  25120. type: string
  25121. ipAddresses:
  25122. description: IPAddresses is a list of IP addresses that should be
  25123. included as part of the Order validation process. This field must
  25124. match the corresponding field on the DER encoded CSR.
  25125. items:
  25126. type: string
  25127. type: array
  25128. issuerRef:
  25129. description: IssuerRef references a properly configured ACME-type
  25130. Issuer which should be used to create this Order. If the Issuer
  25131. does not exist, processing will be retried. If the Issuer is not
  25132. an 'ACME' Issuer, an error will be returned and the Order will be
  25133. marked as failed.
  25134. properties:
  25135. group:
  25136. description: Group of the resource being referred to.
  25137. type: string
  25138. kind:
  25139. description: Kind of the resource being referred to.
  25140. type: string
  25141. name:
  25142. description: Name of the resource being referred to.
  25143. type: string
  25144. required:
  25145. - name
  25146. type: object
  25147. required:
  25148. - csr
  25149. - issuerRef
  25150. type: object
  25151. status:
  25152. properties:
  25153. authorizations:
  25154. description: Authorizations contains data returned from the ACME server
  25155. on what authorizations must be completed in order to validate the
  25156. DNS names specified on the Order.
  25157. items:
  25158. description: ACMEAuthorization contains data returned from the ACME
  25159. server on an authorization that must be completed in order validate
  25160. a DNS name on an ACME Order resource.
  25161. properties:
  25162. challenges:
  25163. description: Challenges specifies the challenge types offered
  25164. by the ACME server. One of these challenge types will be selected
  25165. when validating the DNS name and an appropriate Challenge
  25166. resource will be created to perform the ACME challenge process.
  25167. items:
  25168. description: Challenge specifies a challenge offered by the
  25169. ACME server for an Order. An appropriate Challenge resource
  25170. can be created to perform the ACME challenge process.
  25171. properties:
  25172. token:
  25173. description: Token is the token that must be presented
  25174. for this challenge. This is used to compute the 'key'
  25175. that must also be presented.
  25176. type: string
  25177. type:
  25178. description: Type is the type of challenge being offered,
  25179. e.g. 'http-01', 'dns-01', 'tls-sni-01', etc. This is
  25180. the raw value retrieved from the ACME server. Only 'http-01'
  25181. and 'dns-01' are supported by cert-manager, other values
  25182. will be ignored.
  25183. type: string
  25184. url:
  25185. description: URL is the URL of this challenge. It can
  25186. be used to retrieve additional metadata about the Challenge
  25187. from the ACME server.
  25188. type: string
  25189. required:
  25190. - token
  25191. - type
  25192. - url
  25193. type: object
  25194. type: array
  25195. identifier:
  25196. description: Identifier is the DNS name to be validated as part
  25197. of this authorization
  25198. type: string
  25199. initialState:
  25200. description: InitialState is the initial state of the ACME authorization
  25201. when first fetched from the ACME server. If an Authorization
  25202. is already 'valid', the Order controller will not create a
  25203. Challenge resource for the authorization. This will occur
  25204. when working with an ACME server that enables 'authz reuse'
  25205. (such as Let's Encrypt's production endpoint). If not set
  25206. and 'identifier' is set, the state is assumed to be pending
  25207. and a Challenge will be created.
  25208. enum:
  25209. - valid
  25210. - ready
  25211. - pending
  25212. - processing
  25213. - invalid
  25214. - expired
  25215. - errored
  25216. type: string
  25217. url:
  25218. description: URL is the URL of the Authorization that must be
  25219. completed
  25220. type: string
  25221. wildcard:
  25222. description: Wildcard will be true if this authorization is
  25223. for a wildcard DNS name. If this is true, the identifier will
  25224. be the *non-wildcard* version of the DNS name. For example,
  25225. if '*.example.com' is the DNS name being validated, this field
  25226. will be 'true' and the 'identifier' field will be 'example.com'.
  25227. type: boolean
  25228. required:
  25229. - url
  25230. type: object
  25231. type: array
  25232. certificate:
  25233. description: Certificate is a copy of the PEM encoded certificate
  25234. for this Order. This field will be populated after the order has
  25235. been successfully finalized with the ACME server, and the order
  25236. has transitioned to the 'valid' state.
  25237. format: byte
  25238. type: string
  25239. failureTime:
  25240. description: FailureTime stores the time that this order failed. This
  25241. is used to influence garbage collection and back-off.
  25242. format: date-time
  25243. type: string
  25244. finalizeURL:
  25245. description: FinalizeURL of the Order. This is used to obtain certificates
  25246. for this order once it has been completed.
  25247. type: string
  25248. reason:
  25249. description: Reason optionally provides more information about a why
  25250. the order is in the current state.
  25251. type: string
  25252. state:
  25253. description: State contains the current state of this Order resource.
  25254. States 'success' and 'expired' are 'final'
  25255. enum:
  25256. - valid
  25257. - ready
  25258. - pending
  25259. - processing
  25260. - invalid
  25261. - expired
  25262. - errored
  25263. type: string
  25264. url:
  25265. description: URL of the Order. This will initially be empty when the
  25266. resource is first created. The Order controller will populate this
  25267. field when the Order is first processed. This field will be immutable
  25268. after it is initially set.
  25269. type: string
  25270. type: object
  25271. required:
  25272. - metadata
  25273. type: object
  25274. served: true
  25275. storage: false
  25276. subresources:
  25277. status: {}
  25278. - additionalPrinterColumns:
  25279. - jsonPath: .status.state
  25280. name: State
  25281. type: string
  25282. - jsonPath: .spec.issuerRef.name
  25283. name: Issuer
  25284. priority: 1
  25285. type: string
  25286. - jsonPath: .status.reason
  25287. name: Reason
  25288. priority: 1
  25289. type: string
  25290. - description: CreationTimestamp is a timestamp representing the server time when
  25291. this object was created. It is not guaranteed to be set in happens-before
  25292. order across separate operations. Clients may not set this value. It is represented
  25293. in RFC3339 form and is in UTC.
  25294. jsonPath: .metadata.creationTimestamp
  25295. name: Age
  25296. type: date
  25297. name: v1beta1
  25298. schema:
  25299. openAPIV3Schema:
  25300. description: Order is a type to represent an Order with an ACME server
  25301. properties:
  25302. apiVersion:
  25303. description: 'APIVersion defines the versioned schema of this representation
  25304. of an object. Servers should convert recognized schemas to the latest
  25305. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  25306. type: string
  25307. kind:
  25308. description: 'Kind is a string value representing the REST resource this
  25309. object represents. Servers may infer this from the endpoint the client
  25310. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  25311. type: string
  25312. metadata:
  25313. type: object
  25314. spec:
  25315. properties:
  25316. commonName:
  25317. description: CommonName is the common name as specified on the DER
  25318. encoded CSR. If specified, this value must also be present in `dnsNames`
  25319. or `ipAddresses`. This field must match the corresponding field
  25320. on the DER encoded CSR.
  25321. type: string
  25322. dnsNames:
  25323. description: DNSNames is a list of DNS names that should be included
  25324. as part of the Order validation process. This field must match the
  25325. corresponding field on the DER encoded CSR.
  25326. items:
  25327. type: string
  25328. type: array
  25329. duration:
  25330. description: Duration is the duration for the not after date for the
  25331. requested certificate. this is set on order creation as pe the ACME
  25332. spec.
  25333. type: string
  25334. ipAddresses:
  25335. description: IPAddresses is a list of IP addresses that should be
  25336. included as part of the Order validation process. This field must
  25337. match the corresponding field on the DER encoded CSR.
  25338. items:
  25339. type: string
  25340. type: array
  25341. issuerRef:
  25342. description: IssuerRef references a properly configured ACME-type
  25343. Issuer which should be used to create this Order. If the Issuer
  25344. does not exist, processing will be retried. If the Issuer is not
  25345. an 'ACME' Issuer, an error will be returned and the Order will be
  25346. marked as failed.
  25347. properties:
  25348. group:
  25349. description: Group of the resource being referred to.
  25350. type: string
  25351. kind:
  25352. description: Kind of the resource being referred to.
  25353. type: string
  25354. name:
  25355. description: Name of the resource being referred to.
  25356. type: string
  25357. required:
  25358. - name
  25359. type: object
  25360. request:
  25361. description: Certificate signing request bytes in DER encoding. This
  25362. will be used when finalizing the order. This field must be set on
  25363. the order.
  25364. format: byte
  25365. type: string
  25366. required:
  25367. - issuerRef
  25368. - request
  25369. type: object
  25370. status:
  25371. properties:
  25372. authorizations:
  25373. description: Authorizations contains data returned from the ACME server
  25374. on what authorizations must be completed in order to validate the
  25375. DNS names specified on the Order.
  25376. items:
  25377. description: ACMEAuthorization contains data returned from the ACME
  25378. server on an authorization that must be completed in order validate
  25379. a DNS name on an ACME Order resource.
  25380. properties:
  25381. challenges:
  25382. description: Challenges specifies the challenge types offered
  25383. by the ACME server. One of these challenge types will be selected
  25384. when validating the DNS name and an appropriate Challenge
  25385. resource will be created to perform the ACME challenge process.
  25386. items:
  25387. description: Challenge specifies a challenge offered by the
  25388. ACME server for an Order. An appropriate Challenge resource
  25389. can be created to perform the ACME challenge process.
  25390. properties:
  25391. token:
  25392. description: Token is the token that must be presented
  25393. for this challenge. This is used to compute the 'key'
  25394. that must also be presented.
  25395. type: string
  25396. type:
  25397. description: Type is the type of challenge being offered,
  25398. e.g. 'http-01', 'dns-01', 'tls-sni-01', etc. This is
  25399. the raw value retrieved from the ACME server. Only 'http-01'
  25400. and 'dns-01' are supported by cert-manager, other values
  25401. will be ignored.
  25402. type: string
  25403. url:
  25404. description: URL is the URL of this challenge. It can
  25405. be used to retrieve additional metadata about the Challenge
  25406. from the ACME server.
  25407. type: string
  25408. required:
  25409. - token
  25410. - type
  25411. - url
  25412. type: object
  25413. type: array
  25414. identifier:
  25415. description: Identifier is the DNS name to be validated as part
  25416. of this authorization
  25417. type: string
  25418. initialState:
  25419. description: InitialState is the initial state of the ACME authorization
  25420. when first fetched from the ACME server. If an Authorization
  25421. is already 'valid', the Order controller will not create a
  25422. Challenge resource for the authorization. This will occur
  25423. when working with an ACME server that enables 'authz reuse'
  25424. (such as Let's Encrypt's production endpoint). If not set
  25425. and 'identifier' is set, the state is assumed to be pending
  25426. and a Challenge will be created.
  25427. enum:
  25428. - valid
  25429. - ready
  25430. - pending
  25431. - processing
  25432. - invalid
  25433. - expired
  25434. - errored
  25435. type: string
  25436. url:
  25437. description: URL is the URL of the Authorization that must be
  25438. completed
  25439. type: string
  25440. wildcard:
  25441. description: Wildcard will be true if this authorization is
  25442. for a wildcard DNS name. If this is true, the identifier will
  25443. be the *non-wildcard* version of the DNS name. For example,
  25444. if '*.example.com' is the DNS name being validated, this field
  25445. will be 'true' and the 'identifier' field will be 'example.com'.
  25446. type: boolean
  25447. required:
  25448. - url
  25449. type: object
  25450. type: array
  25451. certificate:
  25452. description: Certificate is a copy of the PEM encoded certificate
  25453. for this Order. This field will be populated after the order has
  25454. been successfully finalized with the ACME server, and the order
  25455. has transitioned to the 'valid' state.
  25456. format: byte
  25457. type: string
  25458. failureTime:
  25459. description: FailureTime stores the time that this order failed. This
  25460. is used to influence garbage collection and back-off.
  25461. format: date-time
  25462. type: string
  25463. finalizeURL:
  25464. description: FinalizeURL of the Order. This is used to obtain certificates
  25465. for this order once it has been completed.
  25466. type: string
  25467. reason:
  25468. description: Reason optionally provides more information about a why
  25469. the order is in the current state.
  25470. type: string
  25471. state:
  25472. description: State contains the current state of this Order resource.
  25473. States 'success' and 'expired' are 'final'
  25474. enum:
  25475. - valid
  25476. - ready
  25477. - pending
  25478. - processing
  25479. - invalid
  25480. - expired
  25481. - errored
  25482. type: string
  25483. url:
  25484. description: URL of the Order. This will initially be empty when the
  25485. resource is first created. The Order controller will populate this
  25486. field when the Order is first processed. This field will be immutable
  25487. after it is initially set.
  25488. type: string
  25489. type: object
  25490. required:
  25491. - metadata
  25492. - spec
  25493. type: object
  25494. served: true
  25495. storage: false
  25496. subresources:
  25497. status: {}
  25498. - additionalPrinterColumns:
  25499. - jsonPath: .status.state
  25500. name: State
  25501. type: string
  25502. - jsonPath: .spec.issuerRef.name
  25503. name: Issuer
  25504. priority: 1
  25505. type: string
  25506. - jsonPath: .status.reason
  25507. name: Reason
  25508. priority: 1
  25509. type: string
  25510. - description: CreationTimestamp is a timestamp representing the server time when
  25511. this object was created. It is not guaranteed to be set in happens-before
  25512. order across separate operations. Clients may not set this value. It is represented
  25513. in RFC3339 form and is in UTC.
  25514. jsonPath: .metadata.creationTimestamp
  25515. name: Age
  25516. type: date
  25517. name: v1
  25518. schema:
  25519. openAPIV3Schema:
  25520. description: Order is a type to represent an Order with an ACME server
  25521. properties:
  25522. apiVersion:
  25523. description: 'APIVersion defines the versioned schema of this representation
  25524. of an object. Servers should convert recognized schemas to the latest
  25525. internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
  25526. type: string
  25527. kind:
  25528. description: 'Kind is a string value representing the REST resource this
  25529. object represents. Servers may infer this from the endpoint the client
  25530. submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
  25531. type: string
  25532. metadata:
  25533. type: object
  25534. spec:
  25535. properties:
  25536. commonName:
  25537. description: CommonName is the common name as specified on the DER
  25538. encoded CSR. If specified, this value must also be present in `dnsNames`
  25539. or `ipAddresses`. This field must match the corresponding field
  25540. on the DER encoded CSR.
  25541. type: string
  25542. dnsNames:
  25543. description: DNSNames is a list of DNS names that should be included
  25544. as part of the Order validation process. This field must match the
  25545. corresponding field on the DER encoded CSR.
  25546. items:
  25547. type: string
  25548. type: array
  25549. duration:
  25550. description: Duration is the duration for the not after date for the
  25551. requested certificate. this is set on order creation as pe the ACME
  25552. spec.
  25553. type: string
  25554. ipAddresses:
  25555. description: IPAddresses is a list of IP addresses that should be
  25556. included as part of the Order validation process. This field must
  25557. match the corresponding field on the DER encoded CSR.
  25558. items:
  25559. type: string
  25560. type: array
  25561. issuerRef:
  25562. description: IssuerRef references a properly configured ACME-type
  25563. Issuer which should be used to create this Order. If the Issuer
  25564. does not exist, processing will be retried. If the Issuer is not
  25565. an 'ACME' Issuer, an error will be returned and the Order will be
  25566. marked as failed.
  25567. properties:
  25568. group:
  25569. description: Group of the resource being referred to.
  25570. type: string
  25571. kind:
  25572. description: Kind of the resource being referred to.
  25573. type: string
  25574. name:
  25575. description: Name of the resource being referred to.
  25576. type: string
  25577. required:
  25578. - name
  25579. type: object
  25580. request:
  25581. description: Certificate signing request bytes in DER encoding. This
  25582. will be used when finalizing the order. This field must be set on
  25583. the order.
  25584. format: byte
  25585. type: string
  25586. required:
  25587. - issuerRef
  25588. - request
  25589. type: object
  25590. status:
  25591. properties:
  25592. authorizations:
  25593. description: Authorizations contains data returned from the ACME server
  25594. on what authorizations must be completed in order to validate the
  25595. DNS names specified on the Order.
  25596. items:
  25597. description: ACMEAuthorization contains data returned from the ACME
  25598. server on an authorization that must be completed in order validate
  25599. a DNS name on an ACME Order resource.
  25600. properties:
  25601. challenges:
  25602. description: Challenges specifies the challenge types offered
  25603. by the ACME server. One of these challenge types will be selected
  25604. when validating the DNS name and an appropriate Challenge
  25605. resource will be created to perform the ACME challenge process.
  25606. items:
  25607. description: Challenge specifies a challenge offered by the
  25608. ACME server for an Order. An appropriate Challenge resource
  25609. can be created to perform the ACME challenge process.
  25610. properties:
  25611. token:
  25612. description: Token is the token that must be presented
  25613. for this challenge. This is used to compute the 'key'
  25614. that must also be presented.
  25615. type: string
  25616. type:
  25617. description: Type is the type of challenge being offered,
  25618. e.g. 'http-01', 'dns-01', 'tls-sni-01', etc. This is
  25619. the raw value retrieved from the ACME server. Only 'http-01'
  25620. and 'dns-01' are supported by cert-manager, other values
  25621. will be ignored.
  25622. type: string
  25623. url:
  25624. description: URL is the URL of this challenge. It can
  25625. be used to retrieve additional metadata about the Challenge
  25626. from the ACME server.
  25627. type: string
  25628. required:
  25629. - token
  25630. - type
  25631. - url
  25632. type: object
  25633. type: array
  25634. identifier:
  25635. description: Identifier is the DNS name to be validated as part
  25636. of this authorization
  25637. type: string
  25638. initialState:
  25639. description: InitialState is the initial state of the ACME authorization
  25640. when first fetched from the ACME server. If an Authorization
  25641. is already 'valid', the Order controller will not create a
  25642. Challenge resource for the authorization. This will occur
  25643. when working with an ACME server that enables 'authz reuse'
  25644. (such as Let's Encrypt's production endpoint). If not set
  25645. and 'identifier' is set, the state is assumed to be pending
  25646. and a Challenge will be created.
  25647. enum:
  25648. - valid
  25649. - ready
  25650. - pending
  25651. - processing
  25652. - invalid
  25653. - expired
  25654. - errored
  25655. type: string
  25656. url:
  25657. description: URL is the URL of the Authorization that must be
  25658. completed
  25659. type: string
  25660. wildcard:
  25661. description: Wildcard will be true if this authorization is
  25662. for a wildcard DNS name. If this is true, the identifier will
  25663. be the *non-wildcard* version of the DNS name. For example,
  25664. if '*.example.com' is the DNS name being validated, this field
  25665. will be 'true' and the 'identifier' field will be 'example.com'.
  25666. type: boolean
  25667. required:
  25668. - url
  25669. type: object
  25670. type: array
  25671. certificate:
  25672. description: Certificate is a copy of the PEM encoded certificate
  25673. for this Order. This field will be populated after the order has
  25674. been successfully finalized with the ACME server, and the order
  25675. has transitioned to the 'valid' state.
  25676. format: byte
  25677. type: string
  25678. failureTime:
  25679. description: FailureTime stores the time that this order failed. This
  25680. is used to influence garbage collection and back-off.
  25681. format: date-time
  25682. type: string
  25683. finalizeURL:
  25684. description: FinalizeURL of the Order. This is used to obtain certificates
  25685. for this order once it has been completed.
  25686. type: string
  25687. reason:
  25688. description: Reason optionally provides more information about a why
  25689. the order is in the current state.
  25690. type: string
  25691. state:
  25692. description: State contains the current state of this Order resource.
  25693. States 'success' and 'expired' are 'final'
  25694. enum:
  25695. - valid
  25696. - ready
  25697. - pending
  25698. - processing
  25699. - invalid
  25700. - expired
  25701. - errored
  25702. type: string
  25703. url:
  25704. description: URL of the Order. This will initially be empty when the
  25705. resource is first created. The Order controller will populate this
  25706. field when the Order is first processed. This field will be immutable
  25707. after it is initially set.
  25708. type: string
  25709. type: object
  25710. required:
  25711. - metadata
  25712. - spec
  25713. type: object
  25714. served: true
  25715. storage: true
  25716. subresources:
  25717. status: {}
  25718. status:
  25719. acceptedNames:
  25720. kind: ""
  25721. plural: ""
  25722. conditions: []
  25723. storedVersions: []
  25724. ---
  25725. apiVersion: v1
  25726. kind: Namespace
  25727. metadata:
  25728. name: cert-manager
  25729. ---
  25730. apiVersion: v1
  25731. automountServiceAccountToken: true
  25732. kind: ServiceAccount
  25733. metadata:
  25734. labels:
  25735. app: cainjector
  25736. app.kubernetes.io/component: cainjector
  25737. app.kubernetes.io/instance: cert-manager
  25738. app.kubernetes.io/name: cainjector
  25739. name: cert-manager-cainjector
  25740. namespace: cert-manager
  25741. ---
  25742. apiVersion: v1
  25743. automountServiceAccountToken: true
  25744. kind: ServiceAccount
  25745. metadata:
  25746. labels:
  25747. app: cert-manager
  25748. app.kubernetes.io/component: controller
  25749. app.kubernetes.io/instance: cert-manager
  25750. app.kubernetes.io/name: cert-manager
  25751. name: cert-manager
  25752. namespace: cert-manager
  25753. ---
  25754. apiVersion: v1
  25755. automountServiceAccountToken: true
  25756. kind: ServiceAccount
  25757. metadata:
  25758. labels:
  25759. app: webhook
  25760. app.kubernetes.io/component: webhook
  25761. app.kubernetes.io/instance: cert-manager
  25762. app.kubernetes.io/name: webhook
  25763. name: cert-manager-webhook
  25764. namespace: cert-manager
  25765. ---
  25766. apiVersion: rbac.authorization.k8s.io/v1
  25767. kind: ClusterRole
  25768. metadata:
  25769. labels:
  25770. app: cainjector
  25771. app.kubernetes.io/component: cainjector
  25772. app.kubernetes.io/instance: cert-manager
  25773. app.kubernetes.io/name: cainjector
  25774. name: cert-manager-cainjector
  25775. rules:
  25776. - apiGroups:
  25777. - cert-manager.io
  25778. resources:
  25779. - certificates
  25780. verbs:
  25781. - get
  25782. - list
  25783. - watch
  25784. - apiGroups:
  25785. - ""
  25786. resources:
  25787. - secrets
  25788. verbs:
  25789. - get
  25790. - list
  25791. - watch
  25792. - apiGroups:
  25793. - ""
  25794. resources:
  25795. - events
  25796. verbs:
  25797. - get
  25798. - create
  25799. - update
  25800. - patch
  25801. - apiGroups:
  25802. - admissionregistration.k8s.io
  25803. resources:
  25804. - validatingwebhookconfigurations
  25805. - mutatingwebhookconfigurations
  25806. verbs:
  25807. - get
  25808. - list
  25809. - watch
  25810. - update
  25811. - apiGroups:
  25812. - apiregistration.k8s.io
  25813. resources:
  25814. - apiservices
  25815. verbs:
  25816. - get
  25817. - list
  25818. - watch
  25819. - update
  25820. - apiGroups:
  25821. - apiextensions.k8s.io
  25822. resources:
  25823. - customresourcedefinitions
  25824. verbs:
  25825. - get
  25826. - list
  25827. - watch
  25828. - update
  25829. - apiGroups:
  25830. - auditregistration.k8s.io
  25831. resources:
  25832. - auditsinks
  25833. verbs:
  25834. - get
  25835. - list
  25836. - watch
  25837. - update
  25838. ---
  25839. apiVersion: rbac.authorization.k8s.io/v1
  25840. kind: ClusterRole
  25841. metadata:
  25842. labels:
  25843. app: cert-manager
  25844. app.kubernetes.io/component: controller
  25845. app.kubernetes.io/instance: cert-manager
  25846. app.kubernetes.io/name: cert-manager
  25847. name: cert-manager-controller-issuers
  25848. rules:
  25849. - apiGroups:
  25850. - cert-manager.io
  25851. resources:
  25852. - issuers
  25853. - issuers/status
  25854. verbs:
  25855. - update
  25856. - apiGroups:
  25857. - cert-manager.io
  25858. resources:
  25859. - issuers
  25860. verbs:
  25861. - get
  25862. - list
  25863. - watch
  25864. - apiGroups:
  25865. - ""
  25866. resources:
  25867. - secrets
  25868. verbs:
  25869. - get
  25870. - list
  25871. - watch
  25872. - create
  25873. - update
  25874. - delete
  25875. - apiGroups:
  25876. - ""
  25877. resources:
  25878. - events
  25879. verbs:
  25880. - create
  25881. - patch
  25882. ---
  25883. apiVersion: rbac.authorization.k8s.io/v1
  25884. kind: ClusterRole
  25885. metadata:
  25886. labels:
  25887. app: cert-manager
  25888. app.kubernetes.io/component: controller
  25889. app.kubernetes.io/instance: cert-manager
  25890. app.kubernetes.io/name: cert-manager
  25891. name: cert-manager-controller-clusterissuers
  25892. rules:
  25893. - apiGroups:
  25894. - cert-manager.io
  25895. resources:
  25896. - clusterissuers
  25897. - clusterissuers/status
  25898. verbs:
  25899. - update
  25900. - apiGroups:
  25901. - cert-manager.io
  25902. resources:
  25903. - clusterissuers
  25904. verbs:
  25905. - get
  25906. - list
  25907. - watch
  25908. - apiGroups:
  25909. - ""
  25910. resources:
  25911. - secrets
  25912. verbs:
  25913. - get
  25914. - list
  25915. - watch
  25916. - create
  25917. - update
  25918. - delete
  25919. - apiGroups:
  25920. - ""
  25921. resources:
  25922. - events
  25923. verbs:
  25924. - create
  25925. - patch
  25926. ---
  25927. apiVersion: rbac.authorization.k8s.io/v1
  25928. kind: ClusterRole
  25929. metadata:
  25930. labels:
  25931. app: cert-manager
  25932. app.kubernetes.io/component: controller
  25933. app.kubernetes.io/instance: cert-manager
  25934. app.kubernetes.io/name: cert-manager
  25935. name: cert-manager-controller-certificates
  25936. rules:
  25937. - apiGroups:
  25938. - cert-manager.io
  25939. resources:
  25940. - certificates
  25941. - certificates/status
  25942. - certificaterequests
  25943. - certificaterequests/status
  25944. verbs:
  25945. - update
  25946. - apiGroups:
  25947. - cert-manager.io
  25948. resources:
  25949. - certificates
  25950. - certificaterequests
  25951. - clusterissuers
  25952. - issuers
  25953. verbs:
  25954. - get
  25955. - list
  25956. - watch
  25957. - apiGroups:
  25958. - cert-manager.io
  25959. resources:
  25960. - certificates/finalizers
  25961. - certificaterequests/finalizers
  25962. verbs:
  25963. - update
  25964. - apiGroups:
  25965. - acme.cert-manager.io
  25966. resources:
  25967. - orders
  25968. verbs:
  25969. - create
  25970. - delete
  25971. - get
  25972. - list
  25973. - watch
  25974. - apiGroups:
  25975. - ""
  25976. resources:
  25977. - secrets
  25978. verbs:
  25979. - get
  25980. - list
  25981. - watch
  25982. - create
  25983. - update
  25984. - delete
  25985. - apiGroups:
  25986. - ""
  25987. resources:
  25988. - events
  25989. verbs:
  25990. - create
  25991. - patch
  25992. ---
  25993. apiVersion: rbac.authorization.k8s.io/v1
  25994. kind: ClusterRole
  25995. metadata:
  25996. labels:
  25997. app: cert-manager
  25998. app.kubernetes.io/component: controller
  25999. app.kubernetes.io/instance: cert-manager
  26000. app.kubernetes.io/name: cert-manager
  26001. name: cert-manager-controller-orders
  26002. rules:
  26003. - apiGroups:
  26004. - acme.cert-manager.io
  26005. resources:
  26006. - orders
  26007. - orders/status
  26008. verbs:
  26009. - update
  26010. - apiGroups:
  26011. - acme.cert-manager.io
  26012. resources:
  26013. - orders
  26014. - challenges
  26015. verbs:
  26016. - get
  26017. - list
  26018. - watch
  26019. - apiGroups:
  26020. - cert-manager.io
  26021. resources:
  26022. - clusterissuers
  26023. - issuers
  26024. verbs:
  26025. - get
  26026. - list
  26027. - watch
  26028. - apiGroups:
  26029. - acme.cert-manager.io
  26030. resources:
  26031. - challenges
  26032. verbs:
  26033. - create
  26034. - delete
  26035. - apiGroups:
  26036. - acme.cert-manager.io
  26037. resources:
  26038. - orders/finalizers
  26039. verbs:
  26040. - update
  26041. - apiGroups:
  26042. - ""
  26043. resources:
  26044. - secrets
  26045. verbs:
  26046. - get
  26047. - list
  26048. - watch
  26049. - apiGroups:
  26050. - ""
  26051. resources:
  26052. - events
  26053. verbs:
  26054. - create
  26055. - patch
  26056. ---
  26057. apiVersion: rbac.authorization.k8s.io/v1
  26058. kind: ClusterRole
  26059. metadata:
  26060. labels:
  26061. app: cert-manager
  26062. app.kubernetes.io/component: controller
  26063. app.kubernetes.io/instance: cert-manager
  26064. app.kubernetes.io/name: cert-manager
  26065. name: cert-manager-controller-challenges
  26066. rules:
  26067. - apiGroups:
  26068. - acme.cert-manager.io
  26069. resources:
  26070. - challenges
  26071. - challenges/status
  26072. verbs:
  26073. - update
  26074. - apiGroups:
  26075. - acme.cert-manager.io
  26076. resources:
  26077. - challenges
  26078. verbs:
  26079. - get
  26080. - list
  26081. - watch
  26082. - apiGroups:
  26083. - cert-manager.io
  26084. resources:
  26085. - issuers
  26086. - clusterissuers
  26087. verbs:
  26088. - get
  26089. - list
  26090. - watch
  26091. - apiGroups:
  26092. - ""
  26093. resources:
  26094. - secrets
  26095. verbs:
  26096. - get
  26097. - list
  26098. - watch
  26099. - apiGroups:
  26100. - ""
  26101. resources:
  26102. - events
  26103. verbs:
  26104. - create
  26105. - patch
  26106. - apiGroups:
  26107. - ""
  26108. resources:
  26109. - pods
  26110. - services
  26111. verbs:
  26112. - get
  26113. - list
  26114. - watch
  26115. - create
  26116. - delete
  26117. - apiGroups:
  26118. - networking.k8s.io
  26119. resources:
  26120. - ingresses
  26121. verbs:
  26122. - get
  26123. - list
  26124. - watch
  26125. - create
  26126. - delete
  26127. - update
  26128. - apiGroups:
  26129. - route.openshift.io
  26130. resources:
  26131. - routes/custom-host
  26132. verbs:
  26133. - create
  26134. - apiGroups:
  26135. - acme.cert-manager.io
  26136. resources:
  26137. - challenges/finalizers
  26138. verbs:
  26139. - update
  26140. - apiGroups:
  26141. - ""
  26142. resources:
  26143. - secrets
  26144. verbs:
  26145. - get
  26146. - list
  26147. - watch
  26148. ---
  26149. apiVersion: rbac.authorization.k8s.io/v1
  26150. kind: ClusterRole
  26151. metadata:
  26152. labels:
  26153. app: cert-manager
  26154. app.kubernetes.io/component: controller
  26155. app.kubernetes.io/instance: cert-manager
  26156. app.kubernetes.io/name: cert-manager
  26157. name: cert-manager-controller-ingress-shim
  26158. rules:
  26159. - apiGroups:
  26160. - cert-manager.io
  26161. resources:
  26162. - certificates
  26163. - certificaterequests
  26164. verbs:
  26165. - create
  26166. - update
  26167. - delete
  26168. - apiGroups:
  26169. - cert-manager.io
  26170. resources:
  26171. - certificates
  26172. - certificaterequests
  26173. - issuers
  26174. - clusterissuers
  26175. verbs:
  26176. - get
  26177. - list
  26178. - watch
  26179. - apiGroups:
  26180. - networking.k8s.io
  26181. resources:
  26182. - ingresses
  26183. verbs:
  26184. - get
  26185. - list
  26186. - watch
  26187. - apiGroups:
  26188. - networking.k8s.io
  26189. resources:
  26190. - ingresses/finalizers
  26191. verbs:
  26192. - update
  26193. - apiGroups:
  26194. - ""
  26195. resources:
  26196. - events
  26197. verbs:
  26198. - create
  26199. - patch
  26200. ---
  26201. apiVersion: rbac.authorization.k8s.io/v1
  26202. kind: ClusterRole
  26203. metadata:
  26204. labels:
  26205. app: cert-manager
  26206. app.kubernetes.io/component: controller
  26207. app.kubernetes.io/instance: cert-manager
  26208. app.kubernetes.io/name: cert-manager
  26209. rbac.authorization.k8s.io/aggregate-to-admin: "true"
  26210. rbac.authorization.k8s.io/aggregate-to-edit: "true"
  26211. rbac.authorization.k8s.io/aggregate-to-view: "true"
  26212. name: cert-manager-view
  26213. rules:
  26214. - apiGroups:
  26215. - cert-manager.io
  26216. resources:
  26217. - certificates
  26218. - certificaterequests
  26219. - issuers
  26220. verbs:
  26221. - get
  26222. - list
  26223. - watch
  26224. - apiGroups:
  26225. - acme.cert-manager.io
  26226. resources:
  26227. - challenges
  26228. - orders
  26229. verbs:
  26230. - get
  26231. - list
  26232. - watch
  26233. ---
  26234. apiVersion: rbac.authorization.k8s.io/v1
  26235. kind: ClusterRole
  26236. metadata:
  26237. labels:
  26238. app: cert-manager
  26239. app.kubernetes.io/component: controller
  26240. app.kubernetes.io/instance: cert-manager
  26241. app.kubernetes.io/name: cert-manager
  26242. rbac.authorization.k8s.io/aggregate-to-admin: "true"
  26243. rbac.authorization.k8s.io/aggregate-to-edit: "true"
  26244. name: cert-manager-edit
  26245. rules:
  26246. - apiGroups:
  26247. - cert-manager.io
  26248. resources:
  26249. - certificates
  26250. - certificaterequests
  26251. - issuers
  26252. verbs:
  26253. - create
  26254. - delete
  26255. - deletecollection
  26256. - patch
  26257. - update
  26258. - apiGroups:
  26259. - acme.cert-manager.io
  26260. resources:
  26261. - challenges
  26262. - orders
  26263. verbs:
  26264. - create
  26265. - delete
  26266. - deletecollection
  26267. - patch
  26268. - update
  26269. ---
  26270. apiVersion: rbac.authorization.k8s.io/v1
  26271. kind: ClusterRole
  26272. metadata:
  26273. labels:
  26274. app: cert-manager
  26275. app.kubernetes.io/component: cert-manager
  26276. app.kubernetes.io/instance: cert-manager
  26277. app.kubernetes.io/name: cert-manager
  26278. name: cert-manager-controller-approve:cert-manager-io
  26279. rules:
  26280. - apiGroups:
  26281. - cert-manager.io
  26282. resourceNames:
  26283. - issuers.cert-manager.io/*
  26284. - clusterissuers.cert-manager.io/*
  26285. resources:
  26286. - signers
  26287. verbs:
  26288. - approve
  26289. ---
  26290. apiVersion: rbac.authorization.k8s.io/v1
  26291. kind: ClusterRole
  26292. metadata:
  26293. labels:
  26294. app: webhook
  26295. app.kubernetes.io/component: webhook
  26296. app.kubernetes.io/instance: cert-manager
  26297. app.kubernetes.io/name: webhook
  26298. name: cert-manager-webhook:subjectaccessreviews
  26299. rules:
  26300. - apiGroups:
  26301. - authorization.k8s.io
  26302. resources:
  26303. - subjectaccessreviews
  26304. verbs:
  26305. - create
  26306. ---
  26307. apiVersion: rbac.authorization.k8s.io/v1
  26308. kind: ClusterRoleBinding
  26309. metadata:
  26310. labels:
  26311. app: cainjector
  26312. app.kubernetes.io/component: cainjector
  26313. app.kubernetes.io/instance: cert-manager
  26314. app.kubernetes.io/name: cainjector
  26315. name: cert-manager-cainjector
  26316. roleRef:
  26317. apiGroup: rbac.authorization.k8s.io
  26318. kind: ClusterRole
  26319. name: cert-manager-cainjector
  26320. subjects:
  26321. - kind: ServiceAccount
  26322. name: cert-manager-cainjector
  26323. namespace: cert-manager
  26324. ---
  26325. apiVersion: rbac.authorization.k8s.io/v1
  26326. kind: ClusterRoleBinding
  26327. metadata:
  26328. labels:
  26329. app: cert-manager
  26330. app.kubernetes.io/component: controller
  26331. app.kubernetes.io/instance: cert-manager
  26332. app.kubernetes.io/name: cert-manager
  26333. name: cert-manager-controller-issuers
  26334. roleRef:
  26335. apiGroup: rbac.authorization.k8s.io
  26336. kind: ClusterRole
  26337. name: cert-manager-controller-issuers
  26338. subjects:
  26339. - kind: ServiceAccount
  26340. name: cert-manager
  26341. namespace: cert-manager
  26342. ---
  26343. apiVersion: rbac.authorization.k8s.io/v1
  26344. kind: ClusterRoleBinding
  26345. metadata:
  26346. labels:
  26347. app: cert-manager
  26348. app.kubernetes.io/component: controller
  26349. app.kubernetes.io/instance: cert-manager
  26350. app.kubernetes.io/name: cert-manager
  26351. name: cert-manager-controller-clusterissuers
  26352. roleRef:
  26353. apiGroup: rbac.authorization.k8s.io
  26354. kind: ClusterRole
  26355. name: cert-manager-controller-clusterissuers
  26356. subjects:
  26357. - kind: ServiceAccount
  26358. name: cert-manager
  26359. namespace: cert-manager
  26360. ---
  26361. apiVersion: rbac.authorization.k8s.io/v1
  26362. kind: ClusterRoleBinding
  26363. metadata:
  26364. labels:
  26365. app: cert-manager
  26366. app.kubernetes.io/component: controller
  26367. app.kubernetes.io/instance: cert-manager
  26368. app.kubernetes.io/name: cert-manager
  26369. name: cert-manager-controller-certificates
  26370. roleRef:
  26371. apiGroup: rbac.authorization.k8s.io
  26372. kind: ClusterRole
  26373. name: cert-manager-controller-certificates
  26374. subjects:
  26375. - kind: ServiceAccount
  26376. name: cert-manager
  26377. namespace: cert-manager
  26378. ---
  26379. apiVersion: rbac.authorization.k8s.io/v1
  26380. kind: ClusterRoleBinding
  26381. metadata:
  26382. labels:
  26383. app: cert-manager
  26384. app.kubernetes.io/component: controller
  26385. app.kubernetes.io/instance: cert-manager
  26386. app.kubernetes.io/name: cert-manager
  26387. name: cert-manager-controller-orders
  26388. roleRef:
  26389. apiGroup: rbac.authorization.k8s.io
  26390. kind: ClusterRole
  26391. name: cert-manager-controller-orders
  26392. subjects:
  26393. - kind: ServiceAccount
  26394. name: cert-manager
  26395. namespace: cert-manager
  26396. ---
  26397. apiVersion: rbac.authorization.k8s.io/v1
  26398. kind: ClusterRoleBinding
  26399. metadata:
  26400. labels:
  26401. app: cert-manager
  26402. app.kubernetes.io/component: controller
  26403. app.kubernetes.io/instance: cert-manager
  26404. app.kubernetes.io/name: cert-manager
  26405. name: cert-manager-controller-challenges
  26406. roleRef:
  26407. apiGroup: rbac.authorization.k8s.io
  26408. kind: ClusterRole
  26409. name: cert-manager-controller-challenges
  26410. subjects:
  26411. - kind: ServiceAccount
  26412. name: cert-manager
  26413. namespace: cert-manager
  26414. ---
  26415. apiVersion: rbac.authorization.k8s.io/v1
  26416. kind: ClusterRoleBinding
  26417. metadata:
  26418. labels:
  26419. app: cert-manager
  26420. app.kubernetes.io/component: controller
  26421. app.kubernetes.io/instance: cert-manager
  26422. app.kubernetes.io/name: cert-manager
  26423. name: cert-manager-controller-ingress-shim
  26424. roleRef:
  26425. apiGroup: rbac.authorization.k8s.io
  26426. kind: ClusterRole
  26427. name: cert-manager-controller-ingress-shim
  26428. subjects:
  26429. - kind: ServiceAccount
  26430. name: cert-manager
  26431. namespace: cert-manager
  26432. ---
  26433. apiVersion: rbac.authorization.k8s.io/v1
  26434. kind: ClusterRoleBinding
  26435. metadata:
  26436. labels:
  26437. app: cert-manager
  26438. app.kubernetes.io/component: cert-manager
  26439. app.kubernetes.io/instance: cert-manager
  26440. app.kubernetes.io/name: cert-manager
  26441. name: cert-manager-controller-approve:cert-manager-io
  26442. roleRef:
  26443. apiGroup: rbac.authorization.k8s.io
  26444. kind: ClusterRole
  26445. name: cert-manager-controller-approve:cert-manager-io
  26446. subjects:
  26447. - kind: ServiceAccount
  26448. name: cert-manager
  26449. namespace: cert-manager
  26450. ---
  26451. apiVersion: rbac.authorization.k8s.io/v1
  26452. kind: ClusterRoleBinding
  26453. metadata:
  26454. labels:
  26455. app: webhook
  26456. app.kubernetes.io/component: webhook
  26457. app.kubernetes.io/instance: cert-manager
  26458. app.kubernetes.io/name: webhook
  26459. name: cert-manager-webhook:subjectaccessreviews
  26460. roleRef:
  26461. apiGroup: rbac.authorization.k8s.io
  26462. kind: ClusterRole
  26463. name: cert-manager-webhook:subjectaccessreviews
  26464. subjects:
  26465. - apiGroup: ""
  26466. kind: ServiceAccount
  26467. name: cert-manager-webhook
  26468. namespace: cert-manager
  26469. ---
  26470. apiVersion: rbac.authorization.k8s.io/v1
  26471. kind: Role
  26472. metadata:
  26473. labels:
  26474. app: cainjector
  26475. app.kubernetes.io/component: cainjector
  26476. app.kubernetes.io/instance: cert-manager
  26477. app.kubernetes.io/name: cainjector
  26478. name: cert-manager-cainjector:leaderelection
  26479. namespace: kube-system
  26480. rules:
  26481. - apiGroups:
  26482. - ""
  26483. resourceNames:
  26484. - cert-manager-cainjector-leader-election
  26485. - cert-manager-cainjector-leader-election-core
  26486. resources:
  26487. - configmaps
  26488. verbs:
  26489. - get
  26490. - update
  26491. - patch
  26492. - apiGroups:
  26493. - ""
  26494. resources:
  26495. - configmaps
  26496. verbs:
  26497. - create
  26498. ---
  26499. apiVersion: rbac.authorization.k8s.io/v1
  26500. kind: Role
  26501. metadata:
  26502. labels:
  26503. app: cert-manager
  26504. app.kubernetes.io/component: controller
  26505. app.kubernetes.io/instance: cert-manager
  26506. app.kubernetes.io/name: cert-manager
  26507. name: cert-manager:leaderelection
  26508. namespace: kube-system
  26509. rules:
  26510. - apiGroups:
  26511. - ""
  26512. resourceNames:
  26513. - cert-manager-controller
  26514. resources:
  26515. - configmaps
  26516. verbs:
  26517. - get
  26518. - update
  26519. - patch
  26520. - apiGroups:
  26521. - ""
  26522. resources:
  26523. - configmaps
  26524. verbs:
  26525. - create
  26526. ---
  26527. apiVersion: rbac.authorization.k8s.io/v1
  26528. kind: Role
  26529. metadata:
  26530. labels:
  26531. app: webhook
  26532. app.kubernetes.io/component: webhook
  26533. app.kubernetes.io/instance: cert-manager
  26534. app.kubernetes.io/name: webhook
  26535. name: cert-manager-webhook:dynamic-serving
  26536. namespace: cert-manager
  26537. rules:
  26538. - apiGroups:
  26539. - ""
  26540. resourceNames:
  26541. - cert-manager-webhook-ca
  26542. resources:
  26543. - secrets
  26544. verbs:
  26545. - get
  26546. - list
  26547. - watch
  26548. - update
  26549. - apiGroups:
  26550. - ""
  26551. resources:
  26552. - secrets
  26553. verbs:
  26554. - create
  26555. ---
  26556. apiVersion: rbac.authorization.k8s.io/v1
  26557. kind: RoleBinding
  26558. metadata:
  26559. labels:
  26560. app: cainjector
  26561. app.kubernetes.io/component: cainjector
  26562. app.kubernetes.io/instance: cert-manager
  26563. app.kubernetes.io/name: cainjector
  26564. name: cert-manager-cainjector:leaderelection
  26565. namespace: kube-system
  26566. roleRef:
  26567. apiGroup: rbac.authorization.k8s.io
  26568. kind: Role
  26569. name: cert-manager-cainjector:leaderelection
  26570. subjects:
  26571. - kind: ServiceAccount
  26572. name: cert-manager-cainjector
  26573. namespace: cert-manager
  26574. ---
  26575. apiVersion: rbac.authorization.k8s.io/v1
  26576. kind: RoleBinding
  26577. metadata:
  26578. labels:
  26579. app: cert-manager
  26580. app.kubernetes.io/component: controller
  26581. app.kubernetes.io/instance: cert-manager
  26582. app.kubernetes.io/name: cert-manager
  26583. name: cert-manager:leaderelection
  26584. namespace: kube-system
  26585. roleRef:
  26586. apiGroup: rbac.authorization.k8s.io
  26587. kind: Role
  26588. name: cert-manager:leaderelection
  26589. subjects:
  26590. - apiGroup: ""
  26591. kind: ServiceAccount
  26592. name: cert-manager
  26593. namespace: cert-manager
  26594. ---
  26595. apiVersion: rbac.authorization.k8s.io/v1
  26596. kind: RoleBinding
  26597. metadata:
  26598. labels:
  26599. app: webhook
  26600. app.kubernetes.io/component: webhook
  26601. app.kubernetes.io/instance: cert-manager
  26602. app.kubernetes.io/name: webhook
  26603. name: cert-manager-webhook:dynamic-serving
  26604. namespace: cert-manager
  26605. roleRef:
  26606. apiGroup: rbac.authorization.k8s.io
  26607. kind: Role
  26608. name: cert-manager-webhook:dynamic-serving
  26609. subjects:
  26610. - apiGroup: ""
  26611. kind: ServiceAccount
  26612. name: cert-manager-webhook
  26613. namespace: cert-manager
  26614. ---
  26615. apiVersion: v1
  26616. kind: Service
  26617. metadata:
  26618. labels:
  26619. app: cert-manager
  26620. app.kubernetes.io/component: controller
  26621. app.kubernetes.io/instance: cert-manager
  26622. app.kubernetes.io/name: cert-manager
  26623. name: cert-manager
  26624. namespace: cert-manager
  26625. spec:
  26626. ports:
  26627. - port: 9402
  26628. protocol: TCP
  26629. targetPort: 9402
  26630. selector:
  26631. app.kubernetes.io/component: controller
  26632. app.kubernetes.io/instance: cert-manager
  26633. app.kubernetes.io/name: cert-manager
  26634. type: ClusterIP
  26635. ---
  26636. apiVersion: v1
  26637. kind: Service
  26638. metadata:
  26639. labels:
  26640. app: webhook
  26641. app.kubernetes.io/component: webhook
  26642. app.kubernetes.io/instance: cert-manager
  26643. app.kubernetes.io/name: webhook
  26644. name: cert-manager-webhook
  26645. namespace: cert-manager
  26646. spec:
  26647. ports:
  26648. - name: https
  26649. port: 443
  26650. targetPort: 10250
  26651. selector:
  26652. app.kubernetes.io/component: webhook
  26653. app.kubernetes.io/instance: cert-manager
  26654. app.kubernetes.io/name: webhook
  26655. type: ClusterIP
  26656. ---
  26657. apiVersion: apps/v1
  26658. kind: Deployment
  26659. metadata:
  26660. labels:
  26661. app: cainjector
  26662. app.kubernetes.io/component: cainjector
  26663. app.kubernetes.io/instance: cert-manager
  26664. app.kubernetes.io/name: cainjector
  26665. name: cert-manager-cainjector
  26666. namespace: cert-manager
  26667. spec:
  26668. replicas: 1
  26669. selector:
  26670. matchLabels:
  26671. app.kubernetes.io/component: cainjector
  26672. app.kubernetes.io/instance: cert-manager
  26673. app.kubernetes.io/name: cainjector
  26674. template:
  26675. metadata:
  26676. labels:
  26677. app: cainjector
  26678. app.kubernetes.io/component: cainjector
  26679. app.kubernetes.io/instance: cert-manager
  26680. app.kubernetes.io/name: cainjector
  26681. spec:
  26682. containers:
  26683. - args:
  26684. - --v=2
  26685. - --leader-election-namespace=kube-system
  26686. env:
  26687. - name: POD_NAMESPACE
  26688. valueFrom:
  26689. fieldRef:
  26690. fieldPath: metadata.namespace
  26691. image: quay.io/jetstack/cert-manager-cainjector:v1.3.1
  26692. imagePullPolicy: IfNotPresent
  26693. name: cert-manager
  26694. resources: {}
  26695. serviceAccountName: cert-manager-cainjector
  26696. ---
  26697. apiVersion: apps/v1
  26698. kind: Deployment
  26699. metadata:
  26700. labels:
  26701. app: cert-manager
  26702. app.kubernetes.io/component: controller
  26703. app.kubernetes.io/instance: cert-manager
  26704. app.kubernetes.io/name: cert-manager
  26705. name: cert-manager
  26706. namespace: cert-manager
  26707. spec:
  26708. replicas: 1
  26709. selector:
  26710. matchLabels:
  26711. app.kubernetes.io/component: controller
  26712. app.kubernetes.io/instance: cert-manager
  26713. app.kubernetes.io/name: cert-manager
  26714. template:
  26715. metadata:
  26716. annotations:
  26717. prometheus.io/path: /metrics
  26718. prometheus.io/port: "9402"
  26719. prometheus.io/scrape: "true"
  26720. labels:
  26721. app: cert-manager
  26722. app.kubernetes.io/component: controller
  26723. app.kubernetes.io/instance: cert-manager
  26724. app.kubernetes.io/name: cert-manager
  26725. spec:
  26726. containers:
  26727. - args:
  26728. - --v=2
  26729. - --cluster-resource-namespace=$(POD_NAMESPACE)
  26730. - --leader-election-namespace=kube-system
  26731. env:
  26732. - name: POD_NAMESPACE
  26733. valueFrom:
  26734. fieldRef:
  26735. fieldPath: metadata.namespace
  26736. image: quay.io/jetstack/cert-manager-controller:v1.3.1
  26737. imagePullPolicy: IfNotPresent
  26738. name: cert-manager
  26739. ports:
  26740. - containerPort: 9402
  26741. protocol: TCP
  26742. resources: {}
  26743. serviceAccountName: cert-manager
  26744. ---
  26745. apiVersion: apps/v1
  26746. kind: Deployment
  26747. metadata:
  26748. labels:
  26749. app: webhook
  26750. app.kubernetes.io/component: webhook
  26751. app.kubernetes.io/instance: cert-manager
  26752. app.kubernetes.io/name: webhook
  26753. name: cert-manager-webhook
  26754. namespace: cert-manager
  26755. spec:
  26756. replicas: 1
  26757. selector:
  26758. matchLabels:
  26759. app.kubernetes.io/component: webhook
  26760. app.kubernetes.io/instance: cert-manager
  26761. app.kubernetes.io/name: webhook
  26762. template:
  26763. metadata:
  26764. labels:
  26765. app: webhook
  26766. app.kubernetes.io/component: webhook
  26767. app.kubernetes.io/instance: cert-manager
  26768. app.kubernetes.io/name: webhook
  26769. spec:
  26770. containers:
  26771. - args:
  26772. - --v=2
  26773. - --secure-port=10250
  26774. - --dynamic-serving-ca-secret-namespace=$(POD_NAMESPACE)
  26775. - --dynamic-serving-ca-secret-name=cert-manager-webhook-ca
  26776. - --dynamic-serving-dns-names=cert-manager-webhook,cert-manager-webhook.cert-manager,cert-manager-webhook.cert-manager.svc
  26777. env:
  26778. - name: POD_NAMESPACE
  26779. valueFrom:
  26780. fieldRef:
  26781. fieldPath: metadata.namespace
  26782. image: quay.io/jetstack/cert-manager-webhook:v1.3.1
  26783. imagePullPolicy: IfNotPresent
  26784. livenessProbe:
  26785. failureThreshold: 3
  26786. httpGet:
  26787. path: /livez
  26788. port: 6080
  26789. scheme: HTTP
  26790. initialDelaySeconds: 60
  26791. periodSeconds: 10
  26792. successThreshold: 1
  26793. timeoutSeconds: 1
  26794. name: cert-manager
  26795. ports:
  26796. - containerPort: 10250
  26797. name: https
  26798. readinessProbe:
  26799. failureThreshold: 3
  26800. httpGet:
  26801. path: /healthz
  26802. port: 6080
  26803. scheme: HTTP
  26804. initialDelaySeconds: 5
  26805. periodSeconds: 5
  26806. successThreshold: 1
  26807. timeoutSeconds: 1
  26808. resources: {}
  26809. serviceAccountName: cert-manager-webhook
  26810. ---
  26811. apiVersion: admissionregistration.k8s.io/v1
  26812. kind: MutatingWebhookConfiguration
  26813. metadata:
  26814. annotations:
  26815. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  26816. labels:
  26817. app: webhook
  26818. app.kubernetes.io/component: webhook
  26819. app.kubernetes.io/instance: cert-manager
  26820. app.kubernetes.io/name: webhook
  26821. name: cert-manager-webhook
  26822. webhooks:
  26823. - admissionReviewVersions:
  26824. - v1
  26825. - v1beta1
  26826. clientConfig:
  26827. service:
  26828. name: cert-manager-webhook
  26829. namespace: cert-manager
  26830. path: /mutate
  26831. failurePolicy: Fail
  26832. name: webhook.cert-manager.io
  26833. rules:
  26834. - apiGroups:
  26835. - cert-manager.io
  26836. - acme.cert-manager.io
  26837. apiVersions:
  26838. - '*'
  26839. operations:
  26840. - CREATE
  26841. - UPDATE
  26842. resources:
  26843. - '*/*'
  26844. sideEffects: None
  26845. timeoutSeconds: 10
  26846. ---
  26847. apiVersion: admissionregistration.k8s.io/v1
  26848. kind: ValidatingWebhookConfiguration
  26849. metadata:
  26850. annotations:
  26851. cert-manager.io/inject-ca-from-secret: cert-manager/cert-manager-webhook-ca
  26852. labels:
  26853. app: webhook
  26854. app.kubernetes.io/component: webhook
  26855. app.kubernetes.io/instance: cert-manager
  26856. app.kubernetes.io/name: webhook
  26857. name: cert-manager-webhook
  26858. webhooks:
  26859. - admissionReviewVersions:
  26860. - v1
  26861. - v1beta1
  26862. clientConfig:
  26863. service:
  26864. name: cert-manager-webhook
  26865. namespace: cert-manager
  26866. path: /validate
  26867. failurePolicy: Fail
  26868. name: webhook.cert-manager.io
  26869. namespaceSelector:
  26870. matchExpressions:
  26871. - key: cert-manager.io/disable-validation
  26872. operator: NotIn
  26873. values:
  26874. - "true"
  26875. - key: name
  26876. operator: NotIn
  26877. values:
  26878. - cert-manager
  26879. rules:
  26880. - apiGroups:
  26881. - cert-manager.io
  26882. - acme.cert-manager.io
  26883. apiVersions:
  26884. - '*'
  26885. operations:
  26886. - CREATE
  26887. - UPDATE
  26888. resources:
  26889. - '*/*'
  26890. sideEffects: None
  26891. timeoutSeconds: 10