Commit Graph

43011 Commits

Author SHA1 Message Date
Michael Fraenkel
7ddad11058 Use SecretManager when getting secrets for EnvFrom 2017-01-24 05:05:48 -07:00
Mik Vyatskov
7b194d496f Fix fluentd-gcp configuration to handle different timezones on the node 2017-01-24 11:53:15 +01:00
Wojciech Tyczynski
8cc00744b7 Merge pull request #40352 from kubernetes/revert-39033-provider-independent-kubemark
Revert "Refactored kubemark into cloud-provider independent code and GCE specific code"
2017-01-24 11:39:23 +01:00
mbohlool
2c23c68eff Add version to OpenAPI spec 2017-01-24 02:28:24 -08:00
Kubernetes Submit Queue
0fac54e65e Merge pull request #40316 from luxas/kubeadm_fix_apiserver_certs
Automatic merge from submit-queue (batch tested with PRs 40303, 40316)

kubeadm: Fix up the apiserver kubelet client cert

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

I didn't notice that the apiserver serving cert was _only_ a server cert, not both a server and client cert in https://github.com/kubernetes/kubernetes/pull/40292.

This PR fixes that misconception and generates a dedicated client cert for apiserver -> kubelet communication and harmonizes the `ca.crt` path to `/etc/kubernetes/pki/ca.crt` on both master and node.

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

**Special notes for your reviewer**:

```console
$ systemctl cat kubelet
# /lib/systemd/system/kubelet.service
[Unit]
Description=kubelet: The Kubernetes Node Agent
Documentation=http://kubernetes.io/docs/

[Service]
ExecStart=/usr/bin/kubelet
Restart=always
StartLimitInterval=0
RestartSec=10

[Install]
WantedBy=multi-user.target

# /etc/systemd/system/kubelet.service.d/10-kubeadm.conf
[Service]
Environment="KUBELET_KUBECONFIG_ARGS=--kubeconfig=/etc/kubernetes/kubelet.conf **--authorization-mode=Webhook --client-ca-file=/etc/kubernetes/pki/ca.crt** --require-kubeconfig=true"
Environment="KUBELET_SYSTEM_PODS_ARGS=--pod-manifest-path=/etc/kubernetes/manifests --allow-privileged=true"
Environment="KUBELET_NETWORK_ARGS=--network-plugin=cni --cni-conf-dir=/etc/cni/net.d --cni-bin-dir=/opt/cni/bin"
Environment="KUBELET_DNS_ARGS=--cluster-dns=10.96.0.10 --cluster-domain=cluster.local"
ExecStart=
ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_SYSTEM_PODS_ARGS $KUBELET_NETWORK_ARGS $KUBELET_DNS_ARGS $KUBELET_EXTRA_ARGS


$ curl -k https://localhost:10250/containerLogs/kube-system/weave-net-arm64-4t2xv/weave
Forbidden (user=system:anonymous, verb=get, resource=nodes, subresource=proxy)
$ curl --cert /etc/kubernetes/pki/apiserver-kubelet-client.crt --key /etc/kubernetes/pki/apiserver-kubelet-client.key -k https://localhost:10250/containerLogs/kube-system/weave-net-arm64-4t2xv/weave
[Works!!]
```

**Release note**:

```release-note
NONE
```

@liggitt @deads2k
2017-01-24 01:57:11 -08:00
Kubernetes Submit Queue
65ca1f98cb Merge pull request #40303 from sttts/sttts-golint-staging
Automatic merge from submit-queue (batch tested with PRs 40303, 40316)

Reactivate golint in staging

Run golint against staging with `staging/src/k8s.io/client-go/pkg` as the only exception. While doing this reset `hack/.linted_packages` which collected a lot of cruft. We now enforce that gone packages are removed.
2017-01-24 01:57:10 -08:00
Wojciech Tyczynski
fbd5c7c380 Revert "Refactored kubemark into cloud-provider independent code and GCE specific code" 2017-01-24 10:42:17 +01:00
Dr. Stefan Schimanski
a8ee8c1082 staging/src/k8s.io/apiserver: copy OWNERS from pkg/genericapiserver 2017-01-24 09:43:57 +01:00
Dr. Stefan Schimanski
c696b56921 pkg/genericapiserver: add myself to approvers for endpoints and server 2017-01-24 09:43:57 +01:00
Kubernetes Submit Queue
bcc1dc5c15 Merge pull request #28112 from liggitt/field-selector-value-escaping
Automatic merge from submit-queue

Allow fieldSelectors to match arbitrary values

Field selectors are intended to be able to match arbitrary data for specific field names. Because of how field selectors are parsed, data containing `,` characters is not possible to match today, and data containing leading `=` characters requires using the `==` operator to ensure the leading `=` is preserved.

