Commit Graph

48613 Commits

Author SHA1 Message Date
Jordan Liggitt
20ccdfbd3b
Fix unbound variable 2017-05-19 00:29:50 -04:00
Kubernetes Submit Queue
ead8c98cdb Merge pull request #45987 from nicksardo/cloud-init-kubeclient
Automatic merge from submit-queue

Initialize cloud providers with a K8s clientBuilder

**What this PR does / why we need it**:
This PR provides each cloud provider the ability to generate kubernetes clients. Either the full access or service account client builder is passed from the controller manager. Cloud providers could need to retrieve information from the cluster that isn't provided through defined interfaces, and this seems more preferable to adding parameters.

Please leave your thoughts/comments.

**Release note**:
```release-note
NONE
```
2017-05-18 20:51:24 -07:00
Brendan Burns
97f6c52ffd more stuff. 2017-05-18 20:31:10 -07:00
Derek Carr
a71bea312a ResourceQuota admission control injects registry 2017-05-18 23:17:13 -04:00
Kubernetes Submit Queue
c061994742 Merge pull request #46056 from marun/fed-federated-updater-deletion-error
Automatic merge from submit-queue (batch tested with PRs 41535, 45985, 45929, 45948, 46056)

[Federation] Fix bad logic of deletion error handling for federated updater

Reverts a change accidentally added in #45364.

cc: @kubernetes/sig-federation-pr-reviews
2017-05-18 19:58:17 -07:00
Kubernetes Submit Queue
5290eece28 Merge pull request #45948 from CaoShuFeng/underscore
Automatic merge from submit-queue (batch tested with PRs 41535, 45985, 45929, 45948, 46056)

remove useless flags from hack/verify-flags/known-flags.txt

Flags in known-flags.txt is used to check misspelling from "-" to "_" in
workspace, so a flag with out "-" should not show up in this file.

**Release note**:

```release-note
NONE
```
2017-05-18 19:58:15 -07:00
Kubernetes Submit Queue
a9fbeef694 Merge pull request #45929 from liggitt/node-admission
Automatic merge from submit-queue (batch tested with PRs 41535, 45985, 45929, 45948, 46056)

NodeRestriction admission plugin

Adds an optional `NodeRestriction` admission plugin that limits identifiable kubelets to mutating their own Node object, and Pod objects bound to their node.

This is the admission portion of https://github.com/kubernetes/community/blob/master/contributors/design-proposals/kubelet-authorizer.md and kubernetes/features#279

```release-note
The `NodeRestriction` admission plugin limits the `Node` and `Pod` objects a kubelet can modify. In order to be limited by this admission plugin, kubelets must use credentials in the `system:nodes` group, with a username in the form `system:node:<nodeName>`. Such kubelets will only be allowed to modify their own `Node` API object, and only modify `Pod` API objects that are bound to their node.
```
2017-05-18 19:58:13 -07:00
Kubernetes Submit Queue
61eace2b1e Merge pull request #45985 from deads2k/tpr-16-finalizer
Automatic merge from submit-queue (batch tested with PRs 41535, 45985, 45929, 45948, 46056)

add CRD finalizer to remove CRs

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

This adds a finalizer for customresourcedefinitions to prevent CRD deletion until all CR instances are gone.

@sdminonne I lost track of your issue, but here's the fix

I'm at a loss for how to test this.  It's tested from the outside by ensuring that a CRD delete removes its instances (integration test) and we could add more integration tests, but for unit tests I can't seem to find a mock `dynamic.ClientPool` and its not easily writeable at the moment.  I'm thinking about saying we just add more black box tests given the options.
2017-05-18 19:58:10 -07:00
Kubernetes Submit Queue
f57f0388db Merge pull request #41535 from aanm/adding-ipv6-brackets
Automatic merge from submit-queue (batch tested with PRs 41535, 45985, 45929, 45948, 46056)

kubelet/envvars: Adding brackets to IPv6 addresses

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

**What this PR does / why we need it**: This adds IPv6 brackets on environments variables pods

**Special notes for your reviewer**:

Since the IP is a string I think the fastest way to detect if it's an IPv6 was to check for the presence of `:` in it. Let me know what you think.
2017-05-18 19:58:07 -07:00
xilabao
e0b4f3f73c remove --api-version 2017-05-19 10:56:35 +08:00
Kubernetes Submit Queue
b6211c6e79 Merge pull request #45921 from pwittrock/kubectl-issues
Automatic merge from submit-queue

Redirect users filing kubectl issues to the kubernetes/kubectl repo
2017-05-18 17:45:42 -07:00
Kubernetes Submit Queue
8214f7bb29 Merge pull request #45839 from caesarxuchao/client-gen-vendor
Automatic merge from submit-queue

let client-gen understand vendor

