Commit Graph

2288 Commits

Author SHA1 Message Date
Daniel Smith
db3e549bd1 more usages of go2idl 2016-09-22 13:42:46 -07:00
Jordan Liggitt
ec200a9edf
Remove duplicated ECDHE key handling 2016-09-22 14:52:10 -04:00
Kubernetes Submit Queue
a8053c7c59 Merge pull request #33238 from mbohlool/openapi
Automatic merge from submit-queue

Move openapi common code to genericapiserver/openapi/common

a follow up to #32622

Reference: #13414
2016-09-22 10:20:48 -07:00
Kubernetes Submit Queue
5af04d1dd1 Merge pull request #32876 from errordeveloper/more-cert-utils
Automatic merge from submit-queue

Refactor cert utils into one pkg, add funcs from bootkube for kubeadm to use

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

We have ended-up with rather incomplete and fragmented collection of utils for handling certificates. It may be worse to consider using `cfssl` for doing all of these things, but for now there is some functionality that we need in `kubeadm` that we can borrow from bootkube. It makes sense to move the utils from bookube into core, as discussed in #31221.

**Special notes for your reviewer**: I've taken the opportunity to review names of existing funcs and tried to make some improvements in that area (with help from @peterbourgon).

**Release note**:

```release-note
NONE
```
2016-09-22 01:29:46 -07:00
Kubernetes Submit Queue
fee69eedbf Merge pull request #33141 from liggitt/tls-config-mutation
Automatic merge from submit-queue

don't mutate original master->kubelet TLS config

fixes https://github.com/kubernetes/kubernetes/issues/33140

```release-note
Resolves x509 verification issue with masters dialing nodes when started with --kubelet-certificate-authority
```
2016-09-21 19:22:46 -07:00
mbohlool
c25ecc43ab Move openapi common code to genericapiserver/openapi/common 2016-09-21 17:01:54 -07:00
Jordan Liggitt
f3c80048f6
don't mutate original client TLS config 2016-09-21 00:57:20 -04:00
Michail Kargakis
59da5385e0 controller: enhance timeout error message for Recreate deployments 2016-09-20 15:53:24 +02:00
Ilya Dmitrichenko
386fae4592
Refactor utils that deal with certs
- merge `pkg/util/{crypto,certificates}`
- add funcs from `github.com/kubernetes-incubator/bootkube/pkg/tlsutil`
- ensure naming of funcs is fairly consistent
2016-09-19 09:03:42 +01:00
Vish Kannan
a1fe3adbc7 Revert "Revert "[kubelet] Fix oom-score-adj policy in kubelet"" 2016-09-16 16:32:58 -07:00
Vish Kannan
492ca3bc9c Revert "[kubelet] Fix oom-score-adj policy in kubelet" 2016-09-15 19:28:59 -07:00
guangxuli
05d0c720f1 the lockfile should be handled after function return 2016-09-15 21:02:55 +08:00
Vishnu kannan
e4acad7afb Fix oom-score-adj policy in kubelet.
Docker daemon and kubelet needs to be protected by setting oom-score-adj to -999.

Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-09-14 11:56:10 -07:00
Kubernetes Submit Queue
804de8a149 Merge pull request #32244 from tksm/fix-cache-race
Automatic merge from submit-queue

LRUExpireCache#Get requires write lock

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

[LRUExpireCache#Get](dbfad789e3/pkg/util/cache/lruexpirecache.go (L48)) requires write lock since [groupcache/lru#Get](a6b377e340/lru/lru.go (L74)) needs to manipulate its list to track recently used item. Currently it uses read lock so it may introduce race condition.

- [test code which introduces race condition with current LRUExpireCache#Get](https://gist.github.com/tksm/17c7a610ed0574c165e6f6edeca351b7#file-lru_race_test-go)

**Which issue this PR fixes** #31081
2016-09-13 14:36:26 -07:00
Kubernetes Submit Queue
6ffd30c2df Merge pull request #31468 from mbohlool/master
Automatic merge from submit-queue

Improvements on OpenAPI spec generation

- Generating models using go2idl library (no reflection anymore)
- Remove dependencies on go-restful/swagger
- Generate one swagger.json file for each web-service
- Bugfix: fixed a bug in trie implementation

Reference: #13414


**Release note**:

```release-note
Generate separate OpenAPI spec for each API GroupVersion on /<Group>/<Version>/swagger.json
```
2016-09-13 01:56:23 -07:00
Kubernetes Submit Queue
630c7532c6 Merge pull request #32274 from ping035627/ping035627-patch-0908
Automatic merge from submit-queue

Change all jsonmerge to strategicpatch

Implement all jsonmerge changed to strategicpatch in edit.go.
2016-09-13 01:15:52 -07:00
mbohlool
8153267ea8 Update generated proto and swagger docs 2016-09-12 18:47:03 -07:00
mbohlool
6ba271b9ae Customize OpenAPI definition types
customize intstr, unversioned.time, and quantity OpenAPI definitions.
2016-09-12 18:47:03 -07:00
deads2k
385831825b update error handling for daemoncontroller 2016-09-12 11:01:46 -04:00
Kubernetes Submit Queue
dceb33d120 Merge pull request #32097 from brendandburns/dev
Automatic merge from submit-queue

Don't return an error if a file doesn't exist for IsPathDevice(...)

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

@saad-ali @thockin fyi, since linux devices and storage.
2016-09-09 01:37:40 -07:00
Kubernetes Submit Queue
3651765077 Merge pull request #31714 from smarterclayton/sync
Automatic merge from submit-queue

Allow missing keys in jsonpath
2016-09-08 22:22:16 -07:00
PingWang
121f6fb289 change all jsonmerge to strategicpatch
Signed-off-by: PingWang <wang.ping5@zte.com.cn>

update preconditions define

Signed-off-by: PingWang <wang.ping5@zte.com.cn>
2016-09-09 08:28:10 +08:00
Takashi Kusumi
0bd475676b LRUExpireCache#Get requires write lock 2016-09-08 00:22:07 +09:00
Clayton Coleman
4189062a03
Feature gate is not stable sorted - docs change each gen 2016-09-06 23:36:24 -04:00
Kubernetes Submit Queue
c9fde2ba8a Merge pull request #32082 from gmarek/namespace
Automatic merge from submit-queue

Make ExponentialFailureRateLimiter slightly slower and cap the backof…

Fix #27503

cc @deads2k @derekwaynecarr @ncdc @wojtek-t

For the context of this change see: https://github.com/kubernetes/kubernetes/issues/27503#issuecomment-244741161
2016-09-06 10:34:49 -07:00
Kubernetes Submit Queue
2a7d0df30d Merge pull request #30727 from asalkeld/iptables-caps
Automatic merge from submit-queue

Clean up IPTables caps i.e.: sed -i "s/Iptables/IPTables/g"

Fixes #30651
2016-09-06 09:01:27 -07:00
gmarek
0b8aeaf500 Make ExponentialFailureRateLimiter slightly slower and cap the backoff 2016-09-06 15:53:52 +02:00
Brendan Burns
07c8f9a173 Don't return an error if a file doesn't exist for IsPathDevice(...) 2016-09-05 20:45:22 -07:00
m1093782566
90bf34cafd fix errors.NewAggregate nil pointer panic
Change-Id: I82b376898f9170d237a3bd1a1ac898cc6c636d12
2016-09-02 15:37:42 +08:00
Clayton Coleman
bcea2c8a4e
Allow missing keys in jsonpath
It is common in constrained circumstances to prefer an empty string
result from JSONPath templates for missing keys over an error. Several
other implementations provide this (the canonical JS and PHP, as well as
the Java implementation).  This also mirrors gotemplate, which allows
Options("missingkey=zero").

Added simple check and simple test case.
2016-08-30 13:06:26 -04:00
Tim St. Clair
68e0f01043
AppArmor was flipped to beta, update feature gate 2016-08-29 10:22:05 -07:00
Angus Salkeld
f785f3d3ef Clean up IPTables caps i.e.: sed -i "s/Iptables/IPTables/g" 2016-08-29 10:34:42 +10:00
Kubernetes Submit Queue
cefc4c3027 Merge pull request #31473 from timstclair/aa-gate
Automatic merge from submit-queue

Add AppArmor feature gate

Add option to disable AppArmor via a feature gate. This PR treats AppArmor as Beta, and thus depends on https://github.com/kubernetes/kubernetes/pull/31471 (I will remove `do-not-merge` once that merges).

Note that disabling AppArmor means that pods with AppArmor annotations will be rejected in validation. It does not mean that the components act as though AppArmor was never implemented. This is by design, because we want to make it difficult to accidentally run a Pod with an AppArmor annotation without AppArmor protection.

/cc @dchen1107
2016-08-26 21:04:42 -07:00
Kubernetes Submit Queue
eeac23282d Merge pull request #31446 from liggitt/log-streaming
Automatic merge from submit-queue

Fix hang/websocket timeout when streaming container log with no content

When streaming and following a container log, no response headers are sent from the kubelet `containerLogs` endpoint until the first byte of content is written to the log. This propagates back to the API server, which also will not send response headers until it gets response headers from the kubelet. That includes upgrade headers, which means a websocket connection upgrade is not performed and can time out.

To recreate, create a busybox pod that runs `/bin/sh -c 'sleep 30 && echo foo && sleep 10'`

As soon as the pod starts, query the kubelet API:
```
curl -N -k -v 'https://<node>:10250/containerLogs/<ns>/<pod>/<container>?follow=true&limitBytes=100'
```

or the master API:
```
curl -N -k -v 'http://<master>:8080/api/v1/<ns>/pods/<pod>/log?follow=true&limitBytes=100'
```

In both cases, notice that the response headers are not sent until the first byte of log content is available.

This PR:
* does a 0-byte write prior to handing off to the container runtime stream copy. That commits the response header, even if the subsequent copy blocks waiting for the first byte of content from the log.
* fixes a bug with the "ping" frame sent to websocket streams, which was not respecting the requested protocol (it was sending a binary frame to a websocket that requested a base64 text protocol)
* fixes a bug in the limitwriter, which was not propagating 0-length writes, even before the writer's limit was reached
2016-08-26 06:09:43 -07:00
Kubernetes Submit Queue
d3ecad111e Merge pull request #28717 from freehan/ebtable
Automatic merge from submit-queue

Filter duplicate network packets in promiscuous bridge mode (with ebtables)

also fixes: #30783
2016-08-25 19:12:09 -07:00
Tim St. Clair
9bde6f0770
Add AppArmor feature gate 2016-08-25 17:40:18 -07:00
Kubernetes Submit Queue
75fba4c953 Merge pull request #31445 from pmorie/goroutinemap-godoc
Automatic merge from submit-queue

Improve godoc for goroutinemap

Improves the godoc of goroutinemap; found while preparing to use this type in another PR.

@saad-ali
2016-08-25 14:07:08 -07:00
Jordan Liggitt
ebd44347a5
Make limitWriter respect 0-byte writes until limit is reached 2016-08-25 14:27:17 -04:00
Paul Morie
1294267450 Improve godoc for goroutinemap 2016-08-25 14:25:05 -04:00
Jordan Liggitt
8b1a00b6d9
Send ping frame using specified encoding
If base-64 encoding was requested, send the ping frame as a 0-length text frame, rather than as a 0-length binary frame.
2016-08-25 14:24:59 -04:00
Kubernetes Submit Queue
c63cd8fc20 Merge pull request #31396 from foxish/integer-overflow
Automatic merge from submit-queue

Fixed integer overflow bug in rate limiter.

```release-note
Fix overflow issue in controller-manager rate limiter
```

This PR fixes a bug in the delayed work-queue used by some controllers.
The integer overflow bug would previously cause hotlooping behavior after a few failures 
as `time.Duration(..)` on values larger than MaxInt64 behaves unpredictably, and 
after a certain value returns 0 always.

cc @bprashanth @pwittrock
2016-08-25 11:17:38 -07:00
Anirudh
00e41888b0 Fixed integer overflow bug in rate limiter. 2016-08-24 18:55:28 -07:00
Jeff Lowdermilk
fe643590ba Update/fix feature-gate comments 2016-08-24 13:04:25 -07:00
Jeff Lowdermilk
991b07e60d Add a feature gate for alpha dynamic volume provisioning
Enabled by default to avoid breaking people, since this was
turned on in 1.3.
2016-08-24 13:02:42 -07:00
Kubernetes Submit Queue
448a133e97 Merge pull request #31352 from mtaufen/revert-revert-30090-with-fix
Automatic merge from submit-queue

Revert revert 30090 with fix

This reverts #31297 (which originally reverted #30090) and applies a fix to stop the fd leak that was exposed by #30090.
2016-08-24 11:37:59 -07:00
Minhan Xia
87ab70d6ef add ebtables util 2016-08-24 10:17:41 -07:00
Kubernetes Submit Queue
94666b4a4e Merge pull request #31112 from wojtek-t/set_unsorted_list
Automatic merge from submit-queue

Avoid sorting lists when unnecessary

I've seen ThreadSafeMap::List consuming ~30% of whole CPU usage, spending the whole time in sorting (while it is in fact completely unneded).
2016-08-24 10:11:36 -07:00
Michael Taufen
2e989a3c38 Revert "Merge pull request #31297 from mikedanese/revert-kubelet"
This reverts the revert of #30090 and #31282.
2016-08-24 09:06:12 -07:00
Kubernetes Submit Queue
189a870ec8 Merge pull request #30376 from justinsb/kubenet_mtu
Automatic merge from submit-queue

Add kubelet --network-plugin-mtu flag for MTU selection

* Add network-plugin-mtu option which lets us pass down a MTU to a network provider (currently processed by kubenet)
* Add a test, and thus make sysctl testable
2016-08-23 21:54:50 -07:00
Girish Kalele
b82c028f77 GCE Cloud provider changes for ESIPP
Add feature gate (ExternalTrafficLocalOnly) for alpha feature
2016-08-23 16:16:39 -07:00
Mike Danese
0a735b7886 Revert "Merge pull request #30090 from mtaufen/dynamic-kubelet-restart"
This reverts commit fe808ec2a4, reversing
changes made to f297ea966e.
2016-08-23 14:11:48 -07:00
Kubernetes Submit Queue
fe808ec2a4 Merge pull request #30090 from mtaufen/dynamic-kubelet-restart
Automatic merge from submit-queue

[Kubelet] Optionally consume configuration from <node-name> named config maps

This extends the Kubelet to check the API server for new node-specific config, and exit when it finds said new config.

/cc @kubernetes/sig-node @mikedanese @timstclair @vishh

**Release note**:
```
Extends Kubelet with Alpha Dynamic Kubelet Configuration. Please note that this alpha feature does not currently work with cloud provider auto-detection.
```
2016-08-23 09:25:22 -07:00
Kubernetes Submit Queue
ec5b204573 Merge pull request #28816 from xiangpengzhao/add_test_comment
Automatic merge from submit-queue

Unset https_proxy before roundtripper_test

When running `hack/test-go.sh`, if the testing env is behind a https proxy, roundtripper_test will fail randomly.

After `unset https_proxy`, the testing works well. So, add a comment to be a troubleshooting tip.

Fail info:

```
--- FAIL: TestRoundTripAndNewConnection (0.12s)
	roundtripper_test.go:319: proxied http->http: shouldError=false, got true: Get http://127.0.0.1:46711: unexpected EOF
FAIL
FAIL	k8s.io/kubernetes/pkg/util/httpstream/spdy	0.148s
```

```
--- FAIL: TestRoundTripAndNewConnection (0.12s)
	roundtripper_test.go:319: proxied https with auth (valid hostname + RootCAs) -> http: shouldError=false, got true: Get http://127.0.0.1:41028: unexpected EOF
FAIL
FAIL	k8s.io/kubernetes/pkg/util/httpstream/spdy	0.146s
```
2016-08-23 00:19:37 -07:00
Michael Taufen
35a63d956b Implement Alpha Dynamic Kubelet Configuration
See Issue #27980 and Proposal PR #29459
2016-08-22 22:42:51 -07:00
Justin Santa Barbara
2c103af2b6 Create testable implementation of sysctl
This is so we can test kubenet Init, which calls sysctl
2016-08-23 01:42:37 -04:00
Kubernetes Submit Queue
25ce84b34e Merge pull request #31140 from thockin/feature-gate-fixes
Automatic merge from submit-queue

Make 'allAlpha' a special feature gate

Rather than making all caller check both allAlpha and their own flag, make `allAlpha` set all of the alpha gates explicitly.

This is hard to test because of the globalness.  I will follow this commit with a new one to add some way to test, but I wanted to float this design
2016-08-22 21:06:29 -07:00
Tim Hockin
34bd1e391e Don't panic if the feature-gate flag was not used 2016-08-22 17:41:25 -07:00
Kubernetes Submit Queue
54ca389012 Merge pull request #30802 from MHBauer/ensure-mounter
Automatic merge from submit-queue

ensure pkg/util/mount compiles & crosses

<!--  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**:
osx doesn't build
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #30795

**Special notes for your reviewer**:

**Release note**:
```release-note-none
```

 - move compile time check from linux code to generic code
 - remove duplication of #30724 and #30666 to resolve #30795
2016-08-22 17:40:16 -07:00
Tim Hockin
f77576bc2b Capitalize feature gates
Also rename variables for clarity
2016-08-22 13:57:35 -07:00
Tim Hockin
6c75bd8be5 Make 'allAlpha' a special feature gate
Rather than making all caller check both allAlpha and their own flag, make
allAlpha set the alpha gates explicitly, iff they were not already set.
2016-08-22 13:57:35 -07:00
Wojciech Tyczynski
3cfd3c236c Support UnsortedList() in auto-generated sets. 2016-08-22 15:05:37 +02:00
Morgan Bauer
92a043e833
ensure pkg/util/mount compiles & crosses
- move compile time check from linux code to generic code
2016-08-21 17:47:24 -07:00
Jordan Liggitt
6483f55733
Close websocket stream when client closes 2016-08-21 13:38:47 -04:00
Kubernetes Submit Queue
a41e6e3817 Merge pull request #30922 from yifan-gu/tls_bootstrap_refactor
Automatic merge from submit-queue

Implement TLS bootstrap for kubelet using `--experimental-bootstrap-kubeconfig`  (2nd take)

Ref kubernetes/features#43 (comment)

cc @gtank @philips @mikedanese @aaronlevy @liggitt @deads2k @errordeveloper @justinsb 


Continue on the older PR https://github.com/kubernetes/kubernetes/pull/30094 as there are too many comments on that one and it's not loadable now.
2016-08-21 03:47:07 -07:00
bindata-mockuser
e792d4117d Add return code support to kubectl-exec and -run 2016-08-20 15:58:47 +02:00
bindata-mockuser
6dcb0c9130 Rectify kubectl error output 2016-08-20 15:58:10 +02:00
bindata-mockuser
ce7f003f57 Add protocol versions to pkg/util/wsstream 2016-08-20 15:58:10 +02:00
Kubernetes Submit Queue
010c976ce8 Merge pull request #30468 from jlowdermilk/feature-config
Automatic merge from submit-queue

Feature gates for kube-system components

Implements [this proposal](https://github.com/kubernetes/kubernetes/blob/master/docs/proposals/runtimeconfig.md). Adds `--feature-gates` to apiserver, scheduler, controller-manager and proxy.

cc @lavalamp @adityakali
2016-08-19 18:15:19 -07:00
Jordan Liggitt
26a6623261 kubelet: '--experimental-bootstrap-kubeconfig' refactor.
Move bootstrap functions to separate files.
Split some of the functions into small sub-functions for reusability.
Other cleanups
2016-08-19 15:27:23 -07:00
Kubernetes Submit Queue
96cbed4b5f Merge pull request #30887 from johscheuer/fix-osx-kublet
Automatic merge from submit-queue

Fixes #30886

This PR fixes https://github.com/kubernetes/kubernetes/issues/30886

```
make WHAT=pkg/kubelet
+++ [0818 17:03:21] Generating bindata:
    /Users/jscheuermann/inovex/workspace/kubernetes-clone/test/e2e/framework/gobindata_util.go
+++ [0818 17:03:22] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
+++ [0818 17:03:22] Building go targets for darwin/amd64:
    pkg/kubelet

```
2016-08-19 14:34:36 -07:00
Yifan Gu
2e631d811c crypto.go: Rename ShouldGenSelfSignedCerts() to FoundCertOrKey().
Since the function only tests whether the files are on the disk,
the original name is a little bit misleading.
2016-08-19 13:51:34 -07:00
Yifan Gu
26babd4eba kubelet: Add --bootstrap-kubeconfig to get TLS client cert.
Add --bootstrap-kubeconfig flag to kubelet. If the flag is non-empty
and --kubeconfig doesn't exist, then the kubelet will use the bootstrap
kubeconfig to create rest client and generate certificate signing request
to request a client cert from API server.

Once succeeds, the result cert will be written down to
--cert-dir/kubelet-client.crt, and the kubeconfig will be populated with
certfile, keyfile path pointing to the result certificate file, key file.
(The key file is generated before creating the CSR).
2016-08-19 13:51:33 -07:00
Jeff Lowdermilk
51198f59da Add --feature-gates to kube-system components
apiserver,scheduler,controller-manager,proxy,kubelet all get
flag. Using one variable to plumb through config via salt/init
scripts for GCE and GKE
2016-08-19 09:07:43 -07:00
Tamer Tas
fe039573b7 pkg/util/mount: remove method redeclaration
Fix the `GetDeviceNameFromMount` method thats declared twice.
2016-08-19 16:49:28 +03:00
Chao Xu
65d1dbe8d9 fix memory leak in gc 2016-08-18 21:54:44 -07:00
George Tankersley
5801fa5f4d util/certificates: Add CSR utility function. 2016-08-18 11:25:21 -07:00
Johannes Scheuermann
5eef6b8d91 Fixes #30886 2016-08-18 17:01:03 +02:00
Kubernetes Submit Queue
dc588e4451 Merge pull request #30257 from timstclair/aa-psp-annotations
Automatic merge from submit-queue

Add annotations to the PodSecurityPolicy Provider interface

@pweil- is this what you were thinking in terms of API changes? I really like to avoid functions with more than 2 return values, but couldn't think of a cleaner approach in this case.
2016-08-18 07:12:45 -07:00
Kubernetes Submit Queue
f0db50a7da Merge pull request #30723 from yujuhong/procfs_fix
Automatic merge from submit-queue

Fix building pkg/util/procfs on non-linux platforms

This partially fixes https://github.com/kubernetes/test-infra/issues/393

/cc @ixdy @krousey @dims
2016-08-17 20:50:01 -07:00
Yu-Ju Hong
a2824bb7a3 Fix building pkg/util/procfs on non-linux platforms 2016-08-17 11:57:44 -07:00
Kubernetes Submit Queue
2bc5414de6 Merge pull request #30666 from feiskyer/fix-mount
Automatic merge from submit-queue

Fix pkg/util/mount for osx

Fix #30665.
2016-08-17 11:37:53 -07:00
Tim St. Clair
d4ea444277
Add utility package for dealing with common map types 2016-08-17 10:14:33 -07:00
Andy Goldstein
8b171081d1 Add newline to printf to fix junit 2016-08-17 10:40:27 -04:00
Kubernetes Submit Queue
7b49d0c19d Merge pull request #23265 from AdoHe/big_yaml
Automatic merge from submit-queue

use Reader.ReadLine instead of bufio.Scanner to support bigger yaml

@smarterclayton ptal. Also refer #19603 #23125 for more details.
2016-08-17 02:26:46 -07:00
Kubernetes Submit Queue
90f3a95700 Merge pull request #30724 from jingxu97/reconcile-8-16
Automatic merge from submit-queue

Add GetDeviceNameFromMount in mount_unsupported.go
2016-08-17 01:35:05 -07:00
Jing Xu
89de4f2f55 Add GetDeviceNameFromMount in mount_unsupported.go
Add GetDeviceNameFromMount in mount_unsupported.go
2016-08-16 16:34:10 -07:00
Kubernetes Submit Queue
096dd4df50 Merge pull request #26510 from AdoHe/patch_test
Automatic merge from submit-queue

update strategic patch test for merge list of maps

Refer #26418 for more details. @janetkuo the test case is added, ptal.
2016-08-15 20:38:22 -07:00
Pengfei Ni
12d7c4f380 Fix mount for osx 2016-08-16 08:26:15 +08:00
Kubernetes Submit Queue
79ed7064ca Merge pull request #27970 from jingxu97/restartKubelet-6-22
Automatic merge from submit-queue

Add volume reconstruct/cleanup logic in kubelet volume manager

Currently kubelet volume management works on the concept of desired
and actual world of states. The volume manager periodically compares the
two worlds and perform volume mount/unmount and/or attach/detach
operations. When kubelet restarts, the cache of those two worlds are
gone. Although desired world can be recovered through apiserver, actual
world can not be recovered which may cause some volumes cannot be cleaned
up if their information is deleted by apiserver. This change adds the
reconstruction of the actual world by reading the pod directories from
disk. The reconstructed volume information is added to both desired
world and actual world if it cannot be found in either world. The rest
logic would be as same as before, desired world populator may clean up
the volume entry if it is no longer in apiserver, and then volume
manager should invoke unmount to clean it up.

Fixes https://github.com/kubernetes/kubernetes/issues/27653
2016-08-15 13:48:43 -07:00
Kubernetes Submit Queue
69419a145a Merge pull request #29802 from jfrazelle/fix-go-vet-errors
Automatic merge from submit-queue

fix go vet errors

<!--
Checklist for submitting a Pull Request

Please remove this comment block before submitting.

1. Please read our [contributor guidelines](https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md).
2. See our [developer guide](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md).
3. If you want this PR to automatically close an issue when it is merged,
   add `fixes #<issue number>` or `fixes #<issue number>, fixes #<issue number>`
   to close multiple issues (see: https://github.com/blog/1506-closing-issues-via-pull-requests).
4. Follow the instructions for [labeling and writing a release note for this PR](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes) in the block below.
-->

```release-note
```

This fixes the `go vet` errors brought about by go 1.7 testing re (#28742).

The are all pretty trivial and mostly related to literal composites.

also related to #16086
2016-08-15 13:10:08 -07:00
Jing Xu
f19a1148db This change supports robust kubelet volume cleanup
Currently kubelet volume management works on the concept of desired
and actual world of states. The volume manager periodically compares the
two worlds and perform volume mount/unmount and/or attach/detach
operations. When kubelet restarts, the cache of those two worlds are
gone. Although desired world can be recovered through apiserver, actual
world can not be recovered which may cause some volumes cannot be cleaned
up if their information is deleted by apiserver. This change adds the
reconstruction of the actual world by reading the pod directories from
disk. The reconstructed volume information is added to both desired
world and actual world if it cannot be found in either world. The rest
logic would be as same as before, desired world populator may clean up
the volume entry if it is no longer in apiserver, and then volume
manager should invoke unmount to clean it up.
2016-08-15 11:29:15 -07:00
AdoHe
2d06408300 use Reader.ReadLine instead of bufio.Scanner to support bigger yaml 2016-08-14 16:02:43 +08:00
Kubernetes Submit Queue
96655d7578 Merge pull request #30087 from dims/remove-pkill-dependency
Automatic merge from submit-queue

Remove kubelet pkill dependency

Issue #26093 identified pkill as one of the dependencies of kublet
which could be worked around.  Build on the code introduced for pidof
and regexp for the process(es) we need to send a signal to.

Related to #26093
2016-08-12 18:38:38 -07:00
Davanum Srinivas
24e8e12b04 Fix TestPidOf {procfs} - Take #2
We should not bailout when we get an error. We should continue
processing other files/directories. We were returning the
err passed in which was causing the processing to stop.

Fixes #30377
2016-08-11 17:36:04 -04:00
Kubernetes Submit Queue
342aac2ffd Merge pull request #30402 from dims/fix-issue-30377
Automatic merge from submit-queue

Fix intermittent failures in TestPidOf {procfs}

Bailout if WalkFunc is called with an error.

Fixes #30377

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30402)
<!-- Reviewable:end -->
2016-08-11 06:47:45 -07:00
Kubernetes Submit Queue
035ec518af Merge pull request #28387 from caesarxuchao/gc-latency-measure
Automatic merge from submit-queue

[GarbageCollector] measure latency

First commit is #27600.

In e2e tests, I measure the average time an item spend in the eventQueue(~1.5 ms), dirtyQueue(~13ms), and orphanQueue(~37ms). There is no stress test in e2e yet, so the number may not be useful.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/28387)
<!-- Reviewable:end -->
2016-08-11 02:33:55 -07:00
Jess Frazelle
7e9d82129e
fix go vet errors
Signed-off-by: Jess Frazelle <jessfraz@google.com>

fix composites

Signed-off-by: Jess Frazelle <me@jessfraz.com>
2016-08-10 16:45:41 -07:00
Davanum Srinivas
e1ad642da0 Fix intermittent failures in TestPidOf {procfs}
Bailout if WalkFunc is called with an error.

Fixes #30377
2016-08-10 17:23:58 -04:00
Davanum Srinivas
ce93cb9d9c Remove kubelet dependency on pkill
Issue #26093 identified pkill as one of the dependencies of kublet
which could be worked around.  Build on the code introduced for pidof
and regexp for the process(es) we need to send a signal to.

Related to #26093
2016-08-10 17:14:49 -04:00
Chao Xu
41572cb22d add metrics to gc 2016-08-10 12:45:06 -07:00
Kubernetes Submit Queue
a40d2cd92e Merge pull request #30296 from deads2k/wq-metrics
Automatic merge from submit-queue

add metrics for workqueues

Adds prometheus metrics to work queues and enables them for the resourcequota controller.  It would be easy to add this to all other workqueue based controllers and gather basic responsiveness metrics.

@kubernetes/rh-cluster-infra helps debug quota controller responsiveness problems.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30296)
<!-- Reviewable:end -->
2016-08-10 11:13:13 -07:00
deads2k
b981ea1a70 add metrics for workqueues 2016-08-10 09:28:42 -04:00
Kubernetes Submit Queue
70d6d165d5 Merge pull request #30002 from dims/remove-pidof-dependency
Automatic merge from submit-queue

Remove kubelet dependency on pidof

Issue #26093 identified pidof as one of the dependencies of kublet
which could be worked around. In this PR, we just look at /proc
to construct the list of pids we need for a specified process
instead of running "pidof" executable

Related to #26093

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30002)
<!-- Reviewable:end -->
2016-08-09 23:32:51 -07:00
Kubernetes Submit Queue
f53a35fb76 Merge pull request #29147 from caesarxuchao/cut-client-repo-staging
Automatic merge from submit-queue

Cut the client repo, staging it in the main repo

Tracking issue: #28559
ref: https://github.com/kubernetes/kubernetes/pull/25978#issuecomment-232710174

This PR implements the plan a few of us came up with last week for cutting client into its own repo:
1. creating "_staging" (name is tentative) directory in the main repo, using a script to copy the client and its dependencies to this directory
2. periodically publishing the contents of this staging client to k8s.io/client-go repo
3. converting k8s components in the main repo to use the staged client. They should import the staged client as if the client were vendored. (i.e., the import line should be `import "k8s.io/client-go/<pacakge name>`). This requirement is to ease step 4.
4. In the future, removing the staging area, and vendoring the real client-go repo.

The advantage of having the staging area is that we can continuously run integration/e2e tests with the latest client repo and the latest main repo, without waiting for the client repo to be vendored back into the main repo. This staging area will exist until our test matrix is vendoring both the client and the server.

In the above plan, the tricky part is step 3. This PR achieves it by creating a symlink under ./vendor, pointing to the staging area, so packages in the main repo can refer to the client repo as if it's vendored. To prevent the godep tool from messing up the staging area, we export the staged client to GOPATH in hack/godep-save.sh so godep will think the client packages are local and won't attempt to manage ./vendor/k8s.io/client-go.

This is a POC. We'll rearrange the directory layout of the client before merge.

@thockin @lavalamp @bgrant0607 @kubernetes/sig-api-machinery

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/29147)
<!-- Reviewable:end -->
2016-08-09 17:12:14 -07:00
Davanum Srinivas
1fdcea28e5 Remove kubelet dependency on pidof
Issue #26093 identified pidof as one of the dependencies of kublet
which could be worked around. In this PR, we just look at /proc
to construct the list of pids we need for a specified process
instead of running "pidof" executable