This PR adds the ability to escape/unescape those special characters in field selector values so they can be parsed unambiguously

Process for escaping arbitrary data in field selector values (`fields.EscapeValue` helper provided):
1. Prefix literal `\` characters with a `\`
2. Prefix `,` characters with a `\`
3. Prefix `=` characters with a `\`

When unescaping a field selector value (`fields.UnescapeValue` helper provided), the following escape sequences are honored:
- `\\` -> `\`
- `\,` -> `,`
- `\=` -> `=`

Any other instances of `\` result in a parse error

Any unescaped instances of `,` and `=` in field selector values result in a parse error

Compatibility:
- `,` and `=` characters are currently unusable in fieldSelector values, so the `\,` and `\=` escape sequences have no compatibility impact
- `\\` changes from being interpreted as `\\` to `\`, and any other uses of `\` result in errors (this is mostly theoretical; I couldn't find any field-selector-enabled fields which is currently using field selectors to match `\` values)

```
Field selectors may now match values containing the characters `,` `=` or `\` by escaping them with a `\` character.
```
2017-01-23 23:54:35 -08:00
Dr. Stefan Schimanski
81461f7214 hack/verify-golint: enforce cleanup of old packages 2017-01-24 08:34:06 +01:00
Dr. Stefan Schimanski
d0eb7f88a6 Reset hack/.linted_packages 2017-01-24 08:34:06 +01:00
Dr. Stefan Schimanski
8f85e11e6a hack/verify-golint.sh: add authorative staging packages 2017-01-24 08:32:19 +01:00
Kubernetes Submit Queue
43286a82c6 Merge pull request #39981 from fraenkel/optional_configmaps_secrets
Automatic merge from submit-queue

Optional configmaps and secrets

Allow configmaps and secrets for environment variables and volume sources to be optional

Implements approved proposal c9f881b7bb

Release note:
```release-note
Volumes and environment variables populated from ConfigMap and Secret objects can now tolerate the named source object or specific keys being missing, by adding `optional: true` to the volume or environment variable source specifications.
```
2017-01-23 23:06:35 -08:00
bruceauyeung
21e49646b8 fix incorrect parameter passing
Signed-off-by: bruceauyeung <ouyang.qinhua@zte.com.cn>
2017-01-24 14:37:57 +08:00
Kubernetes Submit Queue
f545d6ad47 Merge pull request #40057 from MrHohn/kubectl-create-seletor
Automatic merge from submit-queue (batch tested with PRs 40328, 40057)

Allows kubectl create -f to filter by selector.

From #32544.

The underlying `seletor` infrastructrue was implemented by #32599. The test is basically copy-paste of the corresponding test for `kubectl apply -f -l`.

```release-note
kubectl create now accepts the label selector flag for filtering objects to create
```
2017-01-23 22:19:11 -08:00
Kubernetes Submit Queue
29b89d3cbb Merge pull request #40328 from madhusudancs/federation-new-team
Automatic merge from submit-queue (batch tested with PRs 40328, 40057)

New Federation team.

cc @mml @irfanurrehman @shashidharatd @mwielgus
2017-01-23 22:19:10 -08:00
nikhiljindal
1e64679c25 Adding OWNERS file for federation e2e tests 2017-01-23 21:48:39 -08:00
Lou Yihua
352d64ab0d Eliminate "Unknown service type: ExternalName"
As the ExternalName service is supported, the warning message: "Unknown
service type: ExternalName" should be eliminated from rest.go.
2017-01-24 13:15:36 +08:00
Jordan Liggitt
6f5598b1cb
Allow fieldSelectors to match arbitrary values 2017-01-23 23:48:45 -05:00
Kubernetes Submit Queue
61b7b3fb66 Merge pull request #40178 from smarterclayton/move_list_options
Automatic merge from submit-queue

Move ListOptions into meta

metav1.ListOptions is moving to k8s.io/apimachinery/pkg/apis/meta/v1.  The internal version will be reserved for server use (clients will use metav1), and all references changed.

Also, all references to the Namespace* constants are being moved to point to metav1.
2017-01-23 20:13:26 -08:00
Michael Fraenkel
ca207be4a3 Generated code 2017-01-23 20:12:24 -07:00
Ales Nosek
307a7556da Invalid node names when deploying with Heat
OpenStack Heat templates create Kubernetes nodes with invalid
hostnames. Capital letters are not allowed in the hostnames:

Unable to register node "kubernetes-node-6s8OizYe" with API server: Node "kubernetes-node-6s8OizYe" is invalid: metadata.name: Invalid value: "kubernetes-node-6s8OizYe": must match the regex [a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)* (e.g. 'example.com')