This is extracted from #44784, where we move external api types to k8s.io/api. After the move, the types will locate at vendor/k8s.io/api/xxx. However, gengo index the parsed package using the import path, which is stripped of  the vendor/ prefix, so we'll need to strip the vendor/ prefix as necessary in client-gen.

This PR doesn't produce any change to the generated clientset yet since all types are still in the kubernetes repo.
2017-05-18 17:45:35 -07:00
Madhusudan.C.S
47de152365 Log kubefed operations at log level 4 in our test environments.
This is useful for debugging test failures that involve federation
control plane turn up/down.
2017-05-18 16:57:46 -07:00
Alexander Campbell
9e7f29c3fb cmd: fix deprecation warning bug
Some kubectl commands were deprecated but would fail to print the
correct warning message when a flag was given before the command name.

	# Correctly prints the warning that "resize" is deprecated and
	# "scale" is now preferred.
	kubectl scale [...]

	# Should print the same warning but no warning is printed.
	kubectl --v=1 scale [...]

This was due to a fragile check on os.Args[1].

This commit implements a new function deprecatedCmd() that is used to
construct new "passthrough" commands which are marked as deprecated and
hidden.

Note that there is an existing "filters" system that may be preferable
to the system created in this commit. I'm not sure why the "filters"
array was not used for all deprecated commands in the first place.
2017-05-18 16:48:13 -07:00
Shyam Jeedigunta
4d457f55f4 Copy static variable 'verb' before instrumenting APIserver call to prevent overwriting 2017-05-19 01:11:38 +02:00
Zihong Zheng
f0739a5638 Randomize test nodePort to prevent collision 2017-05-18 15:29:22 -07:00
Nikhita Raghunath
e9a8af9ac8
Add integration test for kube-apiextensions-server.
Check if integers are present after decoding.
Originally an issue for TPRs: #30213
2017-05-19 03:34:12 +05:30
Maru Newby
b4381d0c44 fed: Move kubefed server image definition to cmd
This enables consumers like openshift to provide a different default
without editing the kubefed init logic.
2017-05-18 14:25:44 -07:00
Kubernetes Submit Queue
17b22cb01c Merge pull request #45315 from timstclair/audit-api
Automatic merge from submit-queue

Advanced audit logging API

This is an initial implementation of the API proposed in https://github.com/kubernetes/community/blob/master/contributors/design-proposals/auditing.md

This deviates from the exact API specified in the proposal in a number of ways. Here's a list of some of the changes I made, and why:

- General API conformance (`metav1.{Type,List}Meta`, +optional, etc.)
- Dropped fields that won't be part of the initial implementation (storage objects & filters), to be added later
- {Request,Response}Body -> {Request,Response}Object - This is actually what the proposal originally had, and will be much better for adding Filters later, and provides a less protocol-dependent API. Note that there is currently no way to include Response body for non-resource requests.
- Drop HttpMethod - redundant with verb
- Response{StatusCode,ErrorMessage} collapsed into `ResponseStatus *metav1.Status` - This is the standard response type for resourec errors, but can hold genereric error responses too. Note that this is part of the `Metadata` Level.

/cc @kubernetes/sig-auth-api-reviews @kubernetes/api-reviewers
2017-05-18 14:23:53 -07:00
Maru Newby
37cb9c4dc2 fed: Fix bad logic of deletion error handling for federated updater 2017-05-18 14:21:55 -07:00
David Ashpole
0bd0d705e3 log age of stats used for evictions during eviction tests 2017-05-18 13:51:23 -07:00
Jordan Liggitt
6fd36792f1
Add NodeRestriction admission plugin 2017-05-18 16:43:42 -04:00
Jordan Liggitt
0c516c3ac2
Add NodeIdentifier interface and default implementation 2017-05-18 16:43:41 -04:00
David E Watson
204fb62d49 Correct spelling in comment. 2017-05-18 13:31:26 -07:00
Kubernetes Submit Queue
be71ec717b Merge pull request #45201 from vmware/network_id
Automatic merge from submit-queue

Same internal and external ip for vSphere Cloud Provider

Currently, vSphere Cloud Provider reports internal ip as container ip addresses. This PR modifies vSphere Cloud Provider to report same ip address as both internal and external that is provided by vmware infrastructure. 
cc @pdhamdhere @tusharnt @BaluDontu @divyenpatel @luomiao
2017-05-18 13:31:02 -07:00
p0lyn0mial
3f8d6e9210 Change all the existing admission init blocks to call a Register function
this is a two stage refactor when done there will be no init block in admission plugins.
Instead all plugins expose Register function which accept admission.Plugins instance.
The registration to global plugin registry happens inside Register func.
2017-05-18 22:25:01 +02:00
Jordan Liggitt
d609f4ebca
Add pod util for extracting referenced configmaps 2017-05-18 15:38:29 -04:00
Kubernetes Submit Queue
5f3f170919 Merge pull request #39488 from liggitt/flex-metadata
Automatic merge from submit-queue

