Commit Graph

909 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
a062782524 Merge pull request #44258 from wlan0/master
Automatic merge from submit-queue (batch tested with PRs 45508, 44258, 44126, 45441, 45320)

cloud initialize node in external cloud controller

@thockin This PR adds support in the `cloud-controller-manager` to initialize nodes (instead of kubelet, which did it previously)

This also adds support in the kubelet to skip node cloud initialization when `--cloud-provider=external`

Specifically,

Kubelet

1. The kubelet has a new flag called `--provider-id` which uniquely identifies a node in an external DB
2. The kubelet sets a node taint - called "ExternalCloudProvider=true:NoSchedule" if cloudprovider == "external"

Cloud-Controller-Manager

1. The cloud-controller-manager listens on "AddNode" events, and then processes nodes that starts with that above taint. It performs the cloud node initialization steps that were previously being done by the kubelet.
2. On addition of node, it figures out the zone, region, instance-type, removes the above taint and updates the node.
3. Then periodically queries the cloudprovider for node addresses (which was previously done by the kubelet) and updates the node if there are new addresses

```release-note
NONE  
```
2017-05-08 16:34:43 -07:00
Kubernetes Submit Queue
843c40e32e Merge pull request #45370 from deads2k/server-23-handlers
Automatic merge from submit-queue

refactor names for the apiserver handling chain

The names and structure around the handling chain got a bit confused.  This simplifies it back out into a single struct with three parts: overall handler, gorestful handler, pathrecording mux and makes the delegate wiring simpler
2017-05-08 07:06:27 -07:00
Kubernetes Submit Queue
6dab46e3fb Merge pull request #45235 from deads2k/auth-03-remove-header
Automatic merge from submit-queue

remove bearer token from headers after we consume it

Updates the bearer token authenticator to remove the bearer token from the request headers after it is consumed.  Nothing else in the stack should try to use it and we don't want to accidentally leak it somewhere.

@liggitt @kubernetes/sig-auth-pr-reviews
2017-05-08 06:21:54 -07:00
deads2k
4389f71576 refactor names for the apiserver handling chain 2017-05-08 07:55:31 -04:00
Kubernetes Submit Queue
3a81a86034 Merge pull request #45087 from sttts/sttts-sni-key-cert
Automatic merge from submit-queue

apiserver: fix --tls-sni-cert-key doc string

Fixes #43961.
2017-05-08 02:37:27 -07:00
Kubernetes Submit Queue
a4a94d29c1 Merge pull request #44682 from smarterclayton/owners
Automatic merge from submit-queue

Add OWNERS for staging and api

Part of #44420

* api/ is a copy of pkg/api (same reasoning)
* staging/ is the set of people who should be allowing new top level nested packages + the set of people who can change the staging machinery code

Open to changes to staging/ - very rarely changed.  Added owners for the other items
2017-05-07 12:22:06 -07:00
Kubernetes Submit Queue
1f6bc94bf8 Merge pull request #39713 from k82cn/init_container_defaults
Automatic merge from submit-queue

Set defaults of init containers.

fixes #38542
2017-05-06 23:03:48 -07:00
Kubernetes Submit Queue
6c4663635c Merge pull request #45182 from deads2k/tpr-08-simple-serving
Automatic merge from submit-queue (batch tested with PRs 45182, 45429)

CustomResources in separate API server

Builds on https://github.com/kubernetes/kubernetes/pull/45115.

This adds a basic handler for custom resources.  No status handling, no finalizers, no controllers, but basic CRUD runs to allow @enisoc and others to start considering migration.

@kubernetes/sig-api-machinery-misc
2017-05-05 17:32:33 -07:00
wlan0
45d2bc06b7 cloud initialize node in external cloud controller 2017-05-05 16:51:45 -07:00
Kubernetes Submit Queue
9bd5d642ae Merge pull request #45412 from CaoShuFeng/pathrecoder
Automatic merge from submit-queue (batch tested with PRs 43006, 45305, 45390, 45412, 45392)

update the doc of function NewPathRecorderMux

The doc of function NewPathRecorderMux() is out of date. Update it.
**Release note**:

