Commit Graph

4093 Commits

Author SHA1 Message Date
Jacob Tanenbaum
901bbee2fd Add 'kubectl set limit'
Add a way to set resource limits/requests on running pods

Ref: https://github.com/kubernetes/kubernetes/issues/21648

I squashed the commits to make rebasing easier
Change log:

- fixed a typo that caused the command to be run with kubectl set set instead of the correct kubectl set limit

- added a ResourcesWithPodTemplates to pkg/kubectl/cmd/util/factory.go
     instead of hardcoding these resources move there description all in one place

- Fixing some of the flow control in kubectl set limit

- update the help info

- changed the name of ResourcesWithPodTemplates to ResourcesWithPodSpecs to more accuratly describe what it is doing
    and changed the variable names to lower case to conform to go's variable naming convention

- changing the name of the command from 'set limit' to 'set resources'

- Adding the new file pkg/kubectl/cmd/set/set_resources.go

- changes to the test cases to reflect the change from 'kubectl set limit' to 'kubectl set resources'

- comment removed

- adding the man page to the git repository attempting to fix Jenkins tests

- adding the user guide

- fixed a few typos

- typo in hack/cmd-test.sh

- implamenting suggestions for command help text

- adding the dry-run flag

- removing the "remove" option in favor of zeroing out request/limits in order to remove them

- changed limits/requests to requests/limit

- changing ResourcesWithPodSpec

- updated generated docs and removed whitespace

- change priint on success message from "resource limits/requests updated" to "resource requirements updated"

- minor rebasing issues - 'hack/test-cmd.sh' now passes

- cmdutil.PrintSuccess added another argument

- fixing mungedocs failure

- removed whitespace from hack/make-rules/test-cmd.sh and an erroneous entry from pkg/cloudprovider/providers/openstack/MAINTAINERS.md

- fixed typo in Short: field of the cobra command

- rebased

- Creating a new factory in the ResourcesWithPodSpecs() so that the testing will pass

- changing ResourcesWithPodSpecs, it doesn't need to be a method of factory
2016-10-14 08:35:32 -04:00
Kubernetes Submit Queue
d7c0eb322c Merge pull request #34276 from freehan/cri-runtime-config
Automatic merge from submit-queue

add UpdateRuntimeConfig interface

Expose UpdateRuntimeConfig interface in RuntimeService for kubelet to pass a set of configurations to runtime. Currently it only takes PodCIDR.

The use case is for kubelet to pass configs to runtime. Kubelet holds some config/information which runtime does not have, such as PodCIDR. I expect some of kubelet configurations will gradually move to runtime, but I believe cases like PodCIDR, which dynamically assigned by k8s master, need to stay for a while.
2016-10-13 23:10:42 -07:00
Kubernetes Submit Queue
ff06372a11 Merge pull request #34749 from david-mcmahon/cache-fix
Automatic merge from submit-queue

Increase job cache limit to 300 and leave a TODO.
2016-10-13 19:08:01 -07:00
Kubernetes Submit Queue
819f92c9e2 Merge pull request #34745 from ixdy/verify-generated-verbosity
Automatic merge from submit-queue

Increase build verbosity for verify-generated-{protobuf,runtime}.sh

Print out more details of the build process to help with debugging #34675.
2016-10-13 15:03:01 -07:00
Kubernetes Submit Queue
a944748ccb Merge pull request #34341 from apprenda/kubeadm-require-root
Automatic merge from submit-queue

kubeadm implement preflight checks

Checks that user running kubeamd init and join is root and will only execute
command if user is root. Moved away from using kubectl error handling to
having kubeadm handle its own errors. This should allow kubeadm to have
more meaningful errors, exit codes, and logging for specific kubeadm use
cases.

fixes #33908
2016-10-13 15:02:53 -07:00
Kubernetes Submit Queue
f638a87b47 Merge pull request #34619 from deads2k/rbac-13-local-up
Automatic merge from submit-queue

add flag for enabling RBAC on local-up-cluster

Enables cases like `ALLOW_ANY_TOKEN=true ENABLE_RBAC=true hack/local-up-cluster.sh ` to startup an api server so you can test RBAC against it.

