Commit Graph

4230 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
73d53678c6 Merge pull request #55095 from smarterclayton/fix_mac
Automatic merge from submit-queue (batch tested with PRs 55092, 55348, 55095, 55277, 55352). 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 unit tests on darwin / non-linux platforms
2017-11-08 21:18:23 -08:00
Kubernetes Submit Queue
2ee10cc73e Merge pull request #55092 from mengqiy/refactor_factory
Automatic merge from submit-queue (batch tested with PRs 55092, 55348, 55095, 55277, 55352). 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>.

refactor build in kubectl factory

Refactor kubectl factory and resource builder.

This will be helpful for `kinflate`.

```release-note
NONE
```

/assign @monopole
2017-11-08 21:18:16 -08:00
Kubernetes Submit Queue
a3e00dbd72 Merge pull request #55120 from enj/enj/r/rbac_reconcile_visitor
Automatic merge from submit-queue (batch tested with PRs 54177, 55203, 55120, 55275, 55260). 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>.

Make ReconcileOptions reusable

This change makes ReconcileOptions fully reusable by:

1. Replacing ResourceBuilder with a Visitor that can be generically plugged in.  This decouples the use of file input from the options.
2. Replacing core client with namespace client since that smaller interface is what is needed by RunReconcile.
3. All fields are now checked by Validate as a way to document that they should be set before calling RunReconcile.

Signed-off-by: Monis Khan <mkhan@redhat.com>

```release-note
NONE
```

/assign @deads2k @fabianofranz @juanvallejo
2017-11-08 18:31:08 -08:00
WanLinghao
3be3cf6b64 removed unused defaultClientConfigForVersion()
functions from cmd_test.go.

 modified:   pkg/kubectl/cmd/cmd_test.go
2017-11-09 10:23:56 +08:00
Kubernetes Submit Queue
e5acc48295 Merge pull request #54493 from yland/kubectl_extensions_update
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>.

Replace some occurances of kubernetes internal api types in kubectl 

**What this PR does / why we need it**:
Removes dependency on k8s.io/kubernetes/pkg/apis/extensions from kubectl

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
part of https://github.com/kubernetes/kubectl/issues/83
fixes: https://github.com/kubernetes/kubectl/issues/92

**Special notes for your reviewer**:

**Release note**:
```NONE
```
2017-11-08 14:19:18 -08:00
yland
456df2c74e Replace some occurances of kubernetes internal api types in kubectl 2017-11-08 18:27:45 +01:00
ymqytw
06c5be9802 refactor builder in kubectl factory 2017-11-07 20:16:27 -08:00
Michael Venezia
53b3b5b6c5 Adding documentation on using domains and / in taint/label keys; Also clarified both key and value to labels can be 63 characters long 2017-11-07 20:09:52 -05:00
Jonas Tingeborn
f130ed9837 Fix namespace support in kubectl aging plugin
The example plugin's comments mentioned the namespace support
limitation, awaiting kubectl to implement environment variable
propagation. Now that 1.8 is out, the requirement is satisfied.

This commit adds use of the conveyed namespace information to the
plugin example.

Fixes #55255
2017-11-07 19:18:30 +01:00
Kubernetes Submit Queue
45bdf707f0 Merge pull request #50140 from dixudx/kubectl_add_fieldSelector
Automatic merge from submit-queue (batch tested with PRs 53273, 55058, 55237, 50140). 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 field selector for kubectl get

**What this PR does / why we need it**:
When working in #50075, I found current kubectl did not support using `field-selector`.

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

**Special notes for your reviewer**:
/cc @janetkuo @kargakis 
/assign @derekwaynecarr @smarterclayton @bgrant0607 

**Release note**:

```release-note
add field selector for kubectl get
```
2017-11-07 09:39:49 -08:00
Monis Khan
136cb482aa Make ReconcileOptions reusable
This change makes ReconcileOptions fully reusable by:

1. Replacing ResourceBuilder with a Visitor that can be generically
plugged in.  This decouples the use of file input from the options.
2. Replacing core client with namespace client since that smaller
interface is what is needed by RunReconcile.
3. All fields are now checked by Validate as a way to document that
they should be set before calling RunReconcile.

Signed-off-by: Monis Khan <mkhan@redhat.com>
2017-11-07 09:57:14 -05:00
wackxu
741c58be7f add create subcommand for priorityclass 2017-11-07 15:03:01 +08:00
Kubernetes Submit Queue
658024c2d7 Merge pull request #54846 from zjj2wry/remove-kubectl-dep
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>.

Remove kubectl dependency internal version

**What this PR does / why we need it**:
ref kubernetes/kubectl#83

**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**:
use `k8s.io/api/core/v1` replace `k8s.io/kubernetes/pkg/api`

use `k8s.io/client-go/kubernetes/typed/core/v1` replace `k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion`

**Release note**:

```release-note
NONE
```
2017-11-06 06:34:40 -08:00
David Eads
8203b0b135 tolerate discovery errors in the restmapper 2017-11-06 08:22:44 -05:00
Di Xu
fa143c6ddf add tests 2017-11-06 17:24:59 +08:00
Di Xu
4a3131ddaa add fieldSelector for kubectl get 2017-11-06 14:30:56 +08:00
Di Xu
057b7bf767 rename selector to labelSelector 2017-11-06 14:30:20 +08:00
stewart-yu
21e56e67b7 add namespace parameters on command 2017-11-06 10:19:08 +08:00
Clayton Coleman
d3790db03a The cp command must call Close() on files, and does not pass on Mac
Path operations needed to be with filepath, not path (for cross
platform compat), and TMPDIR is not guaranteed to have a trailing slash.
2017-11-03 22:21:29 -04:00
Kubernetes Submit Queue
2ecb368026 Merge pull request #53679 from kow3ns/workloadsv1
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>.

Workloads V1

**What this PR does / why we need it**: This PR promotes the Deployment, ReplicaSet, and DaemonSet StatefulSet, ControllerRevision kinds to the apps/v1 group version.

https://github.com/kubernetes/features/issues/353

**Special notes for your reviewer**:
There will be at least two followups to this PR. The first to add a scale sub-resource when the correct location is resolved, and the second to deal with Conditions in the workloads API.

While it would have been preferable to move the kinds individually providing a lesser burden on reviewers, this proved impracticable due to the intricacies of version resolution in kubectl for objects of the different kinds in the same group.  

```release-note
DaemonSet, Deployment, ReplicaSet, and StatefulSet have been promoted to GA and are available in the apps/v1 group version.
```
2017-11-03 15:17:16 -07:00
Kubernetes Submit Queue
6f98cc9f6a Merge pull request #55017 from nikhita/remove-tpr-extensions
Automatic merge from submit-queue (batch tested with PRs 51401, 54056, 54977, 55017, 55052). 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>.

extensions: remove TPR remnants

The extensions group still had the TPR types + generated client. Having this in the codebase doesn't create any problems but would be good to clean up, especially since TPR access has been removed in 1.8.

**Release note**:

```release-note
NONE
```

/assign @sttts @deads2k
2017-11-03 12:08:02 -07:00
Kubernetes Submit Queue
7e853132b7 Merge pull request #54056 from yuexiao-wang/modify-comment
Automatic merge from submit-queue (batch tested with PRs 51401, 54056, 54977, 55017, 55052). 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 example and comments for kubectl convert

Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>

**What this PR does / why we need it**:
There are some erros in example and comments in convert

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

**Release note**:
```release-note
NONE
```
2017-11-03 12:07:56 -07:00
Kubernetes Submit Queue
97143e51f9 Merge pull request #51401 from CaoShuFeng/rename_context
Automatic merge from submit-queue (batch tested with PRs 51401, 54056, 54977, 55017, 55052). 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>.