```release-note
```
2017-05-05 16:39:09 -07:00
Kubernetes Submit Queue
99ede8ac1b Merge pull request #45390 from mbohlool/c4
Automatic merge from submit-queue (batch tested with PRs 43006, 45305, 45390, 45412, 45392)

Update go-restful dependency

This is required by #44787. But because both this and the changes in 44787 need constant rebase, I am trying to get this one in separately to make less rebases.

The change is only a dependency update.
2017-05-05 16:39:08 -07:00
Kubernetes Submit Queue
17d33ea82e Merge pull request #44830 from NickrenREN/remove-NodeLegacyHostIP
Automatic merge from submit-queue

Remove deprecated NodeLegacyHostIP

**Release note**:
```release-note
Remove deprecated node address type `NodeLegacyHostIP`.
```

ref #44807
2017-05-05 15:38:58 -07:00
Kubernetes Submit Queue
5b3d0bbe66 Merge pull request #44714 from jamiehannaford/unix_user_type
Automatic merge from submit-queue (batch tested with PRs 44590, 44969, 45325, 45208, 44714)

Use dedicated UnixUserID and UnixGroupID types

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

DRYs up type definitions by using the dedicated types in apimachinery 

**Which issue this PR fixes**

#38120

**Release note**:
```release-note
UIDs and GIDs now use apimachinery types
```
2017-05-05 14:08:17 -07:00
mbohlool
ea042c6ca0 Update go-restful dependency 2017-05-05 13:57:01 -07:00
Dr. Stefan Schimanski
5336588008 apiserver: fix --tls-sni-cert-key doc string 2017-05-05 19:50:03 +02:00
deads2k
bb143d3e33 add integration tests 2017-05-05 10:50:03 -04:00
Kubernetes Submit Queue
99540c6435 Merge pull request #44922 from DirectXMan12/owners/add-directxman12-to-apis-autoscaling
Automatic merge from submit-queue

OWNERS: add directxman12 to pkg/apis/autoscaling

Added directxman12 (current SIG lead of SIG-autoscaling) as a reviewer for pkg/apis/autoscaling.

**Release note**:
```release-note
NONE
```
2017-05-05 06:37:29 -07:00
deads2k
b512073457 handle registered third parties 2017-05-05 09:10:58 -04:00
Jamie Hannaford
9440a68744 Use dedicated Unix User and Group ID types 2017-05-05 14:07:38 +02:00
Cao Shufeng
8b54081939 update the doc of function NewPathRecorderMux 2017-05-05 19:06:17 +08:00
Kubernetes Submit Queue
3f6be95f82 Merge pull request #45378 from mbohlool/c5
Automatic merge from submit-queue

Fix yet another bug in OpenAPI extension generation

A comment extension for a type is ignored if the type already has extensions (e.g. GVK).
2017-05-04 17:32:41 -07:00
mbohlool
bcd0288e60 Fix yet another bug in OpenAPI extension generation 2017-05-04 13:34:40 -07:00
Kubernetes Submit Queue
d22a9c2599 Merge pull request #45321 from caesarxuchao/remove-GetGVK
Automatic merge from submit-queue (batch tested with PRs 45362, 45159, 45321, 45238)

Remove redundent GetObjectKind() defined on types

Embedding TypeMeta is enough.
2017-05-04 13:25:05 -07:00
Chao Xu
5f5a70f65f generated clientset changes
propagate to client-go
update-bazel.sh
2017-05-04 11:30:51 -07:00
Chao Xu
bbb94e42c1 remove registry from testing/fixture.go; update client-gen to not use
registry in the generated clients
2017-05-04 11:30:51 -07:00
Chao Xu
47b410f58b Remove redundent GetObjectKind() defined on top-level types
TypeMeta is embedded in all these types and TypeMeta has GetObjectKind()
method to implement the runtime.Object interface.
2017-05-04 10:31:58 -07:00
Kubernetes Submit Queue
82bc084297 Merge pull request #45169 from ncdc/lister-gen-typo
Automatic merge from submit-queue

Fix typo in lister-gen, regenerate

NamespaeLister -> NamespaceLister

@stevekuznetsov, just for you 😄
2017-05-04 07:24:01 -07:00
Kubernetes Submit Queue
1bfef70836 Merge pull request #44466 from deads2k/server-22-custom-mux
Automatic merge from submit-queue