@pweil- You can try this using `oc login localhost:6443 --token=username/group1,group2,system:masters`.  Then you should have full rights.  You can use `oc login --token=username` or `kubectl create -f - --token=otheruser/othergroup` to simulate other users.
2016-10-13 13:58:50 -07:00
Jeff Grafton
809e528d96 Increase build verbosity for rsync operations in verify-generated-{protobuf,runtime}.sh 2016-10-13 13:40:07 -07:00
David McMahon
c5a61a6f99 Increase job cache limit to 300 and leave a TODO. 2016-10-13 12:09:06 -07:00
Devan Goodwin
4231c046dd Fix errors and improve output in kubeadm pre-flight checks.
Add skip-preflight-checks to known flags.
Fix bug with preflight checks not returning system is-active as errors.
Fix error handling to use correct function.
2016-10-13 11:10:19 -03:00
Kubernetes Submit Queue
6a2f0932e4 Merge pull request #33379 from grosskur/kube-dns-bind-address
Automatic merge from submit-queue

kube-dns: Add --dns-bind-address flag

Currently, `kube-dns` always binds to `0.0.0.0` when starting the SkyDNS server. Sometimes it's useful to have it bind to a different address for testing. So add a new `--dns-bind-address` flag that can be used to configure this (default is `0.0.0.0`).
2016-10-13 06:26:27 -07:00
Kubernetes Submit Queue
50f689f596 Merge pull request #34128 from spxtr/nodeinfo
Automatic merge from submit-queue

Do a kubectl get nodes after turning up the e2e cluster.

https://github.com/kubernetes/test-infra/issues/366
2016-10-13 05:37:02 -07:00
Minhan Xia
480bcb9760 add UpdateRuntimeConfig interface 2016-10-12 22:33:58 -07:00
Kubernetes Submit Queue
adfbe8d952 Merge pull request #33629 from mbohlool/o2
Automatic merge from submit-queue

Generate unique Operation IDs for root OpenAPI spec

This PR adds a customization method GetOperationID to OpenAPI spec generation and then use it to make sure root spec has unique operation IDs by mostly adding GroupVersion to the start of operation ID.
2016-10-12 21:06:24 -07:00
mbohlool
5ba06cf2bc Make Kubernetes OpenAPI operation IDs unique 2016-10-12 14:54:12 -07:00
Mike Danese
25e4dccefe kubeadm: fix conversion macros and add kubeadm to round trip testing 2016-10-12 13:26:23 -07:00
deads2k
127e335802 add flag for enabling RBAC on local-up-cluster 2016-10-12 11:32:09 -04:00
Kubernetes Submit Queue
12b133577e Merge pull request #33278 from Crassirostris/gcl-e2e-test
Automatic merge from submit-queue

Add gcl cluster logging test

This PR changes default logging destination for tests to gcp and adds test for cluster logging using google cloud logging

Fix #20760
2016-10-12 06:54:25 -07:00
Wojciech Tyczynski
1cfbb446c8 Try to bring down cluster in case of failure 2016-10-12 10:54:04 +02:00
Kubernetes Submit Queue
894d8605dc Merge pull request #34415 from colemickens/colemickens-hack-hyperkube
Automatic merge from submit-queue

Fix hack/dev-push-hyperkube.sh

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**: This fixes `hack/dev-push-hyperkube.sh`. It simplifies/standardizes its usage and fixes it for the changes to the build system.
2016-10-11 03:15:38 -07:00
Mik Vyatskov
b9c72ee1cb Add gcl cluster logging test 2016-10-11 09:36:11 +02:00
Kubernetes Submit Queue
580f0ec159 Merge pull request #34387 from m1093782566/m109-fix-bindata
Automatic merge from submit-queue

Add hint message for go-bindata

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

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

Add hint message for go-bindata
2016-10-10 23:53:50 -07:00
Kubernetes Submit Queue
6af180b0d7 Merge pull request #34019 from deads2k/rbac-12-default-bindings
Automatic merge from submit-queue

Add default cluster role bindings

Add default cluster roles bindings to rbac bootstrapping.  Also adds a case for allowing escalation when you have no authenticator.

@liggitt I expect you may need to make peace with this.
2016-10-10 23:53:34 -07:00
Kubernetes Submit Queue
6656929b15 Merge pull request #34153 from zmerlynn/log-dump-optionally-use-kubectl
Automatic merge from submit-queue

log-dump.sh: Add a LOG_DUMP_USE_KUBECTL mode, refactor

**What this PR does / why we need it**: This refactors log-dump.sh so that it can optionally just use `"kubectl get node"` output, for dumping logs off a cluster that was brought up using something other than kube-up.sh (e.g. kops or kubeadm).

Note that for obvious reasons, if the cluster is fried, it'll probably fail to hit the apiserver and all bets are off, but for the 95% case where you're debugging tests, this is good. To cover the remaining 5%, you could actually squirrel away the relevant external IPs after the e2e.go:Up stage (because we better be able to hit the apiserver then) and fetch them from cache later.

