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 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 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.
type JSONPrinter ¶
type JSONPrinter struct {
// contains filtered or unexported fields
}
JSONPrinter is an implementation of ResourcePrinter which outputs an object as JSON. The input object is assumed to be in the internal version of an API and is converted to the given version first.
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 }
ResourcePrinter is an interface that knows how to print runtime objects.
func GetPrinter ¶
func GetPrinter(format, formatArgument, version string, convertor runtime.ObjectConvertor, defaultPrinter ResourcePrinter) (ResourcePrinter, error)
GetPrinter takes a format type, an optional format argument, a version and a convertor to be used if the underlying printer requires the object to be in a specific schema ( any of the generic formatters), and the default printer to use for this object.
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(tmpl []byte, asVersion string, convertor runtime.ObjectConvertor) (*TemplatePrinter, error)
type YAMLPrinter ¶
type YAMLPrinter struct {
// contains filtered or unexported fields
}
YAMLPrinter is an implementation of ResourcePrinter which outputs an object as YAML. The input object is assumed to be in the internal version of an API and is converted to the given version first.