Related to #26093
2016-08-09 19:55:24 -04:00
Timothy St. Clair
24993b0343 Update generated files due to dependency shift.
Also minor bug fix in federation api.
2016-08-09 10:41:09 -05:00
Tamer Tas
81fb8e1e11 pkg/util/exec: don't specify paths for echo
`ex.Command()` already searches the binary in PATH, no need to manually
specify it. `pkg/util/exec` tests fail in non-conventional environments
due to this (e.g. NixOS).
2016-08-08 16:17:25 +03:00
Chao Xu
a771578a1c move pkg/util/ files to their own package to reduce client-go dependencies 2016-08-05 23:32:02 -07:00
Kubernetes Submit Queue
2537f66f0e Merge pull request #29230 from luxas/goimport
Automatic merge from submit-queue

Run goimport for the whole repo

While removing GOMAXPROC and running goimports, I noticed quite a lot of other files also needed a goimport format. Didn't commit `*.generated.go`, `*.deepcopy.go` or files in `vendor`

This is more for testing if it builds.
The only strange thing here is the gopkg.in/gcfg.v1 => github.com/scalingdata/gcfg replace.
cc @jfrazelle @thockin
2016-08-05 16:22:01 -07:00
Kubernetes Submit Queue
b1f8ba9ddf Merge pull request #30014 from dims/remove-uname-dependency
Automatic merge from submit-queue

Remove kubelet dependency on uname

Let's avoid exec'ing stuff we don't have to.

Related to #26093
2016-08-04 21:22:25 -07:00
Kubernetes Submit Queue
d10e47b891 Merge pull request #29928 from dubstack/bump-libcontainer
Automatic merge from submit-queue

Bump Libcontainer to latest head

@Random-Liu or @yujuhong Can any one of you please do a quick review.

I updated libcontainer in a previous PR but  #29492 reverted those changes. This is needed for #27204. 

Signed-off-by: Buddha Prakash <buddhap@google.com>
2016-08-04 15:12:13 -07:00
Kubernetes Submit Queue
0410c33995 Merge pull request #29204 from aledbf/ingress-wildcard-hosts
Automatic merge from submit-queue

Allow leading * in ingress hostname

fixes #29043
2016-08-04 14:38:24 -07:00
Buddha Prakash
49201f6923 Update Libcontainer's Cgroup Config: AllowAllDevices to be Nil 2016-08-04 10:05:30 -07:00
Kubernetes Submit Queue
92518a8a32 Merge pull request #30036 from caesarxuchao/README-to-doc
Automatic merge from submit-queue

convert README.md to doc.go

It seems the convention is to use a doc.go, not a README.md.

I needed to work around this README.md when in #29147, see https://github.com/kubernetes/kubernetes/pull/29147#discussion-diff-73239124R73.
2016-08-03 23:28:55 -07:00
Manuel de Brito Fontes
60f4fbf4f2 Allow leading * in ingress hostname 2016-08-03 20:16:58 -04:00
Chao Xu
4c7514be13 convert README.md to doc.go 2016-08-03 16:38:29 -07:00
bindata-mockuser
832363442d Remove kubelet dependency on uname 2016-08-03 17:46:02 -04:00
Kubernetes Submit Queue
67c7401fd8 Merge pull request #26688 from asalkeld/more-unittests-util-env
Automatic merge from submit-queue

Increase the unit test coverage in pkg/util

These are easy to test, so lets increase coverage.
2016-08-03 13:43:28 -07:00
Kubernetes Submit Queue
24216fe02f Merge pull request #26958 from resouer/util-line
Automatic merge from submit-queue

Refactoring runner resource container linedelimiter to it's own pkg

Continuing my work ref #15634

Anyone is ok to review this fix.
2016-08-03 02:26:12 -07:00
Kubernetes Submit Queue
1edf254efb Merge pull request #25458 from errm/env-var-style-config-keys
Automatic merge from submit-queue

Allow Secret & ConfigMap keys to contain caps, dots, and underscores

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()

Re: #23722

This makes loosens the regex used in in Secrets and ConfigMap,
in order to make environment variable style keys valid
2016-08-02 21:00:52 -07:00
k8s-merge-robot
7a62b9c8d1 Merge pull request #29523 from fraenkel/service_names_rfc1035
Automatic merge from submit-queue

Allow service names up to 63 characters (RFC 1035)

fixes #3752
2016-08-02 10:33:16 -07:00
k8s-merge-robot
68632db799 Merge pull request #27562 from 7ing/ipt
Automatic merge from submit-queue

improve iptables-restore implementation #27559

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
fixes #27559
- improve restoreInternal implementation in iptables
- add SetStdin and SetStdout functions to Cmd interface
- modify kubelet/prober and some tests in order to work with Cmd interface
2016-08-02 08:02:32 -07:00
Michael Fraenkel
b1e7e6cf46 Service names conform to RFC 1035 2016-08-02 08:42:15 -06:00
Lucas Käldström
c88a07ce1a Run goimports 2016-08-02 15:12:39 +03:00
k8s-merge-robot
01cd7f326e Merge pull request #29621 from resouer/uuid
Automatic merge from submit-queue

Refactor uuid into its own pkg util/uuid

Continuing my work ref #15634

Anyone can review this if he/she wants.
2016-08-01 22:21:30 -07:00
Michal Rostecki
59ca5986dd Print/log pointers of structs with %#v instead of %+v
There are many places in k8s where %+v is used to format a pointer
to struct, which isn't working as expected.

Fixes #26591
2016-08-01 22:27:56 +02:00
Ed Robinson
d4969ff032
Allows Secret & ConfigMap Keys to look like Environment Variables
This makes environment variable style keys (uppercase with underscores) valid
in Secrets and ConfigMap.
2016-08-01 20:56:40 +01:00
Harry Zhang
c495397cae Refactor uuid into its own pkg 2016-07-30 00:07:02 -04:00
k8s-merge-robot
5760acf603 Merge pull request #29596 from matttproud/fix/time-leaks/remainder
Automatic merge from submit-queue

pkg/various: plug leaky time.New{Timer,Ticker}s

According to the documentation for Go package time, `time.Ticker` and
`time.Timer` are uncollectable by garbage collector finalizers.  They
leak until otherwise stopped.  This commit ensures that all remaining
instances are stopped upon departure from their relative scopes.

Similar efforts were incrementally done in #29439 and #29114.

```release-note
* pkg/various: plugged various time.Ticker and time.Timer leaks.
```
2016-07-29 14:06:47 -07:00
Harry Zhang
e0ab76019e Rename runnter pkg name 2016-07-29 02:37:00 -04:00
Harry Zhang
94c6994ab3 Move rlimit to it's own pkg 2016-07-29 02:34:54 -04:00
harry zhang
b7a387c8f5 Refactoring runner 2016-07-29 02:34:54 -04:00
Harry Zhang
15d0f5cfd5 Move linedelimiter to it's own pkg
Refactoring resource container
2016-07-29 02:29:26 -04:00
k8s-merge-robot
9fab05fe59 Merge pull request #29743 from timothysc/wait_race_fix
Automatic merge from submit-queue

Fix race condition found in JitterUntil.

This was caused by the recent addition of "sliding"

manifested in: https://github.com/kubernetes/kubernetes/issues/26782
2016-07-28 22:35:21 -07:00
k8s-merge-robot
eae90a3631 Merge pull request #26332 from resouer/util-debt
Automatic merge from submit-queue

Refactor util clock into it's own pkg

Continue my work ref #15634
2016-07-28 11:37:06 -07:00
Timothy St. Clair
842f15c3c6 Fix race condition found in JitterUntil. 2016-07-28 11:41:02 -05:00
k8s-merge-robot
62e7c57acc Merge pull request #29598 from matttproud/refactor/simplify/goroutinemap
Automatic merge from submit-queue

pkg/util/goroutinemap: apply idiomatic Go cleanups

Package goroutinemap can be structurally simplified to be more
idiomatic, concise, and free of error potential.  No structural changes
are made.

It is unconventional declare `sync.Mutex` directly as a pointerized
field in a parent structure.  The `sync.Mutex` operates on pointer
receivers of itself; and by relying on that, the types that contain
those fields can be safely constructed using
https://golang.org/ref/spec#The_zero_value semantic.

The duration constants are already of type `time.Duration`, so
re-declaring that is redundant.

/CC: @saad-ali
2016-07-28 04:44:26 -07:00
Harry Zhang
cb14b35bde Refactor util clock into it's own pkg 2016-07-28 02:29:04 -04:00
Lantao Liu
01a5ddd782 Not to use SetWinsize in windows 2016-07-27 17:22:30 -07:00
Matt T. Proud
4e0a1858f9 pkg/util/goroutinemap: apply idiomatic Go cleanups
Package goroutinemap can be structurally simplified to be more
idiomatic, concise, and free of error potential.  No structural changes
are made.

It is unconventional declare `sync.Mutex` directly as a pointerized
field in a parent structure.  The `sync.Mutex` operates on pointer
receivers of itself; and by relying on that, the types that contain
those fields can be safely constructed using
https://golang.org/ref/spec#The_zero_value.

The duration constants are already of type `time.Duration`, so
re-declaring that is redundant.
2016-07-26 07:00:26 +02:00
Matt T. Proud
5c6292c074 pkg/various: plug leaky time.New{Timer,Ticker}s
According to the documentation for Go package time, `time.Ticker` and
`time.Timer` are uncollectable by garbage collector finalizers.  They
leak until otherwise stopped.  This commit ensures that all remaining
instances are stopped upon departure from their relative scopes.
2016-07-26 06:20:31 +02:00
k8s-merge-robot
e2fb251c2a Merge pull request #29266 from xiangpengzhao/fix_defer_close
Automatic merge from submit-queue

Add f.Close() for applyOOMScoreAdj
2016-07-22 05:24:28 -07:00
k8s-merge-robot
4694a6dd71 Merge pull request #24797 from screeley44/vols_debug_mkfs
Automatic merge from submit-queue

add enhanced volume and mount logging for block devices

Fixes #24568 

Adding better logging and debugging for block device volumes and the shared SafeFormatAndMount (aws, gce, flex, rbd, cinder, etc...)
2016-07-21 17:12:33 -07:00
xiangpengzhao
91d11ed703 Add f.Close() for applyOOMScoreAdj 2016-07-21 13:07:30 -04:00
k8s-merge-robot
1cf3f1cf03 Merge pull request #29237 from ncdc/fixup-windows-term
Automatic merge from submit-queue

Fix Windows terminal handling

Fix some issues with Windows terminal handling with respect to TTYs that came up as part of the
code that adds support for terminal resizing.

cc @smarterclayton @sttts @csrwng
2016-07-21 07:24:13 -07:00
Scott Creeley
11d1289afa Add volume and mount logging 2016-07-21 09:10:00 -04:00
k8s-merge-robot
4379619a63 Merge pull request #28939 from saad-ali/fixIssue28616ParallelMount
Automatic merge from submit-queue

Allow mounts to run in parallel for non-attachable volumes

This PR:
* Fixes https://github.com/kubernetes/kubernetes/issues/28616
  * Enables mount volume operations to run in parallel for non-attachable volume plugins.
  * Enables unmount volume operations to run in parallel for all volume plugins.
* Renames `GoRoutineMap` to `GoroutineMap`, resolving a long outstanding request from @thockin: `"Goroutine" is a noun`
2016-07-20 14:56:58 -07:00
Andy Goldstein
77b0547b3d Fix Windows terminal handling
Fix some issues with Windows terminal handling with respect to TTYs that came up as part of the
code that adds support for terminal resizing.
2016-07-20 13:37:14 -04:00
Timothy St. Clair
8cb799c789 Revert "Follow on for 1.4 to default HTTP2 on by default"
This reverts commit efe25553cd.
2016-07-20 08:47:15 -05:00
saadali
88d495026d Allow mounts to run in parallel for non-attachable
Allow mount volume operations to run in parallel for non-attachable
volume plugins.

Allow unmount volume operations to run in parallel for all volume
plugins.
2016-07-19 21:54:26 -07:00
Paul Morie
d9ffcace6a Move ExtractPodBandwidthResources test into appropriate package 2016-07-19 14:34:08 -04:00
Cindy Wang
e13c678e3b Make volume unmount more robust using exclusive mount w/ O_EXCL 2016-07-18 16:20:08 -07:00
k8s-merge-robot
fa174bcdaf Merge pull request #29042 from dims/fixup-imports
Automatic merge from submit-queue

Use Go canonical import paths

Add canonical imports only in existing doc.go files.
https://golang.org/doc/go1.4#canonicalimports

Fixes #29014
2016-07-18 07:23:38 -07:00
k8s-merge-robot
5f766748db Merge pull request #27762 from xiangpengzhao/fix-port-range
Automatic merge from submit-queue

Fix port range checking, port should not be greater than 65535.

When passing flag `--proxy-port-range` to kube-proxy with an invalid range which is greater than 65535, the proxy doesn't exit. That's not what we want.

Should we fix this in v1.3?
/cc @thockin @mikedanese @resouer 

Before fixing:
```
root@vm:/home/paas/zxp# kube-proxy --master=172.16.1.11:8080 --logtostderr=false --log-dir=/home/user/log/kube --proxy-port-range=65536-65599 &
[6] 6671
root@vm:/home/paas/zxp# ps -ef | grep kube-proxy
root      6671 13507  0 03:48 pts/1    00:00:00 kube-proxy --master=172.16.1.11:8080 --logtostderr=false --log-dir=/home/user/log/kube --proxy-port-range=65536-65599
```

After:
```
root@vm:/home/paas/zxp# kube-proxy --master=172.16.1.11:8080 --logtostderr=false --log-dir=/home/user/log/kube --proxy-port-range=65536-65599 &
[6] 6725
root@vm:/home/paas/zxp# invalid argument "65536-65599" for --proxy-port-range=65536-65599: "65536-65599" is not a valid port range: the port range cannot be greater than 65535: 65536-65599
..............
[6]+  Exit 2                  kube-proxy --master=172.16.1.11:8080 --logtostderr=false --log-dir=/home/user/log/kube --proxy-port-range=65536-65599
```
```
root@vm:/home/paas/zxp# kube-proxy --master=172.16.1.11:8080 --logtostderr=false --log-dir=/home/user/log/kube --proxy-port-range=6000-65599 &
[6] 6732
root@vm:/home/paas/zxp# invalid argument "6000-65599" for --proxy-port-range=6000-65599: "6000-65599" is not a valid port range: the port range cannot be greater than 65535: 6000-65599
..............
[6]+  Exit 2                  kube-proxy --master=172.16.1.11:8080 --logtostderr=false --log-dir=/home/user/log/kube --proxy-port-range=6000-65599
```
2016-07-18 01:44:03 -07:00
Davanum Srinivas
2b0ed014b7 Use Go canonical import paths
Add canonical imports only in existing doc.go files.
https://golang.org/doc/go1.4#canonicalimports

Fixes #29014
2016-07-16 13:48:21 -04:00
k8s-merge-robot
529df988e8 Merge pull request #28964 from ncdc/export-isterminal
Automatic merge from submit-queue

Reexport term.IsTerminal

Reexport term.IsTerminal so downstream consumers (e.g. OpenShift) can use it.

@smarterclayton @sttts
2016-07-15 10:06:20 -07:00
Andy Goldstein
792ec603c0 Reexport term.IsTerminal
Reexport term.IsTerminal so downstream consumers (e.g. OpenShift) can use it.
2016-07-14 12:29:38 -04:00
k8s-merge-robot
03be7117a4 Merge pull request #28882 from gmarek/ratelimiter
Automatic merge from submit-queue

Allow switching rate limiter inside RateLimitedQueue

Ref. #28832
cc @davidopp  

```release-note
Deprecate deleting-pods-burst ControllerManager flag
```
2016-07-14 08:44:35 -07:00
k8s-merge-robot
50172148e4 Merge pull request #25273 from ncdc/exec-sigwinch
Automatic merge from submit-queue

Support terminal resizing for exec/attach/run

```release-note
Add support for terminal resizing for exec, attach, and run. Note that for Docker, exec sessions
inherit the environment from the primary process, so if the container was created with tty=false,
that means the exec session's TERM variable will default to "dumb". Users can override this by
setting TERM=xterm (or whatever is appropriate) to get the correct "smart" terminal behavior.
```

Fixes #13585
2016-07-14 07:26:49 -07:00
gmarek
f6b1c316e9 Allow switching rate limiter inside RateLimitedQueue 2016-07-14 15:38:14 +02:00
k8s-merge-robot
ae990defcf Merge pull request #26956 from joe2far/fix-typos
Automatic merge from submit-queue

Fixed several typos
2016-07-14 04:13:15 -07:00
Andy Goldstein
3b21a9901b Support terminal resizing for exec/attach/run
Add support for terminal resizing for exec, attach, and run. Note that for Docker, exec sessions
inherit the environment from the primary process, so if the container was created with tty=false,
that means the exec session's TERM variable will default to "dumb". Users can override this by
setting TERM=xterm (or whatever is appropriate) to get the correct "smart" terminal behavior.
2016-07-13 17:06:16 -04:00
Daniel Smith
78c02cd052 Stop eating panics 2016-07-13 11:12:59 -07:00
joe2far
5ead89b5bb Fixed several typos 2016-07-13 15:06:24 +01:00
k8s-merge-robot
23f0edb8b0 Merge pull request #27713 from kargakis/wait-for-synced-rs-in-recreate
Automatic merge from submit-queue

controller: wait for synced old replica sets on Recreate

Partially fixes https://github.com/kubernetes/kubernetes/issues/27362

Any other work on it should be handled in the replica set level (and/or kubelet if it's required)

@kubernetes/deployment PTAL
2016-07-12 20:30:12 -07:00
Random-Liu
59ea5c088b Change route controller to use patch to set node condition. 2016-07-12 10:30:33 -07:00
gmarek
fd600ab65c Add hooks for cluster health detection 2016-07-12 15:10:58 +02:00
xiangpengzhao
4691ccf2e1 Unset https_proxy before roundtripper_test 2016-07-11 22:34:44 -04:00
k8s-merge-robot
a261776f3e Merge pull request #28670 from wojtek-t/scheduler_metadata
Automatic merge from submit-queue

Add meta field to predicate signature to avoid computing the same things multiple times

This PR only uses it to avoid computing QOS of a pod for every node from scratch.

Ref #28590
2016-07-09 22:28:14 -07:00
k8s-merge-robot
66522389b7 Merge pull request #28572 from atombender/master
Automatic merge from submit-queue

Fixes bad heuristic when calling "tc show" to check interface

`tc` sometimes returns stuff that has more than 12 words in its response. The heuristic is bad, but this at least fixes the case when `tc` is returning too much.

Fixes #28571.
2016-07-08 19:47:45 -07:00
Wojciech Tyczynski
b1d53895a4 Check only predicate functions in test 2016-07-08 13:01:41 +02:00
Angus Salkeld
448081b8bd Increase coverage in pkg/util/labels 2016-07-08 12:35:23 +02:00
Angus Salkeld
2076071bbf Increase coverage in pkg/util/strings to 100% 2016-07-08 12:35:23 +02:00
Angus Salkeld
9ba5f5869d Increase coverage in pkg/util/env to 100% 2016-07-08 12:35:23 +02:00
Angus Salkeld
eec08872c7 Move deployment utilities to there own package 2016-07-08 09:46:56 +02:00
Tim Hockin
28af54138d Use file tags to generate deep-copies
This drives most of the logic of deep-copy generation from tags like:
  // +deepcopy-gen=package
..rather than hardcoded lists of packages.  This will make it possible to
subsequently generate code ONLY for packages that need it *right now*, rather
than all of them always.

Also remove pkgs that really do not need deep-copies (no symbols used
anywhere).
2016-07-07 16:49:46 -07:00
Tim Hockin
e18b2f3a2e Revert Clayton's #26179 so I can recreate it
His PR cam during the middle of this development cycle, and it was easier to
burn it down and recreate it than try to patch it into an existing series and
re-test every assumption.  This behavior will be re-introduced in subsequent
commits.
2016-07-07 16:49:46 -07:00
k8s-merge-robot
5f2460b58c Merge pull request #21240 from thockin/validation_pt8
Automatic merge from submit-queue

Validation: Make validation func return error strings

Part of an ongoing series of validation cleanups.

This centralizes the error strings next to the code that checks the error conditions.  Future commits will refine the messages further and provide more utility validators.

I'm OK if this doesn't go into 1.2, but I am tired of rebasing :)  I suggest commit-by-commit review, which should go pretty quickly.  This was largely mechanical.

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/21240)
<!-- Reviewable:end -->
2016-07-07 14:37:11 -07:00
k8s-merge-robot
4da14c8a64 Merge pull request #28204 from thockin/cleanup-third_party
Automatic merge from submit-queue

Cleanup third party (pt 2)

Move forked-and-hacked golang code to the forked/ directory.  Remove ast/build/parse code that is now in stdlib.  Remove unused shell2junit
2016-07-07 12:13:14 -07:00
k8s-merge-robot
a1501fde66 Merge pull request #28550 from janetkuo/e2e-deployment-rollover-log
Automatic merge from submit-queue

Log available pods of deployments when scaling down old RS

Ref #26834


