Commit Graph

10533 Commits

Author SHA1 Message Date
hzxuzhonghu
8cce8bdc85 make kube-apiserver ServerRunOptions setdefault and Validate before use 2018-04-04 11:19:55 +08:00
nikhiljindal
b6bb1c921b Adding a test for kubemci remove-clusters 2018-04-03 18:15:47 -07:00
Kubernetes Submit Queue
6cd3c08458 Merge pull request #62052 from nikhiljindal/httpsOnly
Automatic merge from submit-queue (batch tested with PRs 61806, 61508, 62075, 62079, 62052). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Adding an e2e test for verifying https-only annotation with kubemci

Fixes https://github.com/GoogleCloudPlatform/k8s-multicluster-ingress/issues/142

Refactoring existing GCE ingress test to be reusable with kubemci.
Similar to https://github.com/kubernetes/kubernetes/pull/61871

cc @G-Harmon @nicksardo @madhusudancs 

```release-note
NONE
```
2018-04-03 17:24:32 -07:00
jennybuckley
3fcc269733 Cleanup CRD/CR confusion in webhook e2e tests 2018-04-03 15:14:30 -07:00
nikhiljindal
146b00911a Adding an e2e test for verifying https-only annotation with kubemci 2018-04-03 14:35:41 -07:00
Rohit Ramkumar
4aafa22930 Update image for ingress downgrade test 2018-04-03 13:21:37 -07:00
Kubernetes Submit Queue
9c40f5b5a6 Merge pull request #62067 from shyamjvs/fix-metrics-printing-bug-in-density
Automatic merge from submit-queue (batch tested with PRs 60983, 62012, 61892, 62051, 62067). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Don't quit without printing API latencies in density test if it failed

