package kubecfg
import "k8s.io/kubernetes/pkg/kubecfg"
Package kubecfg is a set of libraries that are used by the kubecfg 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 kubecfg should really just be an entry point.
Index ¶
- func DeleteController(ctx api.Context, name string, client client.Interface) error
- func GetServerVersion(client *client.Client) (*version.Info, error)
- func ResizeController(ctx api.Context, name string, replicas int, client client.Interface) error
- func RunController(ctx api.Context, image, name string, replicas int, client client.Interface, portSpec string, servicePort int) error
- func StopController(ctx api.Context, name string, client client.Interface) error
- func Update(ctx api.Context, name string, client client.Interface, updatePeriod time.Duration, imageName string) error
- type AuthInfo
- type HumanReadablePrinter
- func NewHumanReadablePrinter() *HumanReadablePrinter
- func (h *HumanReadablePrinter) Handler(columns []string, printFunc interface{}) error
- func (h *HumanReadablePrinter) Print(data []byte, output io.Writer) error
- func (h *HumanReadablePrinter) PrintObj(obj runtime.Object, output io.Writer) error
- type IdentityPrinter
- func (i *IdentityPrinter) Print(data []byte, w io.Writer) error
- func (i *IdentityPrinter) PrintObj(obj runtime.Object, output io.Writer) error
- type Parser
- func NewParser(objectMap map[string]runtime.Object) *Parser
- func (p *Parser) SupportedWireStorage() []string
- func (p *Parser) ToWireFormat(data []byte, storage string, decode runtime.Codec, encode runtime.Codec) ([]byte, error)
- type ProxyServer
- func NewProxyServer(filebase string, kubeClient *client.Client) *ProxyServer
- func (s *ProxyServer) Serve() error
- func (s *ProxyServer) ServeHTTP(w http.ResponseWriter, r *http.Request)
- type ResourcePrinter
- type TemplatePrinter
- func (t *TemplatePrinter) Print(data []byte, w io.Writer) error
- func (t *TemplatePrinter) PrintObj(obj runtime.Object, w io.Writer) error
- type YAMLPrinter
Functions ¶
func DeleteController ¶
DeleteController deletes a replication controller named 'name', requires that the controller already be stopped.
func GetServerVersion ¶
func ResizeController ¶
ResizeController resizes a controller named 'name' by setting replicas to 'replicas'.
func RunController ¶
func RunController(ctx api.Context, image, name string, replicas int, client client.Interface, portSpec string, servicePort int) error
RunController creates a new replication controller named 'name' which creates 'replicas' pods running 'image'.
func StopController ¶
StopController stops a controller named 'name' by setting replicas to zero.
func Update ¶
func Update(ctx api.Context, name string, client client.Interface, updatePeriod time.Duration, imageName string) error
Update performs a rolling update of a collection of pods. 'name' points to a replication controller. 'client' is used for updating pods. 'updatePeriod' is the time between pod updates. 'imageName' is the new image to update for the template. This will work
with the first container in the pod. There is no support yet for updating more complex replication controllers. If this is blank then no update of the image is performed.
Types ¶
type AuthInfo ¶
type AuthInfo struct { User string Password string CAFile string CertFile string KeyFile string Insecure *bool }
func LoadAuthInfo ¶
LoadAuthInfo parses an AuthInfo object from a file path. It prompts user and creates file if it doesn't exist.
type HumanReadablePrinter ¶
type HumanReadablePrinter struct {
// contains filtered or unexported fields
}
HumanReadablePrinter is an implementation of ResourcePrinter which attempts to provide more elegant output.
func NewHumanReadablePrinter ¶
func NewHumanReadablePrinter() *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) Print ¶
func (h *HumanReadablePrinter) Print(data []byte, output io.Writer) error
Print parses the data as JSON, then prints the parsed data in a human-friendly format according to the type of the data.
func (*HumanReadablePrinter) PrintObj ¶
PrintObj prints the obj in a human-friendly format according to the type of the obj.
type IdentityPrinter ¶
type IdentityPrinter struct{}
IdentityPrinter is an implementation of ResourcePrinter which simply copies the body out to the output stream.
func (*IdentityPrinter) Print ¶
func (i *IdentityPrinter) Print(data []byte, w io.Writer) error
Print is an implementation of ResourcePrinter.Print which simply writes the data to the Writer.
func (*IdentityPrinter) PrintObj ¶
PrintObj is an implementation of ResourcePrinter.PrintObj which simply writes the object to the Writer.
type Parser ¶
type Parser struct {
// contains filtered or unexported fields
}
func NewParser ¶
NewParser creates a new parser.
func (*Parser) SupportedWireStorage ¶
func (*Parser) ToWireFormat ¶
func (p *Parser) ToWireFormat(data []byte, storage string, decode runtime.Codec, encode runtime.Codec) ([]byte, error)
ToWireFormat takes input 'data' as either json or yaml, checks that it parses as the appropriate object type, and returns json for sending to the API or an error.
type ProxyServer ¶
ProxyServer is a http.Handler which proxies Kubernetes APIs to remote API server.
func NewProxyServer ¶
func NewProxyServer(filebase string, kubeClient *client.Client) *ProxyServer
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.
func (*ProxyServer) ServeHTTP ¶
func (s *ProxyServer) ServeHTTP(w http.ResponseWriter, r *http.Request)
type ResourcePrinter ¶
type ResourcePrinter interface { // Print receives an arbitrary JSON body, formats it and prints it to a writer. Print([]byte, io.Writer) error PrintObj(runtime.Object, io.Writer) error }
ResourcePrinter is an interface that knows how to print API resources.
type TemplatePrinter ¶
TemplatePrinter is an implementation of ResourcePrinter which formats data with a Go Template.
func (*TemplatePrinter) Print ¶
func (t *TemplatePrinter) Print(data []byte, w io.Writer) error
Print parses the data as JSON, and re-formats it with the Go Template.
func (*TemplatePrinter) PrintObj ¶
PrintObj formats the obj with the Go Template.
type YAMLPrinter ¶
type YAMLPrinter struct{}
YAMLPrinter is an implementation of ResourcePrinter which parsess JSON, and re-formats as YAML.
func (*YAMLPrinter) Print ¶
func (y *YAMLPrinter) Print(data []byte, w io.Writer) error
Print parses the data as JSON, re-formats as YAML and prints the YAML.
func (*YAMLPrinter) PrintObj ¶
PrintObj prints the data as YAML.
Source Files ¶
doc.go kubecfg.go parse.go proxy_server.go resource_printer.go
- Version
- v0.4.3
- Published
- Oct 30, 2014
- Platform
- js/wasm
- Imports
- 22 packages
- Last checked
- 1 minute ago –
Tools for package owners.