...

Package config

import "k8s.io/kubernetes/cmd/kube-scheduler/app/config"
Overview
Index

Overview ▾

type CompletedConfig

CompletedConfig same as Config, just to swap private object.

type CompletedConfig struct {
    // contains filtered or unexported fields
}

type Config

Config has all the context to run a Scheduler

type Config struct {
    // ComponentConfig is the scheduler server's configuration object.
    ComponentConfig kubeschedulerconfig.KubeSchedulerConfiguration

    // LoopbackClientConfig is a config for a privileged loopback connection
    LoopbackClientConfig *restclient.Config

    Authentication apiserver.AuthenticationInfo
    Authorization  apiserver.AuthorizationInfo
    SecureServing  *apiserver.SecureServingInfo

    Client             clientset.Interface
    KubeConfig         *restclient.Config
    InformerFactory    informers.SharedInformerFactory
    DynInformerFactory dynamicinformer.DynamicSharedInformerFactory

    //nolint:staticcheck // SA1019 this deprecated field still needs to be used for now. It will be removed once the migration is done.
    EventBroadcaster events.EventBroadcasterAdapter

    // LeaderElection is optional.
    LeaderElection *leaderelection.LeaderElectionConfig

    // PodMaxInUnschedulablePodsDuration is the maximum time a pod can stay in
    // unschedulablePods. If a pod stays in unschedulablePods for longer than this
    // value, the pod will be moved from unschedulablePods to backoffQ or activeQ.
    // If this value is empty, the default value (5min) will be used.
    PodMaxInUnschedulablePodsDuration time.Duration
}

func (*Config) Complete

func (c *Config) Complete() CompletedConfig

Complete fills in any fields not set that are required to have valid data. It's mutating the receiver.