package Ġde . lo o set ie . k 8 s . dsl . manifest s Ċ Ċ import Ġde . lo o set ie . k 8 s . dsl . K 8 s TopLevel Ċ import Ġde . lo o set ie . k 8 s . dsl . K 8 s Dsl Marker Ċ import Ġde . lo o set ie . k 8 s . dsl . K 8 s Manifest Ċ import Ġde . lo o set ie . k 8 s . dsl . Has Metadata ĊĠĠĠĠĠĠ Ċ @ K 8 s Dsl Marker Ċ interface ĠPod dis ruption budget status _ policy _ v 1 beta 1 _ k 8 s 1 _ 1 6 : ĠK 8 s Manifest Ġ{ ĊĠ Ġ/** Ġcurrent Ġnumber Ġof Ġhealthy Ġpods Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġcurrent Health y : ĠInt ? ĊĠ Ġ/** Ġminimum Ġdesired Ġnumber Ġof Ġhealthy Ġpods Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġdesired Health y : ĠInt ? ĊĠ Ġ/** ĠDis rupted Pods Ġcontains Ġinformation Ġabout Ġpods Ġwhose Ġe viction Ġwas Ġprocessed Ġby Ġthe ĠAPI Ġserver Ġe viction Ġsub resource Ċ handler Ġbut Ġhas Ġnot Ġyet Ġbeen Ġobserved Ġby Ġthe ĠPod Dis ruption Budget Ġcontroller . ĠA Ġpod Ġwill Ġbe Ġin Ġthis Ġmap Ġfrom Ġthe Ġtime Ċ when Ġthe ĠAPI Ġserver Ġprocessed Ġthe Ġe viction Ġrequest Ġto Ġthe Ġtime Ġwhen Ġthe Ġpod Ġis Ġseen Ġby ĠP DB Ġcontroller Ġas Ġhaving Ġbeen Ċ marked Ġfor Ġdeletion Ġ( or Ġafter Ġa Ġtimeout ). ĠThe Ġkey Ġin Ġthe Ġmap Ġis Ġthe Ġname Ġof Ġthe Ġpod Ġand Ġthe Ġvalue Ġis Ġthe Ġtime Ġwhen Ġthe Ċ API Ġserver Ġprocessed Ġthe Ġe viction Ġrequest . ĠIf Ġthe Ġdeletion Ġdidn 't Ġoccur Ġand Ġa Ġpod Ġis Ġstill Ġthere Ġit Ġwill Ġbe Ġremoved Ġfrom Ċ the Ġlist Ġautomatically Ġby ĠPod Dis ruption Budget Ġcontroller Ġafter Ġsome Ġtime . ĠIf Ġeverything Ġgoes Ġsmooth Ġthis Ġmap Ġshould Ġbe Ċ empty Ġfor Ġthe Ġmost Ġof Ġthe Ġtime . ĠLarge Ġnumber Ġof Ġentries Ġin Ġthe Ġmap Ġmay Ġindicate Ġproblems Ġwith Ġpod Ġde letions . Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġdis rupted Pods : ĠAny ? ĊĠ Ġ/** ĠNumber Ġof Ġpod Ġdis ru ptions Ġthat Ġare Ġcurrently Ġallowed . Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġdis ru ptions Allowed : ĠInt ? ĊĠ Ġ/** Ġtotal Ġnumber Ġof Ġpods Ġcounted Ġby Ġthis Ġdis ruption Ġbudget Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġexpected Pods : ĠInt ? ĊĠ Ġ/** ĠMost Ġrecent Ġgeneration Ġobserved Ġwhen Ġupdating Ġthis ĠP DB Ġstatus . ĠPod Dis ru ptions Allowed Ġand Ġother Ġstatus Ġinformat io Ġis Ċ valid Ġonly Ġif Ġobserved Generation Ġequals Ġto ĠP DB 's Ġobject Ġgeneration . Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġobserved Generation : ĠInt ? Ċ } ĠĠĠĠĠĠ Ċ @ K 8 s Dsl Marker Ċ interface ĠPod dis ruption budget status _ policy _ v 1 beta 1 _ k 8 s 1 _ 1 7 : ĠPod dis ruption budget status _ policy _ v 1 beta 1 _ k 8 s 1 _ 1 6 Ġ{ ĊĠ Ġ/** ĠMost Ġrecent Ġgeneration Ġobserved Ġwhen Ġupdating Ġthis ĠP DB Ġstatus . ĠPod Dis ru ptions Allowed Ġand Ġother Ġstatus Ġinformation Ġis Ċ valid Ġonly Ġif Ġobserved Generation Ġequals Ġto ĠP DB 's Ġobject Ġgeneration . Ġ*/ ĊĠ Ġoverride Ġvar Ġobserved Generation : ĠInt ? Ċ } ĠĠĠĠĠĠ Ċ @ K 8 s Dsl Marker Ċ interface ĠPod dis ruption budget status _ policy _ v 1 beta 1 _ k 8 s 1 _ 1 8 : ĠPod dis ruption budget status _ policy _ v 1 beta 1 _ k 8 s 1 _ 1 7 Ġ{ ĊĠ Ġ/** ĠMost Ġrecent Ġgeneration Ġobserved Ġwhen Ġupdating Ġthis ĠP DB Ġstatus . ĠDis ru ptions Allowed Ġand Ġother Ġstatus Ġinformation Ġis Ġvalid Ċ only Ġif Ġobserved Generation Ġequals Ġto ĠP DB 's Ġobject Ġgeneration . Ġ*/ ĊĠ Ġoverride Ġvar Ġobserved Generation : ĠInt ? Ċ } ĠĠĠĠĠĠ Ċ type alias ĠPod dis ruption budget status _ policy _ v 1 beta 1 _ k 8 s 1 _ 1 9 Ġ= ĠPod dis ruption budget status _ policy _ v 1 beta 1 _ k 8 s 1 _ 1 8 ĠĠĠĠĠĠĠ Ċ type alias ĠPod dis ruption budget status _ policy _ v 1 beta 1 _ k 8 s 1 _ 2 0 Ġ= ĠPod dis ruption budget status _ policy _ v 1 beta 1 _ k 8 s 1 _ 1 9 ĠĠĠĠĠĠĠ Ċ @ K 8 s Dsl Marker Ċ interface ĠPod dis ruption budget status _ policy _ v 1 _ k 8 s 1 _ 2 1 : ĠK 8 s Manifest Ġ{ ĊĠ Ġ/** ĠConditions Ġcontain Ġconditions Ġfor ĠP DB . ĠThe Ġdis ruption Ġcontroller Ġsets Ġthe ĠDis ruption Allowed Ġcondition . ĠThe Ġfollowing Ġare Ċ known Ġvalues Ġfor Ġthe Ġreason Ġfield Ġ( additional Ġreasons Ġcould Ġbe Ġadded Ġin Ġthe Ġfuture ): Ġ- ĠSync Failed : ĠThe Ġcontroller Ċ en counter ed Ġan Ġerror Ġand Ġwasn 't Ġable Ġto Ġcompute Ġthe Ġnumber Ġof Ġallowed Ġdis ru ptions . ĠTherefore Ġno Ġdis ru ptions Ġare Ġallowed Ċ and Ġthe Ġstatus Ġof Ġthe Ġcondition Ġwill Ġbe ĠFalse . Ġ- ĠIns ufficient Pods : ĠThe Ġnumber Ġof Ġpods Ġare Ġeither Ġat Ġor Ġbelow Ġthe Ġnumber Ċ required Ġby Ġthe ĠPod Dis ruption Budget . ĠNo Ġdis ru ptions Ġare Ġallowed Ġand Ġthe Ġstatus Ġof Ġthe Ġcondition Ġwill Ġbe ĠFalse . Ġ- Ċ S ufficient Pods : ĠThere Ġare Ġmore Ġpods Ġthan Ġrequired Ġby Ġthe ĠPod Dis ruption Budget . ĠThe Ġcondition Ġwill Ġbe ĠTrue , Ġand Ġthe Ġnumber Ċ of Ġallowed Ġdis ru ptions Ġare Ġprovided Ġby Ġthe Ġdis ru ptions Allowed Ġproperty . Ġ*/ ĊĠ Ġval Ġconditions : ĠList < Condition _ meta _ v 1 _ k 8 s 1 _ 2 1 >? ĊĠ Ġ/** Ġcurrent Ġnumber Ġof Ġhealthy Ġpods Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġcurrent Health y : ĠInt ? ĊĠ Ġ/** Ġminimum Ġdesired Ġnumber Ġof Ġhealthy Ġpods Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġdesired Health y : ĠInt ? ĊĠ Ġ/** ĠDis rupted Pods Ġcontains Ġinformation Ġabout Ġpods Ġwhose Ġe viction Ġwas Ġprocessed Ġby Ġthe ĠAPI Ġserver Ġe viction Ġsub resource Ċ handler Ġbut Ġhas Ġnot Ġyet Ġbeen Ġobserved Ġby Ġthe ĠPod Dis ruption Budget Ġcontroller . ĠA Ġpod Ġwill Ġbe Ġin Ġthis Ġmap Ġfrom Ġthe Ġtime Ċ when Ġthe ĠAPI Ġserver Ġprocessed Ġthe Ġe viction Ġrequest Ġto Ġthe Ġtime Ġwhen Ġthe Ġpod Ġis Ġseen Ġby ĠP DB Ġcontroller Ġas Ġhaving Ġbeen Ċ marked Ġfor Ġdeletion Ġ( or Ġafter Ġa Ġtimeout ). ĠThe Ġkey Ġin Ġthe Ġmap Ġis Ġthe Ġname Ġof Ġthe Ġpod Ġand Ġthe Ġvalue Ġis Ġthe Ġtime Ġwhen Ġthe Ċ API Ġserver Ġprocessed Ġthe Ġe viction Ġrequest . ĠIf Ġthe Ġdeletion Ġdidn 't Ġoccur Ġand Ġa Ġpod Ġis Ġstill Ġthere Ġit Ġwill Ġbe Ġremoved Ġfrom Ċ the Ġlist Ġautomatically Ġby ĠPod Dis ruption Budget Ġcontroller Ġafter Ġsome Ġtime . ĠIf Ġeverything Ġgoes Ġsmooth Ġthis Ġmap Ġshould Ġbe Ċ empty Ġfor Ġthe Ġmost Ġof Ġthe Ġtime . ĠLarge Ġnumber Ġof Ġentries Ġin Ġthe Ġmap Ġmay Ġindicate Ġproblems Ġwith Ġpod Ġde letions . Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġdis rupted Pods : ĠAny ? ĊĠ Ġ/** ĠNumber Ġof Ġpod Ġdis ru ptions Ġthat Ġare Ġcurrently Ġallowed . Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġdis ru ptions Allowed : ĠInt ? ĊĠ Ġ/** Ġtotal Ġnumber Ġof Ġpods Ġcounted Ġby Ġthis Ġdis ruption Ġbudget Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġexpected Pods : ĠInt ? ĊĠ Ġ/** ĠMost Ġrecent Ġgeneration Ġobserved Ġwhen Ġupdating Ġthis ĠP DB Ġstatus . ĠDis ru ptions Allowed Ġand Ġother Ġstatus Ġinformation Ġis Ġvalid Ċ only Ġif Ġobserved Generation Ġequals Ġto ĠP DB 's Ġobject Ġgeneration . Ġ*/ ĊĠ Ġ@ K 8 s Dsl Marker Ġvar Ġobserved Generation : ĠInt ? Ċ }