Commit Graph

6589 Commits

Author SHA1 Message Date
Joel Smith
66b061dad2 Ensure that the runtime mounts RO volumes read-only
Add a feature gate ReadOnlyAPIDataVolumes to a provide a way to
disable the new behavior in 1.10, but for 1.11, the new
behavior will become non-optional.

Also, update E2E tests for downwardAPI and projected volumes
to mount the volumes somewhere other than /etc.
2018-02-01 10:02:29 -07:00
Kubernetes Submit Queue
5440b87778 Merge pull request #58683 from pospispa/566-postpone-pvc-deletion-if-used-in-a-pod-e2e-tests-for-scheduler-changes
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>.

PVC Protection E2E Tests for Failed Scheduling

**What this PR does / why we need it**:
Change in scheduler that causes that scheduling of a pod that uses PVC that is being deleted fails was introduced in:
- https://github.com/kubernetes/kubernetes/pull/55957

This PR adds an E2E test for the above merged PR.

**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**:
N/A

**Release note**:

```release-note
NONE
```
2018-02-01 03:50:48 -08:00
xiangpengzhao
e4fe746491 Auto generated BUILD files. 2018-02-01 17:15:22 +08:00
xiangpengzhao
abdfa7f35f Update test framework featuregates type. 2018-02-01 17:15:12 +08:00
Zihong Zheng
34f8e4e97b Add GCE ingress test case for modified health check 2018-01-31 17:46:14 -08:00
Kubernetes Submit Queue
b260494621 Merge pull request #58643 from MrHohn/e2e-ingress-sync-failure
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 gce-ingress e2e test for sync failure case

**What this PR does / why we need it**:
Add a test that verifies sync failures on some inrgesses would not stop gce ingress controller from syncing others.

Basically:
- Create two ingresses each has something wrong (TLS missing, backend missing etc.).
- Create a normal ingress and test it works.
- Update this ingress and test it takes effect.

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

**Special notes for your reviewer**:
Ref https://docs.google.com/document/d/1E2ufxZGujFCYKYOsvBjb4VMNjBy8CM-MMycoT_UVwIs/edit#heading=h.wxzdzliw64t8.
/assign @rramkumar1 @nicksardo 

**Release note**:

```release-note
NONE
```
2018-01-31 16:05:45 -08:00
Kubernetes Submit Queue
d560f55370 Merge pull request #58623 from MrHohn/use-gce-library-e2e
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 util] Remove static IP functions based on gcloud

**What this PR does / why we need it**:
Use GCE library for static IP instead of calling gcloud in e2e test.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-01-31 14:48:35 -08:00
Kubernetes Submit Queue
00a0c14c82 Merge pull request #58396 from chrisglass/do_not_use_ifupdown
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>.

Do not use ifupdown commands