[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-07-07 07:33:30 -07:00
k8s-merge-robot
0c696dc95b Merge pull request #27848 from liubin/fix-typos
Automatic merge from submit-queue

fix some typos

Just a minor typos fix.


Signed-off-by: bin liu <liubin0329@gmail.com>
2016-07-06 23:36:49 -07:00
Alexander Staubo
e681002d18 Fixes bad heuristic when calling "tc show" to check interface; tc sometimes returns stuff
that has more than 12 words in its response. The heuristic is bad, but this at least fixes
the case when tc is returning too much.
2016-07-06 23:18:56 -04:00
Janet Kuo
08305f12a2 Log available pods of deployments when scaling down old RS 2016-07-06 13:31:28 -07:00
k8s-merge-robot
65c29daf19 Merge pull request #28179 from deads2k/dedup-workqueue-requeue
Automatic merge from submit-queue

dedup workqueue requeuing

Updates `workqueue.AddAfter` to only perform the add for the earliest requested requeue operation.  An earlier time inserts in the earlier slot and removes the old one.  A later time is ignored.

When using this conjunction with an `AddRateLimited` method, you get charged for the additional retry even though you're only queue once.  

This keeps requeues from multiplying for every add.

@liggitt
2016-07-05 06:07:45 -07:00
k8s-merge-robot
61a92ef75a Merge pull request #28441 from smarterclayton/reflect_check
Automatic merge from submit-queue

ObjectReflectDiff has an incorrect array index comparison

Is comparing the wrong field for bounds.

@deads2k
2016-07-05 05:33:28 -07:00
deads2k
56598898e1 dedup workqueue requeuing 2016-07-05 07:44:52 -04:00
Clayton Coleman
b765203a91
Handle more cases in diff.ObjectReflectDiff
Interfaces and nested map values were not being recursed.
2016-07-04 15:05:43 -04:00
Michail Kargakis
39576b47ba controller: wait for synced old replica sets on Recreate 2016-07-04 18:23:58 +02:00
bin liu
426fdc431a Merge branch 'master' into fix-typos 2016-07-04 11:20:47 +08:00
Clayton Coleman
ee56123634
ObjectReflectDiff has an incorrect array index comparison
Is comparing the wrong field for bounds.
2016-07-03 20:09:41 -04:00
Tim Hockin
493b3fab65 Unexport DNS regexps, lengths are still used 2016-07-03 02:20:11 -07:00
Tim Hockin
766f44f715 Move IsSecretKey into util/validation 2016-07-03 02:19:09 -07:00
Tim Hockin
37786e0e77 Make IsHTTPHeaderName return error strings 2016-07-02 17:34:32 -07:00
Tim Hockin
3ad6c397d7 Make IsValid{User,Group}Id return error strings 2016-07-02 17:34:32 -07:00
Tim Hockin
bb208a02b3 Make IsValidPercent return error strings 2016-07-02 17:34:32 -07:00
Tim Hockin
87c1fc50a8 Make IsValidIP return error strings
Also treat 0.0.0.0 as special, like loopback and multicast.
2016-07-02 17:32:05 -07:00
Tim Hockin
14bece550f Make IsValidPortNum/Name return error strings 2016-07-02 17:32:05 -07:00
Tim Hockin
189d4a5159 Make CIdentifier return error strings 2016-07-02 17:32:05 -07:00
k8s-merge-robot
d06359d6a0 Merge pull request #28409 from saad-ali/moveVolumeController
Automatic merge from submit-queue

Reorganize volume controllers and manager

* Move both PV and attach/detach volume controllers to `controllers/volume` (closes #26222)
* Rename `kubelet/volume` to `kubelet/volumemanager`
* Add/update OWNER files
2016-07-02 00:41:02 -07:00
k8s-merge-robot
3166f9316f Merge pull request #28111 from mfojtik/min-ready-seconds
Automatic merge from submit-queue

Add MinReadySeconds to rolling updater

Add MinReadySeconds support to RollingUpdater that allows to specify the number of seconds to wait on top of the pod is "ready" because its readiness probe passed.
2016-07-01 19:21:16 -07:00
saadali
0dd17fff22 Reorganize volume controllers and manager 2016-07-01 18:50:25 -07:00
Michal Fojtik
7ea28e42c0 Add MinReadySeconds to rolling updater 2016-06-30 13:13:08 +02:00
k8s-merge-robot
5b3b655710 Merge pull request #28153 from jsafrane/flaky-goroutinemap-wait
Automatic merge from submit-queue

Fixed goroutinemap race on Wait()

sync.WaitGroup produces data races when a GoroutineMap is empty and Wait() and Run() are called at the same time.

From sync.WaitGroup:

>  Note that calls with a positive delta that occur when the counter is zero must happen before a Wait.

Fixes #28128
Note that this issue affects only PersistentVolume unit tests.

@saad-ali, PTAL
2016-06-29 19:54:05 -07:00
David McMahon
ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
k8s-merge-robot
d30fd0cb0c Merge pull request #28114 from timothysc/http_default_enable
Automatic merge from submit-queue

Enable HTTP2 by default

Update to enable HTTP2 by default, with the option to disable.  

This is a continuation of #25280 for the 1.4 release.  This should provide ample time for vetting. 

/cc @krousey
2016-06-29 07:27:42 -07:00
Tim Hockin
8c42c08363 move forked golang code to a common dir with LICENSE 2016-06-28 22:57:45 -07:00
Tim Hockin
64d55887dc Move hacked golang template code to forked/ dir 2016-06-28 22:57:45 -07:00
Tim Hockin
a8364d0c46 Move hacked golang http code to forked/ dir 2016-06-28 22:17:30 -07:00
Jan Safranek
06082b1bdf Fixed goroutinemap race on Wait()
sync.WaitGroup produces data races when a GoroutineMap is empty and Wait() and
Run() are called at the same time.

From sync.WaitGroup:
   Note that calls with a positive delta that occur when the counter is zero
   must happen before a Wait.

Fixes #28128
2016-06-28 12:04:45 +02:00
xiangpengzhao
70e3637660 Fix port range check, port should no be greater than 65535. 2016-06-27 22:51:18 -04:00
George Tankersley
f7f3e0f9e9 apis/certificates: initialize the certificates API group 2016-06-27 14:29:16 -07:00
Timothy St. Clair
efe25553cd Follow on for 1.4 to default HTTP2 on by default 2016-06-27 09:36:41 -05:00
k8s-merge-robot
fc1937f68f Merge pull request #20273 from kargakis/allow-scaling-paused-deployments
Automatic merge from submit-queue

Proportionally scale paused and rolling deployments

Enable paused and rolling deployments to be proportionally scaled.
Also have cleanup policy work for paused deployments.

Fixes #20853
Fixes #20966
Fixes #20754

@bgrant0607 @janetkuo @ironcladlou @nikhiljindal

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/20273)
<!-- Reviewable:end -->
2016-06-24 19:41:51 -07:00
Minhan Xia
48169ce736 avoid deleting cbr0 address due to subnet string mismatch 2016-06-22 16:45:04 -07:00
bin liu
fd27cd47f7 fix some typos
Signed-off-by: bin liu <liubin0329@gmail.com>
2016-06-22 18:14:26 +08:00
k8s-merge-robot
48f2b11c48 Merge pull request #27829 from zmerlynn/fix-tp-max-2
Automatic merge from submit-queue

GCE provider: Create TargetPool with 200 instances, then update with rest

GCE provider: Create TargetPool with 200 instances, then update with rest
 
Tested with 2000 nodes, this actually meets the GCE API specifications (which is nutty). Previous PR (#25178) was based on a mistaken understanding of a poorly documented set of limitations, and even poorer testing, for which I am embarassed.

Also includes the revert of #25178 (review commits separately).

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-22 00:48:30 -07:00
Zach Loafman
ebc65f1dd3 Revert "GCE: Allow nodes to exceed target pool maximums"
This reverts commit faf0c44429.
2016-06-21 09:54:56 -07:00
saadali
e716ddc771 Controller wait for attach and exponential backoff
Modify attach/detach controller to keep track of volumes to report
attached in Node VolumeToAttach status.

Modify kubelet volume manager to wait for volume to show up in Node
VolumeToAttach status.

Implement exponential backoff for errors in volume manager and attach
detach controller
2016-06-20 18:19:55 -07:00
Michail Kargakis
f3d2e3ff22 controller: proportionally scale paused and rolling deployments
Enable paused and rolling deployments to be proportionally scaled.
Also have cleanup policy work for paused deployments.
2016-06-20 12:13:35 +02:00
Michail Kargakis
a098d9fd24 integer: add int32 min/max helpers 2016-06-20 12:13:35 +02:00
Michail Kargakis
bad8b6dde4 integer: add utility for proper integer rounding 2016-06-20 12:13:35 +02:00
k8s-merge-robot
51dd3d562d Merge pull request #27380 from rootfs/fix-nsenter-list
Automatic merge from submit-queue

in nsenter mounter, read  hosts PID 1 /proc/mounts to list the mounts

fix #27378
2016-06-19 18:38:54 -07:00
k8s-merge-robot
6b14e0f226 Merge pull request #27054 from jingxu97/bug-volume
Automatic merge from submit-queue

Fix bug in isLikelyNotMountPoint function

In nsenter_mount.go/isLikelyNotMountPoint function, the returned output
from findmnt command misses the last letter. Modify the code to use
String.contains instead of string matching. fixes #26421 fixes #25056 fixes #22911
2016-06-18 17:08:02 -07:00
k8s-merge-robot
076bf81b8b Merge pull request #23473 from AdoHe/kubelet_tls_overwrite
Automatic merge from submit-queue

fix kubelet tls overwrite issue

@lavalamp apply the same thing to kubelet. @dchen1107 ptal.

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/23473)
<!-- Reviewable:end -->
2016-06-17 23:20:03 -07:00
Jing Liu
ef66f1ead8 improve iptables-restore implementation #27559
- improve restoreInternal implementation in iptables
- add SetStdin and SetStdout functions to Cmd interface
- modify kubelet/prober and some tests in order to work with Cmd interface
2016-06-16 12:19:34 -07:00
Huamin Chen
8e67a308ed in nsenter mounter, read hosts PID 1 /proc/mounts to list the mounts
Signed-off-by: Huamin Chen <hchen@redhat.com>
2016-06-14 17:54:59 +00:00
Jing Xu
809dae1978 Fix bug in isLikelyNotMountPoint function
In nsenter_mount.go/isLikelyNotMountPoint function, the returned output
from findmnt command misses the last letter. Modify the code to make sure
that output has the full target path. fix #26421 #25056 #22911
2016-06-13 17:28:38 -07:00
k8s-merge-robot
ede661b4af Merge pull request #27012 from janetkuo/reduce-pod-list
Automatic merge from submit-queue

Listing pods only once when getting pods for RS in deployment

Fixes #26834

1. Avoid ranging over RSes and then `List` pods of each RS. Instead, `List` pods of the deployment once, and then filter pods of each RS. 
2. Avoid using clientset to `List` pods in deployment controller. Use podStore instead. (TODO in some functions because the unit tests don't have podStore.)

@kubernetes/deployment 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-10 20:40:22 -07:00
Janet Kuo
764df2e096 Listing pods only once when getting pods for RS in deployment 2016-06-10 09:55:28 -07:00
k8s-merge-robot
7c4c19f623 Merge pull request #26936 from yifan-gu/fix_selinux
Automatic merge from submit-queue

rkt: Fix incomplete selinux context string when the option is partial.

Fix "EmptyDir" e2e tests failures caused by #https://github.com/kubernetes/kubernetes/pull/24901

As mentioned in https://github.com/kubernetes/kubernetes/pull/24901#discussion_r61372312
We should apply the selinux context of the rkt data directory (/var/lib/rkt) when users do not specify all the selinux options.

Due to my fault, the change was missed during rebase, thus caused the regression.

After applying this PR, the e2e tests passed.
```
$ go run hack/e2e.go -v -test --test_args="--ginkgo.dryRun=false --ginkgo.focus=EmptyDir"
...
Ran 19 of 313 Specs in 199.319 seconds
SUCCESS! -- 19 Passed | 0 Failed | 0 Pending | 294 Skipped PASS
```

BTW, the test is removed because the `--no-overlay=true` flag will only be there on non-coreos distro.

cc @euank @kubernetes/sig-node
2016-06-09 19:14:08 -07:00
k8s-merge-robot
4d430ba09c Merge pull request #25400 from jsafrane/devel/operation-error
Automatic merge from submit-queue

Add specific error type for "operation already exists" error.

PersistentVolume controller needs to know why scheduling a new operation has failed - if the operation was already running or some other error happened.
2016-06-09 03:28:16 -07:00
k8s-merge-robot
66149c50fd Merge pull request #26792 from janetkuo/deployment-version-skewed-test-fail
Automatic merge from submit-queue

Avoid comparing pod-template-hash when getting a deployment's new/old RSes

Will need to cherry pick to 1.2 also. 

Ref #26724 #26797 @kubernetes/deployment @ihmccreery 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-08 12:03:31 -07:00
Yifan Gu
8596d25ad5 rkt: Fix incomplete selinux context string when the option is partial.
Add Getfilecon() into the selinux interface.
2016-06-07 14:43:35 -07:00
Janet Kuo
c3d905776e Avoid comparing pod-template-hash when getting a deployment's new/old RSes 2016-06-06 17:09:35 -07:00
Clayton Coleman
e1dc3ef933
Remove unused deep_copies 2016-06-06 17:18:22 -04:00
Clayton Coleman
0181ac61da
DeepCopy should only generate types in k8s.io/kubernetes
Also make generation more selective (require opt in) to prevent lots of
unnecessary generated deep copies.
2016-06-06 17:18:22 -04:00
k8s-merge-robot
2cc0f2f040 Merge pull request #25280 from timothysc/http2_clients
Automatic merge from submit-queue

Option to enable http2 on client connections.

Addresses #21081

Enables http2 connection by default.  

before:
``` 
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:10248         0.0.0.0:*               LISTEN      21868/kubelet       
tcp        0      0 127.0.0.1:10249         0.0.0.0:*               LISTEN      21924/kube-proxy    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      754/sshd            
tcp        0      0 192.2.5.12:47080        192.2.5.11:443          ESTABLISHED 21924/kube-proxy    
tcp        0      0 192.2.5.12:47082        192.2.5.11:443          ESTABLISHED 21924/kube-proxy    
tcp        0      0 192.2.5.12:55776        169.254.169.254:80      ESTABLISHED 21868/kubelet       
tcp        0    304 192.2.5.12:22           192.2.5.10:49978        ESTABLISHED 22287/sshd: root [p 
tcp        0      0 192.2.5.12:34568        192.2.5.11:2379         ESTABLISHED 3029/flanneld       
tcp        0      0 192.2.5.12:55774        169.254.169.254:80      ESTABLISHED 21868/kubelet       
tcp        0      0 192.2.5.12:47086        192.2.5.11:443          ESTABLISHED 21924/kube-proxy    
tcp        0      0 192.2.5.12:47102        192.2.5.11:443          ESTABLISHED 21868/kubelet       
tcp        0      0 192.2.5.12:47108        192.2.5.11:443          ESTABLISHED 21868/kubelet       
tcp        0      0 192.2.5.12:55772        169.254.169.254:80      ESTABLISHED 21868/kubelet       
tcp        0      0 192.2.5.12:47104        192.2.5.11:443          ESTABLISHED 21868/kubelet       
tcp        0      0 192.2.5.12:34718        192.2.5.11:2379         ESTABLISHED 3029/flanneld       
tcp        0      0 192.2.5.12:47110        192.2.5.11:443          ESTABLISHED 21868/kubelet       
tcp        0      0 192.2.5.12:47106        192.2.5.11:443          ESTABLISHED 21868/kubelet       
tcp        0      0 192.2.5.12:47084        192.2.5.11:443          ESTABLISHED 21924/kube-proxy    
tcp6       0      0 :::4194                 :::*                    LISTEN      21868/kubelet       
tcp6       0      0 :::10250                :::*                    LISTEN      21868/kubelet       
tcp6       0      0 :::10255                :::*                    LISTEN      21868/kubelet       
tcp6       0      0 :::22                   :::*                    LISTEN      754/sshd            
tcp6       0      0 192.2.5.12:10255        192.2.5.15:41570        ESTABLISHED 21868/kubelet       
udp        0      0 0.0.0.0:8472            0.0.0.0:*                           -                   
udp        0      0 0.0.0.0:22824           0.0.0.0:*                           600/dhclient        
udp        0      0 0.0.0.0:68              0.0.0.0:*                           600/dhclient        
udp6       0      0 :::4195                 :::*                                600/dhclient 
```

after
```
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:10248         0.0.0.0:*               LISTEN      16962/kubelet       
tcp        0      0 127.0.0.1:10249         0.0.0.0:*               LISTEN      17024/kube-proxy    
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      754/sshd            
tcp        0      0 192.2.5.12:47046        192.2.5.11:443          ESTABLISHED 17024/kube-proxy    
tcp        0      0 192.2.5.12:47052        192.2.5.11:443          ESTABLISHED 16962/kubelet       
tcp        0      0 192.2.5.12:34568        192.2.5.11:2379         ESTABLISHED 3029/flanneld       
tcp        0      0 192.2.5.12:55720        169.254.169.254:80      ESTABLISHED 16962/kubelet       
tcp        0      0 192.2.5.12:55724        169.254.169.254:80      ESTABLISHED 16962/kubelet       
tcp        0      0 192.2.5.12:34718        192.2.5.11:2379         ESTABLISHED 3029/flanneld       
tcp        0      0 192.2.5.12:55726        169.254.169.254:80      ESTABLISHED 16962/kubelet       
tcp        0    304 192.2.5.12:22           192.2.5.10:49938        ESTABLISHED 17653/sshd: root [p 
tcp6       0      0 :::4194                 :::*                    LISTEN      16962/kubelet       
tcp6       0      0 :::10250                :::*                    LISTEN      16962/kubelet       
tcp6       0      0 :::10255                :::*                    LISTEN      16962/kubelet       
tcp6       0      0 :::22                   :::*                    LISTEN      754/sshd            
tcp6       0      0 192.2.5.12:10255        192.2.5.15:41472        ESTABLISHED 16962/kubelet       
udp        0      0 0.0.0.0:8472            0.0.0.0:*                           -                   
udp        0      0 0.0.0.0:22824           0.0.0.0:*                           600/dhclient        
udp        0      0 0.0.0.0:68              0.0.0.0:*                           600/dhclient        
udp6       0      0 :::4195                 :::*                                600/dhclient
```

/cc @jeremyeder
2016-06-06 10:22:49 -07:00
k8s-merge-robot
cae939b81c Merge pull request #26654 from janetkuo/e2e-deployment-list-rs
Automatic merge from submit-queue

List RSes once when getting old/new RSes in deployment e2e tests

Ref #26509 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-02 08:54:36 -07:00
deads2k
bf22534101 add logging for flake 2016-06-02 07:44:17 -04:00
Janet Kuo
57ec715c61 Address comments 2016-06-01 15:00:29 -07:00
Janet Kuo
2ced966cd5 List RSes once when getting old/new RSes in deployment e2e tests 2016-06-01 14:19:35 -07:00
AdoHe
d06a77065a update strategic patch test for merge list of maps 2016-05-30 01:43:36 -04:00
k8s-merge-robot
195842713d Merge pull request #26418 from AdoHe/kubectl_env
Automatic merge from submit-queue

fix strategy patch diff list issue

fixes #25585 

@janetkuo @pwittrock ptal.
2016-05-29 18:18:14 -07:00
k8s-merge-robot
7813e90026 Merge pull request #25802 from dshulyak/sort_history
Automatic merge from submit-queue

Sort revisions in rollout history as integers

Previously keys were sorted as strings, thus it was possible to see such order as 1, 10, 2, 3, 4, 5.

fixes: #25788
2016-05-28 22:56:31 -07:00
k8s-merge-robot
3b2b647409 Merge pull request #25983 from smarterclayton/cumulative
Automatic merge from submit-queue

Make UnsafeConversion fast by inlining copies

Not ready yet (need to add a copy to "safe" conversion and add mutation tests to roundtrip api/serialization_test).

Cuts another 10% off decode and encode.
2016-05-28 09:02:53 -07:00
k8s-merge-robot
e543bd6452 Merge pull request #26007 from smarterclayton/watch_opt
Automatic merge from submit-queue

Additional optimizations to the encode/decode paths

Builds on top of #25983 with a number of other optimizations.
2016-05-28 06:27:00 -07:00
Clayton Coleman
4c6da96f85
Add a reflection based object diff with structured format 2016-05-28 08:52:07 -04:00
Timothy St. Clair
199e15ab64 Update client connections to try to use http2, except attach, exec, and
port-forward which are customized
2016-05-27 15:08:42 -05:00
AdoHe
04c0103c4a fix strategy patch diff list issue 2016-05-27 08:42:33 -04:00
Alex Mohr
aab6c43a33 Merge pull request #25604 from freehan/kubenethostport
Kubenet host-port support through iptables
2016-05-26 15:49:12 -07:00
k8s-merge-robot
98766f4548 Merge pull request #26301 from zmerlynn/wait_proper
Automatic merge from submit-queue

routecontroller: Add wait.NonSlidingUntil, use it

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]() Make sure the reconciliation loop kicks in again immediately if it
takes a loooooong time.
2016-05-26 03:29:21 -07:00
k8s-merge-robot
47a372bcbf Merge pull request #25955 from jsafrane/flake-op-timeout
Automatic merge from submit-queue

Increase goroutinemap unit test timeouts.

50ms is flaky in Jenkins. This makes the test to take at least 0.5s to check that things that should block and wait for something really do block and wait (was 100ms before).

Fixes #25825
2016-05-26 02:29:02 -07:00
Zach Loafman
3ec25c5425 routecontroller: Add wait.NonSlidingUntil, use it
Make sure the reconciliation loop kicks in again immediately if it
takes a loooooong time.
2016-05-25 13:58:35 -07:00
Dmitry Shulyak
4a60d3ce60 Sort revisions in rollout history as integers
Previously keys were sorted as strings, thus it was possible
to see such order as 1, 10, 2, 3, 4, 5.

Ints64 helper implemented in util/slice module to sort []int64
2016-05-24 10:04:05 +02:00
AdoHe
973774b0ba fix kubelet tls overwrite issue 2016-05-23 23:25:12 -04:00
Minhan Xia
6a3ad1d66d add hostport support for kubenet 2016-05-22 22:18:58 -07:00
k8s-merge-robot
94c7e94b85 Merge pull request #25501 from soltysh/net_remoteaddr
Automatic merge from submit-queue

SplitHostPort is needed since Request.RemoteAddr has the host:port format

@smarterclayton ptal
[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-22 16:53:41 -07:00
Clayton Coleman
470a181846
Framer does not need to allocate a slice for each execution 2016-05-21 23:55:40 -04:00
k8s-merge-robot
346f965871 Merge pull request #25694 from cjcullen/authncache
Automatic merge from submit-queue

Cache Webhook Authentication responses

Add a simple LRU cache w/ 2 minute TTL to the webhook authenticator.

Kubectl is a little spammy, w/ >= 4 API requests per command. This also prevents a single unauthenticated user from being able to DOS the remote authenticator.
2016-05-21 10:48:38 -07:00
k8s-merge-robot
68ab865e75 Merge pull request #25328 from resouer/sort-images
Automatic merge from submit-queue

Only expose top N images in `NodeStatus`

Fix #25209

Sorted the image and only pick set top 50 sized images in node status.

cc @vishh
2016-05-21 04:43:30 -07:00
k8s-merge-robot
b7a31ad261 Merge pull request #25690 from fabianofranz/fixes_panic_on_roundtripper_when_tls_under_proxy
Automatic merge from submit-queue

Fixes panic on round tripper when TLS under a proxy

When under a proxy with a valid cert from a trusted authority, the `SpdyRoundTripper` will likely not have a `*tls.Config` (no cert verification nor `InsecureSkipVerify` happened), which will result in a panic. So we have to create a new `*tls.Config` to be able to create a TLS client right after. If `RootCAs` in that new config is nil, the system pool will be used.

@ncdc PTAL 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-20 05:31:42 -07:00
Jan Safranek
55f9148331 Increase goroutinemap unit test timeouts.
50ms is flaky in Jenkins.

Fixes #25825
2016-05-20 10:14:47 +02:00
Daniel Smith
5448400b1c Merge pull request #25243 from smarterclayton/explore_quantity
Provide an int64 version of Quantity that is much faster
2016-05-19 16:56:48 -07:00
Tim Hockin
54a3efb364 Make IsDNS952Label return error strings 2016-05-19 08:57:49 -07:00
Tim Hockin
5862a60ae7 Make IsDNS1123Subdomain return error strings 2016-05-19 08:57:49 -07:00
Tim Hockin
77eff06a53 Make IsDNS1123Label return error strings 2016-05-19 08:57:49 -07:00
Clayton Coleman
5e4308f91d
Update use of Quantity in other classes 2016-05-19 08:41:43 -04:00
Tim Hockin
66d0d87829 Make IsValidLabelValue return error strings 2016-05-17 21:36:10 -07:00
CJ Cullen
066e70fac2 Add an LRU Expire Cache. 2016-05-16 21:55:13 -07:00
Fabiano Franz
5940040c96 Fixes panic on round tripper when TLS under a proxy 2016-05-16 17:56:23 -03:00
Harry Zhang
d917ed2638 Add test for image in node status 2016-05-16 15:58:12 -04:00
Jan Safranek
e5bea6abba Add specific error type for "operation already exists" error.
PersistentVolume controller needs to know why scheduling a new operation has
failed - if the operation was already running or some other error happened.
2016-05-16 10:43:42 +02:00
k8s-merge-robot
4ac32179bf Merge pull request #24798 from thockin/validation_pt8-1
Automatic merge from submit-queue

Make IsQualifiedName return error strings

Part of the larger validation PR, broken out for easier review and merge.

@lavalamp FYI, but I know you're swamped, too.
2016-05-14 22:14:17 -07:00
k8s-merge-robot
203b5b7c5f Merge pull request #24052 from deads2k/rate-limitting-requeue
Automatic merge from submit-queue

Rate limitting requeue

I think this will do what I want in almost every case.  I'm going to try it out for a single writer quota evaluation.

`NewRateLimitingQueue(NewControllerRateLimiter(qps, burst))` gives an `AddRateLimited(item)` that backs off based on the max of a bucket and exponential backoff per item.

@liggitt Want to see if the interface works for you too?

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/24052)
<!-- Reviewable:end -->
2016-05-14 06:34:15 -07:00
saadali
f7196337c7 Rename NewGoRoutine to Run in GoRoutineMap 2016-05-13 16:05:55 -07:00
Jeff Lowdermilk
3e83de8eeb Merge pull request #25399 from jsafrane/devel/wait-for-operation
Add GoRoutineMap.Wait method.
2016-05-13 15:09:30 -07:00
Jeff Lowdermilk
ab4ffd3a1a Merge pull request #23752 from bparees/interrupt
make interrupt default exit with rc=1 and handle SIGHUP
2016-05-13 09:52:56 -07:00
Saad Ali
06a893b3c1 Merge pull request #25472 from deads2k/tolerate-nil-error
tolerate nil error in HandleError
2016-05-12 15:48:35 -07:00
Maciej Szulik
b77356afbf SplitHostPort is needed since Request.RemoteAddr has the host:port format 2016-05-11 23:02:01 +02:00
k8s-merge-robot
5673f13edf Merge pull request #24014 from ihmccreery/chaosmonkey-no-ginkgo
Automatic merge from submit-queue

Upgrades tests use chaosmonkey package and ServiceTestJig

Introduce the `chaosmonkey` e2e package for doing disruptive testing (e.g. upgrade testing) more easily.

- [x] `chaosmonkey` package
- [x] migrate upgrade tests to `chaosmonkey` (using WIP `serviceJig`)
- [x] migrate upgrade tests to use `ServiceTestJig` and `chaosmonkey`

Deferred:

- [ ] make `ServiceTestJig` implement `chaosmonkey.Interface`
- [ ] migrate disruptive services tests to use `ServiceTestJig` and `chaosmonkey`

This provides the extensible framework for #15131.  We should now easily be able to add tests (e.g. #6084, #23189).

This is a rewrite of #22446.

cc @mikedanese @quinton-hoole @roberthbailey 

Assigning to @thockin, who wrote `ServiceTestJig`.

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/24014)
<!-- Reviewable:end -->
2016-05-11 11:54:11 -07:00
deads2k
b2d8c2865a tolerate nil error in HandleError 2016-05-11 09:06:53 -04:00
Tim Hockin
72955770f3 Make IsQualifiedName return error strings 2016-05-10 11:23:23 -07:00
deads2k
bf95b124e6 add built-in ratelimiter to workqueue 2016-05-10 09:04:32 -04:00
k8s-merge-robot
5ca769e0a3 Merge pull request #25038 from mfojtik/json-line
Automatic merge from submit-queue

Display line number on JSON errors

Related issue: https://github.com/kubernetes/kubernetes/issues/12231

This PR will introduce line numbers for all JSON errors in the CLI:

(this is existing error reporting for YAML)
```console
$ kubectl create -f broken.yaml
yaml: line 8: mapping values are not allowed in this context
```

(this is error reporting proposed in this PR for JSON)
```console
$ kubectl create -f broken.json
json: line 35: invalid character '{' after object key
```

(and this is the current reporting:)
```console
$ kubectl create -f broken.json
invalid character '{' after object key
```
[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-10 02:49:01 -07:00
Jan Safranek
6623385d64 Add GoRoutineMap.Wait method.
It's useful for testing - code under tests creates an operation and my test
needs to wait until the operation finishes before evaluating results.
2016-05-10 10:11:08 +02:00
Zach Loafman
faf0c44429 GCE: Allow nodes to exceed target pool maximums
If we would exceeded the TargetPool API maximums, instead just
randomly select some subsection of the nodes to include in the TP
instead.
2016-05-09 21:44:58 -07:00
k8s-merge-robot
6596ae0c61 Merge pull request #24838 from saad-ali/attachControllerOpMap
Automatic merge from submit-queue

Add data structure for managing go routines by name

This PR introduces a data structure for managing go routines by name. It prevents the creation of new go routines if an existing go routine with the same name exists. This will enable parallelization of the designs in https://github.com/kubernetes/kubernetes/issues/20262 and https://github.com/kubernetes/kubernetes/issues/21931 with sufficient protection to prevent starting multiple operations on the same volume.
2016-05-09 06:31:22 -07:00
Tim Hockin
817abc3213 Kill our atomic pkg, now that 1.6 is req'd 2016-05-08 20:30:37 -07:00
Robert Bailey
375d2ad38c Merge pull request #24164 from sjenning/fix-util-cache
fix immediate evict in cache
2016-05-06 14:43:53 -07:00
Robert Bailey
222eb31f8a Merge pull request #25059 from janetkuo/deployment-availablepods-comment
Fix incorrect comments in IsPodAvailable
2016-05-06 14:11:18 -07:00
Robert Bailey
007e4f06a6 Merge pull request #24718 from chengyli/cinder-volume
fix cinder volume dir umount issue #24717
2016-05-06 13:53:30 -07:00
Clayton Coleman
0e05f704f3
Trace.Step() performs an unnecessary ref
Allocates more objects than necessary.
2016-05-06 11:42:35 -04:00
Michal Fojtik
543a8b2d06
Display line number on JSON errors 2016-05-06 13:10:47 +02:00
k8s-merge-robot
346ddc52c2 Merge pull request #24748 from Random-Liu/cleanup-with-new-engine-api
Automatic merge from submit-queue

Kubelet: Cleanup with new engine api

Finish step 2 of #23563

This PR:
1) Cleanup go-dockerclient reference in the code.
2) Bump up the engine-api version.
3) Cleanup the code with new engine-api.

Fixes #24076.
Fixes #23809.

/cc @yujuhong
2016-05-06 03:16:53 -07:00
k8s-merge-robot
93e3df8e55 Merge pull request #24789 from wojtek-t/use_proper_codec_in_client
Automatic merge from submit-queue