[cli] exit when Validate() returns an error

cmdutil.UsageErrorf() does nothing but returna a string. When Validate()
returns an error, we should call exit() function.

fix: https://github.com/kubernetes/kubectl/issues/119

**Release note**:
```
NONE
```
2017-11-03 12:07:53 -07:00
Kenneth Owens
5590c1fb94 gets the correct version of kubernetes client for DaemonSet and StatefulSet History and Rollback and updates test-cmd for new versions 2017-11-03 10:16:50 -07:00
Nikhita Raghunath
3b0b95ecbf Remove TPR remnants
There are still TPR types and generated client
in the extensions group. It is better to clean
that up, now that it has been removed from master.
2017-11-03 21:15:58 +05:30
Ahmet Alp Balkan
d7b0890217 kubectl/config/rename: fix wording
Using "Context %q renamed to %q." in rename-context to be consistent with other
commands like delete-context, set-context, use-context.

Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com>
2017-11-02 21:10:11 -07:00
Kubernetes Submit Queue
b3fa2aebe5 Merge pull request #55029 from mengqiy/discovery_client
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>.

discovery client not depend on pkg/api/legacyscheme

Switch kubectl's cached discovery client to use kubect's scheme (pkg/kubectl/scheme) which only registered with external version types.

The encoding and decoding here uses only `k8s.io/apimachinery/pkg/apis/meta/v1.APIGroupList` and `k8s.io/apimachinery/pkg/apis/meta/v1.APIResourceList` which are not internal version. So it should be safe.

```release-note
NONE
```

/assign @monopole
2017-11-02 16:44:12 -07:00
Kubernetes Submit Queue
fb67f84ed1 Merge pull request #55016 from mengqiy/cleanup_resouce_test
Automatic merge from submit-queue (batch tested with PRs 55016, 50887). 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 resouce test

- Make client-go testing support decoding to external version
- Cleanup bad dependency of `pkg/kubectl/resource` pkg

```release-note
NONE
```

/assign @monopole @caesarxuchao
2017-11-02 15:40:12 -07:00
ymqytw
5557f2e444 discovery client not depend on pkg/api/legacyscheme 2017-11-02 14:59:21 -07:00
ymqytw
2872e53c03 cleanup kubectl/resource tests dependency 2017-11-02 13:06:07 -07:00
Kubernetes Submit Queue
4e19b0fd22 Merge pull request #54872 from pwittrock/apply
Automatic merge from submit-queue (batch tested with PRs 52367, 53363, 54989, 54872, 54643). 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>.

Support retainkeys strategy for new merge code

- Some prefactoring for retainkeys
- Add retainkeys strategy


```release-note
NONE
```
2017-11-02 12:59:21 -07:00
Kubernetes Submit Queue
5f73021e25 Merge pull request #54989 from wackxu/reterr
Automatic merge from submit-queue (batch tested with PRs 52367, 53363, 54989, 54872, 54643). 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>.

should check and return err when visit failure

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

should check and return err when visit failure

**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**:

**Release note**:

```release-note
NONE
```
2017-11-02 12:59:18 -07:00
Kubernetes Submit Queue
55e216f56e Merge pull request #54957 from apelisse/update-kube-openapi
Automatic merge from submit-queue (batch tested with PRs 55004, 54957). 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>.

Update kube-openapi to use validation

**What this PR does / why we need it**: Moves openapi validation code to kube-openapi, so that we can move the rest of the code to apimachinery repository, so that later we can use it from both the client and the server.

**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 #Nothing

**Special notes for your reviewer**:

**Release note**:
```release-note
NONE
```
2017-11-02 11:17:33 -07:00
Phillip Wittrock
51d1da1e94 Support retainkeys strategy in new apply merge code 2017-11-02 10:00:56 -07:00
Antoine Pelisse
8f7262e819 Update kube-openapi to use validation 2017-11-02 09:25:03 -07:00
wackxu
7a05ecd046 should check and return err when visit failure 2017-11-02 20:15:34 +08:00
tengqm
6eacd341d1 Fix kubectl autoscale help message 2017-11-02 17:05:45 +08:00
Cao Shufeng
26032ad6f8 [cli] exit when Validate() return an error
cmdutil.UsageErrorf() does nothing but return a string. When Validate()
returns an error, we should call exit() function.
2017-11-02 14:51:28 +08:00
Kubernetes Submit Queue
d595003e0d Merge pull request #54449 from smarterclayton/get_with_options
Automatic merge from submit-queue (batch tested with PRs 54895, 54449). 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>.

Update the get command to follow more conventions of commands

Pure code movement, builds on top of #54446 and only the last commit is new. Will make refactoring get easier.
2017-11-01 21:25:12 -07:00
Kubernetes Submit Queue
b47e0f8399 Merge pull request #54880 from dims/import-boss-for-kubectl
Automatic merge from submit-queue (batch tested with PRs 54042, 54185, 54880). 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>.

Inventory of kubectl dependency on main repository

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

Add an import-boss file to inventory what kubectl depends on, so
we can prune this list over time and eventually get kubectl out
of the main k/k repository.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-11-01 19:38:16 -07:00
Davanum Srinivas
5b2bc8e52f Inventory of kubectl dependency on main repository
Add an import-boss file to inventory what kubectl depends on, so
we can prune this list over time and eventually get kubectl out
of the main k/k repository.

To update this list, You can list the dependencies using:
go list -f '{{ join .Deps "\n"}}' k8s.io/kubernetes/cmd/kubectl | grep
k8s.io/kubernetes | grep -v kubectl | grep -v vendor

Add the generated list of package names to .import-restrictions
file. Then run the hack/verify-import-boss.sh until you have you have
all the packages needed.
2017-11-01 16:18:49 -04:00
Phillip Wittrock
1b7118d965 kubectl apply parse libraries copy extensions to references and list elements
when getting field / type metadata from openapi, copy the openapi extensions from

- references to the underlying type
- lists to the subtype
2017-11-01 13:10:13 -07:00
Phillip Wittrock
1fef312102 Small refactorings for kubectl/apply merge packages
- move strings into constants
- remove unnecessary interface
- fix documentation
- improve error messaging
2017-11-01 13:10:13 -07:00
Ferran Rodenas
c73518d1a8 Print type representation on errors when checking parameter types
Signed-off-by: Ferran Rodenas <frodenas@gmail.com>
2017-11-01 10:36:17 +01:00
Ferran Rodenas
a29b01bcd2 Add kubectl Pod Disruption Budget tests
Signed-off-by: Ferran Rodenas <frodenas@gmail.com>
2017-11-01 10:36:16 +01:00
Ferran Rodenas
e7fab0d397 Remove kubectl Pod Disruption Budget V2 deprecated min-available default
Signed-off-by: Ferran Rodenas <frodenas@gmail.com>
2017-11-01 10:25:28 +01:00
Ferran Rodenas
dc5852448e Fix kubectl Pod Disruption Budget assertion error messages
Signed-off-by: Ferran Rodenas <frodenas@gmail.com>
2017-11-01 10:24:45 +01:00
Ferran Rodenas
2936479ea1 kubectl Pod Disruption Budget V2 selector parameter is required
Signed-off-by: Ferran Rodenas <frodenas@gmail.com>
2017-11-01 10:24:45 +01:00
Ferran Rodenas
ca3d3e14c0 kubectl Pod Disruption Budget V1 min-available parameter is not required
Signed-off-by: Ferran Rodenas <frodenas@gmail.com>
2017-11-01 10:24:44 +01:00
Ferran Rodenas
0a7ff7fa8b Fix kubectl Pod Disruption Budget V2 max-unavailable parameter
Signed-off-by: Ferran Rodenas <frodenas@gmail.com>
2017-11-01 10:24:42 +01:00