Commit Graph

11408 Commits (c9355df584b0bf6a789bbebc88bf902220b54ee6)

Author SHA1 Message Date
Jeff Lowdermilk 9be85fbaf0 Merge pull request #23541 from bprashanth/fw_default
Default firewall port to TCP when unspecified.
2016-04-08 09:32:00 -07:00
Jeff Lowdermilk f41f5dc823 Merge pull request #23853 from janetkuo/revert-rollingupdate-latest
Revert "rolling update will check whether the image is distinct or not, however the image with tag latest should be excluded"
2016-04-08 09:29:32 -07:00
k8s-merge-robot 22f01f1041 Merge pull request #23891 from caesarxuchao/client-gen-cmd-doc
Automatic merge from submit-queue

Client-gen: show the command used to generate the package in doc.go

#22928 adds a comment in every generated file to show the arguments supplied to client-gen. I received comment (https://github.com/kubernetes/kubernetes/pull/22928#issuecomment-201078363) that it generates too many one-line changes every time the command line argument is changed. To address this problem, this PR only generates that line in doc.go.

@jianhuiz @krousey
2016-04-07 13:13:51 -07:00
Minhan Xia f690220b5c Merge pull request #23704 from freehan/kubenet
Update cni binary

#23712 is depending on this. Not sure why this one gets in first. Hand merging this
2016-04-06 15:47:42 -07:00
Saad Ali d7b069fbcc Merge pull request #23793 from pmorie/configmap-nonroot
Make ConfigMap volume readable as non-root
2016-04-06 15:11:25 -07:00
Mike Danese 14284291da only include running and pending pods in daemonset should place calculation 2016-04-06 12:30:50 -07:00
Chao Xu db518cf4ff Generated code 2016-04-06 10:17:48 -07:00
Paul Morie e838ff2893 Make ConfigMap volume readable as non-root 2016-04-05 12:20:52 -04:00
k8s-merge-robot 52276bcc6c Merge pull request #23843 from cjcullen/dialtimeout
Automatic merge from submit-queue

Add a timeout to the sshDialer to prevent indefinite hangs.

Prevents the SSH Dialer from hanging forever. Fixes a problem where SSH Tunnels get stuck trying to open.

Addresses #23835.
2016-04-04 21:28:52 -07:00
k8s-merge-robot 02e0b29b6d Merge pull request #23769 from saad-ali/fixVolumeCloudProvider
Automatic merge from submit-queue

Ensure object returned by volume getCloudProvider incorporates cloud config

This PR addresses https://github.com/kubernetes/kubernetes/issues/23517.

**Problem**
The existing GCE PD and AWS EBS volume plugin code were fetching cloud provider without specifying a cloud config: `cloudprovider.GetCloudProvider("gce", nil)`
This caused the cloud provider to use default auth mechanism, which is not acceptable for the provisioning controller running on GKE master.

**Fix**
This PR does the following:
* Modifies the GCE PD and AWS EBS volume plugin code to use the cloud provider object pre-constructed by the binary with a cloud config.
* Enable provisioning E2E test for GKE (to catch future issues).

Thanks to @cjcullen for debugging and finding the root cause!  👍 

This should be cherry-picked into the v1.2 branch for the next release.
2016-04-04 20:52:13 -07:00
Janet Kuo 0335f1c2cd Revert "rolling update will check whether the image is distinct or not, however the image with tag latest should be excluded"
This reverts commit d27a30df29.
2016-04-04 18:36:02 -07:00
CJ Cullen cde4f6d613 Add a timeout to the sshDialer to prevent indefinite hangs. 2016-04-04 16:35:20 -07:00
gmarek 7123076b97 Add container_spec_cpu_period metric 2016-04-04 23:53:54 +02:00
saadali e7b14e721a Ensure volume GetCloudProvider code uses cloud config 2016-04-04 10:59:13 -07:00
k8s-merge-robot a2145d7b1c Merge pull request #23613 from Random-Liu/remove-out-of-date-code
Automatic merge from submit-queue

Kubelet: Remove nsinit related code and bump up minimum docker apiversion