Use proper codec in client
2016-05-04 11:00:04 -07:00
Wojciech Tyczynski
11849e232e Fix bug in json framer. 2016-05-04 15:02:07 +02:00
Wojciech Tyczynski
303742ce12 Merge pull request #24723 from smarterclayton/strip_noop_imports
Protobuf generation should strip side-effect imports
2016-05-04 11:16:45 +02:00
Wojciech Tyczynski
3aadafd411 Use NegotiatedSerializer in client 2016-05-04 10:57:36 +02:00
Janet Kuo
f3b1aaeca6 Fix incorrect comments in IsPodAvailable 2016-05-03 13:05:02 -07:00
k8s-merge-robot
946a311e7b Merge pull request #25014 from smarterclayton/broken_framing_growth
Automatic merge from submit-queue

Frame decoder was checking cap(), not len()

Resulted in bytes being missing from the streaming decoder. Update both
parts.

Required for #24789

@wojtek-t or @lavalamp while he's OOO
2016-05-03 11:26:15 -07:00
Isaac Hollander McCreery
27fb17e785 Poll much more frequently, remove wait for pods to be ready, and do one final check 2016-05-03 09:22:58 -07:00
Clayton Coleman
99430cf5de
Strip side-effect imports from generated protobuf 2016-05-02 18:12:20 -04:00
saadali
53bb527e35 Introduce a data structure for managing go routines by unique name. 2016-05-02 12:02:34 -07:00
Ben Parees
936650d1ab make interrupt default exit with rc=1 and handle SIGHUP 2016-05-02 09:59:27 -04:00
k8s-merge-robot
c66b2b4e05 Merge pull request #23865 from rhcarvalho/unify-signal-handling
Automatic merge from submit-queue

Unify termination signal handling across platforms

The signals are used to ensure proper execution of cleaning up actions to restore a terminal in:
- [pkg/kubectl/cmd/attach.go#L163-L226](b8d000853e/pkg/kubectl/cmd/attach.go (L163-L226))
- [pkg/kubectl/cmd/util/editor/editor.go#L112-L137](b8d000853e/pkg/kubectl/cmd/util/editor/editor.go (L112-L137))

All supported platforms can handle the same set of signals we're interested in, thus we don't need build contraints to use a set of signals on Linux, while restricting ourselves to only SIGINT on Darwin and Windows.

According to the documentation of os/signal, similar to SIGINT and SIGTERM, SIGHUP causes the program to exit, therefore add it to the list of handled signals.

The fist commit is part of #23643.
2016-05-02 04:09:25 -07:00
Clayton Coleman
84dee0d9cc
Frame decoder was checking cap(), not len()
Resulted in bytes being missing from the streaming decoder. Update both
parts.
2016-04-30 17:57:17 -04:00
Clayton Coleman
fdb110c859
Fix the rest of the code 2016-04-29 17:12:10 -04:00
Random-Liu
7796b619fd Cleanup the code with new engine-api 2016-04-29 13:34:38 -07:00
k8s-merge-robot
c0fca43260 Merge pull request #24915 from wojtek-t/read_closer_in_streaming_decoder
Automatic merge from submit-queue

Support Close() in streaming decoder

[This would be useful for changes in clients to support protobufs.]
2016-04-29 07:21:23 -07:00
chengyli
1fb33aa2da fix cinder volume dir umount issue #24717
fix https://github.com/kubernetes/kubernetes/issues/24717
If kubelet root-dir is a symlink, the pod's cinder volume dir can't be
umounted even after pod is deleted.
This patch reads target path of symlink before comparing with entries in
proc mounts.
2016-04-29 00:50:33 +08:00
Rodolfo Carvalho
9576f71b9a Unify termination signal handling across platforms
- All supported platforms can handle the same set of signals we're
  interested in, thus we don't need build contraints to use a set of
  signals on Linux, while restricting ourselves to only SIGINT on Darwin
  and Windows.
- According to the documentation of os/signal, similar to SIGINT and
  SIGTERM, SIGHUP causes the program to exit, therefore add it to the
  list of handled signals.

Signed-off-by: Rodolfo Carvalho <rcarvalh@redhat.com>
2016-04-28 15:35:50 +02:00
k8s-merge-robot
d0b887e4e0 Merge pull request #24595 from zhouhaibing089/httpserverclose
Automatic merge from submit-queue

Uncomment the code that caused by #19254

Fix https://github.com/kubernetes/kubernetes/issues/24546.

@lavalamp
2016-04-28 01:41:16 -07:00
Wojciech Tyczynski
3175d18b14 Support Close() in streaming decoder 2016-04-28 09:46:33 +02:00
k8s-merge-robot
4a0e0826e5 Merge pull request #24220 from gmarek/metrics
Automatic merge from submit-queue

Generated clients can return their RESTClients, RESTClient can return its RateLimiter

cc @lavalamp @krousey @wojtek-t @smarterclayton @timothysc 

Ref. #22421
2016-04-27 19:25:38 -07:00
gmarek
3171aac57c Generated clients can return their RESTClients, RESTClient can return its RateLimiter 2016-04-27 22:15:10 +02:00
k8s-merge-robot
55cb7cceb3 Merge pull request #23632 from stefwalter/parse-repository-tag-removed
Automatic merge from submit-queue

Fix use of docker removed ParseRepositoryTag() function

Docker has removed the ParseRepositoryTag() function in
leading to failures using the kubernetes Go client API.

Failure:

```
../k8s.io/kubernetes/pkg/util/parsers/parsers.go:30: undefined: parsers.ParseRepositoryTag
```
2016-04-26 09:49:25 -07:00
k8s-merge-robot
a586177360 Merge pull request #23740 from dcbw/kubenet-shaper
Automatic merge from submit-queue

kubenet: hook pod bandwidth resources up to shaper

@bprashanth @thockin Last bit for shaping.
2016-04-25 22:15:42 -07:00
zhouhaibing089
bf1a3f99c0 Uncomment the code that cause by #19254 2016-04-25 23:21:31 +08:00
Stef Walter
481dbca8bc Fix use of docker removed ParseRepositoryTag() function
Docker has removed the ParseRepositoryTag() function in
leading to failures using the kubernetes Go client API.

Lets use github.com/docker/distribution reference.ParseNamed()
instead.

Failure:

../k8s.io/kubernetes/pkg/util/parsers/parsers.go:30: undefined: parsers.ParseRepositoryTag
2016-04-25 11:37:10 +02:00
Clayton Coleman
3111985564 Handle streaming serializers more consistently
Add tests to watch behavior in both protocols (http and websocket)
against all 3 media types. Adopt the
`application/vnd.kubernetes.protobuf;stream=watch` media type for the
content that comes back from a watch call so that it can be
distinguished from a Status result.
2016-04-22 11:07:24 -04:00
k8s-merge-robot
09adffb318 Merge pull request #23317 from aanm/removing-ipv4-enforcement
Automatic merge from submit-queue

Remove requirement that Endpoints IPs be IPv4

Signed-off-by: André Martins <aanm90@gmail.com>

Release Note: The `Endpoints` API object now allows IPv6 addresses to be stored.  Other components of the system are not ready for IPv6 yet, and many cloud providers are not IPv6 compatible, but installations that use their own controller logic can now store v6 endpoints.
2016-04-21 03:34:50 -07:00
Clayton Coleman
e16a7f2421 Initial protobuf generated files 2016-04-20 12:13:05 -04:00
Dan Williams
8086d64131 kubenet: hook pod bandwidth resources up to shaper 2016-04-19 15:32:46 -05:00
k8s-merge-robot
7664509c73 Merge pull request #24248 from wojtek-t/parallel_predicates
Automatic merge from submit-queue

Parallelize computing predicates in scheduler

@davidopp
2016-04-16 09:51:45 -07:00
k8s-merge-robot
49dd31a9a8 Merge pull request #23643 from smarterclayton/leak
Automatic merge from submit-queue

interrupt package (attach and edit) could leak a goroutine
2016-04-16 00:00:24 -07:00
k8s-merge-robot
2382fec956 Merge pull request #23894 from vishh/oom-score-adj-error
Automatic merge from submit-queue

Do not throw creation errors for containers that fail immediately after being started

Fixes (hopefully) #23607 

cc @dchen1107
2016-04-14 22:29:14 -07:00
André Martins
c1a360b1d5 Removing IPv4 enforcement on Endpoints
Signed-off-by: André Martins <aanm90@gmail.com>
2016-04-14 16:20:00 +01:00
Wojciech Tyczynski
5a73a9d235 Parallelize computing predicates 2016-04-14 16:32:52 +02:00
k8s-merge-robot
590a5f3ad7 Merge pull request #23444 from deads2k/add-requeue-after-duration
Automatic merge from submit-queue

add a delayed queueing option to the workqueue

Adds delayed requeuing to the workqueue so that I requeue an item to be retried at some later time in my controller with a series of backoff rules.  It lets me have the best of the retryManager and the work queue de-duping.  Tracking failures and backoffs is on the caller

@smarterclayton @pweil-  this would help us move to using the informer everywhere and de-duping at that level.
2016-04-14 05:02:24 -07:00
k8s-merge-robot
04df711a35 Merge pull request #24035 from jsafrane/devel/nsenter-error-messages
Automatic merge from submit-queue

Add path to log messages.

It is useful to see the path that failed to mount in the log messages.

Fixes #23990.
2016-04-14 03:47:26 -07:00
goltermann
a3104ba96c Final vet fixes; enabling vet checks in verify scripts. 2016-04-13 13:51:51 -07:00
k8s-merge-robot
ae57644172 Merge pull request #23435 from jsafrane/devel/fix-nsenter-mkdir
Automatic merge from submit-queue

Fixed mounting with containerized kubelet

`NsenterMounter.IsLikelyNotMountPoint()` should return `ErrNotExist` when the
checked directory does not exists - the regular mounted does this and
some volume plugins depend on this behavior.

See for example: https://github.com/kubernetes/kubernetes/blob/master/pkg/volume/aws_ebs/aws_util.go#L72
2016-04-13 08:35:08 -07:00
Seth Jennings
cf199dbdfa fix immediate evict in cache 2016-04-13 09:29:58 -05:00
k8s-merge-robot
f5e8e7453b Merge pull request #23806 from smarterclayton/streaming_watch
Automatic merge from submit-queue

Implement a streaming serializer for watch

Changeover watch to use streaming serialization. Properly version the
watch objects. Implement simple framing for JSON and Protobuf (but not
YAML).

@wojtek-t @lavalamp
2016-04-13 05:18:17 -07:00
k8s-merge-robot
fcddb9cba5 Merge pull request #16964 from liggitt/json_precision
Automatic merge from submit-queue

Preserve int data when unmarshaling

There are several places we use `json.Unmarshal` into an unstructured map (StrategicMergePatch, UnstructuredJSONScheme, many others).

In this scenario, the json package converts all numbers to float64. This exposes many of the int64 fields in our API types to corruption when the unstructured map is marshalled back to json.

A simple example is a pod with an `"activeDeadlineSeconds": 1000000`. Trying to use `kubectl label`, `annotate`, `patch`, etc results in that int64 being converted to a float64, submitted to the server, and the server rejecting it with an error about "cannot unmarshal number 1e+6 into Go value of type int64"

The json package provides a way to defer conversion of numbers (`json.Decoder#UseNumber`), but does not actually do conversions to int or float. This PR makes use of that feature, and post-processes the unmarshalled map to convert json.Number objects to either int64 or float64 values
2016-04-12 07:09:32 -07:00
k8s-merge-robot
acf9492cb1 Merge pull request #23660 from goltermann/vetclean
Automatic merge from submit-queue

Additional go vet fixes

Mostly:
- pass lock by value
- bad syntax for struct tag value
- example functions not formatted properly
2016-04-12 06:22:16 -07:00
Jordan Liggitt
37c86041ca Preserve int64 data when patching 2016-04-11 16:23:28 -04:00
Vishnu kannan
b06bb6bb8e OOM Score adjusting logic in kubelet should handle containers that exit quickly.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-04-11 11:21:48 -07:00
Clayton Coleman
3474911736 Implement a streaming serializer for watch
Changeover watch to use streaming serialization. Properly version the
watch objects. Implement simple framing for JSON and Protobuf (but not
YAML).
2016-04-11 11:22:05 -04:00
Clayton Coleman
bfc991646b Implement correct and memory safe framing and add tests 2016-04-11 11:22:04 -04:00
Jan Safranek
be2ca8dec3 Add path to log messages.
It is useful to see the path that failed to mount in the log messages.
2016-04-08 09:41:09 +02:00
Jordan Liggitt
bf097ea233 fake util.clock tick 2016-04-07 15:10:50 -04:00
Jordan Liggitt
290d970282 make delayed workqueue use channels with single writer 2016-04-07 15:10:25 -04:00
deads2k
d12a4d6d5a add a delayed queueing option to the workqueue 2016-04-07 14:02:50 -04:00
goltermann
696423e044 Vet fixes, mostly pass lock by value errors. 2016-04-06 11:27:40 -07:00
harry
5fe773d37c Add flow control pkg
Refactor pkg names in flow control related files
2016-04-03 11:28:03 +08:00
k8s-merge-robot
7d7ca5ab72 Merge pull request #23608 from caesarxuchao/mv-typed-clients
Automatic merge from submit-queue

Move typed clients into clientset folder

Move typed clients from `pkg/client/typed/` to `pkg/client/clientset_generated/${clientset_name}/typed`.

The first commit changes the client-gen, the last commit updates the doc, other commits are just moving things around.

@lavalamp @krousey
2016-04-02 19:31:40 -07:00
k8s-merge-robot
5c2f758517 Merge pull request #17590 from fabianofranz/cli_homedir_on_windows
Automatic merge from submit-queue

Use correct home directory on Windows

As of now the `kubectl` config mechanism that saves/loads `~/.kube/config` is broken on Windows, saving the config file in the *current* directory instead of the user's *home* dir. This happens because most Windows don't respect the `HOME` environment variable. 

This PR changes the config file loading mechanism to use the recommended way to detect the user home on Windows (`HOMEDRIVE`+`HOMEPATH` or `USERPROFILE`), and adds a migration for users that might be currently relying on existing config files.
2016-04-01 22:00:11 -07:00
k8s-merge-robot
3b65927050 Merge pull request #16451 from ncdc/exec-interop-testing
Automatic merge from submit-queue

Refactor streaming code to support interop testing

Refactor exec/attach/port forward client and server code to better
support interop testing of different client and server subprotocol
versions.

Fixes #16119
2016-04-01 17:11:26 -07:00
Andy Goldstein
4551ba6b53 Refactor exec code to support version skew testing
Refactor exec/attach client and server code to better support interoperability testing of different
client and server subprotocol versions.
2016-04-01 13:05:50 -04:00
k8s-merge-robot
fa8d72e35d Merge pull request #23358 from aveshagarwal/master-jsonpath-fix
Automatic merge from submit-queue

Fix jsonpath to handle maps with key of nonstring types
2016-04-01 05:31:03 -07:00
Chao Xu
49559a3332 Generate the typed clients under the clientset folder 2016-03-31 15:28:45 -07:00
Clayton Coleman
de6e02d8bb interrupt package (attach and edit) could leak a goroutine
os/signal.Stop() does not actually close the channel, which means
the channel is blocked. Not serious because we don't use interrupt
protection on the server, just the CLI (which can afford 1 leaked
goroutine).
2016-03-31 11:39:08 -04:00
k8s-merge-robot
e44ad7a083 Merge pull request #22735 from resouer/throttle-dev
Auto commit by PR queue bot
2016-03-26 06:44:48 -07:00
goltermann
32d569d6c7 Fixing all the "composite literal uses unkeyed fields" Vet errors. 2016-03-25 15:25:09 -07:00
k8s-merge-robot
4e4ad61260 Merge pull request #23366 from goltermann/vet
Auto commit by PR queue bot
2016-03-24 21:50:56 -07:00
harry
8472cfa214 Refactor throttle into util pkg
Fix missing throttle.go
2016-03-25 08:32:23 +08:00
Jan Safranek
92f181174b Fixed mounting with containerized kubelet.
Kubelet was not able to mount volumes when running inside a container and
using nsenter mounter,

NsenterMounter.IsLikelyNotMountPoint() should return ErrNotExist when the
checked directory does not exists as the regular mounted does this and
some volume plugins depend on this behavior.
2016-03-24 17:27:11 +01:00
k8s-merge-robot
76369c42be Merge pull request #22939 from resouer/util-sub-dir
Auto commit by PR queue bot
2016-03-23 03:34:33 -07:00
k8s-merge-robot
4af38b52b9 Merge pull request #22736 from resouer/fix-util-dev
Auto commit by PR queue bot
2016-03-22 19:54:58 -07:00
goltermann
34d4eaea08 Fixing several (but not all) go vet errors. Most are around string formatting, or unreachable code. 2016-03-22 17:26:50 -07:00
Avesh Agarwal
d5e135e42c Fix jsonpath to handle maps with key of nonstring types 2016-03-22 17:32:40 -04:00
Clayton Coleman
3a29e3971b Improve terminal reuse and attach
Currently attach and the editor do not share the same logic for saving
and restoring the terminal, and are not suitable for nesting (when the
caller wants to create something, attach, and then delete something when
the attach is over).  This commit moves the interrupt protection logic
to a util package and supports nesting interrupt handlers.
2016-03-21 23:59:58 -04:00
harry
b0900bf0d4 Refactor diff into sub pkg 2016-03-21 20:21:39 +08:00
harry
d6e1566509 Refector deadlock into detector pkg 2016-03-21 20:20:05 +08:00
Harry Zhang
a4d04095d0 Refactor crlf & crypto 2016-03-21 20:20:05 +08:00
Harry Zhang
7178fba251 Move crlf.go to sub pkg 2016-03-21 20:20:05 +08:00
harry
343b1927d1 Refactor config map into sub pkg 2016-03-21 14:50:57 +08:00
harry
bc422f077a Refactor bool_flag into sub pkg 2016-03-21 14:50:57 +08:00
harry
b6924a322a Refactor cache into util sub pkg 2016-03-21 14:50:57 +08:00
k8s-merge-robot
782ba437f1 Merge pull request #23003 from deads2k/no-proxy-cidr
Auto commit by PR queue bot
2016-03-17 14:16:11 -07:00
Wojciech Tyczynski
e610c137c0 Regenerate auto-generated files 2016-03-17 09:30:02 +01:00
deads2k
ab03317d96 support CIDRs in NO_PROXY 2016-03-16 16:22:54 -04:00
Janet Kuo
26bcdb1bd6 Separate GetOldRS and GetNewRS in deployment controller (get and mutate) and deployment util (get only) 2016-03-15 10:23:20 -07:00
harry
f19d59cf35 Move flag into sub pkg 2016-03-14 21:30:38 +08:00
Chao Xu
a6240c1ab8 add FullyLabeledReplicas in Replicaset Status and ReplicationController Status 2016-03-11 23:55:04 -08:00
Brian Grant
d514a65c8d Merge pull request #22802 from ncdc/httpstream-reset-streams-when-closing-connection
Close streams with Reset instead of Close when closing streaming connections
2016-03-11 12:21:19 -08:00
Andy Goldstein
01b33ec330 Close streams with Reset instead of Close when closing streaming connections
This ensures that the call to close the underlying streaming connection will execute immediately,
instead of waiting for all streams to gracefully shut down.
2016-03-11 11:28:08 -05:00
harry
5b359213b1 Refactor env into sub pkg
Refactor env into sub pkg
2016-03-11 13:52:45 +08:00
Madhusudan.C.S
db48dcf583 ReplicaSetSpec.Template shouldn't be a pointer.
PodTemplateSpec should be consistent for all the types in extensions/v1beta1.

See PR #19510.
2016-03-09 21:24:16 -08:00
Wojciech Tyczynski
46ba2bfc89 Fix fake_handler test in Go 1.6 2016-03-09 14:24:42 +01:00
Michail Kargakis
77097d9a20 kubectl: set maxUnavailable to 1 if both fenceposts resolve to zero
Due to rounding down for maxUnavailable, we may end up with rolling updates
that have zero surge and unavailable pods something that 1) is not allowed
as per validation, 2) blocks updates. If we end up in such a situation
set maxUnavailable to 1 on the theory that surge might not work due to
quota.
2016-03-07 13:03:41 +01:00
k8s-merge-robot
8ab8231c20 Merge pull request #22577 from jpiccari/master
Auto commit by PR queue bot
2016-03-06 00:18:53 -08:00
k8s-merge-robot
c7a50206c0 Merge pull request #22579 from bprashanth/graceful_rc
Auto commit by PR queue bot
2016-03-05 23:42:11 -08:00
Prashanth Balasubramanian
7f5c9bd676 Track deletes in rc manager with a UID expectations cache. 2016-03-05 18:18:18 -08:00
k8s-merge-robot
5dde64c4ec Merge pull request #22264 from gmarek/scheduler
Auto commit by PR queue bot
2016-03-05 15:13:16 -08:00
k8s-merge-robot
e91048ea96 Merge pull request #22392 from janetkuo/retry-update-precondition
Auto commit by PR queue bot
2016-03-04 19:21:14 -08:00
Joshua Piccari
f5f83b076a Improve go report card by fixing typos in comments 2016-03-04 18:30:59 -08:00
Janet Kuo
f666e87217 Filter out inactive pods first when determining if it's available 2016-03-04 16:32:32 -08:00
Janet Kuo
64731e8083 Address comments 2016-03-03 15:56:09 -08:00
Janet Kuo
aae2073a78 Add preconditions to pod/rs update retry func 2016-03-03 14:54:28 -08:00
Brian Grant
ea579d5fab Merge pull request #22384 from janetkuo/skip-not-found-label
When retrying updating RSes and pods, ignore the not found error
2016-03-03 14:20:58 -08:00
k8s-merge-robot
de72b6be1b Merge pull request #21907 from justinsb/load_balancer_source_ranges
Auto commit by PR queue bot
2016-03-03 14:10:47 -08:00
Janet Kuo
75e570832b Ignore not found error when retrying rs and pods updates 2016-03-03 11:45:55 -08:00
Justin Santa Barbara
cb92133dfa LB Source Ranges: Move validation into API layer
Had to move other things around too to avoid a weird api ->
cloudprovider dependency.

Also adding fixes per code reviews.

(This is a squash of the previously approved commits)
2016-03-03 10:27:17 -05:00
Brian Grant
4b213ed263 Merge pull request #22245 from nikhiljindal/deploymentTimeoutErrors
Improving deployment e2e failure error messages
2016-03-01 18:46:13 -08:00
Brian Grant
6deb2612dc Merge pull request #22243 from nikhiljindal/updatePodWithRetries
deployment e2e flake: Fix updatePodWithRetries to get and then immediately try update
2016-03-01 18:44:17 -08:00
nikhiljindal
0dae82f6f1 Improving deployment e2e failure error messages 2016-03-01 17:58:32 -08:00
k8s-merge-robot
57ecc24db5 Merge pull request #22305 from bprashanth/deploy_label
Auto commit by PR queue bot
2016-03-01 15:27:09 -08:00
nikhiljindal
b65180c314 Update updatePodWithRetries to get and then update 2016-03-01 14:40:21 -08:00
Prashanth Balasubramanian
b9eb552e07 Update the re-fetched pod with deployment labels. 2016-03-01 11:47:53 -08:00
gmarek
6697834797 Move isMasterNode function to api/helpers 2016-03-01 12:12:38 +01:00
k8s-merge-robot
e7d0f06c4a Merge pull request #21736 from resouer/check-register
Auto commit by PR queue bot
2016-03-01 02:21:56 -08:00
Brian Grant
d0dd4f8a93 Restore expectation timeout to 5 minutes. Fix enqueueDeployment. Pass by reference.
Make names of ReplicaSets created by Deployment deterministic for idempotence.
Eliminate use of expectations in Deployment controller.
2016-02-28 07:33:07 +00:00
k8s-merge-robot
6b676edab8 Merge pull request #21409 from fabianofranz/fix_spdy_roundtripper_with_proxy_auth
Auto commit by PR queue bot
2016-02-27 04:37:24 -08:00
k8s-merge-robot
f0c0af2561 Merge pull request #20528 from mikedanese/varz
Auto commit by PR queue bot
2016-02-27 00:27:18 -08:00
Fabiano Franz
5bffa5b858 SPDY roundtripper support to proxy with Basic auth 2016-02-25 15:54:50 -03:00
Harry Zhang
636e982ecd Implement checking in predicates 2016-02-25 21:25:36 +08:00
k8s-merge-robot
a7f06905c3 Merge pull request #21185 from fabianofranz/fix_spdy_roundtripper_verify_hostname
Auto commit by PR queue bot
2016-02-25 04:45:12 -08:00
k8s-merge-robot
5f86dd1b2f Merge pull request #21906 from justinsb/util_sets_docstring
Auto commit by PR queue bot
2016-02-25 00:24:54 -08:00
Brian Grant
b27edde38d Merge pull request #21957 from mqliang/deployment-preserve-availability
Deployment: preserve availability when maxUnavailability is not 100%
2016-02-24 22:09:54 -08:00
Brian Grant
be6515ca90 Merge pull request #21935 from janetkuo/nil-pointer
Fix the nil pointer dereference when counting RS replicas
2016-02-24 21:58:41 -08:00
mqliang
06d57ec7f4 Deployment: preserve availability when maxUnavailability is not 100% 2016-02-25 13:30:06 +08:00
Janet Kuo
069e77d504 Fix the nil pointer dereference when counting RS replicas 2016-02-24 18:27:27 -08:00
Janet Kuo
3ed8426a98 When calculating pod template hash, don't include the hash label 2016-02-24 18:09:59 -08:00
Janet Kuo
96908d6de5 Add more logs 2016-02-24 16:41:36 -08:00
Janet Kuo
082702390a Fix test flake 2016-02-24 16:41:36 -08:00
Janet Kuo
020ab8813d Check observed generation only after rs template is labeled in addHashKeyToRSAndPods 2016-02-24 16:41:36 -08:00
Janet Kuo
1d1c6f19b4 Fix the nil pointer dereference in addHashKeyToRSAndPods 2016-02-24 16:41:36 -08:00
Alex Robinson
2b13bc471b Merge pull request #21892 from jayunit100/backoff-flake-fix
fake backoff implementation for speeding up flakey test
2016-02-24 16:26:56 -08:00
Brian Grant
88056edab2 Merge pull request #21902 from janetkuo/deployment-unavailable-replicas
Fix the incorrect deployment.status.unavailableReplicas
2016-02-24 14:48:04 -08:00
Brian Grant
0b5edab208 Merge pull request #21857 from nikhiljindal/stopDeployment
fix deployment e2e flake: Update DeploymentReaper.Stop to use ObservedGeneration
2016-02-24 14:26:23 -08:00
Mike Danese
5ec02bd021 add http handler to export configuration state 2016-02-24 14:12:28 -08:00
Janet Kuo
062b9f86b9 Fix the incorrect deployment.status.unavailableReplicas 2016-02-24 14:09:49 -08:00
Brian Grant
832bc37ee4 Merge pull request #21713 from janetkuo/deployment-actual-replicas
Report actual replicas in deployment status
2016-02-24 13:55:16 -08:00
Justin Santa Barbara
2f0a56103c Cleanup of docstring for types.go
Make it a little clearer what command actually needs to be run!
2016-02-24 14:14:37 -05:00
jay vyas
4097cfe022 fake backoff implementation for speeding up flakey test, fake Clock Test for sleep 2016-02-24 13:50:29 -05:00
nikhiljindal
7e50fa6df0 Update DeploymentReaper.Stop to use ObservedGeneration to remove race condition 2016-02-24 00:09:44 -08:00
k8s-merge-robot
51150a2ac5 Merge pull request #21823 from janetkuo/sort-event-timestamp
Auto commit by PR queue bot
2016-02-23 23:35:33 -08:00
Abhi Shah
5f553a218e Merge pull request #21724 from freehan/imagepull
fix cascading backoff
2016-02-23 17:53:35 -08:00
Janet Kuo
82dcc56fe3 Improve log for debug 2016-02-23 17:52:24 -08:00
k8s-merge-robot
cdbbeae3e5 Merge pull request #21486 from fgrzadkowski/docker_ubuntu_fix
Auto commit by PR queue bot
2016-02-23 09:48:50 -08:00
harry
b90550de25 Implement check for priority 2016-02-23 11:59:32 +08:00
Minhan Xia
973b01ee29 fix cascading backoff 2016-02-22 18:25:42 -08:00
Janet Kuo
3901423272 Report actual replicas in deployment status 2016-02-22 14:28:28 -08:00
Janet Kuo
4699a6d8a2 Address comments; fix test failure 2016-02-22 10:58:54 -08:00
Janet Kuo
dc78af948e Address comments; fix incorrect hash 2016-02-22 10:58:54 -08:00
Janet Kuo
0e5da8460d Address comments 2016-02-22 10:58:54 -08:00
Janet Kuo
14bab2bb3a Address comments 2016-02-22 10:58:54 -08:00
Janet Kuo
11fdbff97f Address comments; fix test failures; add e2e tests; update RS's label too 2016-02-22 10:58:54 -08:00
Janet Kuo
da58172283 Ensure Deployment labels adopted ReplicaSets and pods 2016-02-22 10:58:54 -08:00
Janet Kuo
b267ede42c Address comments 2016-02-19 15:58:33 -08:00
Janet Kuo
6ceb221f8e Log pods of RS when deployment e2e test fails 2016-02-19 15:55:22 -08:00
Filip Grzadkowski
217d9f38e7 Don't return error when findmnt exits with error.
Fixes #21303
2016-02-19 14:09:33 +01:00
k8s-merge-robot
eb45154996 Merge pull request #21348 from caesarxuchao/generate-fake-for-1-2
Auto commit by PR queue bot
2016-02-18 23:02:05 -08:00
Fabiano Franz
97d106e5ab Use correct home directory on Windows 2016-02-19 01:41:42 -02:00
nikhiljindal
20ce4aed0e Adding hostname to groups discovery information 2016-02-18 11:58:11 -08:00
k8s-merge-robot
5acdb92126 Merge pull request #21177 from laushinka/spelling-fixes
Auto commit by PR queue bot
2016-02-18 10:29:49 -08:00
Fabiano Franz
5cc943d3bf SPDY roundtripper must respect InsecureSkipVerify 2016-02-18 11:48:02 -02:00
Chao Xu
ad46715f51 generate fake client for release_1_2 2016-02-17 16:10:02 -08:00
laushinka
7ef585be22 Spelling fixes inspired by github.com/client9/misspell 2016-02-18 06:58:05 +07:00
Janet Kuo
e9262df456 Scale up early when deployment creates new Replica set 2016-02-16 18:05:44 -08:00
mqliang
fcf0d6d720 add GetValueFromIntOrPercent helper funcs 2016-02-15 23:06:02 +08:00
mqliang
d96cdb93c4 move helper funcs to util/deployment.go from util.go 2016-02-15 22:36:48 +08:00
k8s-merge-robot
ee33ed2cf5 Merge pull request #20981 from madhusudancs/labelselector-error-string-fix
Auto commit by PR queue bot
2016-02-14 03:14:46 -08:00
mqliang
7be9071584 create some integer min/max function 2016-02-12 11:20:11 +08:00
k8s-merge-robot
9d3633a16d Merge pull request #20253 from mikedanese/flock
Auto commit by PR queue bot
2016-02-10 15:52:26 -08:00
k8s-merge-robot
3b41600e5a Merge pull request #20929 from thockin/go-vet
Auto commit by PR queue bot
2016-02-10 12:13:55 -08:00
Mike Danese
b3172a4ccf kubelet: add a pidfile 2016-02-10 11:38:50 -08:00
Madhusudan.C.S
525d7a7732 Fix the label selector to selector conversion error string.
The message as it is framed right now does not make any sense for the
end users of our system. It might even lead to confusion. So this is
attempt to make the error message less confusing.
2016-02-10 09:43:30 -08:00
Madhusudan.C.S
e7a9f30936 Address review comments. 2016-02-09 15:50:01 -08:00
Tim Hockin
7cab7bd472 fix a few go-vet errors 2016-02-09 13:20:31 -08:00
Madhusudan.C.S
ed7ad6dcf3 Make deployments work. 2016-02-08 21:27:49 -08:00
Madhusudan.C.S
518f08aa7c Move Deployments to ReplicaSets and switch the Deployment selector to the new LabelSelector.
Update the Deployments' API types, defaulting code, conversions, helpers
and validation to use ReplicaSets instead of ReplicationControllers and
LabelSelector instead of map[string]string for selectors.