Pass pod metadata to flex plugin

Normal volume plugins get the pod spec to pull information from when setting up their volume, but flex plugins do not.

If a flex volume wants to set up things unique to the pod, or limited in permission based on the service account, the pod namespace, name, uid, and service account name are needed.

This PR adds pod uid, name, namespace, and service account name to the options passed to the plugin available during mounting

```release-note
The options passed to a flexvolume plugin's mount command now contains the pod name (`kubernetes.io/pod.name`), namespace (`kubernetes.io/pod.namespace`), uid (`kubernetes.io/pod.uid`), and service account name (`kubernetes.io/serviceAccount.name`).
```
2017-05-18 12:29:04 -07:00
Chao Xu
3b26db6d67 Update CHANGELOG.md for v1.7.0-alpha.4. 2017-05-18 21:16:11 +02:00
deads2k
5d1afb4933 add CRD finalizer to remove CRs 2017-05-18 15:05:01 -04:00
Fabiano Franz
3bb04c67cc More cli sanity verifications 2017-05-18 15:44:49 -03:00
Brendan Burns
83e856411d generated stuff 2017-05-18 11:38:56 -07:00
Brendan Burns
4177b28e5a Add new AzureDisk API, but not implementation. 2017-05-18 11:36:42 -07:00
Kubernetes Submit Queue
f231576f29 Merge pull request #45443 from abrarshivani/owners_cloud_providers
Automatic merge from submit-queue

Add approvers to vsphere cloudprovider

This PR adds approvers for vSphere Cloud provider.
cc @pdhamdhere @tusharnt @BaluDontu @divyenpatel @luomiao
2017-05-18 11:36:25 -07:00
Kubernetes Submit Queue
f760d5a592 Merge pull request #46001 from bowei/alpha-to-beta
Automatic merge from submit-queue

Use beta GCP API instead of alpha in CloudCIDR controller

The feature we are using has been promoted to beta.

```release-note
NONE
```
2017-05-18 11:36:19 -07:00
Phillip Wittrock
e70d59063f Redirect users filing kubectl issues to the kubernetes/kubectl repo 2017-05-18 10:45:07 -07:00
Tim St. Clair
dd9e0ecd06
Misc proto changes 2017-05-18 10:39:06 -07:00
Tim St. Clair
6565f68cfa
Update generated files 2017-05-18 10:39:04 -07:00
Tim St. Clair
cdacc1f6df
Add internal audit API types 2017-05-18 10:30:21 -07:00
Kubernetes Submit Queue
151846db80 Merge pull request #45999 from enj/enj/i/custom_resource_name
Automatic merge from submit-queue

Remove ObjectNameFunc from custom resources

@deads2k as far as I can tell these `ObjectNameFunc`s are unnecessary.

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

**Release note**:

```
NONE
```
2017-05-18 10:29:03 -07:00
Kubernetes Submit Queue
d775ff4c3a Merge pull request #45982 from fabianofranz/more_sig_cli_owners
Automatic merge from submit-queue

More owners from SIG-CLI

Adds SIG-CLI as reviewers and approvers of `cmd/clicheck/` and adds me + @pwittrock as approvers in `hack/` (mostly for `test-cmd` and some `hack/verify*.sh` and `hack/update*.sh` scripts).

**Release note**:

```release-note
NONE
```
2017-05-18 10:17:22 -07:00
Kubernetes Submit Queue
2ff902b672 Merge pull request #45937 from smarterclayton/init_api
Automatic merge from submit-queue

Add initializers to ObjectMeta and a new filter on ListOptions

Will support admission extension by allowing controllers to interact with objects before they are visible to the rest of the API.

Part of https://github.com/kubernetes/community/blob/master/contributors/design-proposals/admission_control_extension.md
2017-05-18 10:17:15 -07:00
Andy Goldstein
e8e87cb1c2 NS controller: don't stop deleting GVRs on error
If the namespace controller encounters an error trying to delete a
single GroupVersionResource, add the error to an aggregated list of
errors and continue attempting to delete all the GroupVersionResources
instead of stopping at the first error. Return the aggregated error list
(if any) when done. This allows us to delete as much of the content in
the namespace as we can in each pass.
2017-05-18 12:01:40 -04:00
Kubernetes Submit Queue
e9b02c2e2b Merge pull request #46030 from sdminonne/apiextensions-server-storage
Automatic merge from submit-queue

Api-extensions server integraton test: etcd storage

@deads2k 
here is the test we talked about yesterday.
Few comments:


SelfLink for CR Instances looks broken (my first test was not enough, sorry) please have a look [here](https://github.com/sdminonne/kubernetes/blob/apiextensions-server-storage/staging/src/k8s.io/kube-apiextensions-server/test/integration/registration_test.go#L435) and [here](https://github.com/sdminonne/kubernetes/blob/apiextensions-server-storage/staging/src/k8s.io/kube-apiextensions-server/test/integration/registration_test.go#L409)



Not fully sure about the way etcd client works.
I had to concatenate two times the prefix to get the value. The first time from the caller ([example](https://github.com/sdminonne/kubernetes/blob/apiextensions-server-storage/staging/src/k8s.io/kube-apiextensions-server/test/integration/registration_test.go#L428)) and the second time in the [get function](https://github.com/sdminonne/kubernetes/blob/apiextensions-server-storage/staging/src/k8s.io/kube-apiextensions-server/test/integration/registration_test.go#L473).

Not sure if it's a problem or not, here is the `etcdctl` output for example: 

```
$ ETCDCTL_API=3 etcdctl get "" --from-key
/7b02b490-8e8e-4649-ab92-aad1173314fb/7b02b490-8e8e-4649-ab92-aad1173314fb/apiextensions.k8s.io/customresourcedefinition
s/noxus.mygroup.example.com
{"kind":"CustomResourceDefinition","apiVersion":"apiextensions.k8s.io/v1alpha1","metadata":{"name":"noxus.mygroup.exampl
e.com","selfLink":"/apis/apiextensions.k8s.io/v1alpha1/customresourcedefinitions/noxus.mygroup.example.com","uid":"9a08f
664-3b17-11e7-94b1-847beb037559","creationTimestamp":"2017-05-17T15:43:41Z"},"spec":{"group":"mygroup.example.com","vers
ion":"v1alpha1","names":{"plural":"noxus","singular":"nonenglishnoxu","shortNames":["foo","bar","abc","def"],"kind":"Wis
hIHadChosenNoxu","listKind":"NoxuItemList"},"scope":"Namespaced"},"status":{"conditions":[{"type":"NameConflict","status
":"False","lastTransitionTime":null,"reason":"NoConflicts","message":"no conflicts found"}],"acceptedNames":{"plural":"n
oxus","singular":"nonenglishnoxu","shortNames":["foo","bar","abc","def"],"kind":"WishIHadChosenNoxu","listKind":"NoxuIte
mList"}}}

/7b02b490-8e8e-4649-ab92-aad1173314fb/7b02b490-8e8e-4649-ab92-aad1173314fb/mygroup.example.com/noxus/not-the-default/foo
{"apiVersion":"mygroup.example.com/v1alpha1","content":{"key":"value"},"kind":"WishIHadChosenNoxu","metadata":{"clusterN
ame":"","creationTimestamp":"2017-05-17T15:43:41Z","deletionGracePeriodSeconds":null,"deletionTimestamp":null,"name":"fo
o","namespace":"not-the-default","selfLink":"","uid":"9a174a53-3b17-11e7-94b1-847beb037559"}}
```
2017-05-18 08:45:36 -07:00
Kubernetes Submit Queue
93579d637e Merge pull request #45968 from marun/fed-remove-redundant-e2e
Automatic merge from submit-queue (batch tested with PRs 45950, 45968)

[Federation] Remove redundant e2e for secret and daemonset

Federation of daemonset and secret types is now implemented by the sync controller, and e2e testing for each type is provided via crud lifecycle e2e tests.  This renders the legacy e2e tests for these types redundant, and this commit removes those tests.

The secret wait and delete functions required by the ingress e2e tests have been retained and moved to ingress.go.

cc: @kubernetes/sig-federation-pr-reviews
2017-05-18 08:39:05 -07:00
Mik Vyatskov
a6ccc89541 Add version for fluentd-gcp config 2017-05-18 16:59:05 +02:00
Kubernetes Submit Queue
a1c2db2fec Merge pull request #45950 from shyamjvs/revert-proxier
Automatic merge from submit-queue

Make real proxier in hollow-proxy optional (default=true)

Ref https://github.com/kubernetes/kubernetes/pull/45622
This allows using real proxier for hollow proxy, but we use the fake one by default.

cc @kubernetes/sig-scalability-misc @wojtek-t @gmarek
2017-05-18 07:55:09 -07:00
Andy Goldstein
032e2f6652 kube-proxy: add --write-config flag
Add --write-config flag to kube-proxy to write the default configuration
values to the specified file location.
2017-05-18 10:34:22 -04:00
Clayton Coleman
bdd4d34c7d
generated: api changes 2017-05-18 10:07:47 -04:00
Clayton Coleman
668442321e
Add initializers and includeUninitialized to the API 2017-05-18 10:07:45 -04:00