Commit Graph

96 Commits

Author SHA1 Message Date
Mike Danese
25651408ae generated: run refactor 2020-02-08 12:30:21 -05:00
Mike Danese
3aa59f7f30 generated: run refactor 2020-02-07 18:16:47 -08:00
Troy Connor
314b6cb32b
[auth]Change example in can-i to apps instead of extensions 2019-12-13 13:36:48 -05:00
Clayton Coleman
3b780c64b8
Always negotiate a decoder using ClientNegotiator
This commit performs two refactors and fixes a bug.

Refactor 1 changes the signature of Request to take a RESTClient, which
removes the extra copy of everything on RESTClient from Request. A pair
of optional constructors are added for testing. The major functional
change is that Request no longer has the shim HTTPClient interface and
so some test cases change slightly because we are now going through
http.Client code paths instead of direct to our test stubs.

Refactor 2 changes the signature of RESTClient to take a
ClientContentConfig instead of ContentConfig - the primary difference
being that ClientContentConfig uses ClientNegotiator instead of
NegotiatedSerializer and the old Serializers type. We also collapse
some redundancies (like the rate limiter can be created outside the
constructor).

The bug fix is to negotiate the streaming content type on a Watch()
like we do for requests. We stop caching the decoder and simply
resolve it on the request. We also clean up the dynamic client
and remove the extra WatchSpecificVersions() method by providing
a properly wrapped dynamic client.
2019-11-10 21:30:36 -05:00
Sean Sullivan
958d7d3b6e Removes duplicate TabWriter. Several updates to reference the one remaining TabWriter in cli-runtime. 2019-10-22 23:45:08 -07:00
Sean Sullivan
e2cae23444 Update gofmt 2019-08-01 13:14:06 -07:00
Sean Sullivan
dc743f7edd Update BUILD files reflecting code move to staging 2019-08-01 13:12:31 -07:00
Sean Sullivan
acece3c296 Update import statements to reflect code move 2019-08-01 11:15:39 -07:00
Sean Sullivan
6c96a059dd Move pkg/kubectl/cmd/util and subdirs to staging 2019-07-29 13:08:41 -07:00
Sean Sullivan
49f5b423cf Move pkg/kubectl/describe to staging 2019-07-26 10:41:49 -07:00
Sean Sullivan
67140f13fe Updated dependencies: BUILD/modules.txt 2019-07-18 15:43:26 -07:00
Sean Sullivan
140c62cd4c Update all imports to scheme in staging 2019-07-18 15:32:27 -07:00
Mike Dame
76d7f58c06 update vendor 2019-06-25 15:28:52 -04:00
Mike Dame
a507ca338a Move pkg/util/rbac to staging and update refs 2019-06-25 15:25:23 -04:00
Mike Dame
084f7f35ac hack/update-vendor.sh 2019-06-20 20:37:38 -04:00
Mike Dame
5f3818230d Move pkg/util/printers to staging and update refs 2019-06-20 20:35:38 -04:00
Peter Swica
123fa89f21 Moved pkg/kubectl/util/term, pkg/kubectl/util/templates, pkg/kubectl/util/interrupt, and pkg/kubectl/util/interrupt to staging 2019-06-20 15:50:16 -04:00
WanLinghao
7fbd71835e 'kubectl auth can-i` command would not hint user when they try to access
some resource out of scope. For example, try get namespace inside defaut namespace.
It would be reject by api-server but `kubectl auth can-i get namespace --namespace=default`
would give a `yes`. After this patch, a warning info would be given.
For more detail, please refer issue #75950
2019-04-10 13:12:45 +08:00
Ilya Dmitrichenko
6d7a9048b6
Move printers & resources packages
These packages deserve to live at the top level of `k8s.io/cli-runtime`,
as they are potentially of wider use than genericclioptions.
2019-03-07 23:00:24 +00:00
Kubernetes Prow Robot
81e6407393
Merge pull request #74140 from Liujingfang1/kflag
add -k flag in cli-runtime and kubectl to process kustomization directories
2019-02-26 19:40:16 -08:00
Jingfang Liu
b38cf738d6 update kubectl subcommand with -k changes 2019-02-25 16:30:50 -08:00
Xiang Dai
36065c6dd7 delete all duplicate empty blanks
Signed-off-by: Xiang Dai <764524258@qq.com>
2019-02-23 10:28:04 +08:00
Kubernetes Prow Robot
a92729a301
Merge pull request #64820 from WanLinghao/ctl_selfsubjectrulesreview_support
Add `kubectl auth can-i --list` option which could help users know what actions they can do in specific namespace
2019-02-12 23:22:23 -08:00
Kubernetes Prow Robot
ce4fd07b06
Merge pull request #71564 from liggitt/reconcile-details
Improve reconcile output to explain what changes are being made
2019-02-12 18:45:13 -08:00
Roy Lenferink
b43c04452f Updated OWNERS files to include link to docs 2019-02-04 22:33:12 +01:00
Kubernetes Prow Robot
1d4861ee3d
Merge pull request #71397 from liggitt/reconcile-doc
Clarify reconcile command documentation
2019-02-03 12:02:35 -08:00
WanLinghao
d4f5228b81 Add kubectl auth can-i --list option which could help users know what actions they can do in specific namespace. 2019-01-19 15:58:44 +08:00
Maciej Szulik
885bed15da Introduce -A as a shorthand for --all-namespaces in kubectl 2018-12-19 14:37:43 +01:00
Jordan Liggitt
74ecf8d978 Improve reconcile output to explain what changes are being made 2018-11-29 10:55:38 -05:00
Jordan Liggitt
2fd10764c8 Clarify reconcile command documentation 2018-11-27 23:27:15 -05:00
Yang Li
141d33a2a5 Fix some golint errors for packages in pkg/kubectl/cmd
Co-authored-by: Arijit Basu <sayanarijit@gmail.com>
2018-11-22 22:09:08 +08:00
Davanum Srinivas
954996e231
Move from glog to klog
- Move from the old github.com/golang/glog to k8s.io/klog
- klog as explicit InitFlags() so we add them as necessary
- we update the other repositories that we vendor that made a similar
change from glog to klog
  * github.com/kubernetes/repo-infra
  * k8s.io/gengo/
  * k8s.io/kube-openapi/
  * github.com/google/cadvisor