Also update the Deployment controller, registry, kubectl subcommands,
client listers package and e2e tests to use ReplicaSets and
LabelSelector for Deployments.
2016-02-08 21:27:38 -08:00
k8s-merge-robot
8fcc105d6d Merge pull request #20444 from ncdc/flake/19466
Auto commit by PR queue bot
2016-02-08 20:46:03 -08:00
Andy Goldstein
a45247ad2a Fix exec/attach test flakes
Ensure that stream reply frames are enqueued prior to any goaway frames.
2016-02-08 21:33:23 -05:00
k8s-merge-robot
14653d6b5a Merge pull request #20169 from vishh/20117
Auto commit by PR queue bot
2016-02-08 15:25:45 -08:00
k8s-merge-robot
b32078d89b Merge pull request #20496 from matthewdupre/masquerade-config
Auto commit by PR queue bot
2016-02-08 10:49:20 -08:00
gmarek
6b2507485f Add FakeNeverRateLimitter 2016-02-08 11:06:25 +01:00
Jan Chaloupka
8e270922be Add unit test for JitterUntil 2016-02-07 21:09:06 +01:00
Jan Chaloupka
3fa290980a jitter period in each run of Until
In order to synchronize the current state of Kubernetes's objects (e.g. pods, containers, etc.),
periodic synch loops are run. When there is a lot of objects to synchronize with,
loops increase communication traffic. At some point when all the traffic interfere cpu usage curve
hits the roof causing 100% cpu utilization.

To distribute the traffic in time, some sync loops can jitter their period in each loop
and help to flatten the curve.

This commit adds JitterUntil function with jitterFactor parameter.
JitterUntil generalizes Until which is a special case for jitterFactor being zero.
2016-02-07 21:09:02 +01:00
Jan Chaloupka
4389b3f0d6 Rewritte util.* -> wait.* wherever reasonable 2016-02-07 12:02:20 +01:00
Jan Chaloupka
43a47a8234 Move Until, Forever, NeverStop, ForeverTestTimeout from util to wait 2016-02-07 11:38:48 +01:00
Tim Hockin
1e7db4a174 Implement proper cleanup in iptables proxy 2016-02-07 02:42:18 +00:00
Tim Hockin
41ba8ced6d Dont log errors on proxy leftover cleanup 2016-02-07 02:41:50 +00:00
Janet Kuo
7e9fb97b7d Remove UniqueLabelKey from deployment spec 2016-02-05 16:21:44 -08:00
Daniel Smith
60cc5d10b7 Merge pull request #20013 from spxtr/fix-ssh
Retry SSH connection for E2E log gathering.
2016-02-05 15:52:34 -08:00
Chao Xu
184440f8ef rename release_1_2 to internalclientset 2016-02-05 14:02:28 -08:00
Rudi Chiarito
a2d1bb7acf Add httpHeaders to httpGet liveness probe
Also update existing documentation and try to steer users away from 'host'.
Add validation.
2016-02-05 11:20:04 -05:00
Chao Xu
1b047f8e67 rename legacy to core 2016-02-04 14:26:56 -08:00
Vishnu kannan
df1f164b34 Do not fail container creation if the contaienr exits before applyting
oom score adjust.

Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-04 13:39:19 -08:00
k8s-merge-robot
65ebe19164 Merge pull request #20584 from caesarxuchao/release_1_2
Auto commit by PR queue bot
2016-02-03 19:46:27 -08:00
k8s-merge-robot
d4da1ee3ce Merge pull request #19835 from janetkuo/kubectl-rollout
Auto commit by PR queue bot
2016-02-03 17:39:04 -08:00
Joe Finney
7a59683e41 Retry SSH connection for E2E log gathering. 2016-02-03 16:06:02 -08:00
Chao Xu
f9f5736b01 grep sed 2016-02-03 13:06:07 -08:00
k8s-merge-robot
8d8de2efb4 Merge pull request #19314 from cjcullen/tunnels
Auto commit by PR queue bot
2016-02-02 19:46:06 -08:00
Jeff Lowdermilk
caa9433234 Merge pull request #20433 from lavalamp/fix-bad-rv
Add timeout, fix potential startup hang
2016-02-02 17:27:23 -08:00
Janet Kuo
442c75045a Add kubectl rollout undo 2016-02-02 14:20:01 -08:00
k8s-merge-robot
26202fc98a Merge pull request #18804 from marun/fix-nodeport-services
Auto commit by PR queue bot
2016-02-02 14:07:49 -08:00
CJ Cullen
04eb90a5d4 Make tunneler hold tunnels open and healthcheck vs. reopening every 5 minutes.
Also add a test for the Update() logic.
Reordered tunnels vs. storage initialization (prevent a nil ptr panic)
2016-02-02 12:00:29 -08:00
Jan Safranek
220163f67d Fixed races in Cinder volume attach/detach.
Add a mutex to guard SetUpAt() and TearDownAt() calls - they should not
run in parallel.  There is a race in these calls when there are two pods
using the same volume, one of them is dying and the other one starting.

TearDownAt() checks that a volume is not needed by any pods and detaches the
volume. It does so by counting how many times is the volume mounted
(GetMountRefs() call below).

When SetUpAt() of the starting pod already attached the volume and did not mount
it yet, TearDownAt() of the dying pod will detach it - GetMountRefs() does not
count with this volume.