This is the reason why we are missing quite some data points in our perf-dash graphs for density test (as I mentioned in https://github.com/kubernetes/kubernetes/issues/62064#issuecomment-378235194)

```release-note
NONE
```

/cc @wojtek-t
2018-04-03 11:33:22 -07:00
Kubernetes Submit Queue
7119cd59b9 Merge pull request #61892 from wojtek-t/fix_e2e_tests_for_regional
Automatic merge from submit-queue (batch tested with PRs 60983, 62012, 61892, 62051, 62067). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Fix e2e tests for regional
2018-04-03 11:33:16 -07:00
Shyam Jeedigunta
a44e335940 Don't quit without printing API latencies in density test if it failed 2018-04-03 17:37:49 +02:00
Kubernetes Submit Queue
6c96dfd81e Merge pull request #61025 from ayushpateria/crd_watch_e2e
Automatic merge from submit-queue (batch tested with PRs 61404, 61025). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Add e2e test for CRD Watch

**What this PR does / why we need it**:
This adds an e2e test to watch for custom resources. 
**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #55538

**Special notes for your reviewer**:
This PR depends on some functions from #60331, and shouldn't be merged before that one gets merged.
**Release note**:

```release-note
Add e2e test for CRD Watch
```
2018-04-03 07:31:08 -07:00
Kubernetes Submit Queue
fb795a3b80 Merge pull request #61404 from hzxuzhonghu/fix-webhook-crd-bug
Automatic merge from submit-queue (batch tested with PRs 61404, 61025). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

bug fix: create/update CRD panic when mutating webhook configured

apiextentions apiserver use its own scheme to create a admission chain before creating the apiextensions apiserver config.
Fixes #61355

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-04-03 07:31:04 -07:00
wojtekt
550cf0f9e3 Introduce multimaster clusters support to e2e framework for GKE 2018-04-03 15:21:20 +02:00
hzxuzhonghu
932a072990 add e2e case for crd webhook 2018-04-03 20:42:44 +08:00
hzxuzhonghu
4c26831147 apiserver's webhook admission use its own scheme 2018-04-03 20:42:38 +08:00
Davanum Srinivas
fd72938dd5 Ensure /etc/hosts has a header always - Fix conformance test
We have 2 scenarios where we copy /etc/hosts
- with host network (we just copy the /etc/hosts from node)
- without host network (create a fresh /etc/hosts from pod info)

We are having trouble figuring out whether a /etc/hosts in a
pod/container has been "fixed-up" or not. And whether we used
host network or a fresh /etc/hosts in the various ways we start
up the tests which are:

- VM/box against a remote cluster
- As a container inside the k8s cluster
- DIND scenario in CI where test runs inside a managed container

Please see previous mis-guided attempt to fix this problem at
ba20e63446 In this commit we revert
the code from there as well.

So we should make sure:
- we always add a header if we touched the file
- we add slightly different headers so we can figure out if we used the
  host network or not.

Update the test case to inject /etc/hosts from node to another path
(/etc/hosts-original) as well and use that to compare.
2018-04-03 08:25:29 -04:00
Kubernetes Submit Queue
817869e78a Merge pull request #62030 from deads2k/server-10-remove-dead
Automatic merge from submit-queue (batch tested with PRs 61498, 62030). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

remove kube-apiserver option that is always force to true

All production flows forced the controllers to true. I don't think that test code should be depending on it either.  Removing the option.

```release-note
NONE
```
2018-04-03 02:02:07 -07:00
Kubernetes Submit Queue
043204b1e5 Merge pull request #61498 from mindprince/delete-in-tree-gpu
Automatic merge from submit-queue (batch tested with PRs 61498, 62030). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Delete in-tree support for NVIDIA GPUs.

This removes the alpha Accelerators feature gate which was deprecated in 1.10 (#57384).
The alternative feature DevicePlugins went beta in 1.10 (#60170).

Fixes #54012

```release-note
Support for "alpha.kubernetes.io/nvidia-gpu" resource which was deprecated in 1.10 is removed. Please use the resource exposed by DevicePlugins instead ("nvidia.com/gpu").
```
2018-04-03 02:02:04 -07:00
Rohit Agarwal
87dda3375b Delete in-tree support for NVIDIA GPUs.
This removes the alpha Accelerators feature gate which was deprecated in 1.10.
The alternative feature DevicePlugins went beta in 1.10.
2018-04-02 20:17:01 -07:00
Christoph Blecker
710c8563b4 Fix go vet errors 2018-04-02 17:57:44 -07:00
Kubernetes Submit Queue
c46738a3f0 Merge pull request #60073 from justaugustus/int-to-int32ptr
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Use `pkg/util/pointer` functions instead of self-written versions

**What this PR does / why we need it**:
Replaces instances of module-written `int(32|64)? --> *int(32|64)?` functions with functions from k8s.io/kubernetes/pkg/util/pointer

**Special notes for your reviewer**:

Here's the grep used, based on the comments in:
* https://github.com/kubernetes/kubernetes/pull/59924#issuecomment-366119396
* https://github.com/kubernetes/kubernetes/issues/59971#issue-297766556

```bash
$ git grep -E 'func\ [^ (]+\([^ ]+\ int(32|64)?\)\ \*int(32|64)?' !(vendor|staging) | grep -v pkg/util/pointer

pkg/apis/apps/v1/defaults_test.go:func newInt32(val int32) *int32 {
pkg/apis/apps/v1beta1/defaults_test.go:func newInt32(val int32) *int32 {
pkg/apis/apps/v1beta2/defaults_test.go:func newInt32(val int32) *int32 {
pkg/apis/autoscaling/v1/defaults_test.go:func newInt32(val int32) *int32 {
pkg/apis/autoscaling/v2beta1/defaults_test.go:func newInt32(val int32) *int32 {
pkg/apis/autoscaling/validation/validation_test.go:func newInt32(val int32) *int32 {
pkg/apis/batch/v1/defaults_test.go:func newInt32(val int32) *int32 {
pkg/apis/batch/v1beta1/defaults_test.go:func newInt32(val int32) *int32 {
pkg/apis/core/v1/defaults_test.go:func newInt(val int32) *int32 {
pkg/apis/core/validation/validation_test.go:func newInt32(val int) *int32 {
pkg/apis/extensions/v1beta1/defaults_test.go:func newInt32(val int32) *int32 {
pkg/controller/deployment/sync_test.go:func intOrStrP(val int) *intstr.IntOrString {
pkg/kubectl/autoscale_test.go:func newInt32(value int) *int32 {
plugin/pkg/admission/security/podsecuritypolicy/admission_test.go:func userIDPtr(i int) *int64 {
plugin/pkg/admission/security/podsecuritypolicy/admission_test.go:func groupIDPtr(i int) *int64 {
test/e2e/apps/deployment.go:func intOrStrP(num int) *intstr.IntOrString {
test/e2e/auth/pod_security_policy.go:func intPtr(i int64) *int64 {
test/integration/deployment/util.go:func intOrStrP(num int) *intstr.IntOrString {
```

**Release note**:

```release-note
NONE
```
/kind cleanup
/cc @php-coder 
/assign @tallclair
2018-04-02 16:22:28 -07:00
Kubernetes Submit Queue
3b82ea6bcd Merge pull request #60597 from cblecker/go-go-go-one-dot-ten
Automatic merge from submit-queue (batch tested with PRs 61096, 61955, 61542, 60597). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Update to use go1.10.1

**What this PR does / why we need it**:
Update to use go1.10.1

**Release note**:
```release-note
Update to use go1.10.1
```
2018-04-02 15:35:12 -07:00
Kubernetes Submit Queue
863d1f5f72 Merge pull request #61987 from nikhiljindal/ingressTest
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Getting error from GetFirewallRule and checking it to fix multicluster ingress test

Fixes https://github.com/kubernetes/kubernetes/pull/61909#issuecomment-377704479

Adding a GetFirewallRuleOrError method that returns the error rather than failing and using that in our multicluster ingress test.

cc @nicksardo @MrHohn @G-Harmon @csbell 

```release-note
NONE
```
2018-04-02 14:06:32 -07:00
nikhiljindal
0f23756d49 Getting error from GetFirewallRule and checking it to fix multicluster ingress test 2018-04-02 10:53:15 -07:00
Satyadeep Musuvathy
86aa5ae9c8 Support custom test configurations 2018-04-02 10:29:36 -07:00
David Eads
ee5bc39c4c remove kube-apiserver option that is always force to true 2018-04-02 12:19:34 -04:00
Ayush Pateria
121bc9c838 Seperate timer durations for expectEvent and expectNoEvent 2018-04-02 19:42:12 +05:30
Ayush Pateria
cbdbcb515b Add e2e test for CRD Watch 2018-04-02 19:40:36 +05:30
Kubernetes Submit Queue
97fdf8ac70 Merge pull request #61895 from atlassian/address-todo
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Use typed events client directly

**What this PR does / why we need it**:
This PR addresses the TODO - the typed events client can be used directly without wrapping.

**Release note**:

```release-note
NONE
```
/kind cleanup
2018-04-02 07:07:50 -07:00
Mikhail Mazurskiy
468655b76a Use typed events client directly 2018-04-01 18:57:29 +10:00
nikhiljindal
cacc9cc87f init annotations if it is nil to fix kubemci e2e test failures 2018-03-31 16:14:38 -07:00
Mikhail Mazurskiy
1f393cdef9 Stop() for Ticker to enable leak-free code 2018-03-31 19:41:43 +11:00
Harry Zhang
2fae40d886 Update bazel 2018-03-31 00:31:32 -07:00
Harry Zhang
187c5bc91e Use initTest for integration to start scheduler
Fix import path

Fix configurator name
2018-03-31 00:28:08 -07:00
Harry Zhang
782a092e2e Use feature gate in integration
Clean up unused import
2018-03-31 00:28:08 -07:00
Kubernetes Submit Queue
7ce753aa73 Merge pull request #61894 from atlassian/misc-cleanups
Automatic merge from submit-queue (batch tested with PRs 61894, 61369). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Use range in loops; misc fixes

**What this PR does / why we need it**:
It is cleaner to use `range` in for loops to iterate over channel until it is closed.

**Release note**:
```release-note
NONE
```
/kind cleanup
2018-03-30 21:16:01 -07:00
Kubernetes Submit Queue
1c008c582c Merge pull request #61909 from nikhiljindal/testMCI
Automatic merge from submit-queue (batch tested with PRs 54997, 61869, 61816, 61909, 60525). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Updating multicluster e2e test to ensure that controller only creates instance groups

Ref https://github.com/kubernetes/ingress-gce/issues/182

Updating the multicluster ingress e2e test to also verify that the controller does not create any other resource than instance group.

I was planning to do that using annotations first, but turns out that we have the right check for annotations: 61d574a2c7/pkg/controller/controller.go (L317) :)

Am using `length(ListResource) == 0` now but have still kept the annotation check.

cc @nicksardo @MrHohn @G-Harmon

**Release note**:
```release-note
NONE
```
2018-03-30 20:13:12 -07:00
Christoph Blecker
9690d44fca Update to use go1.10.1 2018-03-30 15:26:18 -07:00
Kubernetes Submit Queue
718568a94e Merge pull request #61871 from MrHohn/e2e-ingress-gce-shared-test
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

[e2e ingress-gce] Run preshared-cert and backend HTTPS tests with kubemci

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

Make preshared-cert and backside-reencryption tests compatible with kubemci.

Test is currently failing with the symptom described on https://github.com/GoogleCloudPlatform/k8s-multicluster-ingress/issues/131#issuecomment-377098544.

@nikhiljindal @g-harmon 
/hold

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

**Release note**:

```release-note
NONE
```
2018-03-30 14:21:51 -07:00
nikhiljindal
25eb545a3c Updating multicluster test to ensure that controller only creates instance groups 2018-03-30 12:40:54 -07:00
Kubernetes Submit Queue
8a783b0664 Merge pull request #59768 from barney-s/sts-integration
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Adding integration tests for statefulset

**What this PR does / why we need it**:
Creates a base statefulset integration test framework.
Basic tests added.


**Which issue(s) this PR fixes**:
None

**Special notes for your reviewer**:
Cloned pull/52583 and updated it to work with latest API changes.

**Release note**:
None.
2018-03-30 09:35:01 -07:00
Zihong Zheng
34acfcd027 [e2e ingress-gce] Run preshared-cert and backside-reencryption tests with kubemci 2018-03-30 08:52:28 -07:00
Kubernetes Submit Queue
6360192eab Merge pull request #61847 from mengqiy/patch_conflict
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

fix patch conflict detection in apiserver

Patching conflict for merging list with mergeKey is not determined in the correct way. 

```release-note
None
```
2018-03-30 07:55:12 -07:00
Kubernetes Submit Queue
621610d079 Merge pull request #61935 from kawych/master
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Use old resource model in External Metrics API e2e tests

**What this PR does / why we need it**:
Currently e2e tests for External Metrics are failing, because the tests projects are not whitelisted to use new Stackdriver resource model. They will be in a week, but this particular test doesn't have to depend on it.

**Release note**:
```release-note
NONE
```
2018-03-30 06:49:25 -07:00
Karol Wychowaniec
ac7ae3be7c Use old resource model in External Metrics API e2e tests 2018-03-30 14:00:38 +02:00
Kubernetes Submit Queue
ca5f4b2a09 Merge pull request #61936 from kawych/owner
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Add kawych to OWNERS of instrumentation e2e tests

**Release note**:
```release-note
NONE
```
2018-03-30 04:30:36 -07:00
Karol Wychowaniec
c562384ecf Add kawych to OWNERS of instrumentation e2e tests 2018-03-30 12:11:39 +02:00
Kubernetes Submit Queue
e57af2b354 Merge pull request #61760 from bskiba/test-em-sd-clean
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Add e2e test for external metrics with Stackdriver

**What this PR does / why we need it**:
Adds e2e tests for external metrics using Stackdriver adapter.
Rename the file to note that these are Stackdriver tests in anticipation of tests running with fake custom metrics apiserver. Refactor the tests to be more structured.

**Release note**:
```
NONE
```
2018-03-30 02:11:20 -07:00
Kubernetes Submit Queue
f8d37cdaf1 Merge pull request #61920 from resouer/fix-61916
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Add namespace name into e2e event verify function

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

Scheduler now events assigned msg with `ns/podname`, but the e2e is still expect `podname` only.

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

**Special notes for your reviewer**:

cc @Random-Liu @bsalamat 
@kubernetes/sig-scheduling-pr-reviews 

**Release note**:

```release-note
NONE
```
2018-03-30 00:15:37 -07:00
Kubernetes Submit Queue
99fd98a893 Merge pull request #61740 from filbranden/nodetest1
Automatic merge from submit-queue (batch tested with PRs 61482, 61740). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Make systemd service name for kubelet use a timestamp in e2e-node tests.

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

This makes it easier to figure out which execution was last when looking at the output of `systemd list-units kubelet-*.service`.

We try to find the name of the /tmp/node-e2e-* directory and use the same timestamp if we can. Otherwise, we just call Now() again, which isn't as nice (as the unit name and directory name will not match) but will still produce unit names that will be ordered when launching multiple subsequent executions on the same host.


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

**Special notes for your reviewer**:

Tested using `make test-e2e-node REMOTE=true` and then checking `systemctl list-units kubelet-*.service` on the target host.

```
$ systemctl list-units kubelet-*.service
kubelet-20180326T142016.service loaded active exited /tmp/node-e2e-20180326T142016/kubelet --kubeconfig /tmp/node-e2e-20180326T142016/kubeconfig --root-dir /var/lib/kubelet ...
kubelet-20180326T143550.service loaded active exited /tmp/node-e2e-20180326T143550/kubelet --kubeconfig /tmp/node-e2e-20180326T143550/kubeconfig --root-dir /var/lib/kubelet ...
```

The units are sorted in the order they were launched.

**Release note**:

```release-note
NONE
```
2018-03-29 21:10:03 -07:00
Mengqi Yu
ff18af452d fix patch conflict detection in apiserver 2018-03-29 20:05:58 -07:00