Commit Graph

2523 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
de8dacd620 Merge pull request #50573 from shiywang/setfix
Automatic merge from submit-queue (batch tested with PRs 50302, 50573, 50500, 50633, 50617)

fix apply_set_last_applied dry-run output issue

Fixes https://github.com/kubernetes/kubernetes/issues/50572

@kubernetes/sig-cli-bugs 

```release-note
NONE
```
2017-08-14 20:42:18 -07:00
Kubernetes Submit Queue
1f404c5205 Merge pull request #47034 from zjj2wry/crb
Automatic merge from submit-queue (batch tested with PRs 47034, 50329)

Fix comments

**What this PR does / why we need it**:

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-14 02:43:52 -07:00
Shiyang Wang
b5737ff08d fix apply_set_last_applied dry-run output issue 2017-08-14 12:29:10 +08:00
Kubernetes Submit Queue
a1933f8efb Merge pull request #50225 from tcharding/kubectl-run-log
Automatic merge from submit-queue (batch tested with PRs 49847, 49743, 49853, 50225, 50479)

Remove duplicate logging code

**What this PR does / why we need it**:

Currently function `handleAttachPod` contains duplicate code which copies the AttachOptions output writer to the pod logging writer. This code can be refactored into a separate function. 

**Special notes for your reviewer**:

Refactor only, does not change program logic.

**Release note**:
```release-note
NONE
```

/sig cli
/kind cleanup
2017-08-12 02:35:59 -07:00
Kubernetes Submit Queue
369d5357f1 Merge pull request #50485 from jianglingxia/jlx081110
Automatic merge from submit-queue

get_test.go fix error format and info

**What this PR does / why we need it**:
there left the only one need modify,thanks
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #49481 

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-11 20:31:48 -07:00
Kubernetes Submit Queue
577fdf91c2 Merge pull request #50205 from dixudx/fix_kubectl_edit_panic_nil_list
Automatic merge from submit-queue (batch tested with PRs 50537, 49699, 50160, 49025, 50205)

not allowing "kubectl edit <resource>" when you got an empty list

**What this PR does / why we need it**:
`kubectl edit` will panic when adding an empty list.

> panic: runtime error: index out of range

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #50147

**Special notes for your reviewer**:
/assign @errordeveloper @mengqiy @janetkuo @fabianofranz
/cc @rootfs @soltysh @sttts

**Release note**:

```release-note
not allowing "kubectl edit <resource>" when you got an empty list
```
2017-08-11 19:44:04 -07:00
Antoine Pelisse
ba11c7370f openapi: Add validation logic
This allows validation of a yaml/json object against an openapi schema.
A lot more testing would be needed to validate the logic, and also this
is not plumbed in, so it can't be used by kubectl yet.
2017-08-11 17:02:31 -07:00
Antoine Pelisse
eb735bfeb0 openapi: Move Fakes to testing package 2017-08-11 15:28:04 -07:00
Kubernetes Submit Queue
d8070bd4a0 Merge pull request #50456 from liggitt/extra-steps
Automatic merge from submit-queue (batch tested with PRs 49488, 50407, 46105, 50456, 50258)

Detect missing steps in edit testcases

If a testcase specifies extra steps that are not exercised, that should be a test failure
2017-08-11 14:14:02 -07:00
Jeff Grafton
a7f49c906d Use buildozer to delete licenses() rules except under third_party/ 2017-08-11 09:32:39 -07:00
Jeff Grafton
33276f06be Use buildozer to remove deprecated automanaged tags 2017-08-11 09:31:50 -07:00
Jeff Grafton
cf55f9ed45 Autogenerate BUILD files 2017-08-11 09:30:23 -07:00
jianglingxia
cc8d0e703d get_test.go fix error format and info 2017-08-11 10:50:06 +08:00
Di Xu
6b2f3c81e2 forbid kubectl edit an empty list 2017-08-11 08:44:13 +08:00
Kubernetes Submit Queue
3e8a25e818 Merge pull request #50008 from atlassian/meta-controller-ref
Automatic merge from submit-queue