These two threads run in parallel:

 dying pod.TearDownAt("myVolume")          starting pod.SetUpAt("myVolume")
   |                                       |
   |                                       AttachDisk("myVolume")
   refs, err := mount.GetMountRefs()       |
   Unmount("myDir")                        |
   if refs == 1 {                          |
   |  |                                    Mount("myVolume", "myDir")
   |  |                                    |
   |  DetachDisk("myVolume")               |
   |                                       start containers - OOPS! The volume is detached!
   |
   finish the pod cleanup


Also, add some logs to cinder plugin for easier debugging in the future, add
a test and update the fake mounter to know about bind mounts.
2016-02-02 14:38:49 +01:00
k8s-merge-robot
78eaa6635e Merge pull request #20080 from nagarjung/flocker_feature
Auto commit by PR queue bot
2016-02-02 02:45:14 -08:00
k8s-merge-robot
17a5058e83 Merge pull request #19893 from janetkuo/kubectl-rollout-history
Auto commit by PR queue bot
2016-02-02 01:13:15 -08:00
Daniel Smith
4a7d70aef1 extend fake clock 2016-02-01 15:36:15 -08:00
Janet Kuo
8fb86a3d3b Add kubectl rollout history 2016-02-01 15:32:43 -08:00
Maru Newby
a5e00da867 Fix nodeport service compat with default-deny fw 2016-02-01 21:34:30 +00:00
harry
1032067ff9 Replace runtime reference by pkg 2016-02-01 21:06:44 +08:00
Chao Xu
c72d234bbf replacing handwritten client in several controllers 2016-01-31 15:42:02 -08:00
Janet Kuo
3396db9510 Add rollback subresource; add rollback logic to deployment controller 2016-01-30 16:00:34 -08:00
Janet Kuo
42f712467e Use ListOptions when listing RCs in deployment 2016-01-30 12:04:35 -08:00
Janet Kuo
c84a0371a2 Deployment adds version info to its new rc 2016-01-30 12:04:35 -08:00
k8s-merge-robot
deef16d2b3 Merge pull request #19354 from jimmidyson/system-container-fix
Auto commit by PR queue bot
2016-01-29 19:13:43 -08:00
Fabio Yeon
eb2c2d1af4 Merge pull request #20111 from fabioy/fix-tmp-tests
Add temp directory creation method for tests.
2016-01-29 09:51:12 -08:00
Jimmi Dyson
1c289943f5 Ensure kubelet pid is not moved to system container 2016-01-29 09:30:20 +00:00
Mike Danese
309eac5f7f update proxy server 2016-01-28 15:46:40 -08:00
Fabio Yeon
4c57ad8379 Merge pull request #19978 from markturansky/typos
Fixed spelling typo
2016-01-28 14:01:03 -08:00
Fabio Yeon
7205a160ac Remove all instances of "/tmp" from unit tests and replace with a common
tmp directory creator. Exception is documented.
2016-01-27 16:11:22 -08:00
Filip Grzadkowski
a5a23940bb Speed up UUID generation.
Fixes #19036
Fixes #18608
2016-01-27 15:39:23 +01:00
k8s-merge-robot
d3b869ae14 Merge pull request #17922 from smarterclayton/split_codec
Auto commit by PR queue bot
2016-01-25 06:30:39 -08:00
Nagarjun
39b1874041 Add GetEnvOr() feature to utils Package 2016-01-25 16:08:35 +05:30
Zach Loafman
b25d596a2b Merge pull request #19630 from mikedanese/fix-test
test: make ValidateCount throw an error instead of a log
2016-01-22 11:08:27 -08:00
Clayton Coleman
4a6935b31f Remaining codec change refactors 2016-01-22 13:27:27 -05:00
Clayton Coleman
33085c0cf2 Update tests to handle codec changes 2016-01-22 13:27:26 -05:00
Zach Loafman
f3a638de31 Merge pull request #16067 from smarterclayton/backoff_conflict
Provide a RetryOnConflict helper for client libraries
2016-01-22 10:23:19 -08:00
markturansky
3f292d87ed fixed spelling typo 2016-01-22 00:15:07 -05:00
Clayton Coleman
6b2f70d553 Provide a JSON and YAML serializer, and a versioning wrapper
Add a recognizer that is capable of sniffing content type from data by
asking each serializer to try to decode - this is for a "universal
decoder/deserializer" which can be used by client logic.

Add codec factory, which provides the core primitives for content type
negotiation. Codec factories depend only on schemes, serializers, and
groupversion pairs.
2016-01-22 00:12:49 -05:00
Clayton Coleman
9d5df20efe jsonpath: Handle interface{}(nil) as empty array 2016-01-21 23:18:31 -05:00
nikhiljindal
2ad642d370 Merge registered and latest and move to apimachinery 2016-01-21 14:42:21 -08:00
Alex Mohr
d2d349bc84 Merge pull request #19334 from resouer/network
Networking should be used to hold network related pkgs
2016-01-21 10:26:13 -08:00
Clayton Coleman
4342fccc0d Provide a RetryOnConflict helper for client libraries
Used like:

    var pod *api.Pod
    err := client.RetryOnConflict(client.DefaultBackoff, func() (err error) {
      pod, err = c.Pods("mynamespace").UpdateStatus(update)
      return
    })
    // err may be conflict
2016-01-20 22:58:16 -05:00
Mike Danese
39c7ea57b0 test: make ValidateCount throw an error instead of a log
We can either fix it here or at every callsite. Every callsite is
currently using this method incorrectly.

Signed-off-by: Mike Danese <mikedanese@google.com>
2016-01-19 15:59:32 -08:00
k8s-merge-robot
ad827c6b62 Merge pull request #19573 from madhusudancs/daemonset-update-move-utils
Auto commit by PR queue bot
2016-01-17 08:16:11 -08:00
k8s-merge-robot
3816c1798f Merge pull request #19411 from eparis/boolflag-def-val
Auto commit by PR queue bot
2016-01-16 06:23:48 -08:00
harry
98222b4d8b Replace to tag
Use a testing pkg to replace testing util codes
2016-01-15 15:07:21 +08:00
Harry Zhang
936a11e775 Use networking to hold network related pkgs
Change names of unclear methods

Use net as pkg name for short
2016-01-15 13:46:16 +08:00
Mike Danese
33c72db59c Merge pull request #19528 from resouer/strings-util
Create strings pkg to fix util issue
2016-01-14 21:19:17 -08:00
harry
7405c7899b Add strings pkg to hold strings utils
Replace funtions with strings pkg

Fix all references and rename the pkg
2016-01-15 12:37:50 +08:00
Mike Danese
82509a46a7 Merge pull request #19585 from smarterclayton/skip_mount
Skip format and mount test on windows or mac
2016-01-14 17:03:44 -08:00
Eric Paris
aad4b4477d Make "BoolFlag" booleans not require =true 2016-01-14 09:07:00 -05:00
k8s-merge-robot
9e97cfc2e8 Merge pull request #14200 from swagiaal/run-fsck-before-format
Auto commit by PR queue bot
2016-01-13 22:11:45 -08:00
Clayton Coleman
389d5e48cb Skip format and mount test on windows or mac 2016-01-12 21:43:50 -05:00
Madhusudan.C.S
4caa8a2c1d Move pod template hash and label adding util functions to their packages.
These utilities are useful outside Deployments as well, for example
in DaemonSets for DaemonSet updates. So move them to their own util
packages.
2016-01-12 16:11:00 -08:00
k8s-merge-robot
0df7e695d4 Merge pull request #19458 from davidopp/notsclose
Auto commit by PR queue bot
2016-01-12 13:53:13 -08:00
k8s-merge-robot
9b106c6e6d Merge pull request #18058 from mqliang/httpProbe
Auto commit by PR queue bot
2016-01-11 23:21:01 -08:00
David Oppenheimer
8ac484793d Comment out calls to httptest.Server.Close() to work around
https://github.com/golang/go/issues/12262 . See #19254 for
more details. This change should be reverted when we upgrade
to Go 1.6.
2016-01-11 23:02:11 -08:00
k8s-merge-robot
170c03a85f Merge pull request #16354 from mdshuai/valid-supplemental-groups
Auto commit by PR queue bot
2016-01-11 00:48:34 -08:00
mdshuai
27934da9cc Validate uids and gids for securitycontext 2016-01-11 15:17:25 +08:00
k8s-merge-robot
609cdfd267 Merge pull request #19331 from resouer/hash-util
Auto commit by PR queue bot
2016-01-09 13:08:01 -08:00
k8s-merge-robot
33085cc2ae Merge pull request #19238 from therc/master
Auto commit by PR queue bot
2016-01-08 04:10:53 -08:00
Isaac Hollander McCreery
791cae90f0 Merge pull request #19350 from brendandburns/oncall
Improve error reporting a little in ingress e2e.
2016-01-07 15:51:31 -08:00
Brendan Burns
07b3ab720d Improve error reporting a little in ingress e2e.
Also add Output() to the util/exec Cmd interface.
2016-01-06 15:25:04 -08:00
harry
2a52976983 Use hashutil to hold hash tools 2016-01-06 22:28:58 +08:00
gmarek
93b180e81f Small cleanup to wait_test.go 2016-01-04 17:11:43 +01:00
Rudi Chiarito
ea56e508f0 Fix: deal properly with tc qdisc show returning "noqueue" 2016-01-03 23:44:18 -05:00
Wojciech Tyczynski
1ad524ac24 Fix wait_test flakes 2016-01-03 09:56:57 +01:00
Wojciech Tyczynski
84e2d6c3d3 Fix TestPoll test 2016-01-02 14:48:30 +01:00
Wojciech Tyczynski
5abdc2e944 Updage auto-generated files 2016-01-01 11:47:29 +01:00
Wojciech Tyczynski
6d33d28de8 Fix wait_test flakes 2015-12-30 14:05:46 +01:00
Chakravarthy Nelluri
fa76de79e5 Add support for flex volume. Flex volume adds support for thirdparty(vendor)
volumes and custom mounts.
2015-12-23 14:11:38 -08:00
Brendan Burns
ac5c0aaba7 Merge pull request #17883 from jimmidyson/cadvisor-bump-0.19.4
Bump cadvisor to fix interface stats bugs & improve performance
2015-12-22 10:34:46 -08:00
Brendan Burns
b6ca92127d Merge pull request #16980 from jackgr/force_apply
Implement conflict detection in strategic merge patch
2015-12-22 10:33:35 -08:00
Mathias Lafeldt
1701cd4a3a Fix closing bracket in Godoc 2015-12-21 21:36:11 +01:00
Jimmi Dyson
041ab17a67 Bump cadvisor to fix interface stats bugs & improve performance
Includes necessary godep upgrades for docker & systemd packages as well as
migrating from docker/libcontainer to opencontainers/runc/libcontainer.
2015-12-21 17:07:21 +00:00
k8s-merge-robot
3c3a24e1d4 Merge pull request #18694 from thockin/airplane_validation_pt7
Auto commit by PR queue bot
2015-12-19 03:57:53 -08:00
k8s-merge-robot
9e8233fc3c Merge pull request #17398 from janetkuo/deployment-controller-informer
Auto commit by PR queue bot
2015-12-18 19:13:32 -08:00
Tim Hockin
0fecf965b4 Change how one-of blocks are validated
I took a hard look at error output and played until I was happier.  This now
prints JSON for structs in the error, rather than go's format.

Also made the error message easier to read.

Fixed tests.
2015-12-18 09:42:14 -08:00
Tim Hockin
43ed74748e Clean up and document validation strings
Also add a detail string for Required and Forbidden.  Fix tests.
2015-12-18 09:40:50 -08:00
Janet Kuo
1a8f96231a Add expectation model for pod deletion 2015-12-17 19:29:54 -08:00
Janet Kuo
32d153093e Fix deployment tests failures; change ResyncPeriod 2015-12-17 19:29:54 -08:00
Janet Kuo
07cecb4148 Add unit test for get old rcs 2015-12-16 23:10:22 -08:00
Janet Kuo
7d4c83d655 Add unit test for get new rc 2015-12-16 23:06:48 -08:00
k8s-merge-robot
3680268c52 Merge pull request #18353 from deads2k/gv-use-constants
Auto commit by PR queue bot
2015-12-15 03:25:09 -08:00
k8s-merge-robot
1f0e46abb8 Merge pull request #16237 from ZJU-SEL/fix-util
Auto commit by PR queue bot
2015-12-14 18:41:14 -08:00
deads2k
d0aaf13920 use constants for group names 2015-12-14 10:04:10 -05:00
Wojciech Tyczynski
960808bf08 Switch to versioned ListOptions in client. 2015-12-14 14:26:09 +01:00
Harry Zhang
8fe92c69d2 Update highwatermark 2015-12-14 16:47:47 +08:00
harry zhang
5405a5d98d Move atomic_value into folder
Change pkg to atomic
2015-12-14 05:50:29 +00:00
Jeff Lowdermilk
9c49cdaa6e Merge pull request #18276 from thockin/airplane_validation_pt6
Validation cleanup parts 5 & 6 together
2015-12-11 13:34:37 -08:00
Nikhil Jindal
aaa1fe67f6 Merge pull request #18321 from janetkuo/fix-deployment-getoldrcs
Fix bug when getting old RCs of a deployment
2015-12-10 14:22:56 -08:00
Tim Hockin
7fb8f60735 Shorten names for better reading 2015-12-10 11:48:19 -08:00
Tim Hockin
87a35047dd Move FieldPath and errors to a sub-package
This makes the naming and reading a lot simpler.
2015-12-10 11:48:16 -08:00
Sami Wagiaalla
c18f342ac6 Use constants for fsck return values 2015-12-08 10:51:12 -05:00
Sami Wagiaalla
10688f1a11 Run fsck before formatting disk
Signed-off-by: Sami Wagiaalla <swagiaal@redhat.com>
2015-12-08 10:50:30 -05:00
Janet Kuo
72bd4e8caf Fix bug when getting new RC of a deployment 2015-12-07 23:57:30 -08:00
Janet Kuo
524ec8b48b Fix bug when getting old RCs of a deployment 2015-12-07 18:09:51 -08:00
jackgr
b11dec7aec Implement conflict detection in strategic merge patch. 2015-12-06 17:54:32 -08:00
k8s-merge-robot
810181fb7b Merge pull request #17278 from ZJU-SEL/fix-nil-tag
Auto commit by PR queue bot
2015-12-06 12:52:39 -08:00
Clayton Coleman
9fea762917 Add protobuf preparation objects, guarded by proto tag 2015-12-05 18:15:48 -05:00
k8s-merge-robot
3180b00f6c Merge pull request #17673 from hongchaodeng/metrics
Auto commit by PR queue bot
2015-12-05 05:30:08 -08:00
Janet Kuo
8fb0caa15b Implement MinReadySeconds for Deployment 2015-12-04 12:58:34 -08:00
k8s-merge-robot
9e896e3416 Merge pull request #16948 from swagiaal/move-formatAndMount
Auto commit by PR queue bot
2015-12-04 10:37:33 -08:00
k8s-merge-robot
a5100ef057 Merge pull request #17248 from thockin/airplane_validation_pt4
Auto commit by PR queue bot
2015-12-03 16:59:23 -08:00
k8s-merge-robot
13b0fd3cda Merge pull request #16942 from swagiaal/distinguish-format-and-mount
Auto commit by PR queue bot
2015-12-03 10:51:26 -08:00
Hongchao Deng
ba80892cec Rate limiter: Add Saturation() method 2015-12-03 08:39:35 -08:00
Hongchao Deng
9781a838da change tickRateLimiter to tokenBucketRateLimiter 2015-12-03 08:39:35 -08:00
Tim Hockin
0fe29232eb Remove obsolete ErrorList Prefix logic 2015-12-03 08:19:52 -08:00
Tim Hockin
e6df0b1a24 Convert validation to use FieldPath
Before this change we have a mish-mash of ways to pass field names around for
error generation.  Sometimes string fieldnames, sometimes .Prefix(), sometimes
neither, often wrong names or not indexed when it should be.

Instead of that mess, this is part one of a couple of commits that will make it
more strongly typed and hopefully encourage correct behavior.  At least you
will have to think about field names, which is better than nothing.

It turned out to be really hard to do this incrementally.
2015-12-03 08:19:44 -08:00
Tim Hockin
102eced0b1 Introduce a FieldPath type for validation 2015-12-03 08:17:02 -08:00
k8s-merge-robot
3cbfcdcdba Merge pull request #16810 from lavalamp/go2idl.2
Auto commit by PR queue bot
2015-12-03 04:25:08 -08:00
Wojciech Tyczynski
6dcb689d4e Simplify List() signature in clients. 2015-12-03 09:54:07 +01:00
Daniel Smith
56cae7c719 re-run set-gen 2015-12-02 14:14:50 -08:00
Daniel Smith
ad925dd2e8 Add verification to code gen 2015-12-02 14:14:49 -08:00
Sami Wagiaalla
66c905d63e Distinguish normal mount from format and mount in SafeFormatAndMount 2015-12-02 11:16:00 -05:00
jhadvig
f7785bcdb4 Typo fix 2015-12-02 13:59:58 +01:00
mqliang
149af2f7a7 remove todo 2015-12-02 13:04:59 +08:00
Wojciech Tyczynski
8343c8ce6c Pass ListOptions to List() methods. 2015-12-01 15:00:36 +01:00
k8s-merge-robot
8752165fb6 Merge pull request #16853 from jayunit100/backoffresets
Auto commit by PR queue bot
2015-11-30 11:39:10 -08:00
harry
477da92002 Move hostIP detection from master to server
Add PublicAddress in test files

Move valid public addr into util
2015-11-30 16:17:37 +08:00
harry zhang
121c7046aa Move parsers into util 2015-11-29 22:15:11 -08:00
k8s-merge-robot
4eb010b1f7 Merge pull request #17694 from hongchaodeng/ratelimit
Auto commit by PR queue bot
2015-11-26 13:12:26 -08:00
Clayton Coleman
e9e02bdd50 Review comments 2015-11-26 11:53:38 -05:00
Clayton Coleman
1d592e4c28 Unversioned types should not use ambiguous go-int
All external types that are not int64 are now marked as int32,
including
IntOrString. Prober is now int32 (43 years should be enough of an initial
probe time for anyone).

Did not change the metadata fields for now.
2015-11-26 11:45:25 -05:00
jay vyas
7ffaef63d1 Backoff and Randomness additions for use in client utilities
Updated String to use int, and int not to panic, and panic to test panic
Format fixes.
2015-11-25 00:01:06 -05:00
k8s-merge-robot
431c67710b Merge pull request #17247 from thockin/airplane_validation_pt3
Auto commit by PR queue bot
2015-11-24 18:37:09 -08:00
k8s-merge-robot
5502aefa01 Merge pull request #17152 from daizuozhuo/jsonpath
Auto commit by PR queue bot
2015-11-24 04:45:38 -08:00
Hongchao Deng
13d152a873 RateLimiter: change CanAccept() to TryAccept() 2015-11-23 16:42:53 -08:00
Tim Hockin
ceee678b29 Rename validation 'New' funcs 2015-11-23 10:01:43 -08:00
Tim Hockin
682f2a5a79 Stronger typing for validation ErrorList 2015-11-23 10:01:43 -08:00
Tim Hockin
f8ad75df44 Clarify invalid vs not-supported 2015-11-23 08:07:17 -08:00
Tim Hockin
2c60a97e72 Clean up comments, reorder types 2015-11-23 08:07:17 -08:00
k8s-merge-robot
fb09627514 Merge pull request #17262 from brendandburns/hyperkube
Auto commit by PR queue bot
2015-11-23 07:49:34 -08:00
Tim Hockin
bca3780b7f Remove unused matcher 2015-11-22 20:13:24 -08:00
Tim Hockin
48b49a5cae s/ValidationErrorList/ErrorList/ 2015-11-22 20:13:20 -08:00
Tim Hockin
d64d1fbb3d s/ValidationError/Error/ 2015-11-22 20:12:46 -08:00
Tim Hockin
2a127d089a s/ValidationErrorType/ErrorType/ 2015-11-22 20:12:39 -08:00
Tim Hockin
0ff66da346 Move fielderrors into validation 2015-11-22 20:12:20 -08:00
k8s-merge-robot
48cc84fb09 Merge pull request #16954 from brendandburns/watchdog
Auto commit by PR queue bot
2015-11-21 08:06:27 -08:00
Brendan Burns
ce90b83689 Update some flags 2015-11-20 11:47:31 -08:00
Brendan Burns
1dcd250274 Refactor the deadlock detector for testing. Add a test. 2015-11-20 09:35:40 -08:00
mqliang
5bc2560b1f refactor:move GetNewRCTemplate() out of for loop 2015-11-19 13:34:18 +08:00
Dai Zuozhuo
ad5cc8b599 quote interpreted string 2015-11-19 11:15:10 +08:00
Prashanth B
e82277b86a Merge pull request #17302 from bprashanth/wait_leak
Fix timer leak in wait.Poll
2015-11-17 18:35:49 -08:00
k8s-merge-robot
1334401888 Merge pull request #17202 from brendandburns/fix2
Auto commit by PR queue bot
2015-11-17 00:49:13 -08:00
k8s-merge-robot
ac0d009522 Merge pull request #16950 from swagiaal/handle-exec-not-found
Auto commit by PR queue bot
2015-11-16 23:46:38 -08:00
Tim Hockin
ba383bcfeb Refactor IntOrString into a new pkg
pkg/util/intstr is a cleaner encapsulation for this type and supporting
functions.  No behavioral change.
2015-11-16 10:57:52 -08:00
Prashanth Balasubramanian
eab22ff95a Fix timer leak in wait.Poll 2015-11-15 16:39:25 -08:00
Tim Hockin
970c045848 Enable iptables kube-proxy by default in master 2015-11-13 18:38:01 -08:00
Brendan Burns
fb576f30c8 Refactor an interface for style 2015-11-13 15:56:27 -08:00
k8s-merge-robot
3d123ba390 Merge pull request #16953 from swagiaal/print-cmd-in-fake-exec
Auto commit by PR queue bot
2015-11-13 05:21:20 -08:00
k8s-merge-robot
0dac3e12c5 Merge pull request #16969 from smarterclayton/fix_secret_in_container
Auto commit by PR queue bot
2015-11-12 21:26:20 -08:00
Sami Wagiaalla
4d373b133a Handle executable not found in exec 2015-11-12 13:16:22 -05:00
k8s-merge-robot
706d3a77a9 Merge pull request #16798 from derekwaynecarr/key_compaction
Auto commit by PR queue bot
2015-11-12 02:45:15 -08:00
Sami Wagiaalla
d10d81d811 Print unhandeled command in FakeExec 2015-11-11 16:54:23 -05:00
deads2k
e683842359 stop panicing on bad array length 2015-11-09 13:23:16 -05:00
Clayton Coleman
8c1d820435 Secrets in containerized Kubelet get mangled due to 'echo'
Change to stream over stdin to 'cat'
2015-11-07 10:53:31 -06:00
derekwaynecarr
6ad7f1a8cb Add event correlation to client 2015-11-06 16:59:38 -05:00
Brendan Burns
13e68d2a87 Merge pull request #16924 from brendandburns/watchdog
Add a deadlock watchdog
2015-11-06 13:14:14 -08:00
Sami Wagiaalla
1880c4eedb move formatAndMount and diskLooksUnformatted to mount_linux 2015-11-06 15:37:46 -05:00
Brendan Burns
c511db9113 Add a deadlock watchdog 2015-11-06 11:31:44 -08:00
k8s-merge-robot
32956b7dd3 Merge pull request #16829 from mikedanese/until-immediate
Auto commit by PR queue bot
2015-11-05 04:51:20 -08:00
k8s-merge-robot
9b60fb0c4f Merge pull request #16536 from rootfs/fix-mkfs
Auto commit by PR queue bot
2015-11-05 01:48:18 -08:00
Mike Danese
8b9809291b make util.Until return immediately if stop is written inside the loop 2015-11-04 16:55:15 -08:00
Daniel Smith
241551e36e set-gen example 2015-11-03 15:14:51 -08:00
k8s-merge-robot
c8fe00b94f Merge pull request #16711 from liggitt/remotecommand_error
Auto commit by PR queue bot
2015-11-03 06:43:37 -08:00
k8s-merge-robot
1b437272ba Merge pull request #16696 from janetkuo/kubectl-jsonpath
Auto commit by PR queue bot
2015-11-03 04:29:28 -08:00
k8s-merge-robot
990c0184be Merge pull request #16330 from mikedanese/deploy-ptr
Auto commit by PR queue bot
2015-11-02 20:41:34 -08:00
Jordan Liggitt
ddae749111 Read error from failed upgrade attempts 2015-11-02 22:39:58 -05:00
Janet Kuo
4d92268212 Better error handling for output format when "kubectl config view" 2015-11-02 16:25:52 -08:00
Huamin Chen
a31d23ea0e don't use ext4 mkfs options for other fs
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-10-30 11:53:10 -04:00
Sami Wagiaalla
1d352a16b8 Support volume relabling for pods which specify an SELinux label 2015-10-28 09:26:58 -04:00
Mike Danese
b0a41108af move deployment PodTemplate to be not a pointer 2015-10-28 00:13:40 -07:00
k8s-merge-robot
ec9b493647 Merge pull request #14639 from gmarek/hollow-proxy
Auto commit by PR queue bot
2015-10-27 18:22:38 -07:00
Daniel Smith
6219b50280 Merge pull request #16160 from kargakis/windows-fixes-for-edit
edit: Windows fixes
2015-10-27 15:44:26 -07:00
gmarek
5a4e4d4d57 Add a HollowProxy to the HollowNode. 2015-10-27 18:23:29 +01:00
Daniel Smith
fcd99461ff Merge pull request #16286 from liggitt/wsstream_cpu
Avoid CPU hotloop on client-closed websocket
2015-10-26 17:19:20 -07:00
Daniel Smith
b07dd73f26 Merge pull request #16053 from saad-ali/attachDetachMutextFix
Fix GCE Cloud/Attach/Detach stability issues
2015-10-26 13:05:27 -07:00
Jordan Liggitt
85379b12ca Avoid CPU hotloop on client-closed websocket 2015-10-26 14:04:16 -04:00
k8s-merge-robot
275e978b90 Merge pull request #16241 from smarterclayton/fix_flake_stream
Auto commit by PR queue bot
2015-10-26 02:54:47 -07:00
k8s-merge-robot
4f17b4b39c Merge pull request #15961 from ncdc/stream-protocol-negotiation
Auto commit by PR queue bot
2015-10-25 07:26:41 -07:00
Clayton Coleman
f79c74e311 Make util/wsstream/stream_test.go not flaky
It's hard to manage connection buffers in a deterministic test, ensure
that the error is always consistent and the output is always a subset
of the input
2015-10-24 15:47:57 -04:00
kargakis
73713ce268 edit: Windows fixes
Contains the following fixes for Windows users of kubectl edit:
* Defaults to notepad as the default Windows editor
* Uses CRLF line endings
* Ensures a file lock is freed
2015-10-24 17:06:49 +02:00
saadali
19115b2a22 Fix GCE Cloudprovider waitForOp bug and make GCE attach/detach atomic operations. 2015-10-23 11:58:56 -07:00
Andy Goldstein
6fddb0e83a Add httpstream.Handshake unit test 2015-10-23 14:09:41 -04:00
Paul Morie
3cd12f5e05 FSGroup implementation 2015-10-22 16:40:59 -04:00
Andy Goldstein
ff9883d9ec Address code review comments 2015-10-21 21:53:51 -04:00
Andy Goldstein
3d1cafc2c3 Add streaming subprotocol negotiation
Add streaming subprotocol negotiation for exec, attach, and port
forwarding. Restore previous (buggy) exec functionality as an
unspecified/unversioned subprotocol so newer kubectl clients can work
against 1.0.x kubelets.
2015-10-21 21:53:51 -04:00
Huamin Chen
3b14135cad mount returns more verbose message upon error
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-10-21 11:52:02 -04:00
eulerzgy
f8f9afb874 alias local packagename for pkg/util/errors 2015-10-18 09:37:46 +08:00
Cesar Wong
b56d474110 Proxy: do not send X-Forwarded-Host or X-Forwarded-Proto with an empty value 2015-10-16 13:09:51 -04:00
k8s-merge-robot
a3f2ba2e34 Merge pull request #11694 from ncdc/add-spdy-proxy-support
Auto commit by PR queue bot
2015-10-15 06:56:15 -07:00
k8s-merge-robot
130e6a7a4d Merge pull request #15468 from feiskyer/volume-typo-error
Auto commit by PR queue bot
2015-10-15 05:08:33 -07:00
Wojciech Tyczynski
647aa1bc8c Unify per-resource List for unversioned client 2015-10-14 08:37:57 +02:00
Dawn Chen
535246f364 Merge pull request #15396 from derekwaynecarr/kernel_flags
Ensure panic_on_oom disabled
2015-10-13 10:24:50 -07:00
derekwaynecarr
0ec36ae210 Ensure panic_on_oom disabled 2015-10-13 11:24:32 -04:00
Dawn Chen
00eb2e7bfc Merge pull request #15267 from nikhiljindal/deploymentRCSelector
Deployment: Fixing the selector for new RC created by deployment
2015-10-12 14:40:30 -07:00
Dawn Chen
782102d437 Merge pull request #15224 from liggitt/proxy_https
Allow specifying scheme when proxying
2015-10-12 14:39:21 -07:00
Dawn Chen
149ca1ec49 Merge pull request #14618 from smarterclayton/refactor_exec
Refactor exec to make attach useful without a client.Config
2015-10-12 11:44:34 -07:00
nikhiljindal
6f61326cdb Fixing the selector for new RC created by deployment 2015-10-12 11:00:29 -07:00
Jordan Liggitt
1043126135 Refactor SSH tunneling, fix proxy transport TLS/Dial extraction 2015-10-12 11:17:01 -04:00
Jordan Liggitt
826459e51e Allow specifying scheme when proxying 2015-10-12 11:16:53 -04:00
feisky
8ad6b8f035 Fix typo error 2015-10-12 18:57:56 +08:00
k8s-merge-robot
02ec1fb33c Merge pull request #13885 from smarterclayton/websocket_exec
Auto commit by PR queue bot
2015-10-10 09:52:01 -07:00
Chao Xu
7c9f4cc42f experimental. -> extensions. 2015-10-09 15:49:10 -07:00
Chao Xu
67f316dd19 apis/experimental->apis/extensions 2015-10-09 15:04:41 -07:00
Clayton Coleman
3f1b18fbba Refactor exec to make attach useful without a client.Config
The current executor structure is too dependent on client.Request
and client.Config. In order to do an attach from the server, it needs
to be possible to create an Executor from crypto/tls#TLSConfig and to
bypassing having a client.Request.

Changes:

* remotecommand.spdyExecutor - handles upgrading a request to SPDY and getting a connection
* remotecommand.NewAttach / New - moved to exec / portforward / attach since they handle requests
* Remove request.Upgrade() - it's too coupled to SPDY, and can live with the spdyExecutor
* Add request.VersionedParams(runtime.Object, runtime.ObjectConvertor) to handle object -> query transform
2015-10-09 14:36:46 -04:00
Clayton Coleman
363b616908 Expose exec and logs via WebSockets
Not all clients and systems can support SPDY protocols. This commit adds
support for two new websocket protocols, one to handle streaming of pod
logs from a pod, and the other to allow exec to be tunneled over
websocket.

Browser support for chunked encoding is still poor, and web consoles
that wish to show pod logs may need to make compromises to display the
output. The /pods/<name>/log endpoint now supports websocket upgrade to
the 'binary.k8s.io' subprotocol, which sends chunks of logs as binary to
the client. Messages are written as logs are streamed from the container
daemon, so flushing should be unaffected.

Browser support for raw communication over SDPY is not possible, and
some languages lack libraries for it and HTTP/2. The Kubelet supports
upgrade to WebSocket instead of SPDY, and will multiplex STDOUT/IN/ERR
over websockets by prepending each binary message with a single byte
representing the channel (0 for IN, 1 for OUT, and 2 for ERR). Because
framing on WebSockets suffers from head-of-line blocking, clients and
other server code should ensure that no particular stream blocks. An
alternative subprotocol 'base64.channel.k8s.io' base64 encodes the body
and uses '0'-'9' to represent the channel for ease of use in browsers.
2015-10-09 14:33:40 -04:00
k8s-merge-robot
388159590d Merge pull request #15014 from ncdc/gh14995-fix-wait-goroutine-leaks
Auto commit by PR queue bot
2015-10-09 00:51:46 -07:00
Robert Bailey
f9364da306 Merge pull request #13820 from jackgr/apply_patch
Add method to apply strategic merge patch
2015-10-08 12:44:13 -07:00
Piotr Szczesniak
95b293c615 Merge pull request #13516 from samsabed/backoff-image-reason
backoff image pulling on failure
2015-10-08 13:05:32 +02:00
jackgr
ddda379b1b Add method to apply strategic merge patch. 2015-10-07 17:14:11 -07:00
Sam Abed
fdf712cd84 back-off image pull on failure
Signed-off-by: Sam Abed <samabed@gmail.com>
2015-10-07 21:12:42 +11:00
Andy Goldstein
7999e72659 Fix potential goroutine leaks in pollers 2015-10-06 14:58:21 -04:00
derekwaynecarr
970c369f31 Kubelet sets kernel overcommit_memory flag 2015-10-06 14:28:46 -04:00
Jordan Liggitt
b9ba3bd7c2 Allow specifying scheme when proxying 2015-10-05 22:12:10 -04:00
Alex Robinson
d481ba7547 Merge pull request #14964 from a-robinson/lbdelete
Unrevert #14608 and decrease the latency of GCE load balancer deletions
2015-10-05 16:26:07 -07:00
Alex Robinson
2feb54ce40 Add utility function for errors that runs multiple functions that errors
as goroutines, blocks until they're all done executing, and combines the
results into an Aggregate error.
2015-10-05 22:43:19 +00:00
Alex Robinson
52b8c40bfa Merge pull request #14758 from deads2k/fix-patch
make patch handle conflicts gracefully
2015-10-05 14:41:51 -07:00
Steve Milner
6439486512 url.URL.Host now canonical before use in spdy roundtripper. 2015-10-05 16:05:36 -04:00
Alex Robinson
b1461be2e4 Merge pull request #14982 from Huawei-PaaS/fixed_typos_for_proxy
Fixed some typos for pkg/proxy
2015-10-05 11:40:03 -07:00
deads2k
05e84fafbe move HasConflicts to shareable location 2015-10-05 14:37:57 -04:00
Alex Robinson
8f9feb40b9 Merge pull request #14867 from tummychow/no-fielderror-glog
Remove glog dependency from fielderrors
2015-10-05 11:32:50 -07:00
Alex Robinson
66cbacc9c1 Merge pull request #14967 from liggitt/set_transport_defaults
Add util to set transport defaults
2015-10-05 10:29:32 -07:00
CJ Cullen
1b841d26e7 Merge pull request #14996 from thockin/wait-poll
add wait.PollImmediate() and retool wait tests
2015-10-02 16:39:42 -07:00
k8s-merge-robot
1b653ce1b8 Merge pull request #14889 from liggitt/honor-skip-validate
Auto commit by PR queue bot
2015-10-02 14:29:55 -07:00
k8s-merge-robot
7007481f00 Merge pull request #14917 from nikhiljindal/deploymentController
Auto commit by PR queue bot
2015-10-02 13:18:49 -07:00
Tim Hockin
1973d233e8 add wait.PollImmediate() and retool wait tests 2015-10-02 11:44:26 -07:00
qiaolei
718d7df276 Fixed some typos 2015-10-03 00:33:35 +08:00
k8s-merge-robot
6ca515c312 Merge pull request #14820 from gmarek/playground
Auto commit by PR queue bot
2015-10-02 07:37:45 -07:00
k8s-merge-robot
1bcdd56cf3 Merge pull request #12283 from ncdc/gh8766-port-forward-not-closing-correctly
Auto commit by PR queue bot
2015-10-02 04:48:12 -07:00
Jordan Liggitt
2a1286c8f2 Add util to set transport defaults 2015-10-02 02:29:46 -04:00
Jordan Liggitt
36a721e8b7 Honor InsecureSkipVerify flag 2015-10-02 02:26:04 -04:00
nikhiljindal
c6deb442f9 Adding events to deployment 2015-10-01 16:38:08 -07:00
David Oppenheimer
a448b5e154 Merge pull request #14697 from vishh/api-proxy
Avoid rewriting URLs in the proxy, if the application is proxy-aware.
2015-10-01 11:54:31 -07:00
tummychow
447c3371a1 Remove glog dependency from fielderrors 2015-10-01 11:02:51 -07:00
gmarek
fc79ce347e Allow usining FakeOOMAdjuster in Kubelet 2015-10-01 10:55:08 +02:00
Nikhil Jindal
7adb463dd0 Merge pull request #14199 from nikhiljindal/deploymentDescribe
Adding a DeploymentDescriber to kubectl
2015-09-30 21:34:24 -07:00
Andy Goldstein
ed021fed4c Port forwarding fixes
Correct port-forward data copying logic so that the server closes its
half of the data stream when socat exits, and the client closes its half
of the data stream when it finishes writing.

Modify the client to wait for both copies (client->server,
server->client) to finish before it unblocks.

Fix race condition in the Kubelet's handling of incoming port forward
streams. Have the client generate a connectionID header to be used to
associate the error and data streams for a single connection, instead of
assuming that streams n and n+1 go together. Attempt to generate a
pseudo connectionID in the server in the event the connectionID header
isn't present (older clients); this is a best-effort approach that only
really works with 1 connection at a time, whereas multiple concurrent
connections will only work reliably with a newer client that is
generating connectionID.
2015-09-30 20:03:49 -04:00
Brendan Burns
665a2807ee Merge pull request #14615 from smarterclayton/bandwidth_fails_on_mac
Linux bandwidth test doesn't work on Mac
2015-09-29 19:28:54 -07:00
Andy Goldstein
e73652411e Add http proxy support for exec/port-forward
Add http proxy support for exec/port-forward in SpdyRoundTripper
2015-09-29 15:29:19 -04:00
Vishnu kannan
2788b47059 Avoid rewriting URLs in the proxy, if the application is proxy-aware. 2015-09-28 17:20:03 -07:00
nikhiljindal
153c57ffc8 Adding a DeploymentDescriber to kubectl 2015-09-28 14:21:24 -07:00
liguangbo
12299087da Change Oom to OOM 2015-09-28 18:18:04 +08:00
Clayton Coleman
4506f9f455 Linux bandwidth test doesn't work on Mac 2015-09-26 11:41:27 -04:00
Brian Grant
2a105f3692 Merge pull request #14187 from markturansky/unsupported_bandwidth
Added unsupported for non-linux platforms
2015-09-24 16:48:39 -07:00
Eric Tune
f264ae67c7 Merge pull request #14201 from swagiaal/fix-format-and-mount-comment
Correct comments in mount.go
2015-09-23 16:45:36 -07:00
Eric Tune
f3018162d1 Revert "Check the condition immediately in util.Wait funcs" 2015-09-23 16:32:05 -07:00
Eric Tune
a4d85703d5 Merge pull request #14365 from ncdc/poll-immediately
Check the condition immediately in util.Wait funcs
2015-09-23 16:31:53 -07:00
Eric Tune
d3beca6f06 Merge pull request #14381 from dchen1107/fix
Flag controlled RLIMIT_NOFILE for kubelet.
2015-09-23 16:30:11 -07:00
Brendan Burns
77fd388485 Increase a bunch of timeouts to reduce flakes 2015-09-23 11:09:03 -07:00
Sami Wagiaalla
3e9587997f Correct comments in mount.go
Signed-off-by: Sami Wagiaalla <swagiaal@redhat.com>
2015-09-23 11:40:17 -04:00
Dawn Chen
38583307ca flag controlled RLIMIT_NOFILE for kubelet. 2015-09-22 15:18:34 -07:00
Andy Goldstein
95041ab0ae Check the condition immediately in util.Wait funcs
Have poller() send to the channel once, immediately, before the ticker
starts. This way, Poll, PollInfinite, and WaitFor will check the
condition immediately, instead of waiting for the poller's interval to
elapse once before doing the initial condition check.
2015-09-22 14:06:52 -04:00
k8s-merge-robot
a7c20b1201 Merge pull request #14311 from danwinship/printf-fix
Auto commit by PR queue bot
2015-09-21 21:09:29 -07:00
Dan Winship
6ec4d229de glog.Info() -> glog.Infof() 2015-09-21 17:47:29 -04:00
Clayton Coleman
c2e90cd154 Support extended pod logging options
Increase the supported controls on pod logging. Add validaiton to pod
log options. Ensure the Kubelet is using a consistent, structured way to
process pod log arguments.

Add ?sinceSeconds=<durationInSeconds>, &sinceTime=<RFC3339>, ?timestamps=<bool>,
?tailLines=<number>, and ?limitBytes=<number>
2015-09-21 15:39:32 -04:00
k8s-merge-robot
7425cd5a22 Merge pull request #14209 from nikhiljindal/deploymentController
Auto commit by PR queue bot
2015-09-18 22:51:47 -07:00
k8s-merge-robot
5de212ed29 Merge pull request #14134 from eparis/string-set-intersection
Auto commit by PR queue bot
2015-09-18 21:24:28 -07:00
nikhiljindal
89e9691080 Adding scale up/down code to DeploymentController 2015-09-18 19:24:16 -07:00
k8s-merge-robot
8d7038eef0 Merge pull request #13825 from rootfs/path_len
Auto commit by PR queue bot
2015-09-18 14:44:33 -07:00
markturansky
fcb8f4e719 added unsupported for non-linux platforms 2015-09-18 12:50:13 -04:00
Huamin Chen
29bd6e738d review feedback
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-18 10:50:30 -04:00
k8s-merge-robot
73d71d6a67 Merge pull request #14096 from mvdan/util-duration
Auto commit by PR queue bot
2015-09-18 00:20:43 -07:00
k8s-merge-robot
755ff241e3 Merge pull request #14109 from BugRoger/replace_file_with_lsblk_command_for_volume_checks
Auto commit by PR queue bot
2015-09-17 23:39:50 -07:00
Daniel Martí
586cb9126a Move pkg/util.Time to pkg/api/unversioned.Time
Along with our time.Duration wrapper, as suggested by @lavalamp.
2015-09-17 17:51:27 -07:00
Alex Mohr
bdfd469a85 Merge pull request #14137 from caesarxuchao/13823
rebase 13823
2015-09-17 15:25:52 -07:00
k8s-merge-robot
c1eb1a1b2f Merge pull request #13791 from fgrzadkowski/fix_secrets_in_docker
Auto commit by PR queue bot
2015-09-17 15:13:29 -07:00
Kris
f4ad00d9ae Moving Status object to a common package 2015-09-17 14:09:53 -07:00
Eric Paris
fc9d3c9de2 pkg/util/sets: add Intersection function
I actually want to use this over in kubernetes/contrib
2015-09-17 16:17:11 -04:00
Filip Grzadkowski
7fe34f2050 Introduce nsenter writer for volume plugins 2015-09-17 16:40:29 +02:00
Huamin Chen
ad308cdf45 review feedback: remove RemoveAllSkipMountPoints since ReadDirNoExit already filters bad mountpoints
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-17 10:04:06 -04:00
Michael Schmidt
57f89da69a Fix to detect unformatted volumes in CoreOS
The `file` command used here to check whether a device is formatted is not
available for CoreOS. The effect is that the mounter tries to mount an
unformatted volume which fails. This makes it quite tedious to use persistent
volumes in CoreOS.

This patch replaces the `file` command with `lsblk` which is available in
CoreOS. I checked that it's also available on RHEL, Debian, Ubuntu and SLES.
2015-09-17 15:25:23 +02:00
feihujiang
51f59f3c78 Fix the wrong path of document 2015-09-17 20:38:08 +08:00
k8s-merge-robot
22f698f5b0 Merge pull request #13953 from liguangbo/change_iff_to_if_and_only_if
Auto commit by PR queue bot
2015-09-16 08:35:20 -07:00
liguangbo
4df68f03a3 change iff to if and only if to improve annotation readability 2015-09-16 08:29:36 +00:00
Jeff Lowdermilk
20e127028f Merge pull request #12396 from danwinship/iptables
Update util/iptables to deal with firewalld
2015-09-15 17:54:16 -07:00
markturansky
bd4705c414 rebased and changed io helpers to use new API groups 2015-09-15 13:26:49 -04:00
markturansky
7bc55b5aea configurable pv recyclers 2015-09-15 12:48:25 -04:00
Dan Winship
8bc9c40796 Watch for firewalld restart, to allow reloading iptables rules 2015-09-15 11:17:40 -04:00
Huamin Chen
45d4f7d6c2 Opening Pod volume dir could fail if for instance the directory has stale handle or directory is busy.
In such case, don't exit if the directory cannot be opened.

Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-14 14:43:44 -04:00
Huamin Chen
adf59896e0 when kubelet removes pod dir, it should skip those that still have unmounted volumes
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-14 13:50:08 -04:00
tummychow
a21c52a766 Move util/validation files to their own package 2015-09-13 00:46:52 -07:00
k8s-merge-robot
5ed8400642 Merge pull request #13628 from MikaelCluseau/wip-hairpin
Auto commit by PR queue bot
2015-09-11 17:45:46 -07:00
k8s-merge-robot
5bafcc2167 Merge pull request #13007 from jackgr/diff_and_patch
Auto commit by PR queue bot
2015-09-11 15:27:14 -07:00
Mike Danese
3758a01ced Merge pull request #13755 from ArtfulCoder/shufflestrings
ShuffleStrings uses a seeded rand object
2015-09-11 14:48:53 -07:00
Mikaël Cluseau
1ab520a59b pkg/util/exec: allow mocking of LookPath 2015-09-12 08:43:45 +11:00
Mike Danese
b0457bee94 Merge pull request #13058 from mvdan/go1.5
Race condition and test fixes
2015-09-10 15:10:19 -07:00
jackgr
3ecb1bac83 Add method to create strategic merge patch. 2015-09-10 14:01:07 -07:00
tummychow
78ce5da988 Move util.StringSet into its own package
A lot of packages use StringSet, but they don't use anything else from
the util package. Moving StringSet into another package will shrink
their dependency trees significantly.
2015-09-10 12:04:15 -07:00
Daniel Martí
5f3aff2c43 Fix struct input test in jsonpath 2015-09-10 11:44:13 -07:00
Abhishek Shah
da06ecfc1f ShuffleStrings uses a seeded rand object 2015-09-09 12:08:57 -07:00
Dai Zuozhuo
2e2ef3e830 change -o template to -o go-template=... 2015-09-05 22:30:47 +08:00
Dai Zuozhuo
9ccceac5e8 sort jsonpath_test results 2015-09-05 22:29:35 +08:00
Andy Goldstein
c83786979c Various exec fixes
If stdin is noninteractive, the io.Copy from stdin to remoteStdin will
unblock when it finishes reading from stdin. In this case, make sure to
close remoteStdin so the server knows the client won't be sending any
more data. This ensures that the remote process terminates. For example:

echo foo | kubectl exec -i <pod> -- cat

Without this change, the `cat` process never terminates and `kubectl
exec` hangs.

Fix interactive exec sessions hanging after you type 'exit'.

Add e2e test to cover noninteractive stdin: `echo a | kubectl exec -i <pod>
cat`

Add e2e test to cover psuedo-interactive stdin: `kubectl exec -i <pod> bash`

Prep for sending multiple data frames over multiple streams in remote command
test, which is more likely to find flakes (requires bump of spdystream
once an issue with the frame worker queues not being fully drained when
a goaway frame is received).
2015-09-04 10:40:53 -04:00
Abhi Shah
228517e634 Merge pull request #13536 from brendandburns/util
Add Forever, syntactic sugar on Until
2015-09-03 11:12:34 -07:00
Brendan Burns
5048464445 Add Forever, syntactic sugar on Until 2015-09-02 16:49:05 -07:00
Brendan Burns
31454d0f46 Merge pull request #12705 from brendandburns/kubectl
Add a printer that knows how to print user-defined columns
2015-09-02 09:47:34 -07:00
Brendan Burns
ac958e5320 Merge pull request #12513 from brendandburns/tc2
integrate bandwidth shaping and the kubelet.
2015-09-02 09:44:10 -07:00
k8s-merge-robot
345340ba49 Merge pull request #13489 from nikhiljindal/defaultDeployment
Auto commit by PR queue bot
2015-09-02 07:59:42 -07:00
k8s-merge-robot
dd5f970679 Merge pull request #13446 from fgrzadkowski/fix_docker_multinode_doc
Auto commit by PR queue bot
2015-09-02 06:48:56 -07:00
nikhiljindal
30a58321e8 Adding defaults to Deployment 2015-09-01 23:48:34 -07:00
k8s-merge-robot
3d51f524b5 Merge pull request #13386 from danwinship/iptables-w
Auto commit by PR queue bot
2015-09-01 13:07:57 -07:00
Brendan Burns
de14623775 Add a printer that knows how to print user-defined columns 2015-09-01 10:11:13 -07:00
Brendan Burns
e5140150df Merge pull request #13410 from danwinship/dbus
Add a mockable dbus interface to pkg/util
2015-09-01 10:01:17 -07:00
Filip Grzadkowski
1a9b0d6018 Fix mounting volumes in docker based kubernetes setup. 2015-09-01 16:42:23 +02:00
Dan Winship
37942f16a6 Add a mockable dbus interface to pkg/util 2015-08-31 18:00:35 -04:00
Jordan Liggitt
b5e8f7aa41 Recover panics in finishRequest, write correct API response 2015-08-31 14:55:18 -04:00
Dan Winship
1d90c6d537 Use iptables --wait flag if available
Use iptables --wait (if available) to avoid race conditions with
util.iptables failing if it tries to modify the tables at the same
time as another process.
2015-08-31 10:00:19 -04:00
Dan Winship
6bab1adfd1 Check iptables for -C flag at construct time
Also, reorganize the code a bit in preparation for checking for
another flag as well. And, if semver.NewVersion() returns an error, it
means there's a bug in the code somewhere (we should only ever be
passing it valid version strings), so just log that error rather than
returning it to the caller.
2015-08-31 09:54:57 -04:00
Dan Winship
a41e422600 Drop the "v" from GetIptablesVersionString() output
Neither of its callers wants it
2015-08-31 09:54:57 -04:00
Dan Winship
97a2cbc6ef Fix some incorrect test debug output on error 2015-08-31 09:54:57 -04:00
Brendan Burns
9f3ef68ebc integrate bandwidth shaping and the kubelet. 2015-08-30 22:24:09 -07:00
nikhiljindal
92f373a4b6 Validate deployment 2015-08-28 12:47:33 -07:00
Yu-Ju Hong
a5fe33b8a3 Merge pull request #8530 from swagiaal/add-fomat-and-mount
Support formatting and mounting GCE PD without 'safe_format_and_mount'
2015-08-26 15:12:06 -07:00
Yu-Ju Hong
d839ab2024 Merge pull request #12940 from Miciah/Warning-to-Warningf
glog.Warning -> glog.Warningf
2015-08-26 13:36:05 -07:00
Sami Wagiaalla
ab0258f259 Support formatting and mounting GCE PD without 'safe_format_and_mount'
The GCE PD plugin uses safe_format_and_mount found on standard GCE images:

https://github.com/GoogleCloudPlatform/compute-image-packages/blob/master/google-startup-scripts/usr/share/google/safe_format_and_mount

On custom images where this is not available pods fail to format and
mount GCE PDs. This patch uses linux utilities in a similar way to the
safe_format_and_mount script to format and mount the GCE PD and AWS EBC
devices. That is first attempt a mount. If mount fails try to use file to
investigate the device. If 'file' fails to get any information about
the device and simply returns "data" then assume the device is not
formatted and format it and attempt to mount it again.

Signed-off-by: Sami Wagiaalla <swagiaal@redhat.com>
2015-08-26 11:53:40 -04:00
Yu-Ju Hong
9f508e9422 Merge pull request #13076 from invenfantasy/master
Cleanup deprecated Forever function
2015-08-25 10:07:10 -07:00
Nikhil Jindal
8846c841a8 Merge pull request #12648 from samsabed/crashloop
back off restarts of crashlooping containers
2015-08-24 18:54:13 -07:00
Christian Stewart
3a23bee9ad
always select non link-local interface, fixes #11961
The API server will refuse to start if a link-local IP address is selected, however, ChooseNetworkInterface can still select link-local network routes. This causes a startup failure on platforms like DigitalOcean that use a link-local route to fetch metadata.

Signed-off-by: Christian Stewart <christian@paral.in>
2015-08-24 14:49:19 -04:00
Sam Abed
995cb15bb6 back off restarts of crashlooping containers
Signed-off-by: Sam Abed <samabed@gmail.com>
2015-08-24 21:43:17 +10:00
caogaojin
60cb4406e9 Cleanup deprecated Forever function
Since util.Forever function has been deprecated, we should cleanup these
pieces of code.
2015-08-24 10:31:59 +08:00
Jerzy Szczepkowski
9d058c9e52 Commented-out flaky case of json path test.
Commented-out flaky case of json path test. Related to #13024.
2015-08-21 13:47:04 +02:00
Eric Paris
bcf912667b Use pflag functions instead of ours. 2015-08-20 15:00:55 -07:00
Saad Ali
2f1edf7db5 Merge pull request #12839 from difro/archaic_iptables
Fix dup rule generation with older iptables
2015-08-20 14:33:19 -07:00
Saad Ali
489e75e073 Merge pull request #12202 from daizuozhuo/kubectl
add jsonpath to kubectl
2015-08-20 14:31:45 -07:00
Saad Ali
5ec3c78190 Merge pull request #8366 from justinsb/idempotent_loadbalancer
Make LoadBalancer creation more self-healing; don't delete on AWS
2015-08-20 14:30:55 -07:00
Jihoon Chung
837edf850d Fix dup rule generation with older iptables
With older iptables binary, kube-proxy generates duplicate
iptables rules in NAT table every few seconds.

This fixes the problem by properly unquoting && parsing
older iptables-save output.
2015-08-20 14:24:35 +09:00
Dai Zuozhuo
85972c44a4 jsonpath user guide docs 2015-08-20 09:11:04 +08:00
Dai Zuozhuo
b61a905b19 add jsonpath to kubectl 2015-08-20 08:57:24 +08:00
Saad Ali
8a43bd621e Merge pull request #12745 from eparis/even-less-dash-false-positive
verify-flags-underscore.py: Even fewer dash false positives
2015-08-19 17:03:29 -07:00
Miciah Masters
8aa299da90 glog.Warning -> glog.Warningf
Fix three places where glog.Warning is used with a formatted string.
2015-08-19 16:22:28 -04:00
Saad Ali
b05cab0bc5 Merge pull request #6945 from eparis/IsMountPoint
Rename IsMountPoint to IsLikelyNotMountPoint
2015-08-19 12:47:51 -07:00
Tim Hockin
3d309700d0 Make iptables use semver lib 2015-08-17 20:57:44 -07:00
Eric Paris
055d648ed7 Change log_flush_frequency to use -
Since we have the rename, we don't need our declaration to look like
glog's.
2015-08-17 11:19:31 -07:00
Justin Santa Barbara
cb38b02f2c Add unit test for StringSet Equal 2015-08-17 08:58:46 -04:00
Justin Santa Barbara
924350d5f6 AWS: Make load balancer creation idempotent on AWS
This turned out to be a little convoluted, but is needed because deleting an ELB on AWS
is a painful UX - it won't have the same endpoint when it is recreated.

Also started splitting the provider into files, but only for new functions (so far!)
2015-08-17 08:58:46 -04:00
Marek Grabowski
2816632cad Merge pull request #11996 from jayunit100/maxTimes
Fix maxTimes comment to clarify infinit waits
2015-08-17 11:57:44 +02:00
Eric Paris
f125ad88ce Rename IsMountPoint to IsLikelyNotMountPoint
IsLikelyNotMountPoint determines if a directory is not a mountpoint.
It is fast but not necessarily ALWAYS correct. If the path is in fact
a bind mount from one part of a mount to another it will not be detected.
mkdir /tmp/a /tmp/b; mount --bin /tmp/a /tmp/b; IsLikelyNotMountPoint("/tmp/b")
will return true. When in fact /tmp/b is a mount point. So this patch
renames the function and switches it from a positive to a negative (I
could think of a good positive name). This should make future users of
this function aware that it isn't quite perfect, but probably good
enough.
2015-08-14 18:45:43 -04:00
Wojciech Tyczynski
4516eeba81 Merge pull request #12594 from liggitt/status_field
Limit field errors to a single field name
2015-08-13 08:35:02 +02:00
Brendan Burns
99b8df1812 Add field based sorting to the kubectl command line. 2015-08-12 16:51:36 -07:00
Jordan Liggitt
d7a50c4778 Limit field errors to a single field name 2015-08-12 14:10:26 -04:00
BenTheElder
ae569e20b5 Partially Implement #3760 2015-08-12 02:39:15 -04:00
Kris Rousey
565189f5b8 Correcting all go vet errors 2015-08-11 13:55:37 -07:00
Alex Robinson
d6b7fcc69f Merge pull request #11988 from brendandburns/tc
Add some utilities for limiting bandwidth using 'tc'
2015-08-10 14:23:04 -07:00
Alex Robinson
11fcd3bb39 Merge pull request #12478 from eparis/use-pflag-network
Use pflags for net.IP and net.IPNet instead of custom flag types
2015-08-10 11:55:54 -07:00
Brendan Burns
dcd6b00d83 Add a package for bandwidth control 2015-08-10 11:24:02 -07:00
Eric Paris
f3282ff4d2 Use pflag IPNet instead of our own helpers
Since pflag can handle net.IPNet arguements use that code. This means
that our code no longer has casts back and forth and just natively uses
net.IPNet.
2015-08-10 10:15:08 -04:00
Eric Paris
fe6b633e2a Convert for util.IP to just use a net.IP
pflag can handle IP addresses so use the pflag code instead of doing it
ourselves. This means our code just uses net.IP and we don't have all of
the useless casting back and forth!
2015-08-10 10:15:05 -04:00
Veres Lajos
9f77e49109 typofix - https://github.com/vlajos/misspell_fixer 2015-08-08 22:31:48 +01:00
Satnam Singh
c3b72dd0e0 Merge pull request #12416 from BenTheElder/iptables_save_restore
Add Save, SaveAll, Restore, RestoreAll to pkg/util/iptables
2015-08-07 16:37:20 -07:00
BenTheElder
5867fca8bf Fix iptables Interface mocking, move Restore/RestoreAll to shared impl
also put TODO for unit tests, move defer file deletion until after file
creation error is checked.
2015-08-07 19:08:21 -04:00
BenTheElder
6b3906b07e Add Save, SaveAll, Restore, RestoreAll to pkg/util/iptables
Adds utility wrappers for `iptables-save` and `iptables-restore` to the
iptables Interface in pkg/util/iptables. Also const’s command strings.
2015-08-07 16:55:14 -04:00
Ananya Kumar
6ef3de1d5f Add QoS support on node 2015-08-07 11:18:16 -07:00
Eric Paris
7cbb52ce04 Use the pflag StringSlice instead of implementing it ourselves
Saves code and makes our code easier to read because we just use normal
[]string instead of custom type.
2015-08-06 19:16:13 -04:00
Stef Walter
cd30bd6167 util: Add util.Umask wrapper
This function compiles to a stub on Windows.
2015-08-06 11:39:29 +02:00
Mike Danese
17defc7383 run gofmt on everything we touched 2015-08-05 17:52:56 -07:00
Mike Danese
8e33cbfa28 rewrite go imports 2015-08-05 17:30:03 -07:00
Alex Mohr
159ba48932 Merge pull request #12238 from eparis/godeps
Auto commit by PR queue bot
2015-08-05 01:06:11 -07:00
Eric Paris
a29789d60e Switch from to code.google.com/p/go-uuid/uuid to github.com/pborman/uuid 2015-08-04 20:13:07 -04:00
Manan Saraf
b2ebfeef25 Fixed empty name error and also changed tests 2015-08-04 14:09:42 -07:00
Chao Xu
18d32751fd improve the error message of update pod 2015-08-02 13:41:53 -07:00
Mike Danese
12b9da8f3d Merge pull request #9976 from smarterclayton/nsenter_mount_broken
Fix mount issues in containerized Kubelet
2015-07-31 17:15:28 -07:00
Brendan Burns
c752bc6ffb Merge pull request #11738 from daizuozhuo/master
JSONPath template language
2015-07-31 09:48:47 -07:00
jayunit100
3b295ee342 Fix maxTimes comment to clarify infinity waits and add a PollInfinite function. 2015-07-29 19:04:51 -04:00
Mike Danese
daa6d4dde6 Merge pull request #11285 from liggitt/ca
Use self-signed cert as CA for local-up-cluster.sh
2015-07-29 11:13:23 -07:00
Dai Zuozhuo
949704af2c jsonpath template 2015-07-28 10:17:56 +08:00
Mike Danese
8b990263e9 Merge pull request #11057 from liggitt/close_body
Close resp.Body before returning error
2015-07-24 09:57:23 -07:00
Mike Danese
d6796ecd38 Merge pull request #11333 from deads2k/passthrough-errors
pass along status errors for upgrades
2015-07-24 09:49:34 -07:00
Jordan Liggitt
5893f1c5b6 Use self-signed cert as CA for local-up-cluster.sh 2015-07-24 07:16:07 -07:00
saadali
234f3ed814 Make GCE PD attach block on pending detach. Retry on detach/attach errors. 2015-07-23 14:03:50 -07:00
Jordan Liggitt
39a5e1b929 Close resp.Body before returning error 2015-07-23 10:45:55 -07:00
Wojciech Tyczynski
bff2e01994 Merge pull request #11731 from smarterclayton/better_error
Update the error message to be idiomatic
2015-07-23 16:09:24 +02:00
Clayton Coleman
f5d040ec31 Update the error message to be idiomatic
Trim trailing newline (since this is likely to show up in a CLI)
2015-07-22 22:38:24 -04:00
Mike Danese
fdb5cefae7 fix unit test breakage by adding seed method to util/rand 2015-07-22 15:01:51 -07:00
Mike Danese
a558edf036 Revert "Revert "Move rand string func to util for reuse""
This reverts commit acebe24bf3.
2015-07-22 15:01:28 -07:00
Vish Kannan
acebe24bf3 Revert "Move rand string func to util for reuse" 2015-07-22 12:51:29 -07:00
Vish Kannan
550203b3a3 Merge pull request #9162 from thockin/rand-util
Move rand string func to util for reuse
2015-07-22 11:08:47 -07:00
deads2k
98d6b454f3 pass along status errors for upgrades 2015-07-15 15:53:29 -04:00
Joe Beda
c15953662e Fix up alignment of columns w/ namespaces.
Fixes #10842

All issues for types that use "extra lines" for extended information.  Two issues fixed: (1) When namespaces are listed an extra column isn't inserted for extra lines and (2) trailing tabs aren't inserted when label columns are specified.

This code should probably move to a more explicit model of putting data into "cells".

The test for this hits https://github.com/golang/go/issues/6416 and so I introduced a "LineDelimiter" writer filter to make white space more visible.
2015-07-09 08:59:32 -07:00
Eric Paris
cde68d294b Do not create subject alt dns names for kubelet self signed certs
PR #10643 Started adding the dns names for the kubernetes master to self
sign certs which were created. The kubelet uses this same code, and thus
the kubelet cert started saying it was valid for these name as well.
While hardless, the kubelet cert shouldn't claim to be these things. So
make the caller explicitly list both their ip and dns subject alt names.
2015-07-04 23:01:01 -04:00
Nikhil Jindal
05ce0472e9 Merge pull request #10643 from eparis/self-sign-cert-san
Add Subject Alt Names to self signed apiserver certs
2015-07-02 12:21:22 -07:00
Wojciech Tyczynski
2f4574167d Merge pull request #10561 from smarterclayton/make_empty_public
Make util.empty public for conversions
2015-07-02 09:31:25 +02:00
Eric Paris
7a29af4d2c Add Subject Alt Names to self signed apiserver certs
A cert from GCE shows:
- IP Address:23.236.49.122
- IP Address:10.0.0.1
- DNS:kubernetes,
- DNS:kubernetes.default
- DNS:kubernetes.default.svc
- DNS:kubernetes.default.svc.cluster.local
- DNS:e2e-test-zml-master

A similarly configured self signed cert shows:
- IP Address:23.236.49.122
- IP Address:10.0.0.1
- DNS:kubernetes
- DNS:kubernetes.default
- DNS:kubernetes.default.svc

