diff --git a/.generated_docs b/.generated_docs index 9160885dee..2f7cb3f23a 100644 --- a/.generated_docs +++ b/.generated_docs @@ -52,6 +52,7 @@ docs/man/man1/kubectl-rollout-undo.1 docs/man/man1/kubectl-rollout.1 docs/man/man1/kubectl-run.1 docs/man/man1/kubectl-scale.1 +docs/man/man1/kubectl-set.1 docs/man/man1/kubectl-stop.1 docs/man/man1/kubectl-uncordon.1 docs/man/man1/kubectl-version.1 @@ -104,6 +105,7 @@ docs/user-guide/kubectl/kubectl_rollout_resume.md docs/user-guide/kubectl/kubectl_rollout_undo.md docs/user-guide/kubectl/kubectl_run.md docs/user-guide/kubectl/kubectl_scale.md +docs/user-guide/kubectl/kubectl_set.md docs/user-guide/kubectl/kubectl_uncordon.md docs/user-guide/kubectl/kubectl_version.md docs/yaml/kubectl/kubectl.yaml @@ -136,6 +138,7 @@ docs/yaml/kubectl/kubectl_rolling-update.yaml docs/yaml/kubectl/kubectl_rollout.yaml docs/yaml/kubectl/kubectl_run.yaml docs/yaml/kubectl/kubectl_scale.yaml +docs/yaml/kubectl/kubectl_set.yaml docs/yaml/kubectl/kubectl_stop.yaml docs/yaml/kubectl/kubectl_uncordon.yaml docs/yaml/kubectl/kubectl_version.yaml diff --git a/contrib/completions/bash/kubectl b/contrib/completions/bash/kubectl index bcc6894728..1105d86845 100644 --- a/contrib/completions/bash/kubectl +++ b/contrib/completions/bash/kubectl @@ -476,6 +476,49 @@ _kubectl_get() noun_aliases+=("thirdpartyresources") } +_kubectl_set() +{ + last_command="kubectl_set" + commands=() + + flags=() + two_word_flags=() + flags_with_completion=() + flags_completion=() + + flags+=("--alsologtostderr") + flags+=("--api-version=") + flags+=("--as=") + flags+=("--certificate-authority=") + flags+=("--client-certificate=") + flags+=("--client-key=") + flags+=("--cluster=") + flags+=("--context=") + flags+=("--insecure-skip-tls-verify") + flags+=("--kubeconfig=") + flags+=("--log-backtrace-at=") + flags+=("--log-dir=") + flags+=("--log-flush-frequency=") + flags+=("--logtostderr") + flags+=("--match-server-version") + flags+=("--namespace=") + flags_with_completion+=("--namespace") + flags_completion+=("__kubectl_get_namespaces") + flags+=("--password=") + flags+=("--server=") + two_word_flags+=("-s") + flags+=("--stderrthreshold=") + flags+=("--token=") + flags+=("--user=") + flags+=("--username=") + flags+=("--v=") + flags+=("--vmodule=") + + must_have_one_flag=() + must_have_one_noun=() + noun_aliases=() +} + _kubectl_describe() { last_command="kubectl_describe" @@ -3518,6 +3561,7 @@ _kubectl() last_command="kubectl" commands=() commands+=("get") + commands+=("set") commands+=("describe") commands+=("create") commands+=("replace") diff --git a/docs/man/man1/kubectl-set.1 b/docs/man/man1/kubectl-set.1 new file mode 100644 index 0000000000..bb072a87f0 --- /dev/null +++ b/docs/man/man1/kubectl-set.1 @@ -0,0 +1,127 @@ +.TH "KUBERNETES" "1" " kubernetes User Manuals" "Eric Paris" "Jan 2015" "" + + +.SH NAME +.PP +kubectl set \- Set specific features on objects + + +.SH SYNOPSIS +.PP +\fBkubectl set\fP [OPTIONS] + + +.SH DESCRIPTION +.PP +Configure application resources + +.PP +These commands help you make changes to existing application resources. + + +.SH OPTIONS INHERITED FROM PARENT COMMANDS +.PP +\fB\-\-alsologtostderr\fP=false + log to standard error as well as files + +.PP +\fB\-\-api\-version\fP="" + DEPRECATED: The API version to use when talking to the server + +.PP +\fB\-\-as\fP="" + Username to impersonate for the operation. + +.PP +\fB\-\-certificate\-authority\fP="" + Path to a cert. file for the certificate authority. + +.PP +\fB\-\-client\-certificate\fP="" + Path to a client certificate file for TLS. + +.PP +\fB\-\-client\-key\fP="" + Path to a client key file for TLS. + +.PP +\fB\-\-cluster\fP="" + The name of the kubeconfig cluster to use + +.PP +\fB\-\-context\fP="" + The name of the kubeconfig context to use + +.PP +\fB\-\-insecure\-skip\-tls\-verify\fP=false + If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure. + +.PP +\fB\-\-kubeconfig\fP="" + Path to the kubeconfig file to use for CLI requests. + +.PP +\fB\-\-log\-backtrace\-at\fP=:0 + when logging hits line file:N, emit a stack trace + +.PP +\fB\-\-log\-dir\fP="" + If non\-empty, write log files in this directory + +.PP +\fB\-\-log\-flush\-frequency\fP=5s + Maximum number of seconds between log flushes + +.PP +\fB\-\-logtostderr\fP=true + log to standard error instead of files + +.PP +\fB\-\-match\-server\-version\fP=false + Require server version to match client version + +.PP +\fB\-\-namespace\fP="" + If present, the namespace scope for this CLI request. + +.PP +\fB\-\-password\fP="" + Password for basic authentication to the API server. + +.PP +\fB\-s\fP, \fB\-\-server\fP="" + The address and port of the Kubernetes API server + +.PP +\fB\-\-stderrthreshold\fP=2 + logs at or above this threshold go to stderr + +.PP +\fB\-\-token\fP="" + Bearer token for authentication to the API server. + +.PP +\fB\-\-user\fP="" + The name of the kubeconfig user to use + +.PP +\fB\-\-username\fP="" + Username for basic authentication to the API server. + +.PP +\fB\-\-v\fP=0 + log level for V logs + +.PP +\fB\-\-vmodule\fP= + comma\-separated list of pattern=N settings for file\-filtered logging + + +.SH SEE ALSO +.PP +\fBkubectl(1)\fP, + + +.SH HISTORY +.PP +January 2015, Originally compiled by Eric Paris (eparis at redhat dot com) based on the kubernetes source material, but hopefully they have been automatically generated since! diff --git a/docs/man/man1/kubectl.1 b/docs/man/man1/kubectl.1 index 51e1b32665..7a86efa651 100644 --- a/docs/man/man1/kubectl.1 +++ b/docs/man/man1/kubectl.1 @@ -120,7 +120,7 @@ Find more information at .SH SEE ALSO .PP -\fBkubectl\-get(1)\fP, \fBkubectl\-describe(1)\fP, \fBkubectl\-create(1)\fP, \fBkubectl\-replace(1)\fP, \fBkubectl\-patch(1)\fP, \fBkubectl\-delete(1)\fP, \fBkubectl\-edit(1)\fP, \fBkubectl\-apply(1)\fP, \fBkubectl\-namespace(1)\fP, \fBkubectl\-logs(1)\fP, \fBkubectl\-rolling\-update(1)\fP, \fBkubectl\-scale(1)\fP, \fBkubectl\-cordon(1)\fP, \fBkubectl\-drain(1)\fP, \fBkubectl\-uncordon(1)\fP, \fBkubectl\-attach(1)\fP, \fBkubectl\-exec(1)\fP, \fBkubectl\-port\-forward(1)\fP, \fBkubectl\-proxy(1)\fP, \fBkubectl\-run(1)\fP, \fBkubectl\-stop(1)\fP, \fBkubectl\-expose(1)\fP, \fBkubectl\-autoscale(1)\fP, \fBkubectl\-rollout(1)\fP, \fBkubectl\-label(1)\fP, \fBkubectl\-annotate(1)\fP, \fBkubectl\-config(1)\fP, \fBkubectl\-cluster\-info(1)\fP, \fBkubectl\-api\-versions(1)\fP, \fBkubectl\-version(1)\fP, \fBkubectl\-explain(1)\fP, \fBkubectl\-convert(1)\fP, +\fBkubectl\-get(1)\fP, \fBkubectl\-set(1)\fP, \fBkubectl\-describe(1)\fP, \fBkubectl\-create(1)\fP, \fBkubectl\-replace(1)\fP, \fBkubectl\-patch(1)\fP, \fBkubectl\-delete(1)\fP, \fBkubectl\-edit(1)\fP, \fBkubectl\-apply(1)\fP, \fBkubectl\-namespace(1)\fP, \fBkubectl\-logs(1)\fP, \fBkubectl\-rolling\-update(1)\fP, \fBkubectl\-scale(1)\fP, \fBkubectl\-cordon(1)\fP, \fBkubectl\-drain(1)\fP, \fBkubectl\-uncordon(1)\fP, \fBkubectl\-attach(1)\fP, \fBkubectl\-exec(1)\fP, \fBkubectl\-port\-forward(1)\fP, \fBkubectl\-proxy(1)\fP, \fBkubectl\-run(1)\fP, \fBkubectl\-stop(1)\fP, \fBkubectl\-expose(1)\fP, \fBkubectl\-autoscale(1)\fP, \fBkubectl\-rollout(1)\fP, \fBkubectl\-label(1)\fP, \fBkubectl\-annotate(1)\fP, \fBkubectl\-config(1)\fP, \fBkubectl\-cluster\-info(1)\fP, \fBkubectl\-api\-versions(1)\fP, \fBkubectl\-version(1)\fP, \fBkubectl\-explain(1)\fP, \fBkubectl\-convert(1)\fP, .SH HISTORY diff --git a/docs/user-guide/kubectl/kubectl.md b/docs/user-guide/kubectl/kubectl.md index 5699b32aed..2298ddbbec 100644 --- a/docs/user-guide/kubectl/kubectl.md +++ b/docs/user-guide/kubectl/kubectl.md @@ -106,10 +106,11 @@ kubectl * [kubectl rollout](kubectl_rollout.md) - rollout manages a deployment * [kubectl run](kubectl_run.md) - Run a particular image on the cluster. * [kubectl scale](kubectl_scale.md) - Set a new size for a Deployment, ReplicaSet, Replication Controller, or Job. +* [kubectl set](kubectl_set.md) - Set specific features on objects * [kubectl uncordon](kubectl_uncordon.md) - Mark node as schedulable * [kubectl version](kubectl_version.md) - Print the client and server version information. -###### Auto generated by spf13/cobra on 5-Apr-2016 +###### Auto generated by spf13/cobra on 10-May-2016 [![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/docs/user-guide/kubectl/kubectl.md?pixel)]() diff --git a/docs/user-guide/kubectl/kubectl_set.md b/docs/user-guide/kubectl/kubectl_set.md new file mode 100644 index 0000000000..4ee90dfc69 --- /dev/null +++ b/docs/user-guide/kubectl/kubectl_set.md @@ -0,0 +1,81 @@ + + + + +WARNING +WARNING +WARNING +WARNING +WARNING + +

PLEASE NOTE: This document applies to the HEAD of the source tree

+ +If you are using a released version of Kubernetes, you should +refer to the docs that go with that version. + +Documentation for other releases can be found at +[releases.k8s.io](http://releases.k8s.io). + +-- + + + + + +## kubectl set + +Set specific features on objects + +### Synopsis + + +Configure application resources + +These commands help you make changes to existing application resources. + +``` +kubectl set SUBCOMMAND +``` + +### Options inherited from parent commands + +``` + --alsologtostderr[=false]: log to standard error as well as files + --as="": Username to impersonate for the operation. + --certificate-authority="": Path to a cert. file for the certificate authority. + --client-certificate="": Path to a client certificate file for TLS. + --client-key="": Path to a client key file for TLS. + --cluster="": The name of the kubeconfig cluster to use + --context="": The name of the kubeconfig context to use + --insecure-skip-tls-verify[=false]: If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure. + --kubeconfig="": Path to the kubeconfig file to use for CLI requests. + --log-backtrace-at=:0: when logging hits line file:N, emit a stack trace + --log-dir="": If non-empty, write log files in this directory + --log-flush-frequency=5s: Maximum number of seconds between log flushes + --logtostderr[=true]: log to standard error instead of files + --match-server-version[=false]: Require server version to match client version + --namespace="": If present, the namespace scope for this CLI request. + --password="": Password for basic authentication to the API server. + -s, --server="": The address and port of the Kubernetes API server + --stderrthreshold=2: logs at or above this threshold go to stderr + --token="": Bearer token for authentication to the API server. + --user="": The name of the kubeconfig user to use + --username="": Username for basic authentication to the API server. + --v=0: log level for V logs + --vmodule=: comma-separated list of pattern=N settings for file-filtered logging +``` + +### SEE ALSO + +* [kubectl](kubectl.md) - kubectl controls the Kubernetes cluster manager + +###### Auto generated by spf13/cobra on 10-May-2016 + + +[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/docs/user-guide/kubectl/kubectl_set.md?pixel)]() + diff --git a/docs/yaml/kubectl/kubectl.yaml b/docs/yaml/kubectl/kubectl.yaml index 3892e8332a..04fa1ce7e7 100644 --- a/docs/yaml/kubectl/kubectl.yaml +++ b/docs/yaml/kubectl/kubectl.yaml @@ -67,6 +67,7 @@ options: comma-separated list of pattern=N settings for file-filtered logging see_also: - get +- set - describe - create - replace diff --git a/docs/yaml/kubectl/kubectl_set.yaml b/docs/yaml/kubectl/kubectl_set.yaml new file mode 100644 index 0000000000..26c4afd358 --- /dev/null +++ b/docs/yaml/kubectl/kubectl_set.yaml @@ -0,0 +1,67 @@ +name: set +synopsis: Set specific features on objects +description: "Configure application resources\n\t\nThese commands help you make changes + to existing application resources." +inherited_options: +- name: alsologtostderr + default_value: "false" + usage: log to standard error as well as files +- name: api-version + usage: | + DEPRECATED: The API version to use when talking to the server +- name: as + usage: Username to impersonate for the operation. +- name: certificate-authority + usage: Path to a cert. file for the certificate authority. +- name: client-certificate + usage: Path to a client certificate file for TLS. +- name: client-key + usage: Path to a client key file for TLS. +- name: cluster + usage: The name of the kubeconfig cluster to use +- name: context + usage: The name of the kubeconfig context to use +- name: insecure-skip-tls-verify + default_value: "false" + usage: | + If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure. +- name: kubeconfig + usage: Path to the kubeconfig file to use for CLI requests. +- name: log-backtrace-at + default_value: :0 + usage: when logging hits line file:N, emit a stack trace +- name: log-dir + usage: If non-empty, write log files in this directory +- name: log-flush-frequency + default_value: 5s + usage: Maximum number of seconds between log flushes +- name: logtostderr + default_value: "true" + usage: log to standard error instead of files +- name: match-server-version + default_value: "false" + usage: Require server version to match client version +- name: namespace + usage: If present, the namespace scope for this CLI request. +- name: password + usage: Password for basic authentication to the API server. +- name: server + shorthand: s + usage: The address and port of the Kubernetes API server +- name: stderrthreshold + default_value: "2" + usage: logs at or above this threshold go to stderr +- name: token + usage: Bearer token for authentication to the API server. +- name: user + usage: The name of the kubeconfig user to use +- name: username + usage: Username for basic authentication to the API server. +- name: v + default_value: "0" + usage: log level for V logs +- name: vmodule + usage: | + comma-separated list of pattern=N settings for file-filtered logging +see_also: +- kubectl diff --git a/pkg/kubectl/cmd/cmd.go b/pkg/kubectl/cmd/cmd.go index 6225a45731..c0687779e2 100644 --- a/pkg/kubectl/cmd/cmd.go +++ b/pkg/kubectl/cmd/cmd.go @@ -23,6 +23,7 @@ import ( "k8s.io/kubernetes/pkg/client/unversioned/clientcmd" cmdconfig "k8s.io/kubernetes/pkg/kubectl/cmd/config" "k8s.io/kubernetes/pkg/kubectl/cmd/rollout" + "k8s.io/kubernetes/pkg/kubectl/cmd/set" cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util" "k8s.io/kubernetes/pkg/util/flag" @@ -196,6 +197,7 @@ Find more information at https://github.com/kubernetes/kubernetes.`, cmds.SetGlobalNormalizationFunc(flag.WarnWordSepNormalizeFunc) cmds.AddCommand(NewCmdGet(f, out)) + cmds.AddCommand(set.NewCmdSet(f, out)) cmds.AddCommand(NewCmdDescribe(f, out)) cmds.AddCommand(NewCmdCreate(f, out)) cmds.AddCommand(NewCmdReplace(f, out)) diff --git a/pkg/kubectl/cmd/set/set.go b/pkg/kubectl/cmd/set/set.go new file mode 100644 index 0000000000..09a0956aa0 --- /dev/null +++ b/pkg/kubectl/cmd/set/set.go @@ -0,0 +1,48 @@ +/* +Copyright 2016 The Kubernetes Authors All rights reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package set + +import ( + "io" + + "github.com/spf13/cobra" + cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util" +) + +const ( + set_long = `Configure application resources + +These commands help you make changes to existing application resources.` + set_example = `` +) + +func NewCmdSet(f *cmdutil.Factory, out io.Writer) *cobra.Command { + + cmd := &cobra.Command{ + Use: "set SUBCOMMAND", + Short: "Set specific features on objects", + Long: set_long, + Example: set_example, + Run: func(cmd *cobra.Command, args []string) { + cmd.Help() + }, + } + + // TODO: add subcommands + + return cmd +}