Migrate to controller references helpers in meta/v1

**What this PR does / why we need it**:
This is a follow up for #48319 that migrates all method usages to new methods in meta/v1.

**Special notes for your reviewer**:
Looking at each commit individually might be easier.

**Release note**:
```release-note
NONE
```
/sig api-machinery
/kind cleanup
2017-08-10 17:07:30 -07:00
Jordan Liggitt
5a4ac692fa
Detect missing steps in edit testcases 2017-08-10 11:01:01 -04:00
Kubernetes Submit Queue
4dc4c3c4a4 Merge pull request #49624 from guangxuli/fix_daemonset_resource_type
Automatic merge from submit-queue (batch tested with PRs 50306, 49624)

Add daemonset to all categories

**What this PR does / why we need it**:
We could get daemonset resource by running command `kubectl get all`.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
fix https://github.com/kubernetes/kubernetes/issues/49620
2017-08-10 06:27:19 -07:00
Kubernetes Submit Queue
6aeb790582 Merge pull request #49830 from jianglingxia/jlx72916
Automatic merge from submit-queue (batch tested with PRs 50418, 49830, 49206, 49061, 49912)

Renamed packge name to apiv1

**What this PR does / why we need it**:
Renamed packge name from k8s_api_v1 to apiv1
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-09 22:07:15 -07:00
Kubernetes Submit Queue
212928ad14 Merge pull request #49930 from soltysh/remove_scheduledjobs
Automatic merge from submit-queue (batch tested with PRs 50016, 49583, 49930, 46254, 50337)

Remove scheduledjobs

This is a prerequisite for promoting CronJobs to beta.

**Release note**:
```release-note
Remove deprecated ScheduledJobs endpoints, use CronJobs instead.
```
2017-08-09 14:14:30 -07:00
Kubernetes Submit Queue
190ee708a6 Merge pull request #48659 from shiywang/fix-sort
Automatic merge from submit-queue

Fix sort-by output problem

Fixes https://github.com/kubernetes/kubectl/issues/43

This bug was original introduced in pr here: https://github.com/kubernetes/kubernetes/pull/46265, I think next time if we touch something printer related package, maybe should let @smarterclayton have a review, although he is pretty busy I guess : ) and that package also changed a lot recently since he's been working on refactoring.
 
this is a quick and dirty fix, not sure if there's better way, I will add some regression test soon...

@kubernetes/sig-cli-pr-reviews 

```release-note
NONE
```

/assign @mengqiy 
/assign @smarterclayton
2017-08-09 10:56:49 -07:00
Kubernetes Submit Queue
da549596c4 Merge pull request #49534 from smarterclayton/separate_proxy
Automatic merge from submit-queue

Support exec/attach/portforward in `kubectl proxy`

Use the UpgradeAwareProxy shared code in kubectl proxy. Provide a separate transport for those requests that does not have HTTP/2 enabled. Refactor the code to be a bit cleaner in places and to better separate changes.

Fixes #32026

```release-note
`kubectl proxy` will now correctly handle the `exec`, `attach`, and `portforward` commands.  You must pass `--disable-filter` to the command in order to allow these endpoints.
```
2017-08-09 09:53:35 -07:00
Kubernetes Submit Queue
6a0d3c7494 Merge pull request #46069 from waseem/variadic-command-addition-to-parent-command
Automatic merge from submit-queue

Use variadic nature of *cobra.Command.AddCommand to add group of commands to a parent command

**What this PR does / why we need it**:

Rather than looping over commands in a group and add it one by one to a
parent command, use variadic nature of *cobra.Command.AddCommand to add
the group of commands to the parent.
2017-08-09 06:33:10 -07:00
Kubernetes Submit Queue
a5b4899ae2 Merge pull request #49223 from alexandercampbell/kubectl-impl-only-structuredgenerator
Automatic merge from submit-queue

kubectl: deploy generators don't need to impl Generator iface