use our own serve mux that directs how we want

alternative to https://github.com/kubernetes/kubernetes/pull/44405

I really wanted to avoid writing my own, but the gorilla mux works via redirect, which would be a change.  This does exact pattern matches only unless someone explicitly requests a prefix match.

@liggitt happier?
2017-05-04 05:43:53 -07:00
Kubernetes Submit Queue
e1423acc50 Merge pull request #45056 from ericchiang/update-oauth2
Automatic merge from submit-queue

bump(golang.org/x/oauth2): a6bd8cefa1811bd24b86f8902872e4e8225f74c4

As I tackle https://github.com/kubernetes/kubernetes/issues/42654 kubectl's OpenID Connect plugin will start using golang.org/x/oauth2 for refreshing, instead of go-oidc's own hand rolled oauth2 implementation. In preparation, update golang.org/x/oauth2 to include 7374b3f1ec which fixes refreshing with Okta.

We also somehow removed the dependency on `google.golang.org/appengine`. Maybe 8cf58155e4?

cc @kubernetes/sig-auth-pr-reviews
2017-05-03 19:34:14 -07:00
Chao Xu
c984468678 control visibility client-go/pkg/api 2017-05-03 14:04:36 -07:00
deads2k
c837c7fb1a use our own serve mux that directs how we want 2017-05-03 16:21:45 -04:00
Kubernetes Submit Queue
80f26fa8a8 Merge pull request #44523 from caesarxuchao/remove-client-go-api-scheme
Automatic merge from submit-queue

Remove imports of k8s.io/client-go/pkg/api

k8s.io/client-go/pkg/api will be eliminated by #44784, so we need to remove all imports of it.

This PR is large, but mostly simple changes, like:
* using constants defined in the v1 package instead of those in the internal package 
* using k8s.io/client-go/kubernetes/scheme.Codecs/Schemes instead of those in k8s.io/client-go/pkg/api
* using `v1.SchemeGroupVersion` instead of `api.Registry.GroupOrDie(api.GroupName).GroupVersion` in tests
* importing `k8s.io/kubernetes/pkg/api` instead of `k8s.io/client-go/pkg/api` if possible

With this PR https://github.com/kubernetes/kubernetes/pull/45159, the only remaining imports of `k8s.io/client-go/pkg/api` are from k8s.io/metrics.
``` bash
$ git grep "\"k8s.io/client-go/pkg/api\"" | grep -v "staging/src/k8s.io/client-go/pkg/api"
staging/src/k8s.io/metrics/pkg/apis/custom_metrics/install/install.go:25:	"k8s.io/client-go/pkg/api"
Binary file staging/src/k8s.io/metrics/pkg/apis/custom_metrics/types.generated.go matches
staging/src/k8s.io/metrics/pkg/apis/custom_metrics/types.go:22:	"k8s.io/client-go/pkg/api"
staging/src/k8s.io/metrics/pkg/apis/metrics/install/install.go:26:	"k8s.io/client-go/pkg/api"
staging/src/k8s.io/metrics/pkg/apis/metrics/types.go:21:	"k8s.io/client-go/pkg/api"
Binary file staging/src/k8s.io/metrics/pkg/apis/metrics/v1alpha1/zz_generated.conversion.go matches
Binary file staging/src/k8s.io/metrics/pkg/apis/metrics/zz_generated.deepcopy.go matches
staging/src/k8s.io/metrics/pkg/client/clientset_generated/clientset/fake/clientset_generated.go:24:	"k8s.io/client-go/pkg/api"
staging/src/k8s.io/metrics/pkg/client/custom_metrics/client.go:26:	"k8s.io/client-go/pkg/api"
staging/src/k8s.io/metrics/pkg/client/custom_metrics/fake/fake_client.go:24:	"k8s.io/client-go/pkg/api"
```
2017-05-03 10:46:34 -07:00
Kubernetes Submit Queue
df8551acd2 Merge pull request #45115 from deads2k/tpr-07-types
Automatic merge from submit-queue (batch tested with PRs 45272, 45115)

initial types for TPRs

