Added test TestPrintEvent()
Added test TestPrintNamespace()
Added test TestPrintSecret()
Added test TestPrintServiceAccount()
Added test TestPrintPodCondition()
Added test TestPrintDaemonSetLists
Added test TestPrintJobList
Added test TestPrintPodDisruptionBudgetList
Adds test TestPrintConfigMap
Adds test TestPrintNetworkPolicy
Adds tests TestPrintRoleBinding and TestPrintClusterRoleBinding
Adds test TestPrintCertificateSigningRequest
Adds test TestPrintEndpoint
Adds test TestPrintReplicaSetList
Adds test TestPrintComponentStatus
Adds test TestPrintCronJobList
Adds test TestPrintPodTemplate
Adds test TestPrintPodTemplateList
Adds test TestPrintReplicationController
Adds test TestPrintServiceList
Adds test TestPrintStatefulSet
Updated test TestPrintNodeStatus() to not use NewTableGenerator or NewTablePrinter
Updated test TestPrintNodeRode() to not use NewTableGenerator or NewTablePrinter
Updated test TestPrintNodeOSImage() to remove NewTableGenerator and NewTablePrinter
Updated test TestPrintNodeKernelVersion() to remove NewTableGenerator and NewTablePrinter
Updated test TestPrintNodeContainerRuntimeVersion() to remove NewTableGenerator and NewTablePrinter
Updated test TestPrintNodeName() to remove NewTableGenerator and NewTablePrinter
Updated test TestPrintNodeExternalIP() to remove NewTableGenerator and NewTablePrinter
Updated test TestPrintNodeInternalIP() to remove NewTableGenerator and NewTablePrinter
Updated ingress printing test to TestPrintIngress()
Updated test TestPrintService() to remove NewTableGenerator and NewTablePrinter
Updated test to TestPrintServiceLoadBalancer, removing NewTableGenerator and NewTablePrinter
Updated test TestPrintNonTerminatedPod() to remove NewTableGenerator
Updates test TestPrintDeployment() removing NewTableGenerator and NewTablePrinter
Updated test TestPrintDaemonSet(), removing NewTableGenerator and NewTablePrinter
Updated test TestPrintJob, removing NewTableGenerator and NewTablePrinter
Updates test TestPrintHPA(), removing NewTableGenerator and NewTablePrinter
Updated test TestPrintPodDisruptionBudget(), removing NewTableGenerator and NewTablePrinter
Updated test TestPrintControllerRevision(), removing NewTableGenerator and NewTablePrinter
Updates test TestPrintLease, removing NewTableGenerator and NewTablePrinter
Updates test TestPrintPriorityClass(), removing NewTableGenerator and NewTablePrinter
Updates test TestPrintRuntimeClass(), removing NewTableGenerator and NewTablePrinter
Updates test TestPrintEndpointSlice(), removing NewTableGenerator and NewTablePrinter
Updates test TestPrintReplicaSet(), removing NewTableGenerator and NewTablePrinter
Updates test TestPrintPersistentVolume(), removing NewTableGenerator and NewTablePrinter
Updates test TestPrintPersistentVolumneClaim(), removing NewTableGenerator and NewTablePrinter
Updates test TestPrintCronJob(), removing NewTableGenerator and NewTablePrinter
Updates test TestPrintStorageClass(), removing NewTableGenerator and NewTablePrinter
Bugs have been exposed which lead the release notes generator to
not generating a summary of release note stanzas from merged PRs.
Included here are the _minimum_ of what should have been recorded
for 1.16.2. Other releases' notes are likely still missing.
Signed-off-by: Tim Pepper <tpepper@vmware.com>
Computing EndpointChanges is a relatively expensive operation for
kube-proxy when Endpoint Slices are used. This had been computed on
every EndpointSlice update which became quite inefficient at high levels
of scale when multiple EndpointSlice update events would be triggered
before a syncProxyRules call.
Profiling results showed that computing this on each update could
consume ~80% of total kube-proxy CPU utilization at high levels of
scale. This change reduced that to as little as 3% of total kube-proxy
utilization at high levels of scale.
It's worth noting that the difference is minimal when there is a 1:1
relationship between EndpointSlice updates and proxier syncs. This is
primarily beneficial when there are many EndpointSlice updates between
proxier sync loops.