The `kubectl create deployment` generators do not need to implement the Generator interface, since they are only used as implementations of the StructuredGenerator interface. I was able to delete some tests of their Generator methods as part of this change.

### Considerations for code reviewers

1. Every other StructuredGenerator implementation implements the Generator interface in additional. My change makes the "create deployment" generators a little unusual. I've added a docstring to this effect in `util/factory_client_access.go`.
2. This significantly reduces the maintenance / testing burden for future updates to `kubectl create deployment`.

**Release note**:

```release-note
NONE
```
2017-08-08 19:04:34 -07:00
Maciej Szulik
e465962bf7
Remove ScheduledJobs support 2017-08-08 15:22:26 +02:00
Kubernetes Submit Queue
187e6ab0bc Merge pull request #50254 from liggitt/revert-disk-cache
Automatic merge from submit-queue (batch tested with PRs 50254, 50174, 50179)

Revert "Merge pull request #47353 from apelisse/http-cache"

Some issues were discovered with the caching merged in #47353:
* uses a disk-based cache that is not safe between processes (does not use atomic fs operations)
* writes get/list responses to disk that should not be cached (like `kubectl get secrets`)
* is vulnerable to partially written cache responses being used as responses to future requests
* breaks uses of the client transport that make use of websockets
* defaults to enabling the cache for any client builder using RecommendedConfigOverrideFlags or DefaultClientConfig which affects more components than just kubectl

This reverts commit fc89743dca, reversing changes made to 29ab38e898.
2017-08-08 04:02:51 -07:00
Xing Zhou
65c28eb64f Add error return for the Marshal object invocation.
Add error return for the Marshal object invocation.
2017-08-08 13:38:31 +08:00
Kubernetes Submit Queue
4217e10b9f Merge pull request #49603 from zhangxiaoyu-zidif/fix-errorf-for-get-test
Automatic merge from submit-queue (batch tested with PRs 49524, 46760, 50206, 50166, 49603)

Fix errorf for get test

**What this PR does / why we need it**:
If the error messages do not use format, use t.Error() will be fine.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-07 13:52:08 -07:00
Kubernetes Submit Queue
535c0f6ff4 Merge pull request #46760 from xilabao/fix-parse-pairs
Automatic merge from submit-queue (batch tested with PRs 49524, 46760, 50206, 50166, 49603)

fix parse pairs

**What this PR does / why we need it**:
add check to `-`
```
# kubectl label pod foo -               
error: at least one label update is required
See 'kubectl label -h' for help and examples.
```

**Which issue this PR fixes**: 

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-07 13:51:57 -07:00
Jordan Liggitt
4ee72eb300
Revert "Merge pull request #47353 from apelisse/http-cache"
This reverts commit fc89743dca, reversing
changes made to 29ab38e898.
2017-08-07 16:20:34 -04:00
Kubernetes Submit Queue
c2a83c3e1c Merge pull request #49441 from zhangxiaoyu-zidif/fix-err-message-for-gettest
Automatic merge from submit-queue (batch tested with PRs 49885, 49751, 49441, 49952, 49945)

Fix error format and info for get_test.go

**What this PR does / why we need it**:
Fix error format and info for get_test.go
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-07 12:56:13 -07:00
tcharding
59c31c89bb Remove duplicate logging code 2017-08-07 14:13:22 +10:00
Kubernetes Submit Queue
ae4fac416d Merge pull request #49481 from jianglingxia/jlx72417
Automatic merge from submit-queue (batch tested with PRs 49370, 49481)

continue Fix error format and info for get_test.go

**What this PR does / why we need it**:
continue fix the error info 
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #49441 

**Special notes for your reviewer**:

**Release note**:

```release-note
    NONE
2017-08-06 08:52:56 -07:00
Kubernetes Submit Queue
979c86f3dd Merge pull request #49370 from sttts/sttts-no-clientset-embedding
Automatic merge from submit-queue (batch tested with PRs 49370, 49481)

client-gen: stop embedding of GroupVersion client intfs

It is undefined (or at least uncontrollable) which methods of the clientset apigroup
interfaces are actually inherited. Moreover, there might be nameconflicts between the
accessors and inherited methods. This PR removes the embedding to make it unambiguous.

```release-note
Enforce explicit references to API group client interfaces in clientsets to avoid ambiguity.
```
2017-08-06 08:52:54 -07:00
Kubernetes Submit Queue
702e506a69 Merge pull request #46687 from zjj2wry/delete_unuse_error
Automatic merge from submit-queue

Delete unuse err check

**What this PR does / why we need it**:
err has fatal, this err check  can't execute.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:
thank you ~

**Release note**:

```release-note
NONE
```
2017-08-06 07:32:11 -07:00
Dr. Stefan Schimanski
1910b5a1dd Fix code implicitly casting clientsets to getters 2017-08-06 15:30:13 +02:00
Mikhail Mazurskiy
b28a83a4cf
Migrate to GetControllerOf from meta/v1 package 2017-08-06 22:41:58 +10:00
Kubernetes Submit Queue
5490273951 Merge pull request #48553 from superbrothers/fix-kubectl-42
Automatic merge from submit-queue

Fix a bug that --flag=val causes completion error in zsh

**What this PR does / why we need it**:
This PR fixes a bug that flag of syntax like --flag=val causes completion error in zsh.

```
kubectl --namespace=foo g__handle_flag:25: bad math expression: operand expected at end of string
```

This problem is due to [dynamic scope](https://en.wikipedia.org/wiki/Scope_(computer_science)#Dynamic_scoping) of shell variables. If a variable is declared as local to a function, that scope remains until the function returns.

In kubectl completion zsh, `declare -A flaghash` in __start_kubectl() is replaced with `__kubectl_declare -A flaghash` by __kubectl_convert_bash_to_zsh(). As a result of it, flaghash is declared in __kubectl_declare(), and it can not access to flaghash declared in __kubectl_declare() from __handle_flag(). Therefore an error occurs in __handle_flag().

The following is the minimum reproduction code.

```sh
#!/usr/bin/env zsh

set -e

__kubectl_declare() {
    builtin declare "$@"
}

__handle_flag() {
    local flagname="--namespace="
    local flagval="kube-system"

    flaghash[${flagname}]=${flagval}

    echo "flaghash[${flagname}]=${flaghash[${flagname}]}"
}

__handle_word() {
    __handle_flag
}

__start_kubectl() {
    __kubectl_declare -A flaghash

    __handle_word
}

__start_kubectl

#
# $ zsh reproduction.zsh
# __handle_flag:4: bad math expression: operand expected at end of string
#

# __start_kubectl {
#
#     __kubectl_declare {
#
#         builtin declare -A flaghash
#
#     }
#
#     __handle_word {
#
#         __handle_flag {
#
#             # It is unable to access flaghash declared in __kubectl_declare from here
#             flaghash[${flagname}]=${flagval}
#
#         }
#
#     }
# }
```

The following is the fixed code.
```sh
#!/usr/bin/env zsh

set -e

__handle_flag() {
    local flagname="--namespace="
    local flagval="kube-system"

    flaghash[${flagname}]=${flagval}

    echo "flaghash[${flagname}]=${flaghash[${flagname}]}"
}

__handle_word() {
    __handle_flag
}

__start_kubectl() {
    builtin declare -A flaghash

    __handle_word
}

__start_kubectl

#
# $ zsh fixed.zsh
# flaghash[--namespace=]=kube-system
#

