package Ġno . sk at te et aten . aur ora . mo key Ċ Ċ import Ġcom . fasterxml . jackson . annotation . JsonInclude . Include . NON _ NULL Ċ import Ġcom . fasterxml . jackson . databind . Serialization Feature . IND ENT _ OUTPUT Ċ import Ġcom . fasterxml . jackson . databind . Serialization Feature . WRITE _ DAT ES _ AS _ TIMESTAMP S Ċ import Ġio . fabric 8 . kubernetes . api . model . Kubernetes List Ċ import Ġio . fabric 8 . kubernetes . internal . Kubernetes Deserializer Ċ import Ġkotlinx . coroutines . async Ċ import Ġkotlinx . coroutines . await All Ċ import Ġkotlinx . coroutines . coroutine Scope Ċ import Ġkotlinx . coroutines . reactive . await First Ċ import Ġkotlinx . coroutines . slf 4 j . M DC Context Ċ import Ġmu . Kotlin Logging Ċ import Ġno . sk at te et aten . aur ora . kubernetes . Kubernetes Configuration Ċ import Ġno . sk at te et aten . aur ora . kubernetes . Kubernetes Reactor Client Ċ import Ġno . sk at te et aten . aur ora . kubernetes . Retry Configuration Ċ import Ġno . sk at te et aten . aur ora . kubernetes . Token Fetcher Ċ import Ġno . sk at te et aten . aur ora . mo key . model . Application Deployment Ċ import Ġno . sk at te et aten . aur ora . spring boot . getToken Ċ import Ġorg . springframework . beans . factory . annotation . Qualifier Ċ import Ġorg . springframework . beans . factory . annotation . Value Ċ import Ġorg . springframework . beans . factory . config . Bean Post Processor Ċ import Ġorg . springframework . context . annotation . Bean Ċ import Ġorg . springframework . context . annotation . Configuration Ċ import Ġorg . springframework . http . HttpHeaders . CONTENT _ TYPE Ċ import Ġorg . springframework . http . MediaType . APPLICATION _ JSON _ VALUE Ċ import Ġorg . springframework . http . converter . json . Jack son 2 ObjectMapper Builder Ċ import Ġorg . springframework . scheduling . annotation . Enable Scheduling Ċ import Ġorg . springframework . security . core . context . Reactive SecurityContext Holder Ċ import Ġorg . springframework . web . reactive . function . client . Exchange Str ategies Ċ import Ġorg . springframework . web . reactive . function . client . Web Client Ċ import Ġjava . security . KeyStore Ċ import Ġjava . time . Duration Ċ Ċ enum Ġclass ĠService Types Ġ{ ĊĠĠĠ ĠC ANT US Ċ } Ċ Ċ @ Target ( Annotation Target . TYPE , ĠAnnotation Target . FUNCTION , ĠAnnotation Target . FIELD , ĠAnnotation Target . VALUE _ PARAMETER ) Ċ @ Retention ( Annotation Retention . RUNTIME ) Ċ @ Qualifier Ċ annotation Ġclass ĠTarget Service ( val Ġvalue : ĠService Types ) Ċ Ċ private Ġval Ġlogger Ġ= ĠKotlin Logging . logger Ġ{} Ċ Ċ @ Configuration Ċ @ Enable Scheduling Ċ class ĠApplication Config ( val Ġkubernetes ClientConfig : ĠKubernetes Configuration ) Ġ: ĠBean Post Processor Ġ{ ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġtoken Fetcher (): ĠToken Fetcher Ġ= Ġobject Ġ: ĠToken Fetcher Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġsuspend Ġfun Ġco Token ( audience : ĠString ?): ĠString Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠReactive SecurityContext Holder . getContext (). await First (). authentication . getToken () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" Spring Java Injection Points Autow iring Inspection ") ĊĠĠĠ Ġ@ Qualifier (" management Client ") ĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġmanagement Client ( ĊĠĠĠĠĠĠĠ Ġbuilder : ĠWeb Client . Builder , ĊĠĠĠĠĠĠĠ Ġ@ Qualifier (" kubernetes Client Web Client ") Ġtrust Store : ĠKey Store ?, ĊĠĠĠ Ġ): ĠKubernetes Reactor Client Ġ= ĊĠĠĠĠĠĠĠ Ġkubernetes ClientConfig . copy ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġretry Ġ= ĠRetry Configuration ( 0 ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtimeout Ġ= Ġkubernetes ClientConfig . timeout . copy ( read Ġ= ĠDuration . of Seconds ( 2 )) ĊĠĠĠĠĠĠĠ Ġ). create ServiceAccount Reactor Client ( builder , Ġtrust Store ). build () ĊĊĠĠĠ Ġ// ĠManagement Ġinterface Ġparsing Ġneeds Ġthis ĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġfun Ġmapper Builder (): ĠJack son 2 ObjectMapper Builder Ġ= ĠJack son 2 ObjectMapper Builder (). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġserialization In clusion ( NON _ NULL ) ĊĠĠĠĠĠĠĠ Ġfeatures To Disable ( WRITE _ DAT ES _ AS _ TIMESTAMP S ) ĊĠĠĠĠĠĠĠ Ġfeatures To Enable ( IND ENT _ OUTPUT ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġpost Process After Initialization ( bean : ĠAny , Ġbean Name : ĠString ): ĠAny ? Ġ{ ĊĠĠĠĠĠĠĠ ĠKubernetes Deserializer . register Custom Kind ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" sk at te et aten . no / v 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Application Deployment List ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠKubernetes List :: class . java ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠKubernetes Deserializer . register Custom Kind ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" sk at te et aten . no / v 1 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Application Deployment ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠApplication Deployment :: class . java ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġsuper . post Process After Initialization ( bean , Ġbean Name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Bean ĊĠĠĠ Ġ@ Target Service ( Service Types . C ANT US ) ĊĠĠĠ Ġfun Ġweb Client C ant us ( ĊĠĠĠĠĠĠĠ Ġbuilder : ĠWeb Client . Builder , ĊĠĠĠĠĠĠĠ Ġ@ Value ("\ ${ integrations . cant us . url }") Ġcant us Url : ĠString , ĊĠĠĠ Ġ): ĠWeb Client Ġ{ ĊĠĠĠĠĠĠĠ Ġlogger . info (" Config uring ĠC ant us ĠWeb Client Ġwith Ġbase ĠUrl ={ }", Ġcant us Url ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġbuilder ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. baseUrl ( cant us Url ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. default Header ( CONTENT _ TYPE , ĠAP PLICATION _ JSON _ VALUE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. exchange Str ategies ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠExchange Str ategies . builder (). code cs Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit . default Code cs (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax InMemory Size (- 1 ) Ġ// Ġun limited ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. build () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ). build () ĊĠĠĠ Ġ} Ċ } Ċ Ċ suspend Ġfun Ġ< A , ĠB > ĠIterable < A >. p map IO ( f : Ġsuspend Ġ( A ) Ġ-> ĠB ): ĠList < B > Ġ= Ġcoroutine Scope Ġ{ ĊĠĠĠ Ġmap Ġ{ Ġasync ( M DC Context ()) Ġ{ Ġf ( it ) Ġ} Ġ}. await All () Ċ } Ċ