Docker has native exec support after 1.3.x. We never need this code now.

As for the apiversion, because Kubernetes supports 1.8.x - 1.10.x now, we should bump up the minimum docker apiversion.
@yujuhong I checked the [changes](https://github.com/docker/engine-api/blob/master/types/versions/v1p20/types.go), we are not relying on any of those changes. So #23506 should work with docker 1.8.x+
2016-04-03 07:34:26 -07:00
k8s-merge-robot 9ad3b9d669 Merge pull request #23463 from mikedanese/ds-event
Automatic merge from submit-queue

add an event for when a daemonset can't place a pod due to insufficen…

…t resource or port conflict

https://github.com/kubernetes/kubernetes/issues/23013#issuecomment-201076147
2016-04-03 05:16:31 -07: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 b1b58c4165 Merge pull request #23596 from deads2k/relax-case-in-restmapper
Automatic merge from submit-queue

relax restmapper resource matching

We were matching case insensitive on Kinds, not Resources, thus driving me insane.

@liggitt @caesarxuchao
2016-04-02 14:12:32 -07:00
k8s-merge-robot 3197f31cc6 Merge pull request #23554 from nikhiljindal/swaggerInRun
Automatic merge from submit-queue

genericapiserver: Moving InstallSwaggerAPI to Run

Ref https://github.com/kubernetes/kubernetes/pull/21190#discussion_r57494673

Moving InstallSwaggerAPI() from InstallAPIGroups() to Run(). This allows the use of InstallAPIGroups() multiple times or using InstallAPIGroup() directly.

cc @jianhuiz @kubernetes/sig-api-machinery
2016-04-02 08:19:25 -07:00
k8s-merge-robot 9c2501cdf5 Merge pull request #23552 from deads2k/extend-authz-attribs
Automatic merge from submit-queue

add missing attributes to authorization interface

Plumb through missing attributes for authorization decisions.  The request parser picked them up a while back, but they were never wired up in kube.

This simply allows authorizers to use them, it doesn't require them to.

@kubernetes/kube-iam
2016-04-02 07:45:43 -07:00
k8s-merge-robot df20dfb2e4 Merge pull request #23548 from ncdc/fix-23078
Automatic merge from submit-queue

Check claimRef UID when processing a recycled PV, take 2

Reorder code a bit so it doesn't allow a case where you get some error other than "not found"
combined with a non-nil Claim.

Add test case.

cc @kubernetes/rh-cluster-infra @kubernetes/rh-storage @liggitt
2016-04-02 05:58:55 -07:00
k8s-merge-robot b43ccd6e2b Merge pull request #23506 from Random-Liu/new-docker-client
Automatic merge from submit-queue

Kubelet: Start using the official docker engine-api

For #23563.

This is the **first step** in the roadmap of switching to docker [engine-api](https://github.com/docker/engine-api).
In this PR, I keep the old `DockerInterface` and implement it with the new engine-api.
With this approach, we could switch to engine-api with minimum change, so that we could:
* Test the engine-api without huge refactoring.
* Send following PRs to refactor functions in `DockerInterface` separately so as to avoid a huge change in one PR.

I've tested this PR locally, it passed all the node conformance test:
```
make test_e2e_node

Ran 19 of 19 Specs in 823.395 seconds
SUCCESS! -- 19 Passed | 0 Failed | 0 Pending | 0 Skipped PASS

Ginkgo ran 1 suite in 13m49.429979585s
Test Suite Passed
```
And it also passed the jenkins gce e2e test:
```
go run hack/e2e.go -test -v --test_args="--ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]"

Ran 161 of 268 Specs in 4570.214 seconds
SUCCESS! -- 161 Passed | 0 Failed | 0 Pending | 107 Skipped PASS

Ginkgo ran 1 suite in 1h16m16.325934558s
Test Suite Passed
2016/03/25 15:12:42 e2e.go:196: Step 'Ginkgo tests' finished in 1h16m18.918754301s
```

I'm writing the design document, and will post the switching roadmap in an umbrella issue soon.

@kubernetes/sig-node
2016-04-02 04:51:33 -07:00
k8s-merge-robot f5c93c8ddc Merge pull request #23472 from wojtek-t/fix_object_meta_for
Automatic merge from submit-queue

Switch from api.ObjectMetaFor to meta.Accessor in most of places

Fix #23278

@smarterclayton @lavalamp
2016-04-02 02:33:40 -07:00
k8s-merge-robot c927790cc6 Merge pull request #22877 from fabianofranz/mark_filename_flags_for_completions
Automatic merge from submit-queue

Mark filename flags for completions

Adds filename bash completion to some flags that were missing.
2016-04-01 22:38:54 -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
k8s-merge-robot 224684c4bc Merge pull request #23746 from derekwaynecarr/registry_unavailable
Automatic merge from submit-queue

A pod never terminated if a container image registry was unavailable

Fixes https://github.com/kubernetes/kubernetes/issues/23742
Fixes https://github.com/kubernetes/kubernetes/issues/22045

Pods will now show proper status when this happens as well:

```
$ cluster/kubectl.sh get pods --all-namespaces 
NAMESPACE   NAME                   READY     STATUS                RESTARTS   AGE
test        foo-4072956304-1g8qs   0/1       RegistryUnavailable   0          7s
test        foo-4072956304-i045g   0/1       RegistryUnavailable   0          7s
test        foo-4072956304-qem2n   0/1       RegistryUnavailable   0          7s
```

Where as previously they would never report a reason.

I also removed the "temporary" part of the message because we have no idea if its temporary or permanent.

/cc @kubernetes/sig-node @kubernetes/rh-cluster-infra
2016-04-01 14:13:03 -07:00
Fabiano Franz 9ddacfa25f Mark filename flags for completions 2016-04-01 16:14:36 -03:00
derekwaynecarr eeeccd0a67 A pod never terminated if a container image registry was unavailable 2016-04-01 13:42:23 -04: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
k8s-merge-robot 07929972a3 Merge pull request #18835 from brendandburns/3rdparty
Automatic merge from submit-queue

Add support for 3rd party objects to kubectl

@deads2k @jlowdermilk

Instructions for playing around with this:

Run an apiserver with third party resources turned on (`--runtime-config=extensions/v1beta1=true,extensions/v1beta1/thirdpartyresources=true`)

Then you should be able to:

```
kubectl create -f rsrc.json
```

```json
{
  "metadata": {
    "name": "foo.company.com"
  },
  "apiVersion": "extensions/v1beta1",
  "kind": "ThirdPartyResource",
  "versions": [
    {
      "apiGroup": "group",
      "name": "v1"
    },
    {
      "apiGroup": "group",
      "name": "v2"
    }
  ]
}
```

Once that is done, you should be able to:

```
curl http://<server>/apis/company.com/v1/foos
```

```
curl -X POST -d @${HOME}/foo.json http://localhost:8080/apis/company.com/v1/namespaces/default/foos
```

```json
{
  "kind": "Foo",
  "apiVersion": "company.com/v1",
  "metadata": {
    "name": "baz"
  },
  "someField": "hello world",
  "otherField": 1
}
```

After this PR, you can do:

```
kubectl create -f foo.json
```

```
kubectl get foos
```

etc.
2016-03-31 18:09:56 -07:00
k8s-merge-robot 421249785d Merge pull request #23582 from zhouhaibing089/typo_fix
Automatic merge from submit-queue

fix the gcfg typo

little fix in the openstack cloud provider.
2016-03-31 17:28:37 -07:00
k8s-merge-robot f8ea3fab53 Merge pull request #23427 from wojtek-t/conversions_with_framework_4
Automatic merge from submit-queue

Migrate to the new conversion generator - part1

This PR contains two commits:
- few more fixes to the generator
- migration of the pkg/api/v1 to use the new generator

The second commit is big, but I reviewed the changes and they contain:
- conversions between types that we didn't even generating conversion between
- changes in how we handle maps/pointers/slices - previously we were explicitly referencing fields, now we are using "shadowing in, out" to make the code more generic
- lack of auto-generated method for ReplicationControllerSpec (because these types are different (*int vs int for Replicas) and a preexisting conversion already exists

Most of issues in the first commit (e.g. adding references to "in" and "out" for slices/maps/points) were discovered by our tests. So I'm pretty confident that this change is correct now.
2016-03-31 17:28:36 -07:00
Chao Xu 49559a3332 Generate the typed clients under the clientset folder 2016-03-31 15:28:45 -07:00
Minhan Xia d026d7ecbc Update cni binary 2016-03-31 13:57:51 -07:00
Wojciech Tyczynski c2a5998248 Merge pull request #23688 from caesarxuchao/fix-23533
Temporarily disable goroutine calls to testing.T.Logf to avoid race
2016-03-31 21:35:54 +02:00
k8s-merge-robot d807690c39 Merge pull request #23387 from hongchaodeng/e
Automatic merge from submit-queue

storage.Interface KV impl. of etcd v3

This is the initial implementation of #22448.

The PR consists of two parts:
- add godep of "clientv3" and "integration" (for testing)
- create new package "etcd3" under "pkg/storage/"
- implement KV methods of storage.Interface using etcd v3 APIs
  - Create, Set, Get, Delete, GetToList, List, GuaranteedUpdate
2016-03-31 11:46:43 -07:00
Chao Xu 674d083092 temporarily disable goroutine calls to testing.T.Logf to avoid race 2016-03-31 11:43:38 -07:00
Brendan Burns be6c5b332b Add third party support to kubectl 2016-03-31 10:53:32 -07:00
Wojciech Tyczynski 2699be2e7e Switch api.ObjetaMetaFor to meta.Accessor 2016-03-31 17:52:31 +02:00
Clayton Coleman f2139b186c Add an experimental protobuf serializer
Provide a core protobuf serializer that can either write objects with
an envelope (a 4 byte prefix and a runtime.Object) or raw to a byte
array.
2016-03-31 10:41:11 -04:00
k8s-merge-robot 62eb7d3db8 Merge pull request #22827 from dcbw/net-plugin-capabilities
Automatic merge from submit-queue

Implement network plugin capabilities hook and shaping capability

Allow network plugins to declare that they handle shaping and that
Kuberenetes should not.  I've got an OpenShift PR that handles shaping in OVS but the kubelet code sends nasty pod events because it doesn't think shaping is used since --reconcile-cbr0 is not used with most network plugins.

See https://github.com/openshift/openshift-sdn/pull/266 for the OpenShift implementation.
2016-03-31 03:20:07 -07:00
k8s-merge-robot 39bcb81e21 Merge pull request #23579 from edevil/fix_typo
Automatic merge from submit-queue

Fixed typo.

Corrected log message.
2016-03-30 15:38:50 -07:00
Janet Kuo c1596e6711 Update guestbook examples; replace RC concepts with Deployment 2016-03-30 14:16:52 -07:00
k8s-merge-robot f36c44be79 Merge pull request #23279 from kargakis/export-volume-describer
Automatic merge from submit-queue

kubectl: enhance podtemplate describer

@kubernetes/kubectl 

@smarterclayton for the dc decsriber
2016-03-30 12:53:52 -07:00
deads2k 936421a4ab relax restmapper resource matching 2016-03-30 15:37:47 -04:00
Hongchao Deng 00ddf0671d etcd (v3) store: implements KV methods of storage.Interface
This implements Get(), Create(), Delete(), GetToList(),
List(), GuaranteedUpdate().
2016-03-30 10:20:39 -07:00
Alex Robinson b2ceb3e206 Merge pull request #22917 from liggitt/namespace_controller_logging
Decrease verbosity of namespace controller trace logging
2016-03-30 10:11:37 -07:00
Dan Williams fb97b8cdaa Implement network plugin capabilities hook and shaping capability
Allow network plugins to declare that they handle shaping and that
Kuberenetes should not.  Will be first used by openshift-sdn which
handles shaping through OVS, but this triggers a warning when
kubelet notices the bandwidth annotations.
2016-03-30 11:51:21 -05:00