So we are missing the fqdn kubernetes.default.svc.cluster.local. The
apiserver does not even know the fqdn! it's defined entirely by the
kubelet! We also do not have the cluster name certificate. This may be
--cluster-name= argument to the apiserver but will take a bit more
research.
2015-07-01 17:05:17 -04:00
Clayton Coleman
8d189245fb Make util.empty public for conversions
Some downstream components want to use a StringSet in their internal
objects, but leaving util.empty private means that generated conversions
cannot create constructors generically for those objects.  This makes
Empty public until such a time as the generator supports private types.
2015-07-01 16:12:15 -04:00
Zach Loafman
03be2f3f0b Merge pull request #10545 from liggitt/rate_limit
Switch to token bucket rate limiter with better performance
2015-07-01 08:36:19 -07:00
Wojciech Tyczynski
5965e82a3a Merge pull request #10500 from lavalamp/etcdChanFix
Fix logging.
2015-07-01 11:47:22 +02:00
Zach Loafman
2884446c50 Merge pull request #10443 from bprashanth/sort_rc
Handle overlapping controllers semi-deterministically
2015-06-30 15:56:54 -07:00
Zach Loafman
7df8d76a93 Merge pull request #10169 from saad-ali/fixPDIssue2
Work around for PDs stop mounting after a few hours issue
2015-06-30 15:47:21 -07:00
saadali
c952ee23a7 Work around for PDs stop mounting after a few hours issue 2015-06-30 13:31:03 -07:00
Tim Hockin
15766bfbbc Don't repeat field name in errors 2015-06-30 11:58:21 -07:00
Daniel Smith
eabc344eed Fix logging; extend queue length to 100 2015-06-30 10:27:24 -07:00
Jordan Liggitt
f265d5c5ee Switch token bucket rate limiter to github.com/juju/ratelimit 2015-06-30 10:34:41 -04:00
Prashanth Balasubramanian
90ebc1ad29 Sort overlapping rcs 2015-06-29 15:30:19 -07:00
Clayton Coleman
93b14b9ede Search the parent FS for the proper binaries 2015-06-26 14:48:22 -04:00
Clayton Coleman
fa7000a5bc Use nsenter on PATH in container, and separate args
nsenter needs '--' to separate calls
2015-06-26 14:28:08 -04:00
Robert Bailey
54a3ebef3c Merge pull request #10315 from nikhiljindal/invalidValue
Updating the "invalid value" error message to include the list of valid values
2015-06-26 10:46:59 -07:00
Maxwell Forbes
712f303350 Merge pull request #9736 from sdminonne/bug_fix2
To add validation for service ports when defined as string
2015-06-25 19:37:04 -07:00
Maxwell Forbes
5e748c1d47 Merge pull request #10070 from lavalamp/e2eProxyFix
proxy e2e test improvements
2015-06-25 13:15:03 -07:00
nikhiljindal
3b3ee0ed77 Improving an error message 2015-06-25 13:08:09 -07:00
Maxwell Forbes
655179dcfb Merge pull request #10264 from mikedanese/ca-token
add ca cert to token controller and all service accounts
2015-06-25 09:56:35 -07:00
Tim Hockin
7874743a43 Move rand string func to util for reuse 2015-06-24 21:13:42 -07:00
Dawn Chen
710fb4e413 add iptables rule for MASQUERADE for egress 2015-06-24 17:19:57 -07:00
Mike Danese
56bde3342a add ca to token controller and all service accounts 2015-06-24 15:10:20 -07:00
Daniel Smith
ddbe4c914f Fix proxy rewriting 2015-06-24 13:54:14 -07:00
Dawn Chen
6ddfa512de Revert "Revert "Fix the race between configuring cbr0 and restarting static pods""
This reverts commit fd0a95dd12.
2015-06-24 11:10:10 -07:00
Piotr Szczesniak
fd0a95dd12 Revert "Fix the race between configuring cbr0 and restarting static pods" 2015-06-24 09:56:49 +02:00
Dawn Chen
23200d303f Fix several issues on running syncPods until network is configured.
Also fixed unittests and compiling.
2015-06-23 12:11:19 -07:00
Jeff Lowdermilk
85770295c2 Merge pull request #10004 from ArtfulCoder/kubelet_health
Augmented kubelet healthz with syncLoop check.
2015-06-22 10:53:05 -07:00
Salvatore Dario Minonne
4b13faa346 To add validation for service ports when defined as string (fixing issue #9734) 2015-06-22 17:21:51 +02:00
Justin Santa Barbara
c5f9085398 Mark realSSHDialer as implementing sshDialer 2015-06-20 18:18:38 -04:00
Justin Santa Barbara
efdd03a6a9 Don't assume we always SSH as the current user
This works on gcloud (where the user is dynamically created by the tool),
but doesn't hold on other clouds (e.g. AWS).

The function in pkg/util now takes a user arg, and it is called only
from the e2e tests, which now check for env-var KUBE_SSH_USER, and then
fall back to the existing behaviour of env-var USER.

I am using this from Jenkins by directly setting the env-var:

export KUBE_SSH_USER=jenkins
...
hack/jenkins/e2e.sh
2015-06-20 18:18:38 -04:00
Abhishek Shah
3556993179 Augmented kubelet healthz with syncLoop check.
Monit uses read-only port for health monitoring.
2015-06-19 18:14:01 -07:00
Satnam Singh
f83d5356d7 Merge pull request #9987 from mbforbes/livingUpgrade
Node upgrade test
2015-06-19 10:02:52 -07:00
markturansky
450002a52e Fixed formatting of error message 2015-06-19 11:21:57 -04:00
Satnam Singh
d8e5225144 Merge pull request #10069 from lavalamp/sshLockingFix
fix locking around ssh tunnels
2015-06-18 17:50:06 -07:00
Daniel Smith
4126622388 fix locking around ssh tunnels 2015-06-18 16:52:10 -07:00
Satnam Singh
42fd7b4b68 Merge pull request #9806 from manansaraf/patch_error
Fixed pointers bug in PATCH verb in the API
2015-06-18 16:13:38 -07:00
Max Forbes
2803fbe343 Node upgrade tests. 2015-06-18 15:59:51 -07:00
CJ Cullen
15596ede41 Make AddSSHKeys a controller loop. Make sure master's always initializes m.tunnels. 2015-06-17 17:46:27 -07:00
Saad Ali
f8e58f7efe Merge pull request #9827 from timstclair/html-rewrite
Html rewrite
2015-06-17 11:35:30 -07:00
Tim St. Clair
49b8c975d8 Update the URL-rewriting logic to make minimal modifications.
The new approach avoids building a complete parse tree, instead using the lower level token stream. Doing so removes the need for creating "missing" HTML elements, reducing the collateral changes to the rewritten HTML.

Resolves: #9766
2015-06-16 14:15:11 -07:00
Manan Saraf
86025129fb Fixed pointers bug in PATCH verb in the API 2015-06-16 13:31:49 -07:00
Brendan Burns
96c244eacf Merge pull request #9848 from cjcullen/fwfix
Fix mislooping in ssh.go. Add retries to AddSSHKeys.
2015-06-16 11:10:30 -07:00
Saad Ali
5596e6f789 Merge pull request #9493 from marekbiskup/testAddonUpdate
e2e test for addon upgrade
2015-06-16 10:50:15 -07:00
CJ Cullen
48f672af92 Change SSHTunnelList to struct to make Open() semantics better. 2015-06-16 10:36:38 -07:00
CJ Cullen
4d5d0457ef Fix mislooping in ssh.go. Add retries to AddSSHKeys. 2015-06-16 00:08:37 -07:00
Brendan Burns
a6652a0e98 Merge pull request #9834 from cjcullen/fwfix
Fix crashes in ssh-tunnel code.
2015-06-15 20:25:32 -07:00
Fabio Yeon
bcf5cffa1a Merge pull request #9768 from timstclair/proxy-rel
Don't rewrite relative URLs when proxying HTTP content.
2015-06-15 19:54:18 -07:00
CJ Cullen
66fb8ccb02 Add ssh tunnel-open metrics 2015-06-15 17:28:54 -07:00
CJ Cullen
faa9313eea Fix several potential crashes in sshtunnel open/close code. 2015-06-15 14:38:37 -07:00
Marek Biskup
dcc4034d57 e2e test for addon update 2015-06-15 17:37:24 +02:00
Tim St. Clair
fd7d46e9da Don't rewrite relative URLs when proxying HTTP content. 2015-06-12 21:30:29 -07:00
BenTheElder
c5baf1f284 Export GetIptablesVersion utility in util/iptables
For kube-proxy to determine whether to use pure iptables as in
https://github.com/GoogleCloudPlatform/kubernetes/issues/3760
Related WIP PR:
https://github.com/GoogleCloudPlatform/kubernetes/pull/9210
2015-06-12 17:13:40 -04:00
krousey
f62a2a1bb6 Merge pull request #9451 from cjcullen/mig
Use Node IP Address instead of Node.Name in minion.ResourceLocation.
2015-06-09 15:52:12 -07:00
krousey
43a423f6fc Merge pull request #9440 from brendandburns/ssh
Add an initial test for SSH.
2015-06-09 12:08:26 -07:00
krousey
9740105a99 Merge pull request #8837 from mbforbes/rollingTest
E2E test node upgrade (to same version)
2015-06-09 10:42:17 -07:00
Brendan Burns
2240486110 Add an initial test for SSH. 2015-06-08 20:53:05 -07:00
CJ Cullen
2d85e4a094 Use Node IP Address instead of Node.Name in minion.ResourceLocation.
Refactor GetNodeHostIP into pkg/util/node (instead of pkg/util to break import cycle).

Include internalIP in gce NodeAddresses.
2015-06-08 16:58:00 -07:00
CJ Cullen
04cd9b3c75 Make sshproxy use a hostmount on master PD (don't spam sshKeys on upgrade/reboot).
Add comment describing what SSHTunnelList.Close() does.
Simplify util.FileExists.
2015-06-05 15:03:03 -07:00
CJ Cullen
cb317604ab Some refactoring. Only selectively use ssh proxy.
Add NetworkName to gce.Config.
Add locking to uses of master.tunnels.
2015-06-05 14:55:16 -07:00
CJ Cullen
1ae8801387 Fix transport creation logic.
Refactor loadTunnels to allow one path for load, another for refresh.
Make SSHTunnelList.Close sleep for a minute before actually closing each tunnel.
2015-06-05 14:55:16 -07:00
Brendan Burns
5115fd5703 Add key generation. 2015-06-05 14:55:15 -07:00
Brendan Burns
30a89968a4 Initial proxy tunnelling. 2015-06-05 14:54:20 -07:00
Quinton Hoole
8b01ecb53a Merge pull request #9024 from markturansky/recyc_controllers
PersistentVolumeRecycler controller
2015-06-05 11:39:08 -07:00
markturansky
986cbb56d4 Recycling HostPath and NFS impls 2015-06-04 15:46:03 -04:00
Brian Grant
f72fa67924 Revert "Use Node IP Address instead of Node.Name in minion.ResourceLocation." 2015-06-03 18:19:22 -07:00
Max Forbes
a6c47a07de E2E test node upgrade (to same version) 2015-06-03 17:05:45 -07:00
CJ Cullen
4e5d0da839 Use Node IP Address instead of Node.Name in minion.ResourceLocation.
Refactor GetNodeHostIP into pkg/util/node (instead of pkg/util to break import cycle).

Include internalIP in gce NodeAddresses. Remove NodeLegacyHostIP
2015-06-02 20:01:49 -07:00
Eric Tune
c1d0a48075 Merge pull request #8912 from justinsb/volumes_kubelet_root_not_symlink
Ensure kubelet root is not a symlink
2015-06-01 09:24:32 -07:00
Justin Santa Barbara
c4a2631593 Mount logic breaks if /var/lib/kubelet is a symlink
Pass the correct kubelet root-dir on AWS
2015-05-29 20:13:09 -04:00
Justin Santa Barbara
9839253233 Add logging to volume tear-down to help understand mount behaviour 2015-05-29 20:11:13 -04:00
Rohit Jnagal
0cbd4beb63 Merge pull request #8886 from csrwng/fix_proxy_url_slash
Fix proxying of URLs that end in "/" in the pod proxy subresource
2015-05-29 16:28:41 -07:00
Rohit Jnagal
d34d00c288 Merge pull request #8898 from brendandburns/tunnel
Move SSH code into a common util package.  Add support for SSH tunnels.
2015-05-29 14:48:37 -07:00
Tim Hockin
4318ca5a8b Rename 'portal IP' to 'cluster IP' most everywhere
This covers obvious transforms, but not --portal_net, $PORTAL_NET and
similar.
2015-05-28 16:10:44 -07:00
Cesar Wong
684dcd4307 Fix proxying of URLs that end in "/" in the pod proxy subresource
Also handles proxying of URLs that have an empty path and don't end in a slash "/" by redirecting to the same location with a slash appended.
2015-05-27 22:12:55 -04:00
Brendan Burns
a51747f941 Move SSH code into a common util package. Add support for SSH tunnels. 2015-05-27 16:58:52 -07:00
Anastasis Andronidis
5eae2378d6 Warn for every _ flag user or cmd defined
also renames all global _ flags to -
2015-05-27 11:23:52 +02:00
Saad Ali
7493ed0fca Merge pull request #8786 from pmorie/secret-tests
Add tests for secret volume plugin reboot/idempotency
2015-05-26 09:57:31 -07:00
Filip Grzadkowski
967b1b95ba Add very simple tracing mechanism for easier debugging of slow requests. 2015-05-26 16:17:18 +02:00
Paul Morie
feb0880b1e Add tests for secret volume plugin reboot/idempotency 2015-05-25 13:34:07 -04:00
Justin Santa Barbara
1ad4549f5f Proxy infrastructure for NodePorts
A service with a NodePort set will listen on that port, on every node.

This is both handy for some load balancers (AWS ELB) and for people
that want to expose a service without using a load balancer.
2015-05-22 17:21:49 -04:00
Victor Marmol
0e804b03a4 Merge pull request #8220 from thockin/label-validation
Add test case for qname validation, fix impl
2015-05-18 08:40:56 -07:00
Justin Santa Barbara
2457c284ed Add util.PortRange, so that a port range can be a flag. Format: lo-hi 2015-05-16 15:52:57 -04:00
Tim Hockin
71d375e22f Add test case for qname validation, fix impl 2015-05-15 14:45:36 -07:00
Dawn Chen
ebbb130af8 OOM protected docker processes (-900) 2015-05-14 15:49:12 -07:00
Tim Hockin
b429e89251 Spec qualified names (label keys) more tightly
It can be a (DNS_SUBDOMAIN/)?label, but we were validating it
incorrectly before.
2015-05-13 13:59:16 -07:00
Robert Bailey
c47b9178b4 Replace the auth config file with a kubeconfig file when
starting the kubelet on GCE.
2015-05-13 01:03:28 -07:00
Jordan Liggitt
6e570732f5 ServiceAccounts controller 2015-05-11 17:18:05 -04:00
Nikhil Jindal
48dfad6701 Merge pull request #8050 from fgrzadkowski/cache
Add cache with multiple shards to decrease lock contention
2015-05-11 10:18:34 -07:00
Paul Morie
14243d3bd6 Fix typo in nsenter_mount.go 2015-05-11 11:41:01 -04:00
Filip Grzadkowski
50de4d0081 Add cache with multiple shards to decrease lock contention 2015-05-11 15:07:50 +02:00
Yu-Ju Hong
170f426fb6 Don't use the first token uname -n as the hostname
This change partially reverts the change made in #7910, which takes only the
first token of `uname -n` as the hostname.
2015-05-08 10:09:06 -07:00
Abhi Shah
589154a557 Merge pull request #7821 from lavalamp/deleteEndpoints
Add old endpoint cleanup function
2015-05-07 16:54:41 -07:00
Victor Marmol
5074e98ee9 Merge pull request #7910 from yujuhong/hostname
Use the full hostname for mirror pod name.
2015-05-07 14:43:16 -07:00
Yu-Ju Hong
ab5e0e0b5c Use the full hostname for mirror pod name.
This change appends the full hostname to the mirror pod name (instead of taking
the first token) so that if the hostname is overriden, we'd not be creating
unncessary name conflicts. An example would be that a user overrides the
hostnames to be "127.0.0.1" and "127.0.0.2", and both of them were resolved to
"127" for the mirror pod name suffix.

Also, because `uname -n` could return a FQDN or not, this change takes only
the first token of it as the hostname for consistency.
2015-05-07 12:59:49 -07:00
Wojciech Tyczynski
128835ec40 Merge pull request #7885 from hurf/master
Update errors_test.go
2015-05-07 10:06:26 +02:00
Victor HU
f42a18d3c2 Update errors_test.go
minor change in log message
2015-05-07 15:06:15 +08:00
Daniel Smith
b49dd0ad1e Add old endpoint cleanup function 2015-05-06 13:03:18 -07:00
Tomek Kulczynski
290c7b94ef Make nodecontroller configure nodes' pod IP ranges 2015-05-05 16:10:42 -07:00
Paul Morie
553265ce0c Add containerized option to kubelet binary 2015-05-05 13:10:06 -04:00
Wojciech Tyczynski
bd3d853242 Merge pull request #7737 from lavalamp/fixTimeAfter
Reduce usage of time.After
2015-05-05 09:28:07 +02:00
Daniel Smith
16a6fb8ef7 Replace calls to time.After with time.NewTimer for explicit stopping 2015-05-04 14:29:33 -07:00
Quinton Hoole
cd7a0e5a9f Merge pull request #7721 from smarterclayton/fix_ipv4
Select IPv4-only from host interfaces
2015-05-04 14:09:27 -07:00
Clayton Coleman
c07896ee35 Merge pull request #7509 from deads2k/deads-has-any
add StringSet.HasAny
2015-05-04 16:21:33 -04:00
Clayton Coleman
166021e765 Select IPv4-only from host interfaces 2015-05-04 14:46:00 -04:00
Paul Morie
e5521234e4 Add NsenterMounter mount implementation 2015-05-04 14:40:04 -04:00
Eric Paris
6b3a6e6b98 Make copyright ownership statement generic
Instead of saying "Google Inc." (which is not always correct) say "The
Kubernetes Authors", which is generic.
2015-05-01 17:49:56 -04:00
Vish Kannan
1dead9c670 Merge pull request #6400 from ddysher/nfs-volume-mounter
Implement Mount interface using mount(8) and umount(8)
2015-04-30 14:00:56 -07:00
deads2k
f258717f26 add StringSet.HasAny 2015-04-29 16:55:43 -04:00
Eric Paris
a17a26643b Update kube to support new pflag/cobra 2015-04-29 11:26:30 -04:00
Deyuan Deng
6897095e56 Change mount.Interface.Mount to exec('mount'), instead of syscall 2015-04-29 10:46:32 -04:00
Tim Hockin
a3d45fada8 Change flags to use dashes in help 2015-04-27 15:11:03 -07:00
Tim Hockin
6694eff020 Use pflags word separators to make - and _ equiv. 2015-04-27 15:10:52 -07:00
Robert Bailey
137c90738e Merge pull request #7289 from kazegusuri/logging
lower log level on recovering from panic
2015-04-24 09:22:46 -07:00
Masahiro Sano
7c371ee36e lower log level on recovering from panic 2015-04-24 22:09:14 +09:00
Michal Fojtik
1d496a030e Suppress 'use of closed network connection' error in iowatcher
Signed-off-by: Michal Fojtik <mfojtik@redhat.com>
2015-04-24 14:32:00 +02:00
Filip Grzadkowski
8b755c805b Break request metrics in apiserver by client. 2015-04-24 13:16:14 +02:00
Piotr Szczesniak
27daa29753 Merge pull request #7073 from lavalamp/fix4
move port splitting to common place; add to node resource location
2015-04-21 16:10:40 +02:00
Dawn Chen
5eda3fe9a9 Remove deprecated comment. 2015-04-20 17:12:36 -07:00
Daniel Smith
27ee6ea0de move port splitting to common place; add to node resource location 2015-04-20 14:31:44 -07:00
Kenjiro Nakayama
2e702b0c61 Replace hostname -f with uname -n 2015-04-20 14:16:21 -07:00
Daniel Smith
a2953fdc7e Make endpoint controller use framework 2015-04-17 15:21:51 -07:00
Daniel Smith
24a8cceb5c add work queue; test coverage 100% 2015-04-17 15:21:47 -07:00
Cesar Wong
a3f5dfd0e2 Move proxy html transport to utility package
Moves the proxy html transport that translates html links
from the proxy in apiserver to its own package under util.
2015-04-16 10:20:17 -04:00
Dawn Chen
d912398d07 Merge pull request #6813 from vmarmol/in-container
Run Kubelet and Kube-proxy in resource-only containers.
2015-04-15 10:37:00 -07:00
Victor Marmol
8fc3d8f7b6 Adding utility for creating resource containers.
Allows creating and running in resource-only containers.
2015-04-14 10:29:05 -07:00
markturansky
f599aecc6a Fix spelling typo in comments 2015-04-14 12:46:29 -04:00
Tim Hockin
c989f30a00 make DeepHashObject use SpewKeys 2015-04-10 09:38:12 -07:00
Tim Hockin
4661cedf4a Merge pull request #5709 from gmarek/client5
Add validation for Endpoint
2015-04-09 15:13:45 -07:00
Andy Goldstein
00e24603cb Fix TestServeExecInContainerIdleTimeout flake
Remove creation of stream from TestServeExecInContainerIdleTimeout as
it's not necessary to very idle timeout.

Increase stream creation and ack timeouts to 30 seconds.

Fixes #5628
2015-04-09 16:44:56 -04:00
Prashanth Balasubramanian
a7864aa230 Scheduler uses TTLStore for assumed pods 2015-04-08 15:01:04 -07:00
gmarek
c20efb6bae Add validation for Endpoints 2015-04-08 20:12:07 +02:00
Derek Carr
6eb54e73e0 Merge pull request #5270 from lavalamp/fix7
Controller framework
2015-04-07 16:58:09 -04:00
Cesar Wong
e64d7337b3 Move flushwriter from Kubelet server to a common util package
Exposes a Wrap function to wrap a given writer into a writer that
flushes with every write if the writer also implements the io.Flusher
interface.
2015-04-07 07:46:30 -04:00
Huamin Chen
7a82af31de add iscsi volume plugin
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-04-06 16:20:28 -04:00
Rohit Jnagal
bfde7e0735 Merge pull request #6429 from lavalamp/fix
Oops, let's be careful about licensing.
2015-04-06 09:20:18 -07:00
Yu-Ju Hong
dbd7b186a0 Merge pull request #6338 from smarterclayton/improve_config_error
Return a typed error for config validation, and make errors simple
2015-04-03 18:08:15 -07:00
Daniel Smith
78b8f9599f Fix another license problem. 2015-04-03 17:06:29 -07:00
Brian Grant
0d95883593 Merge pull request #6027 from ghodss/kube-patch
Implement Strategic Merge Patch in apiserver
2015-04-03 15:08:51 -07:00
Sam Ghods
2c977db1b3 Implement Strategic Merge Patch in apiserver 2015-04-03 11:51:02 -07:00
Piotr Szczesniak
8bc9f5fef7 Added rate limiting to pod deletion
Fixes #6228
2015-04-03 06:58:59 +02:00
Prashanth B
3fe4224b6c Merge pull request #6314 from bparees/tokenbucket
add a blocking accept method to RateLimiter
2015-04-02 16:01:17 -07:00
Vish Kannan
ee98731a2a Merge pull request #6269 from ddysher/extend-mount
Abstract IsMountPoint and improve FakeMounter
2015-04-02 15:29:38 -07:00
Daniel Smith
3fe17b93cf Begin a controller framework. 2015-04-02 15:25:58 -07:00
Ben Parees
70be667cf8 add a blocking accept method to RateLimiter 2015-04-02 14:33:18 -04:00
Clayton Coleman
28b18f416f Tone down logging in network interface choosing 2015-04-02 01:39:59 -04:00
Deyuan Deng
d62afa85ff Abstract ismountpoint and use platform mounter for NFS volume 2015-04-01 23:05:02 -04:00
Jordan Liggitt
c797a91e36 Add client cert authentication 2015-04-01 13:42:26 -04:00
Brian Grant
3354cffbf0 Merge pull request #6182 from thockin/plural_services_20
Implement multi-port Services
2015-03-31 12:55:21 -07:00
Paul Morie
7628b37d78 Add control over container entrypoint 2015-03-31 12:32:03 -04:00
Tim Hockin
186818d787 WIP: Implement multi-port Services 2015-03-30 19:28:11 -07:00
Tim Hockin
9ed6c95e8e Reset hash state between runs. 2015-03-25 13:44:57 -07:00
Filip Grzadkowski
7085a0cb44 Merge pull request #5508 from fgrzadkowski/validate_ips
Validate Service.Spec.publicIPs to be a valid IP that is not a localhost
2015-03-25 12:11:29 +01:00
markturansky
2fd82f60f4 Move escape function to util and clarify name 2015-03-24 13:52:31 -04:00
Jordan Liggitt
a75b501821 Improve ResourceLocation API, allow proxy to use authenticated transport 2015-03-24 11:11:34 -04:00
Filip Grzadkowski
6bc1e2ef40 Add validation error explanation for long annotations. 2015-03-24 11:01:26 +01:00
Filip Grzadkowski
24eb1a08f3 Validate Service.Spec.publicIPs to be a valid IP that is not a localhost 2015-03-24 10:48:46 +01:00
Clayton Coleman
d19aac80ea Merge pull request #5533 from smarterclayton/burn_yaml_with_fire
Burn YAML with fire (kind of)
2015-03-23 13:45:52 -04:00
Clayton Coleman
65425f690c Move field errors to pkg/util/fielderrors
Allows pkg/api to take a reference to labels.Selector and fields.Selector
2015-03-22 17:43:34 -04:00
Satnam Singh
ec77230386 Merge pull request #5416 from smarterclayton/use_utc_serialized_and_local_otherwise
Use UTC when marshalling times and Local when unmarshalling
2015-03-20 08:32:26 -07:00
Clayton Coleman
71abc99dbe Expose a ToJSON and runtime.YAMLDecoder helper
Enables clients to optionally handle YAML
2015-03-20 00:03:56 -04:00
Clayton Coleman
428d2263e5 Graceful deletion of resources
This commit adds support to core resources to enable deferred deletion
of resources.  Clients may optionally specify a time period after which
resources must be deleted via an object sent with their DELETE. That
object may define an optional grace period in seconds, or allow the
default "preferred" value for a resource to be used. Once the object
is marked as pending deletion, the deletionTimestamp field will be set
and an etcd TTL will be in place.

Clients should assume resources that have deletionTimestamp set will
be deleted at some point in the future.  Other changes will come later
to enable graceful deletion on a per resource basis.
2015-03-19 15:33:32 -04:00
Clayton Coleman
d516a86633 Use UTC when marshalling times and Local when unmarshalling
Marshal to UTC and read into Local, which means clients automatically
show local time and stored values are always consistent.
2015-03-18 17:44:35 -04:00
gmarek
a3b137ce8e Cleanup of validation.go 2015-03-18 08:59:35 +01:00
Tim Hockin
50c96789e7 Add an action log to FakeMounter.
# *** ERROR: *** docs are out of sync between cli and markdown
# run hack/run-gendocs.sh > docs/kubectl.md to regenerate

#
# Your commit will be aborted unless you regenerate docs.
    COMMIT_BLOCKED_ON_GENDOCS
2015-03-13 13:33:50 -07:00
Satnam Singh
b5082b2904 Merge pull request #5397 from brendandburns/master
Fix tests on OS X by re-introducing the old choose host interface
2015-03-12 14:31:31 -07:00
Brendan Burns
fab2b53ccf Fix tests on OS X by re-introducing the old choose host interface
function as a fall back.
2015-03-12 12:33:06 -07:00
Brendan Burns
b53b2e1de0 Add and extend timeouts. 2015-03-11 14:12:46 -07:00
Tim Hockin
52298ab851 Merge pull request #4865 from sub-mod/proxier_go_change
use ChooseHostInterface in kube-proxy
2015-03-11 08:09:32 -07:00
Subin M
b8c91e7344 use ChooseHostInterface in kube-proxy 2015-03-11 13:50:53 +05:30
Rohit Jnagal
8798b0ae14 Merge pull request #5158 from thockin/use_fuzz_no_custom
Use new gofuzz features
2015-03-09 10:13:46 -07:00
Clayton Coleman
0f87337667 Kubelet tests broken on Macs with uppercase names
Hostname behavior across operating systems is inconsistent (Macs can
have uppercase host names, so can some other systems).  In general,
always strings.ToLower(os.Hostname()).
2015-03-08 23:44:32 -04:00
Tim Hockin
fd1e49ce2f Use new gofuzz features 2015-03-07 00:04:14 -08:00
Daniel Smith
b0f49449e1 Merge pull request #4985 from thockin/gofuzz
Update gofuzz dep
2015-03-06 10:19:01 -08:00
Tim Hockin
ca265c5705 Merge pull request #4898 from gmarek/client2
Loosen label and annotation validation and related tests
2015-03-06 09:14:24 -08:00
Paul Morie
17b51a93a3 Fix mount refactor nits 2015-03-06 11:46:07 -05:00
Tim Hockin
0b38282b9b Fuzz util.Time with no nsec because JSON 2015-03-06 08:21:10 -08:00
Tim Hockin
b3304c49ad Use deep spew in serialization test & go obj diff 2015-03-06 08:21:10 -08:00
gmarek
26b7fbeedf apply comments 2015-03-06 13:21:40 +01:00
gmarek
bb8a4f5ed3 apply comments 2015-03-06 08:23:22 +01:00
gmarek
726a5af075 Loosen label and annotation validation and related tests 2015-03-06 08:23:22 +01:00
Paul Morie
8ef04a8425 Factor mount utility code out gce_pd volume plugin 2015-03-05 13:49:32 -05:00
Prashanth Balasubramanian
1970c2d201 Retry resizing replication controllers in kubectl 2015-03-02 20:26:41 -08:00
Yu-Ju Hong
241df2d3be kubelet: record an event with a clear reason on host port conflict
Currently, kubelet silently ignores pods that caused host port conflict. This
commit surfaces the error by recording an event.

It also makes sure that kubelet iterates through the pods in the order of the
creation timestamp, which ensures that pods created later are ignored on
conflict.
2015-02-27 15:51:53 -08:00
Vish Kannan
aaa4a354d4 Merge pull request #4735 from screeley44/v1beta3_enablement
#4544 - Fix inadvertent whitespace in v1beta3 enablement
2015-02-25 10:06:11 -08:00
Brian Grant
3f69112e02 Merge pull request #4766 from mikedanese/remove-util-merge
Remove pkg/util/merge and replace with evanphx/json-patch
2015-02-25 09:22:01 -08:00
Salvatore Dario Minonne
0186acc37c Extending label.Parse method to support exact match 2015-02-25 08:52:20 +01:00
Scott Creeley
40c03b057a Fix whitespace in v1beta3 enablement 2015-02-24 14:49:54 -05:00
Mike Danese
88e1ab3cbe replace pkg/util/merge with evanphx/json-patch 2015-02-23 20:55:30 -08:00
Andy Goldstein
44d41a0f1b Move golang code to third_party 2015-02-20 20:00:31 -05:00
Andy Goldstein
5bd0e9ab05 Add streaming command execution & port forwarding
Add streaming command execution & port forwarding via HTTP connection
upgrades (currently using SPDY).
2015-02-20 09:57:02 -05:00
Victor Marmol
2d1a8d0da0 Allow ApplyOomScoreAdj to specify what PID to adjust for. 2015-02-19 17:16:31 -08:00
Yu-Ju Hong
7379502cc9 Run gofmt for hash.go to fix formatting errors 2015-02-19 10:51:46 -08:00
rsokolowski
14e93a112b Make DeepHashObject function deterministic. 2015-02-19 16:46:19 +01:00
Mike Danese
3039f7846c implement RFC7386 JSON Merge Patch 2015-02-15 22:21:10 -08:00
Tim Hockin
063ff6677c Merge pull request #4422 from derekwaynecarr/set_difference
Set should have a difference function
2015-02-13 14:16:28 -08:00
derekwaynecarr
e7a0340ad7 Set should have a difference function 2015-02-13 15:39:56 -05:00
Jeff Lowdermilk
b23230e616 Merge pull request #4296 from deads2k/deads-allow-dots
allow dots in config set
2015-02-13 12:27:36 -08:00
deads2k
2dcaab75f5 allow dots in config set 2015-02-13 13:11:42 -05:00
Alex Robinson
b58160c5ea Remove the unused TimeCache file and its tests. Fixes issue #4192. 2015-02-11 11:11:43 -08:00
Marek Grabowski
72a066a992 Add more information to Validator error messages. 2015-02-09 18:07:09 +01:00
Wojciech Tyczynski
524cdba101 Fix hack/test-cmd.sh test. 2015-02-05 01:58:26 +01:00
Brendan Burns
ab0acae7d3 fix build on non-linux hosts. 2015-02-03 08:13:09 -08:00
Tim Hockin
1ee1702be0 Merge pull request #3808 from brendandburns/master
Add a mounter that uses google's safe_format_and_mount.
2015-02-02 16:29:10 -08:00
Brendan Burns
ac21ac24fa Add a mounter that uses google's safe_format_and_mount. 2015-02-02 16:16:20 -08:00
Dawn Chen
4aac47c31d make kube-proxy.log less verbose. 2015-02-02 11:15:14 -08:00
Joe Beda
e1dd6b297c Create new hyperkube package.
This is the start of an uber-binary that can morph into any server.  Eventually we'll want this to be able to launch multiple servers from a single command line.
2015-01-28 16:11:34 -08:00
Satnam Singh
358ace610d Merge pull request #3824 from smarterclayton/allow_panic_and_error_reporting
Allow panics and unhandled errors to be sent elsewhere
2015-01-27 13:18:43 -08:00
Mike Danese
d77743a07c gimports nits 2015-01-26 22:42:29 -08:00
Clayton Coleman
04b864a91f Allow panics and unhandled errors to be reported to external targets
It would be better if Kubernetes could be instrumented to report panics
and handled but unreturned errors in controller loops to a remote
service.  This commit introduces settable handlers for HandleCrash and a new
HandleError that can be overriden to report errors to a remote service
for analysis.  HandleError() in particular is for control loops that do
not return an error, and so there is no ability to report those errors
other than in log files.

ReplicationController is provided as an example.
2015-01-26 20:23:46 -05:00
Jeff Lowdermilk
6ba8b7dfb2 Merge pull request #3768 from deads2k/deads-make-kubectl-config-easier-alt
make kubectl config set-cluster easier to use
2015-01-26 13:13:26 -08:00
deads2k
05bc508a13 make all kubectl config set-* easier to use 2015-01-26 15:16:54 -05:00
Tim Hockin
5d73fa40aa Merge pull request #3588 from vishh/api_resources
Adding a 'Typename' strongtype for representing all resource types
2015-01-23 15:07:27 -08:00
Vishnu Kannan
c32295a180 Adding a 'Typename' strongtype for representing all compute resource types. 2015-01-23 22:17:56 +00:00
Tim Hockin
c292aa54c4 Merge pull request #3738 from smreed/randomize-roundrobin-endpoints
Randomize roundrobin endpoints
2015-01-23 12:33:17 -08:00
Steve Reed
a186b47cd3 Adds test for slice.ShuffleStrings 2015-01-23 09:30:09 -08:00
Filipe Brandenburger
a5898a9559 Keep boolean status of imported flags
This makes glog flags such as --logtostderr and --alsologtostderr keep
working without requiring an explicit =true.

Tested by building kubelet and invoking it with --logtostderr. Also
tested a few non-boolean flags to ensure they weren't affected.
2015-01-22 16:32:12 -08:00
Steve Reed
ab1ede3aaa Sets year in copyright to 2015 2015-01-22 14:24:07 -08:00
Steve Reed
f7e3cb12a6 Moves string slice sorting, copying and shuffling into pkg/util/slice 2015-01-22 14:20:23 -08:00
Clayton Coleman
80d99b8d85 Merge pull request #3631 from deads2k/deads-add-set-deleteall
make StringSet.Delete accept multiple items
2015-01-20 17:22:58 -05:00
Tim Hockin
6cb275829f Implement volumes as plugins.
Break up the monolithic volumes code in kubelet into very small individual
modules with a well-defined interface.  Move them all into their own packages
and beef up testing along the way.
2015-01-20 11:45:45 -08:00
deads2k
5b8e38a665 make StringSet.Delete accept multiple items 2015-01-20 14:42:10 -05:00
Joe Beda
6bd6b905f5 Address code review comments
Add some documentation.
Create new util.InitFlags() function to merge and parse in one step.
2015-01-15 09:12:20 -08:00
Joe Beda
1d0b6ee5f5 Fix up logging flags for kubectl. 2015-01-15 09:12:20 -08:00
Joe Beda
f692604bdf Fix name of pflag_import.go 2015-01-15 09:12:19 -08:00
Joe Beda
dcd00c936e Move all kubernetes to posix flags 2015-01-15 09:12:19 -08:00
Tim Hockin
1be3de895c Move util.UID to pkg/types 2015-01-14 15:22:21 -08:00
Tim Hockin
e86d4cd3c6 Use a strong type for UID fields 2015-01-14 13:53:43 -08:00
Zach Loafman
e14d5f3416 Merge pull request #3464 from smarterclayton/fix_invalid_json_in_services.sh
Fix e2e invalid JSON, ensure CLI communicates invalid JSON errors effectively
2015-01-14 10:26:34 -08:00
bgrant0607
312de43ace Merge pull request #3444 from lavalamp/fix
eliminate possibility of double-calling
2015-01-14 10:12:26 -08:00
Clayton Coleman
31413c8727 Add more tests around JSON/YAML decoding from the CLI
Switch the ignore stream errors behavior to print a Warningf on
failure to parse, not v(2)
2015-01-14 12:38:36 -05:00
Clayton Coleman
22cf8b94e6 Add a package for doing YAML-to-JSON streaming, one document at a time
Will be moved upstream soon
2015-01-14 00:50:07 -05:00
Daniel Smith
30be0eeac7 eliminate possibility of double-calling 2015-01-13 18:09:13 -08:00
Daniel Smith
f0b5fba988 Improve cache behavior
* don't block while filling cache
* make cache wait for pending calls
2015-01-12 16:20:25 -08:00
Daniel Smith
6e70853e83 genericize ip cache 2015-01-12 16:04:43 -08:00
Tim Hockin
4fcd496d59 change everything to use new util/errors 2015-01-08 22:10:03 -08:00
Tim Hockin
cd29ba7ebc Add new util/errors pkg 2015-01-08 21:59:23 -08:00
Joe Beda
7abd90e9df Generic way to import 'flag' flags into the 'pflag' system.
Start with kubectl but with an eye toward switching everything over to pflag.
2015-01-08 15:25:31 -08:00
Clayton Coleman
7fd887df61 Enable v1beta3 API via --runtime_config=api/v1beta3 flag
This exposes the proper v1beta3 API endpoint when the user specifies
the --runtime_config=api/v1beta3 argument to the apiserver. v1beta3
is still considered experimental and subject to change.

--runtime_config is a map of string keys and values, that can be
specified by providing

    --runtime_config=a=b,b=c,d,e

Only the key must be specified, the value can be omitted.

Enables v1beta3 in hack/local-up-cluster.sh and hack/test-cmd.sh
2015-01-08 13:01:24 -05:00
Daniel Smith
894a3e6d3f Wire resource.Quantity into api 2015-01-07 15:21:34 -08:00
Rohit Jnagal
62ecd5f3ff Fix few vet errors.
There are quite a few 'composite literal uses unkeyed fields' errors that I have kept out of this patch.
And there's a couple where vet just seems confused. These are the easiest ones.
2015-01-07 08:40:16 +00:00