- Entirely remove all references to glog
- Fix some tests by explicit InitFlags in their init() methods

Change-Id: I92db545ff36fcec83afe98f550c9e630098b3135
2018-11-10 07:50:31 -05:00
Jordan Liggitt
9ae79f9653 authorizers subproject approvers/reviewers 2018-11-06 00:57:38 -05:00
Maciej Szulik
61899e1654
Generated changes 2018-10-11 22:01:06 +02:00
Maciej Szulik
21789b85a6
Move pkg/kubectl/cmd/templates -> pkg/kubectl/util/temlpates 2018-10-11 22:01:03 +02:00
Christoph Blecker
97b2992dc1
Update gofmt for go1.11 2018-10-05 12:59:38 -07:00
Sean Sullivan
a20ba98b87 kubectl replace legacyscheme with kubectl scheme in two tests 2018-09-27 13:58:31 -07:00
Maciej Szulik
5b55e1f8ed
Create cli-runtime staging repository 2018-08-21 17:08:30 +02:00
David Eads
7923a9fd99 snip links to internal clients 2018-08-02 14:53:22 -04:00
David Eads
58136ee568 fail on rbac resources of non-v1 versions in reconcile 2018-07-02 13:07:16 -04:00
Jeff Grafton
23ceebac22 Run hack/update-bazel.sh 2018-06-22 16:22:57 -07:00
Kubernetes Submit Queue
5e31112d69
Merge pull request #64541 from mrogers950/additive-flag
Automatic merge from submit-queue (batch tested with PRs 63580, 63744, 64541, 64502, 64100). 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>.

Add more kubectl auth reconcile flags

```release-note
The --remove-extra-subjects and --remove-extra-permissions flags have been enabled for kubectl auth reconcile
```
/assign @deads2k 
cc @enj @juanvallejo
2018-06-20 01:27:36 -07:00
Kubernetes Submit Queue
fa20f87f1f
Merge pull request #59579 from fbac/kubectl-cani-exitcode
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>.

Add exit code 1 on not allowed to kubectl auth can-i

What this PR does / why we need it:
kubectl auth can-i verb resource always returns 0 status, even if the user can't <verb> <resource>

With this commit, kubectl will return exit code 1 when a verb is not allowed. It doesn't affect quiet option.

Release note:
```release-note
Fix kubectl auth can-i exit code. It will return 1 if the user is not allowed and 0 if it's allowed.
```
2018-06-05 07:01:06 -07:00
Matt Rogers
9f3b97572a Add more kubectl auth reconcile flags
Adds --remove-extra-permissions and --remove-extra-subjects

Signed-off-by: Matt Rogers <mrogers@redhat.com>
2018-05-31 12:16:49 -04:00
Kubernetes Submit Queue
75517f60b9
Merge pull request #64458 from mrogers950/reconcile-dryrun-additive
Automatic merge from submit-queue (batch tested with PRs 64322, 64210, 64458, 64232, 64370). 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>.

Add dry-run flag to auth reconcile

```release-note
The --dry-run flag has been enabled for kubectl auth reconcile
```
/assign @juanvallejo 
cc @enj
2018-05-30 10:09:11 -07:00
Matt Rogers
20cd94de17 Add dry-run to auth reconcile
Signed-off-by: Matt Rogers <mrogers@redhat.com>
2018-05-29 16:28:46 -04:00
David Eads
c85e69aeb9
remove unnecessary factory delegation for RESTClientGetter method 2018-05-28 15:12:41 +02:00
Kubernetes Submit Queue
2ff0bc2b8a
Merge pull request #63967 from deads2k/rbac-06-external
Automatic merge from submit-queue (batch tested with PRs 62025, 63851, 64077, 63967, 63991). 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 rbac to external

The overall trajectory of the project is towards external types.  Having all helpers agree on the version they operate on makes life much easier.  We've already written one RBAC controller (role aggregation) and more may follow.  `v1` has been around for a while now and we know that any future changes have to reliably roundtrip through it.  This pull switches all the core helpers over to use the external types.

@kubernetes/sig-auth-pr-reviews 

```release-note
`kubectl auth reconcile` only works with rbac.v1
```
2018-05-22 08:40:26 -07:00
David Eads
092714ea0f switch rbac to external 2018-05-22 08:17:05 -04:00
juanvallejo
d1603c9560 move PrintOptions to genericclioptions 2018-05-21 14:59:41 -04:00