# __start_kubectl {
#
#     builtin declare -A flaghash
#
#     __handle_word {
#
#         __handle_flag {
#
#             # It is able to access flaghash declared in __start_kubectl from here :)
#             flaghash[${flagname}]=${flagval}
#
#         }
#
#     }
# }
```
https://gist.github.com/superbrothers/0ede4292f6d973f93e54368e227a4902

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*:
fixes kubernetes/kubectl#42

**Special notes for your reviewer**:
@mengqiy

**Release note**:

```release-note
NONE
```
2017-08-06 02:45:49 -07:00
Kubernetes Submit Queue
eeb72d7892 Merge pull request #49862 from dixudx/kubectl_run_labels
Automatic merge from submit-queue (batch tested with PRs 48487, 49009, 49862, 49843, 49700)

add label examples for kubectl run

**What this PR does / why we need it**:

Add `--labels` examples for kubectl run

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
xref #49854

**Special notes for your reviewer**:
/cc @ahmetb 

**Release note**:

```release-note
add examples for kubectl run --labels
```
2017-08-04 23:40:05 -07:00
Antoine Pelisse
a1d0384e82 openapi: Remove cache mechanism
The cache will be removed and replaced with HTTP Etag caching instead.
This patch is simply removing the existing mechanism.
2017-08-04 14:36:32 -07:00
Clayton Coleman
0daee3ad22
Use the UpgradeAwareProxy in kubectl proxy
Requires a separate transport that is guaranteed not to be HTTP/2 for
exec/attach/portforward, because otherwise the Go client attempts to
upgrade us to HTTP/2 first.
2017-08-04 12:48:21 -04:00
Clayton Coleman
fa009f3914
Ensure proxy server code is logically distinct 2017-08-04 12:48:17 -04:00
Kubernetes Submit Queue
6579b2e4d1 Merge pull request #50018 from tcharding/kubectl-delete
Automatic merge from submit-queue (batch tested with PRs 50000, 49954, 49943, 50018, 49607)

Remove extraneous white space

**What this PR does / why we need it**:

Output from command `kubectl delete --help` contains extraneous whitespace. While we are at it, paragraph in multi-paragraph section has shorter line lengths, text looks better if all paragraphs have similar line lengths.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:

White space only. This PR is outward facing but so trivial I don't think it needs a release note. I'm new around here, if this assumption is incorrect please tell me. Thanks.

**Release note**:

```release-note
NONE
```
2017-08-02 20:07:53 -07:00
tcharding
496dba08a8 Remove extraneous white space 2017-08-03 00:01:54 +10:00
Alexander Campbell
079883fe44 kubectl: deploy generators don't need to impl Generator iface
I was able to delete some outdated tests as part of this change.
2017-07-31 12:26:17 -07:00
supereagle
a1c880ece3 update generated deepcopy code 2017-07-31 22:33:00 +08:00
Kazuki Suda
3b00b9a5da Fix a bug that --flag=val causes completion error in zsh
Remove __kubectl_declare

`declare -F` is already replaced to `whence -w` by __kubectl_convert_bash_to_zsh().
2017-07-31 23:12:55 +09:00
Di Xu
3d35a0739f add label examples for kubectl run 2017-07-31 15:04:30 +08:00
jianglingxia
9e8d4b4188 Renamed packge name to apiv1 2017-07-29 16:47:14 +08:00
Kubernetes Submit Queue
8f8b9fa971 Merge pull request #47267 from fabianofranz/kubectl_plugins_v1_part3
Automatic merge from submit-queue (batch tested with PRs 49619, 49598, 47267, 49597, 49638)

Flag support in kubectl plugins

Adds support to flags in `kubectl` plugins. Flags are declared in the plugin descriptor and are passed to plugins through env vars, similar to global flags (which already works).

Fixes https://github.com/kubernetes/kubernetes/issues/49122

**Release note**:

```release-note
Added flag support to kubectl plugins
```
PTAL @monopole @kubernetes/sig-cli-pr-reviews
2017-07-28 05:08:05 -07:00
Kubernetes Submit Queue
bc3c5bc0d6 Merge pull request #49146 from apelisse/openapi-new-structure
Automatic merge from submit-queue (batch tested with PRs 49665, 49689, 49495, 49146, 48934)

openapi: refactor into more generic structure

**What this PR does / why we need it**:
Refactor the openapi schema to be a more generic structure that can be
"visited" to get more specific types. Will be used by validation.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: #44589

**Special notes for your reviewer**:

**Release note**:
```release-note
NONE
```
2017-07-27 21:45:36 -07:00