This patch prevents Heat generating hostnames that contain
capital letters.
2017-01-23 18:34:32 -08:00
Pengfei Ni
e2fa0ea87d CRI: verify responses from remote runtime 2017-01-24 10:16:17 +08:00
forrestchen
e2a465ae68 skip schedule deleting pod
Signed-off-by: forrestchen <forrestchen@tencent.com>

skip schedule deleting pod

Signed-off-by: forrestchen <forrestchen@tencent.com>
2017-01-24 10:13:54 +08:00
xilabao
f6ae588207 fix rsync err when make release 2017-01-24 10:08:09 +08:00
Michael Fraenkel
4e466040d9 Allow Optional ConfigMap and Secrets
- ConfigMaps and Secrets for Env or Volumes are allowed to be optional
2017-01-23 18:59:49 -07:00
tanshanshan
fb36d9a546 add unit test for scheduler 2017-01-24 09:31:08 +08:00
Jeff Grafton
2f529bd3bf bazel: save git version in kubernetes.tar.gz 2017-01-23 17:28:08 -08:00
Xing Zhou
0177cbae75 Improve error messages for ValidateObject method.
Improved error messages for method #ValidateObject in
pkg/api/validation/schema.go.
2017-01-24 09:12:06 +08:00
Zach Loafman
3b90066dd6 Move b.gcr.io/k8s_authenticated_test to gcr.io/k8s-authenticated-test
Per
https://cloud.google.com/container-registry/docs/support/deprecation-notices,
b.gcr.io access will be deprecated soon.
2017-01-23 16:58:41 -08:00
xilabao
d969edebe5 change APIVersion to v1beta1 in create rolebinding/clusterrolebinding 2017-01-24 08:32:56 +08:00
Madhusudan.C.S
ff47e98e98 New Federation team. 2017-01-23 15:11:57 -08:00
Michael Taufen
924ec4711b Prep node_e2e for GCI to COS name change 2017-01-23 15:00:39 -08:00
Clayton Coleman
c60809aead
Test changes due to client-go staging changes 2017-01-23 17:52:47 -05:00
Clayton Coleman
da7b2b9c53
generated: staging client-go 2017-01-23 17:52:47 -05:00
Clayton Coleman
9009c1ac14
generated: informer,client 2017-01-23 17:52:47 -05:00
Clayton Coleman
469df12038
refactor: move ListOptions references to metav1 2017-01-23 17:52:46 -05:00
Clayton Coleman
245b592fac
Convert core code to metav1.ListOptions 2017-01-23 17:52:45 -05:00
Clayton Coleman
a35be4e02e
Update registries to use metainternalversion list options 2017-01-23 17:52:45 -05:00
Clayton Coleman
3ba366fcf1
Switch genericapiserver to use metainternalversion.ListOptions
Decouple ListOption parsing from the scheme - instead, it is a property
of the server (and clients should use metav1.ListOptions for now).
2017-01-23 17:52:42 -05:00
Kris
18e7a958d2 Adding framework to allow multiple upgrade tests
This adds a framework for multiple tests to run during an
upgrade. This also moves the existing services test to that framework.
2017-01-23 14:47:47 -08:00
Yu-Ju Hong
c1d043af18 dockertools: remove some dead code 2017-01-23 14:34:56 -08:00
Clayton Coleman
c12344b3b8
Tests that check metav1 2017-01-23 16:53:19 -05:00
Clayton Coleman
f623a8c908
Make all groups use metav1.AddToGroupVersion for ListOptions 2017-01-23 16:53:18 -05:00
Clayton Coleman
93e7c60ae0
Generators should reference metav1.ListOptions (informer,client,fake) 2017-01-23 16:53:18 -05:00
Clayton Coleman
34e9e54ce1
Remove federation api defaulters 2017-01-23 16:53:18 -05:00
Clayton Coleman
4f865efdb9
Create meta/internalversion for ListOptions
Move over only the conversions that are needed, create a new scheme that
is private to meta and only accessible via ParameterCodec. Move half of
pkg/util/labels/.readonly to pkg/apis/meta/v1/labels.go
2017-01-23 16:53:18 -05:00
Clayton Coleman
bf20045736
Change the string serialization of the Nothing selector
The previous option was not serializable, and was used in questionable
scenarios to represent what we also use Everything() for. The individual
context needs to make the decision about everything vs nothing (and
nothing has no real concept in our API today) so this seems safe.
2017-01-23 16:53:17 -05:00
Clayton Coleman
c5059bd772
bump(k8s.io/gengo):c118aa8edfff53fe5b69127a970f54b6cf3a7563 2017-01-23 16:53:17 -05:00