This pull starts creating the types described by https://github.com/kubernetes/community/blob/master/contributors/design-proposals/thirdpartyresources.md .  In the initial pull different names were suggested.  I've started this pull with `CustomResource.apiextensions.k8s.io`.

The structure begins as a separate API server to facilitate rapid prototyping and experimentation, but the end result will be added to the end of the `kube-apiserver` chain as described in https://github.com/kubernetes/community/blob/master/sig-api-machinery/api-extensions-position-statement.md .

Because it is separate to start (not included in any default server), I don't think we need a perfect name, but I'd like to be close.

@kubernetes/sig-api-machinery-misc @enisoc @smarterclayton @erictune
2017-05-03 05:36:59 -07:00
Dr. Stefan Schimanski
b0b711119b apimachinery: rename meta.{ -> UnsafeGuess}KindToResource 2017-05-03 09:49:02 +02:00
Chao Xu
d978f22e04 remove references to client-go/pkg/api 2017-05-02 17:16:06 -07:00
Kubernetes Submit Queue
72a469f3ac Merge pull request #40544 from henriquetruta/broken-podspec-link
Automatic merge from submit-queue

Fixes broken link in PodSpec

The PodSpec reference to NodeSelector misses
the `.md` extension in the file.



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

**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**:

**Release note**:

```release-note
```
2017-05-02 12:45:48 -07:00
Kubernetes Submit Queue
e10c59af41 Merge pull request #43003 from deads2k/server-05-discovery
Automatic merge from submit-queue (batch tested with PRs 45227, 43003, 45231)

separate discovery from the apiserver

This decouples the API discovery handlers from the core API server code.  It separates the code into a new package and clarifies interfaces with existing TPR code.

@kubernetes/sig-api-machinery-pr-reviews
2017-05-02 11:24:53 -07:00
deads2k
641b83877a remove bearer token from headers after we consume it 2017-05-02 14:11:23 -04:00
Kubernetes Submit Queue
2689f033a8 Merge pull request #45222 from sttts/sttts-cut-off-endpoints-from-client-go
Automatic merge from submit-queue (batch tested with PRs 45100, 45152, 42513, 44796, 45222)

apiserver: split endpoint tests from client-go

Use the example apigroup and create its own scheme.

Fixes https://github.com/kubernetes/kubernetes/issues/45209.
2017-05-02 10:35:14 -07:00
Henrique Truta
4a487cbb11 Fixes broken link in PodSpec
The PodSpec reference to NodeSelector misses
 the .md extension in the file.
2017-05-02 13:33:49 -03:00
deads2k
e099f5eee6 separate discovery from the apiserver 2017-05-02 08:50:43 -04:00
deads2k
6a74988f96 image and resources for manual testing 2017-05-02 08:49:21 -04:00
deads2k
c7e68a27be create apiserver for extensions 2017-05-02 08:49:20 -04:00
deads2k
72eef13e3e generated 2017-05-02 08:49:20 -04:00
deads2k
a0b6241159 types 2017-05-02 08:43:34 -04:00
deads2k
ed27887ad2 wire new staging repo 2017-05-02 08:43:31 -04:00
Dr. Stefan Schimanski
67ca42b2d7 apiserver: split endpoint tests from client-go 2017-05-02 12:03:58 +02:00
Kubernetes Submit Queue
cb27476153 Merge pull request #45180 from caesarxuchao/move-metrics-to-staging
Automatic merge from submit-queue (batch tested with PRs 45077, 45180, 34727, 45079, 45177)

Move k8s.io/metrics to staging/

This is to break the cyclic dependency in our code base: kubernetes depends on k8s.io/metrics, which depends on kubernetes/staging/client-go.

@DirectXMan12 i actually moved it to staging because we will need the flexibility to update metrics code directly to do many planned refactors, so the copy of metrics in kubernetes has to be the source of truth.

client-gen is not enabled for the code yet, we can enable it after you port your changes to client-gen.

`make generated_files` is enabled for metrics.
2017-05-01 18:55:11 -07:00
Chao Xu
3294200dc8 move metrics to staging 2017-05-01 16:43:50 -07:00
Andy Goldstein
11e4f149d9 Fix typo in lister-gen, regenerate
NamespaeLister -> NamespaceLister
2017-05-01 12:18:45 -04:00