Commit Graph

4063 Commits

Author SHA1 Message Date
juanvallejo
c87cd9c0f6 sort on non-tabular output 2018-05-18 14:27:16 -04:00
juanvallejo
f3a46cf626 move additional methods from factory 2018-05-18 11:49:02 -04:00
Maciej Szulik
6eb69dfff7 Tolarate negative values when calculating job scale progress 2018-05-18 15:35:37 +02:00
WanLinghao
5e9e3afb2e kubectl: add aggregation rule support to clusterrole 2018-05-18 19:44:23 +08:00
David Eads
420dd9bf66 move type setting into an optional layer above normal printing 2018-05-17 17:22:12 -04:00
juanvallejo
0164605d31 remove versioned printer 2018-05-17 17:20:54 -04:00
David Eads
eabfcfaa2b start splitting polymorphic functions out of the factory 2018-05-17 08:55:31 -04:00
David Eads
0db40da909 update factory interface to overlap with lower RESTClientGetter 2018-05-17 08:27:53 -04:00
Kubernetes Submit Queue
a20964ac43 Merge pull request #63514 from juanvallejo/jvallejo/move-config-flags-genericclioptions
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

move config flags to pkg/kubectl/genericclioptions

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

Moves ConfigFlags to `pkg/kubectl/genericclioptions`
~~Depends on https://github.com/kubernetes/kubernetes/pull/63550~~

cc @soltysh @deads2k
2018-05-16 17:40:30 -07:00
Kubernetes Submit Queue
7d9725e9d0 Merge pull request #61227 from apelisse/fix-diff
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

diff: Fix broken `Local()` logic

Local and Live functions where doing and returning the same thing,
giving empty results by default. Fix the local function by copying the
objects before fetching the live version.



**What this PR does / why we need it**: Diff prints empty output by default. Fixes it.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes https://github.com/kubernetes/kubernetes/issues/61145

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-05-16 13:21:47 -07:00
Antoine Pelisse
f2b48a90df diff: Fix broken Local() logic
Local and Live functions where doing and returning the same thing,
giving empty results by default. Fix the local function by copying the
objects before fetching the live version.
2018-05-16 10:27:56 -07:00
Kubernetes Submit Queue
44dd0c2431 Merge pull request #63416 from smarterclayton/retry_approve
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Retry certificate approval on conflict errors

We already check preconditions. We were seeing a non-trivial number of conflicts when using the command from automation.

Fixes openshift/origin#19430

@mikedanese @mfojtik
2018-05-16 10:21:44 -07:00
Michael Gugino
442b3fcf00 Additional test coverage for kubectl/cmd/cp
This commit adds some additional test coverage
for the kubectl cp command.
2018-05-16 11:32:14 -04:00
juanvallejo
876629f690 move ConfigFlags to pkg/kubectl/genericclioptions 2018-05-16 11:31:48 -04:00
Kazuki Suda
ca26a8b375 Add initContainers into completion suggestions for kubectl logs/attach 2018-05-16 18:27:14 +09:00
Kubernetes Submit Queue
63e9b438d8 Merge pull request #63884 from deads2k/cli-56-factorypruning
Automatic merge from submit-queue (batch tested with PRs 63314, 63884, 63799, 63521, 62242). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

remove single use, non-polymorphic helpers from factory

Not all helpers in the factory need to be located there.  This strips several out.

```release-note
NONE
```
2018-05-15 19:55:09 -07:00
Kubernetes Submit Queue
c20d7ed989 Merge pull request #63644 from dixudx/cleanup_apiresources
Automatic merge from submit-queue (batch tested with PRs 63589, 63644, 63861, 63872, 63847). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

cleanup kubectl apiresources

**What this PR does / why we need it**:
#42873 introduce this new subcommand.

This PR does
* binding flags to struct
* some code cleanups

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

**Special notes for your reviewer**:
/cc soltysh juanvallejo 

**Release note**:

```release-note
None
```
2018-05-15 17:09:11 -07:00
Maciej Szulik
582128a837 Remove unnecessary roundtripping in get.go 2018-05-15 22:15:23 +02:00
David Eads
4b36c15872 remove single use, non-polymorphic helpers from factory 2018-05-15 15:05:49 -04:00
juanvallejo
57f308ae60 restore old cached client behavior 2018-05-15 10:37:53 -04:00
juanvallejo
4059355743 move cached_discovery to client-go/discovery 2018-05-15 10:20:56 -04:00
Kubernetes Submit Queue
d2952c0b2e Merge pull request #63803 from deads2k/cli-58-set-versioned
Automatic merge from submit-queue (batch tested with PRs 63272, 63782, 63715, 63811, 63803). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

switch to versioned objects only for set

Only used versioned types in the `kubectl set` commands.  This has long been the goal and we finally make it so here.

@liggitt @soltysh as promised in earlier pulls when I asked you to go with it while I unwound the debt.  This frees the entire package.



```release-note
NONE
```
2018-05-15 05:08:20 -07:00
Di Xu
f2337f0caa cleanup kubectl apiresources 2018-05-15 11:26:56 +08:00
ravisantoshgudimetla
f3441a5c20 Update e2e to use priorityClass beta 2018-05-14 18:13:41 -04:00
Kubernetes Submit Queue
141e4ee0ca Merge pull request #63769 from liggitt/kubectl-taint-internal-object
Automatic merge from submit-queue (batch tested with PRs 55511, 63372, 63400, 63100, 63769). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

print result object from kubectl taint correctly

fixes #63767 

```release-note
NONE
```
2018-05-14 14:35:24 -07:00
Jordan Liggitt
746bca241f print result object from kubectl taint correctly 2018-05-14 14:21:52 -04:00
Clayton Coleman
3b6bd9be25 Retry certificate approval on conflict errors
We already check preconditions.
2018-05-14 12:44:53 -04:00
David Eads
3af9e75950 switch to versioned objects only for set 2018-05-14 11:40:11 -04:00
Di Xu
e8ef744493 fix missing flag value bindings in kubectl 2018-05-14 14:38:54 +08:00
Kubernetes Submit Queue
92ba95c39c Merge pull request #63446 from deads2k/client-08-remove-old
Automatic merge from submit-queue (batch tested with PRs 63367, 63718, 63446, 63723, 63720). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

finish new dynamic client and deprecate old dynamic client

Builds on a couple other pulls.  This completes the transition to the new dynamic client.

@kubernetes/sig-api-machinery-pr-reviews 
@caesarxuchao @sttts 

```release-note
The old dynamic client has been replaced by a new one.  The previous dynamic client will exist for one release in `client-go/deprecated-dynamic`.  Switch as soon as possible.
```
2018-05-11 14:49:16 -07:00
juanvallejo
b5f6d834fc fail printing on internal obj 2018-05-11 14:54:37 -04:00
David Eads
fd044d152e fix dynamic client name 2018-05-11 13:12:09 -04:00
Borja Aranda
9fa269a5e5 Fix kubectl auth can-i exit errcode 2018-05-11 16:41:21 +02:00
David Eads
d8924bc1c9 move old dynamic client to deprecated-client 2018-05-11 08:00:46 -04:00
David Eads
1fd4149ed4 update describer to use dynamic client 2018-05-11 07:59:08 -04:00
Kubernetes Submit Queue
6203b621ba Merge pull request #62244 from CaoShuFeng/raw
Automatic merge from submit-queue (batch tested with PRs 62244, 63685). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

fix "kubectl create --raw"

Before this change:
```
$ kubectl create -f  pod.json --raw=https://172.16.29.130:443/api/v1/namespaces/default/pods  --as=tom --as-group=aaaaa
Error from server (Forbidden): unknown
```

After this change:
```
$ kubectl create -f pod.json --raw=https://172.16.29.130:443/api/v1/namespaces/default/pods  --as=tom --as-group=aaaaa
Error from server (Forbidden): pods is forbidden: User "tom" cannot create pods in the namespace "default"
```

