const ( // KubeletRootDirectory specifies the directory where the kubelet runtime information is stored. KubeletRootDirectory = "/var/lib/kubelet" )
const ( // LogVerbosityLevel is consistent with the level used in a cluster e2e test. LogVerbosityLevel = "4" )
func KubeletConfigDirCWDDir() (string, error)
func RunE2EServices(t *testing.T)
RunE2EServices actually start the e2e services. This function is used to start e2e services in current process. This is only used in run-services-mode.
func RunKubelet(featureGates map[string]bool)
RunKubelet starts kubelet and waits for termination signal. Once receives the termination signal, it will stop the kubelet gracefully.
func SetFeatureGatesForInProcessComponents(featureGates map[string]bool) error
func WriteKubeletConfigFile(internal *kubeletconfig.KubeletConfiguration, path string) error
WriteKubeletConfigFile writes the kubelet config file based on the args and returns the filename
APIServer is a server which manages apiserver.
type APIServer struct {
// contains filtered or unexported fields
}
func NewAPIServer(storageConfig storagebackend.Config) *APIServer
NewAPIServer creates an apiserver.
func (a *APIServer) Name() string
Name returns the name of APIServer.
func (a *APIServer) Start() error
Start starts the apiserver, returns when apiserver is ready.
func (a *APIServer) Stop() error
Stop stops the apiserver. Currently, there is no way to stop the apiserver. The function is here only for completion.
E2EServices starts and stops e2e services in a separate process. The test uses it to start and stop all e2e services.
type E2EServices struct {
// contains filtered or unexported fields
}
func NewE2EServices(monitorParent bool) *E2EServices
NewE2EServices returns a new E2EServices instance.
func (e *E2EServices) Start(featureGates map[string]bool) error
Start starts the e2e services in another process by calling back into the test binary. Returns when all e2e services are ready or an error.
We want to statically link e2e services into the test binary, but we don't want their glog output to pollute the test result. So we run the binary in run-services-mode to start e2e services in another process. The function starts 2 processes: * internal e2e services: services which statically linked in the test binary - apiserver, etcd and namespace controller. * kubelet: kubelet binary is outside. (We plan to move main kubelet start logic out when we have standard kubelet launcher)
func (e *E2EServices) Stop()
Stop stops the e2e services.
LogFileData holds data about logfiles to fetch with a journalctl command or file from a node's file system.
type LogFileData struct { // Name of the log file. Name string `json:"name"` // Files are possible absolute paths of the log file. Files []string `json:"files"` // JournalctlCommand is the journalctl command to get log. JournalctlCommand []string `json:"journalctl"` }
NamespaceController is a server which manages namespace controller.
type NamespaceController struct {
// contains filtered or unexported fields
}
func NewNamespaceController(host string) *NamespaceController
NewNamespaceController creates a new namespace controller.
func (n *NamespaceController) Name() string
Name returns the name of namespace controller.
func (n *NamespaceController) Start(ctx context.Context) error
Start starts the namespace controller.
func (n *NamespaceController) Stop() error
Stop stops the namespace controller.