**Special notes for your reviewer**: Sorry for so many changes. :)
2016-10-10 16:20:20 -07:00
Zach Loafman
4338351be2 log-dump.sh: Add a LOG_DUMP_USE_KUBECTL mode, refactor
This refactors log-dump.sh so that it can optionally just use "kubectl
get node" output, for dumping logs off a cluster that was brought up
using sometihng other than kube-up.sh (e.g. kops or kubeadm).

Note that for obvious reasons, if the cluster is fried, it'll probably
fail to hit the apiserver and all bets are off, but for the 95% case
where you're debugging tests, this is good. To cover the remaining 5%,
you could actually squirrel away the relevant external IPs after the
e2e.go:Up stage (because we better be able to hit the apiserver then)
and fetch them from cache later.
2016-10-10 13:41:49 -07:00
deads2k
f73d1ea90a make sure that the bootstrap rbac rules are getting created in test-cmd 2016-10-10 15:00:36 -04:00
Kubernetes Submit Queue
cf707989b3 Merge pull request #34260 from jessfraz/ocd-about-cherry-pick-script
Automatic merge from submit-queue

hack: update cherry-pick script to show subject when patch is split

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

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

This is a continuation of #34049, which worked, but then I realized some patch files have more than one subject, see example: https://github.com/kubernetes/kubernetes/pull/34228

This cleans the output so it looks like this:

```
Automated cherry pick of #32593

Cherry pick of #32593 on release-1.4.

#32593: Fix audit_test regex for iso8601 timestamps
```

pretty!!!

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

**Special notes for your reviewer**:

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->

Signed-off-by: Jess Frazelle <acidburn@google.com>
2016-10-10 11:00:35 -07:00
Kubernetes Submit Queue
3c9600e4c4 Merge pull request #32154 from jessfraz/listen-for-signal-hack-e2e
Automatic merge from submit-queue

hack/e2e.go: listen for Interrupt signal and attempt cleanup if run with --down

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**: adds a listener on ^C, so if `hack/e2e.go` is run with `--down` and the user ^C, then it will attempt to cleanup the resources.

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