**What this PR does / why we need it**:
The ifupdown commands (ifup and ifdown) are not useful on many modern
distributions. Instead, the "ip link set" set of commands are standard
linux utilities and should be available everywhere (see
http://baturin.org/docs/iproute2/).

ipupdown utilities have the added quirk that they return 0 on failure,
which makes the changed line fail silently in case ifdown didn't bring
the network down.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-01-31 11:48:03 -08:00
NickrenREN
2a2f88b939 Rename PVCProtection feature gate so that PV protection can share the feature gate with PVC protection 2018-01-31 20:02:01 +08:00
pospispa
52a43b19d8 PVC Protection E2E Tests for Failed Scheduling
The PR [2] introduced a change into a scheduler that causes that scheduling of pods that use PVC that is being deleted fail.

That's why E2E test for the PR [2] is added. This E2E test also addresses the review comment [1].

[1] https://github.com/kubernetes/kubernetes/pull/56931#pullrequestreview-82564849
[2] https://github.com/kubernetes/kubernetes/pull/55957
2018-01-31 10:49:11 +01:00
Chris Glass
5a6de4d22a Do not use ifupdown commands
The ifupdown commands (ifup and ifdown) are not useful on many modern
distributions. Instead, the "ip link set" set of commands are standard
linux utilities and should be available everywhere (see
http://baturin.org/docs/iproute2/).

ipupdown utilities have the added quirk that they return 0 on failure,
which makes the changed line fail silently in case ifdown didn't bring
the network down.

After the interface was brought back up, renew DHCP requests to ensure
the network is actually useable.

Signed-off-by: Chris Glass <chris.glass@canonical.com>
2018-01-31 08:33:43 +01:00
jianglingxia
76e90061a2 reopen #58913 Fix TODO move GetPauseImageNameForHostArch func 2018-01-31 15:06:32 +08:00
Kubernetes Submit Queue
7595560a0c Merge pull request #59077 from rramkumar1/ingress-upgrade-test-patch
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>.

Fixes ci-ingress-gce-upgrade-e2e

**What this PR does / why we need it**:
This PR fixes the broken ci-ingress-gce-upgrade-e2e job. The issue was that the ingress was being deleted by the test framework before the upgraded ingress could properly sync. Therefore, the resources were never cleaned up, which caused test failure. 

```release-note
None
```

cc @MrHohn 
/assign @bowei
2018-01-30 18:45:51 -08:00
Kubernetes Submit Queue
84408378f9 Merge pull request #58174 from filbranden/ipcs1
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>.

Fixes for HostIPC tests to work when Docker has SELinux support enabled.

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

Fixes for HostIPC tests to work when Docker has SELinux support enabled.

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

The core of the matter is to use `ipcs` from util-linux rather than the one from busybox. The typical SELinux policy has enough to allow Docker containers (running under svirt_lxc_net_t SELinux type) to access IPC information by reading the contents of the files under /proc/sysvipc/, but not by using the shmctl etc. syscalls.

The `ipcs` implementation in busybox will use `shmctl(0, SHM_INFO, ...)` to detect whether it can read IPC info (see source code [here](https://git.busybox.net/busybox/tree/util-linux/ipcs.c?h=1_28_0#n138)), while the one in util-linux will prefer to read from the /proc files directly if they are available (see source code [here](https://github.com/karelzak/util-linux/blob/v2.27.1/sys-utils/ipcutils.c#L108)).

It turns out the SELinux policy doesn't allow the shmctl syscalls in an unprivileged container, while access to it through the /proc interface is fine. (One could argue this is a bug in the SELinux policy, but getting it fixed on stable OSs is hard, and it's not that hard for us to test it with an util-linux `ipcs`, so I propose we do so.)

This PR also contains a refactor of the code setting IpcMode, since setting it in the "common options" function is misleading, as on containers other than the sandbox, it ends up always getting overwritten, so let's only set it to "host" in the Sandbox.

It also has a minor fix for the `ipcmk` call, since support for size suffix was only introduced in recent versions of it.

**Release note**:

```release-note
NONE
```
2018-01-30 17:18:52 -08:00
Rohit Ramkumar
4976cb9218 Fixes ci-ingress-gce-upgrade-e2e 2018-01-30 16:55:08 -08:00
Solly Ross
e225bbf1a3 Reset DeferredDiscoveryRESTMapper before use
DeferredDiscoveryRESTMapper won't automatically `Reset` itself before its
initial use, since actually trying to construct the delegate will error
out before it gets a chance to `Reset` itself.  Ergo, we have to
manually call `Reset` before use.
2018-01-30 11:53:20 -05:00
Kubernetes Submit Queue
e5dd857631 Merge pull request #59004 from Random-Liu/skip-rescheduler-test
Automatic merge from submit-queue (batch tested with PRs 57322, 57723, 58706, 59004, 58857). 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>.

Skip rescheduler test.

Skip the rescheduler test per discussion https://github.com/kubernetes/kubernetes/issues/59002.

The test `[sig-scheduling] Rescheduler [Serial] should ensure that critical pod is scheduled in case there is no resources available` has failing for a long time. And the serial suite is never green because of it. https://k8s-testgrid.appspot.com/google-gce#gci-gce-serial

@kubernetes/sig-scheduling-misc 
Signed-off-by: Lantao Liu <lantaol@google.com>



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

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

**Special notes for your reviewer**:

**Release note**:

```release-note
none
```
2018-01-29 20:11:41 -08:00
Kubernetes Submit Queue
b28822286c Merge pull request #58706 from rramkumar1/ingress-downgrade-testing
Automatic merge from submit-queue (batch tested with PRs 57322, 57723, 58706, 59004, 58857). 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 downgrade test for ingress-gce

**What this PR does / why we need it**:
This PR improves the existing downgrade e2e test for ingress-gce. Specifically, we add a test which downgrades ingress from an image built from HEAD to the latest release image.

```release-note
None
```
2018-01-29 20:11:38 -08:00
Walter Fender
e4e4979056 Fix flaky AdmissionWebhook e2e tests.
Several of the tests("It") in the e2e suite reuse the config name.
Since these tests can be running in parallel, causing intermittant
failures.
Changes the test so each test uses a different name.
Restructured the tests to make it easier to make sure the name in a
test is being used consistently.
Fix feedback from @caesarxuchao
Fixed format.
2018-01-29 18:14:08 -08:00
Lantao Liu
10017ee07a Skip rescheduler test.
Signed-off-by: Lantao Liu <lantaol@google.com>
2018-01-30 01:31:48 +00:00
lichuqiang
9ea565e352 update e2e test for resourceQuota support on extended resources 2018-01-30 09:29:29 +08:00
Hemant Kumar
afeb53e5ee Perform resize of mounted volume if necessary
Add e2e test for mounted volume resize
2018-01-29 17:49:50 -05:00
Kubernetes Submit Queue
235714e7f3 Merge pull request #58298 from p0lyn0mial/generic_scaler_scalerfor_continued
Automatic merge from submit-queue (batch tested with PRs 58955, 58968, 58971, 58963, 58298). 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>.

removes the remainder from ScalerFor method

**What this PR does / why we need it**:
this PR removes existing scalers from `ScalerFor` method

**Release note**:

```release-note
NONE
```
2018-01-29 13:48:51 -08:00
Hemant Kumar
1fa8cbc5e4 Improve messaging on resize
- we now provide clear message to user what to do when cloudprovider resizing is finished
  and file system resizing is needed.
- add a event when resizing is successful.
- Use Patch for updating PVCs in both kubelet and controller-manager
- Extract updating pvc util function in one place.
- Only update resize conditions on progress
2018-01-29 15:07:51 -05:00
p0lyn0mial
71eb1ff3b1 removes the remainder from ScalerFor method
all remaining scalers were replaced by GenericScaler exept JobScaler.
It is not clear whether JobScaler could use generic scaler or not.
For more details see the pull request.
2018-01-29 20:02:27 +01:00
Krzysztof Jastrzebski
2c3bfc81e1 Remove unused test for node auto-repair.
This test is testing GKE only feature and should use different
infrastructure.
2018-01-29 16:48:59 +01:00
Kubernetes Submit Queue
da171196d9 Merge pull request #58900 from Random-Liu/fix-psp-test
Automatic merge from submit-queue (batch tested with PRs 58903, 58141, 58900). 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 pod security policy capability test.

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

In our document, we explicitly say:
```
The following fields take a list of capabilities, specified as the capability name in ALL_CAPS without the CAP_ prefix.
```
https://kubernetes.io/docs/concepts/policy/pod-security-policy/

@kubernetes/sig-node-pr-reviews 

**Release note**:
```release-note
none
```
2018-01-26 21:00:38 -08:00
Lantao Liu
49dfaec72e Fix pod security policy capability test. 2018-01-27 01:43:01 +00:00
Rohit Agarwal
d191c57cad Add e2e tests for GPU monitoring. 2018-01-26 15:30:55 -08:00
Kubernetes Submit Queue
c21173d0ea Merge pull request #55792 from dhilipkumars/statefulset-appsv1
Automatic merge from submit-queue (batch tested with PRs 55792, 58342). 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>.

Promote Statefulset controller and its e2e tests to use apps/v1

**What this PR does / why we need it**: 
Promotes the statefulset controller to use to use the latest apps group [apps/v1](https://github.com/kubernetes/kubernetes/pull/53679)


**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 # https://github.com/kubernetes/kubernetes/issues/55714

**Special notes for your reviewer**:

* Listerexpansion for v1 `k8s.io/client-go/listers/apps/v1`  (was recently done for v1beta2)

* `v1beta2` && `v1` had `ObservedGeneration` as `int64` where as `v1beta1` and rest of the code (including conversion) is expecting `ObservedGeneration` to be  `*int64`

```
type StatefulSetStatus struct {
	// observedGeneration is the most recent generation observed for this StatefulSet. It corresponds to the
	// StatefulSet's generation, which is updated on mutation by the API Server.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty" protobuf:"varint,1,opt,name=observedGeneration"`
```

* for kubectl's `rollback` and `history` commands a couple functions have been duplicated to allow us to use `v1` version instead of `v1beta1` for statefulsets, while the older functions are still used by other controllers.  

We should be able to remove these duplicates once all the controllers are moved. 

If this aligns with the plan then i could move other controllers too. 

cc: @kow3ns 

**Release note**:

```release-note
NONE
```
2018-01-26 06:54:33 -08:00
Kubernetes Submit Queue
27d01b5ab9 Merge pull request #57938 from dims/add-binary-configmap
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 binary configmap

Reviving code from https://github.com/kubernetes/kubernetes/pull/33549 submitted by @zreigz

**What this PR does / why we need it**:
Add support for binary files in ConfigMap

**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 #32432

**Special notes for your reviewer**:

**Release note**:

```release-note
ConfigMap objects now support binary data via a new `binaryData` field. When using `kubectl create configmap --from-file`, files containing non-UTF8 data will be placed in this new field in order to preserve the non-UTF8 data. Use of this feature requires 1.10+ apiserver and kubelets.
```
2018-01-26 04:34:33 -08:00
Kubernetes Submit Queue
f31ac9e0b6 Merge pull request #58841 from marun/fix-multizone-volume-owner
Automatic merge from submit-queue (batch tested with PRs 58713, 58841). 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>.

Tag multi-az cluster volume e2e test with sig-storage

Follow-on from #58726 to make it clear that responsibility for the test is shared between @kubernetes/sig-scheduling-pr-reviews  and @kubernetes/sig-storage-pr-reviews.

```release-note
NONE
```

cc: @bsalamat @timothysc
2018-01-25 20:25:37 -08:00
Kubernetes Submit Queue
5e751e4dcf Merge pull request #58713 from vmware/test-bootstrap
Automatic merge from submit-queue (batch tested with PRs 58713, 58841). 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>.

Created bootstrap logic for vSphere test

**What this PR does / why we need it**:
Add bootstrapping logic and Context for vSphere tests. This context can be utilized to hold information like node-vsphere mapping, which needs to be initialized only once per test suit run.

sync.Once takes care of executing bootstrapping only once for all the specs. 'waiting' channel takes care of making sure that parallel test spec executions wait for bootstrapping to finish before moving on.

**Which issue(s) this PR fixes** 
Fixes https://github.com/vmware/kubernetes/issues/437, partly

**Special notes for your reviewer**:
Successfully ran make.
Tested by added additional log messages to bootstrap process (now removed). Made sure bootstrapping logic is getting invoked just once and bootstrapping is done by the time It-blocks are executed.

**Release note**:
```release-note
NONE
```
2018-01-25 20:25:34 -08:00
Maru Newby
a15994f278 Tag multi-az cluster volume e2e test with sig-storage 2018-01-25 16:47:16 -08:00
Kubernetes Submit Queue
c59589c4fe Merge pull request #58782 from mindprince/override-installer-url
Automatic merge from submit-queue (batch tested with PRs 58302, 58782, 58555, 58741). 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 it possible to override the driver installer daemonset url from test-infra.

This will enable things like kubernetes/test-infra#6430

/kind enhancement
/sig testing
/sig scheduling

**Release note**:
```release-note
NONE
```

/assign @jiayingz @vishh
2018-01-25 11:43:52 -08:00
Filipe Brandenburger
46a83c2883 Use ipc-utils container in HostIPC tests.
This ensures the `ipcs` command from util-linux will be used, which
succeeds when Docker is running with SELinux enabled (while the one from
busybox fails.)

Tested: On a host with Docker running with SELinux enabled:

  $ make test-e2e-node REMOTE=true FOCUS="host IPC"

  • [SLOW TEST:17.272 seconds] (passed)
  [k8s.io] Security Context
    when creating a pod in the host IPC namespace
      should show the shared memory ID in the host IPC containers

  • [SLOW TEST:20.419 seconds] (passed)
  [k8s.io] Security Context
    when creating a pod in the host IPC namespace
      should not show the shared memory ID in the non-hostIPC containers

  Ran 2 of 257 Specs in 43.934 seconds
  SUCCESS! -- 2 Passed | 0 Failed | 0 Pending | 255 Skipped
2018-01-25 11:09:16 -08:00
Rohit Agarwal
a959ae636b Make it possible to override the driver installer daemonset url from test-infra. 2018-01-25 09:21:12 -08:00
Maru Newby
7ecf404fc6 Move multizone e2e to sig scheduling path 2018-01-25 08:42:16 -08:00
Kubernetes Submit Queue
a624b94606 Merge pull request #58773 from freehan/neg-e2e-fix
Automatic merge from submit-queue (batch tested with PRs 58661, 58764, 58368, 58739, 58773). 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 neg e2e test

```release-note
NONE
```
2018-01-24 16:38:44 -08:00
Minhan Xia
b114763dc2 fix neg e2e test 2018-01-24 14:12:28 -08:00
Rohit Ramkumar
2c3aba380c Adding downgrade test for ingress-gce 2018-01-24 11:36:08 -08:00
prashima
4aa31c811a Created bootstrap logic for vSphere test
Addressed comments about licensing and usless import

Added comments for public function and struct
2018-01-24 11:14:14 -08:00
mlmhl
229833f2f4 add e2e test for bound/unbound pv/pvc count metrics 2018-01-24 14:36:47 +08:00
Jordan Liggitt
d512e87bb8 Skip unavailable services during e2e remaining content check 2018-01-23 10:26:10 -05:00
Jordan Liggitt
b967d1bc80 Wait for healthy extension server before registering APIService 2018-01-23 10:16:33 -05:00
Davanum Srinivas
df1351f73e Add a e2e test for binary data in configmap 2018-01-23 07:29:07 -05:00
Kubernetes Submit Queue
bd269d7a18 Merge pull request #58506 from bowei/cp-instances
Automatic merge from submit-queue (batch tested with PRs 58412, 56132, 58506, 58542, 58394). 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 Instances to use generated code

```release-note
NONE
```
2018-01-22 22:57:41 -08:00
Bowei Du
02e52da702 Update Instances to use generated code
Update LoadBalancer to use generated code
2018-01-22 16:59:51 -08:00
Rohit Ramkumar
2941c4bcbc Improve the upgrade test for ingress. 2018-01-22 16:44:20 -08:00
Zihong Zheng
59b27a4d2b Add gce-ingress e2e test for sync failure case 2018-01-22 16:25:17 -08:00