Documentation ¶
Overview ¶
Package kubectl is a set of libraries that are used by the kubectl command line tool. They are separated out into a library to support unit testing. Most functionality should be included in this package, and the main kubectl should really just be an entry point.
A set of common functions needed by cmd/kubectl and pkg/kubectl packages.
Index ¶
- func ExpandResourceShortcut(resource string) string
- func GetClientVersion(w io.Writer)
- func GetKubeClient(config *client.Config, matchVersion bool) (*client.Client, error)
- func GetVersion(w io.Writer, kubeClient client.Interface)
- func LoadClientAuthInfoOrPrompt(path string, r io.Reader) (*clientauth.Info, error)
- func SaveNamespaceInfo(path string, ns *NamespaceInfo) error
- func WatchLoop(w watch.Interface, printer ResourcePrinter, out io.Writer)
- type Describer
- type HumanReadablePrinter
- type JSONPrinter
- type MinionDescriber
- type NamespaceInfo
- type PodDescriber
- type ProxyServer
- type RESTClient
- type RESTHelper
- func (m *RESTHelper) Create(namespace string, modify bool, data []byte) error
- func (m *RESTHelper) Delete(namespace, name string) error
- func (m *RESTHelper) Get(namespace, name string, selector labels.Selector) (runtime.Object, error)
- func (m *RESTHelper) Update(namespace, name string, overwrite bool, data []byte) error
- func (m *RESTHelper) Watch(namespace, resourceVersion string, ...) (watch.Interface, error)
- type ReplicationControllerDescriber
- type ResourcePrinter
- type ServiceDescriber
- type TemplatePrinter
- type YAMLPrinter
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ExpandResourceShortcut ¶
ExpandResourceShortcut will return the expanded version of resource (something that a pkg/api/meta.RESTMapper can understand), if it is indeed a shortcut. Otherwise, will return resource unmodified. TODO: Combine with RESTMapper stuff to provide a general solution to this problem.
func GetClientVersion ¶
func GetKubeClient ¶
func LoadClientAuthInfoOrPrompt ¶
LoadClientAuthInfoOrPrompt parses an AuthInfo object from a file path. It prompts user and creates file if it doesn't exist.
func SaveNamespaceInfo ¶
func SaveNamespaceInfo(path string, ns *NamespaceInfo) error
SaveNamespaceInfo saves a NamespaceInfo object at the specified file path.
Types ¶
type Describer ¶
Describer generates output for the named resource or an error if the output could not be generated.
type HumanReadablePrinter ¶
type HumanReadablePrinter struct {
// contains filtered or unexported fields
}
HumanReadablePrinter is an implementation of ResourcePrinter which attempts to provide more elegant output. It is not threadsafe, but you may call PrintObj repeatedly; headers will only be printed if the object type changes. This makes it useful for printing items recieved from watches.
func NewHumanReadablePrinter ¶
func NewHumanReadablePrinter(noHeaders bool) *HumanReadablePrinter
NewHumanReadablePrinter creates a HumanReadablePrinter.
func (*HumanReadablePrinter) Handler ¶
func (h *HumanReadablePrinter) Handler(columns []string, printFunc interface{}) error
Handler adds a print handler with a given set of columns to HumanReadablePrinter instance. printFunc is the function that will be called to print an object. It must be of the following type:
func printFunc(object ObjectType, w io.Writer) error
where ObjectType is the type of the object that will be printed.
func (*HumanReadablePrinter) IsVersioned ¶
func (*HumanReadablePrinter) IsVersioned() bool
IsVersioned returns false-- human readable printers do not make versioned output.
type JSONPrinter ¶
type JSONPrinter struct {
// contains filtered or unexported fields
}
JSONPrinter is an implementation of ResourcePrinter which prints as JSON.
type MinionDescriber ¶
MinionDescriber generates information about a minion.
type NamespaceInfo ¶
type NamespaceInfo struct {
Namespace string
}
func LoadNamespaceInfo ¶
func LoadNamespaceInfo(path string) (*NamespaceInfo, error)
LoadNamespaceInfo parses a NamespaceInfo object from a file path. It creates a file at the specified path if it doesn't exist with the default namespace.
type PodDescriber ¶
PodDescriber generates information about a pod and the replication controllers that create it.
type ProxyServer ¶
type ProxyServer struct { httputil.ReverseProxy Port int }
ProxyServer is a http.Handler which proxies Kubernetes APIs to remote API server.
func NewProxyServer ¶
NewProxyServer creates and installs a new ProxyServer. It automatically registers the created ProxyServer to http.DefaultServeMux.
func (*ProxyServer) Serve ¶
func (s *ProxyServer) Serve() error
Serve starts the server (http.DefaultServeMux) on TCP port 8001, loops forever.
type RESTClient ¶
type RESTClient interface { Get() *client.Request Post() *client.Request Delete() *client.Request Put() *client.Request }
RESTClient is a client helper for dealing with RESTful resources in a generic way.
type RESTHelper ¶
type RESTHelper struct { Resource string // A RESTClient capable of mutating this resource RESTClient RESTClient // A codec for decoding and encoding objects of this resource type. Codec runtime.Codec // An interface for reading or writing the resource version of this // type. Versioner runtime.ResourceVersioner }
RESTHelper provides methods for retrieving or mutating a RESTful resource.
func NewRESTHelper ¶
func NewRESTHelper(client RESTClient, mapping *meta.RESTMapping) *RESTHelper
NewRESTHelper creates a RESTHelper from a ResourceMapping
func (*RESTHelper) Create ¶
func (m *RESTHelper) Create(namespace string, modify bool, data []byte) error
func (*RESTHelper) Delete ¶
func (m *RESTHelper) Delete(namespace, name string) error
type ReplicationControllerDescriber ¶
ReplicationControllerDescriber generates information about a replication controller and the pods it has created.
type ResourcePrinter ¶
type ResourcePrinter interface { // Print receives an arbitrary object, formats it and prints it to a writer. PrintObj(runtime.Object, io.Writer) error // Returns true if this printer emits properly versioned output. IsVersioned() bool }
ResourcePrinter is an interface that knows how to print API resources.
func GetPrinter ¶
func GetPrinter(version, format, templateFile string, defaultPrinter ResourcePrinter) (ResourcePrinter, error)
GetPrinter returns a resource printer and a bool indicating whether the object must be versioned for the given format.
type ServiceDescriber ¶
ServiceDescriber generates information about a service.
type TemplatePrinter ¶
type TemplatePrinter struct {
// contains filtered or unexported fields
}
TemplatePrinter is an implementation of ResourcePrinter which formats data with a Go Template.
func NewTemplatePrinter ¶
func NewTemplatePrinter(version string, tmpl []byte) (*TemplatePrinter, error)
func (*TemplatePrinter) IsVersioned ¶
func (*TemplatePrinter) IsVersioned() bool
IsVersioned returns true.
type YAMLPrinter ¶
type YAMLPrinter struct {
// contains filtered or unexported fields
}
YAMLPrinter is an implementation of ResourcePrinter which prints as YAML.