**Special notes for your reviewer**:

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
NONE
```



Signed-off-by: Jess Frazelle <me@jessfraz.com>
2016-10-10 08:10:26 -07:00
Michail Kargakis
75f30ec46f kubectl: add --revision flag in rollout status 2016-10-10 15:04:46 +02:00
Kubernetes Submit Queue
42392fea3c Merge pull request #34009 from wojtek-t/upgrade_etcd_image
Automatic merge from submit-queue

Support upgrade/downgrade in etcd image.

Ref #22448 #20504
2016-10-10 01:05:35 -07:00
Wojciech Tyczynski
e54bc86ab3 Support upgrade/downgrade in etcd image. 2016-10-10 08:40:59 +02:00
Cole Mickens
19b5ca791c hack: fix dev-push-hyperkube.sh 2016-10-09 07:19:30 -07:00
Kubernetes Submit Queue
0603af42c6 Merge pull request #34001 from mbohlool/h2o
Automatic merge from submit-queue

Generate and store federation OpenAPI spec in source tree

A follow up of #33628 to also add federation spec to source tree.
2016-10-08 17:46:51 -07:00
Kubernetes Submit Queue
de55cb85ab Merge pull request #34359 from ixdy/build-gcs-dir-suffix
Automatic merge from submit-queue

Add support for adding a suffix to the GCS upload dir in jenkins/build

Second step of fixing kubernetes/test-infra#670. Sequences after https://github.com/kubernetes/release/pull/135.

cc @luxas
2016-10-08 15:50:14 -07:00
Kubernetes Submit Queue
a99adcdf49 Merge pull request #34343 from mikedanese/prune-tests
Automatic merge from submit-queue

kubectl: add two more test of kubectl apply --prune

@pwittrock
2016-10-08 14:29:56 -07:00
m1093782566
de54d7efef add hint message for bindata
Change-Id: I295cd6819d41bf87a6379bfab3ae1f2a8819ed55
2016-10-08 16:41:57 +08:00
Kubernetes Submit Queue
5562715ae5 Merge pull request #34249 from kargakis/retain-old-revisions
Automatic merge from submit-queue

controller: save older revisions for Deployment's replica sets

@jwforres the only usable way  I could find for multiple old revisions for a single replica set is to stuff them as comma-separated values.

@kubernetes/deployment this retains old revisions served by a replica set inside an annotation.

Fixes https://github.com/kubernetes/kubernetes/issues/33844
2016-10-08 01:32:47 -07:00
Kubernetes Submit Queue
7790e5e566 Merge pull request #34275 from bvandewalle/bindAddressParameter
Automatic merge from submit-queue

user-parameter support for API_BIND_ADDRESS in local-up-cluster.sh

**What this PR does / why we need it**:
Fixes #34262. 
user-parameter for the secure api bind address when running a local dev cluster.
Default bind-address is `0.0.0.0` if not specified by the user. I'm guessing this was the intended behaviour of the original code.

Allow to reach the secure API on different interfaces/IPs when running a dev local-up-cluster.
2016-10-08 00:38:57 -07:00
Kubernetes Submit Queue
2ecd96100e Merge pull request #33783 from derekwaynecarr/phase-1-pod-cgroups
Automatic merge from submit-queue

Add cgroup-driver and cgroups-per-qos flags to kubelet

Add the flags needed to support pod-level cgroups to kubelet.

/cc @vishh @dchen1107 @dubstack
2016-10-07 17:56:01 -07:00
Jeff Grafton
f8ea21328f Add support for adding a suffix to the GCS upload dir in jenkins/build 2016-10-07 13:59:43 -07:00
Jess Frazelle
da786a8dc5
hack/e2e.go: listen for Interrupt signal and attempt cleanup if using --down
Signed-off-by: Jess Frazelle <me@jessfraz.com>
Signed-off-by: Jess Frazelle <acidburn@google.com>
2016-10-07 13:06:54 -07:00
Mike Danese
6d17a87809 kubectl: add two more test of kubectl apply --prune 2016-10-07 10:30:41 -07:00
Kubernetes Submit Queue
3be8e3e44b Merge pull request #33981 from freehan/e2e-deletens-on-failure
Automatic merge from submit-queue

add delete-namespace-on-failure flag

I have been doing this for a while. 

Setting `--delete-namespace=false --clean-start=true` only works if you have only one e2e test running in a loop. 

This PR lets someone to set `delete-namespace-on-failure=false` and run multiple tests in parallel and preserve the crime scene. It makes it easier to reproduce failures. 

Let me know if this is worth it or there are some other tricks I am not aware.
2016-10-07 04:34:27 -07:00
Michail Kargakis
89eaa918be controller: save older revisions for Deployment's replica sets 2016-10-07 11:45:06 +02:00
Kubernetes Submit Queue
a89e4785ba Merge pull request #31949 from asalkeld/fix-coverage
Automatic merge from submit-queue

Ignore troublesome paths that cause coverage to fail

**What this PR does / why we need it**:
`KUBE_COVER=y make check` currently fails, this patch fixes it.

**Which issue this PR fixes** 
fixes #31691

**Special notes for your reviewer**:
None

**Release note**:

```release-note
NONE
```

This avoids the whole command failing because of errors like the following:
```
# cover k8s.io/kubernetes/pkg/client/restclient
cover: internal error: block 268 overlaps block 270
```
2016-10-07 02:40:07 -07:00
Kubernetes Submit Queue
83921597ef Merge pull request #29236 from juanvallejo/jvallejo_add-configuration-missing-error-type
Automatic merge from submit-queue

Update client config invalid option errors to be more specific

This patch adds better error handling for cases where a global option (such as --context or --cluster) causes an invalid config to be returned.

```release-note
release-note-none
```
2016-10-07 01:24:49 -07:00
Mike Danese
62960aace7 add a test for kubectl apply --prune 2016-10-06 17:49:02 -07:00
Bernard Van De Walle
f1b1c92ada adding paraneter for API_BIND_ADDRESS in local-up-cluster.sh. Default value is 0.0.0.0 2016-10-06 14:30:29 -07:00
juanvallejo
6f925b1f82
handle invalid client config option errors
This patch provides a more relevant error message when a client
configuration option is passed with an invalid or non-existent value.

`$ kubectl get pods --cluster="non-existent"`
```
error: No configuration file found, please login or point to an existing
file
```

`$ kubectl get pods --cluster="non-existent"`
```
error: cluster "non-existent" does not exist
```
2016-10-06 16:28:51 -04:00
mbohlool
628d6f56b9 Add script to generate and store federation openapi spec in source tree 2016-10-06 13:10:01 -07:00
Jess Frazelle
81e99fad98 hack: update cherry-pick script to show subject when patch is split
Signed-off-by: Jess Frazelle <acidburn@google.com>
2016-10-06 11:50:39 -07:00