/assign @soltysh 
**Release note**:

```release-note
NONE
```
2018-05-10 16:30:07 -07:00
Kubernetes Submit Queue
143d3b8824 Merge pull request #63561 from juanvallejo/jvallejo/make-opinionated-print-flags-constructor
Automatic merge from submit-queue (batch tested with PRs 63669, 63511, 63561, 63289). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

remove legacyscheme dep from printFlags

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

Breaks PrintFlags dependency on legacyscheme
Prerequisite to https://github.com/kubernetes/kubernetes/pull/63402

cc @deads2k @soltysh
2018-05-10 14:25:16 -07:00
Kubernetes Submit Queue
4868d7775a Merge pull request #63511 from juanvallejo/jvallejo/cmd-cleanup
Automatic merge from submit-queue (batch tested with PRs 63669, 63511, 63561, 63289). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

cleanup TODOs from PrintFlags wiring

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

Address TODOs from PrintFlags wiring

cc @soltysh @deads2k
2018-05-10 14:25:13 -07:00
juanvallejo
40e52bf07d remove legacyscheme dep from printFlags 2018-05-10 14:51:12 -04:00
David Eads
16d6a6c52f move resource builder to generic options 2018-05-10 14:15:12 -04:00
juanvallejo
7b1b107ea4 cleanup TODO comments from PrintFlags wiring 2018-05-10 14:03:06 -04:00
David Eads
080d6a4b0d wrap restclientgetter with match version option 2018-05-10 09:43:22 -04:00
David Eads
1f5357034b construct resource.Builder from kubeconfig flags 2018-05-10 09:42:15 -04:00
Kubernetes Submit Queue
ca92b73a65 Merge pull request #63602 from deads2k/cli-54-categories
Automatic merge from submit-queue (batch tested with PRs 59284, 63602). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

 category expansion can only come from the server

A couple release ago we moved category expansion to the server instead of hardcoding it in the client.  Similar to restmappings, there is no valid client-side expansion anymore, so this removes the code that hardcoded the list and moves the category expansion to the same package as our discovery based restmappers.

@kubernetes/sig-cli-maintainers 

```release-note
NONE
```
2018-05-09 13:51:13 -07:00
Kubernetes Submit Queue
d89471c4b5 Merge pull request #59284 from Addepar/fix-empty-null-patch
Automatic merge from submit-queue (batch tested with PRs 59284, 63602). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Exclude keys containing empty patches in the final patch

**What this PR does / why we need it**: 
This minimizes the 3-way JSON merge patch generated when calculating the patch necessary to send to the server. It does this by removing empty maps created from deleting keys in the keepOrDeleteNullInObj method.

This is not only a slight performance improvement (less PATCH requests) but also necessary when working with custom resources that have RBAC restrictions.

**Which issue(s) this PR fixes**: N/A

**Special notes for your reviewer**: N/A

**Release note**:

```release-note
NONE
```
2018-05-09 13:51:09 -07:00
David Eads
ad87219b2c category expansion can only come from the server 2018-05-09 15:05:58 -04:00
David Eads
37f6cb7230 move category expansion types to restmapper package 2018-05-09 15:03:09 -04:00
Kubernetes Submit Queue
23a9136d4e Merge pull request #63599 from deads2k/cli-53-restmapper
Automatic merge from submit-queue (batch tested with PRs 63597, 63599). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

push ToRESTMapper down a layer

The RESTMapper is needed to drive some use-cases for a dynamic client and takes a little bit of wiring (nested restmappers).  This pull pushes that into information derived from the kubeconfig flags to allow easy re-use.

@kubernetes/sig-cli-maintainers 
/assign @juanvallejo 
/assign @soltysh 

assigned to original creators.


```release-note
NONE
```
2018-05-09 11:26:12 -07:00
David Eads
3cb7d25959 push ToRESTMapper down a layer 2018-05-09 11:18:26 -04:00
Jordan Liggitt
d037b0893f Run resource discovery in parallel 2018-05-08 23:24:34 -04:00