Commit Graph

6789 Commits

Author SHA1 Message Date
deads2k
cdb2934bbc remove kubernetes copy of clientcmd types 2017-01-19 07:39:19 -05:00
Klaus Ma
c8c4b81963 Made multi-scheduler graduated to Beta and then v1. 2017-01-19 20:16:01 +08:00
Dr. Stefan Schimanski
3d9449a353 genericapiserver: fix imports 2017-01-19 13:06:47 +01:00
Kubernetes Submit Queue
3166a303c4 Merge pull request #39738 from shashidharatd/federation-e2e
Automatic merge from submit-queue

Move Federation e2e test code to independent package

**What this PR does / why we need it**: Move federation e2e test code to an independent package called e2e_federation. This will help in multiple ways.
- easy to move the federation related code to a separate repo from core.
- one step closer to register/unregister clusters to federation only once during e2e instead of every test case. we need to introduce singleton to register cluster during framework creation which will be handled in subsequent PR.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes # 
Optimize federation e2e suite which takes long time to execute currently.

**Special notes for your reviewer**: I have tried to segregate into multiple commits. request to review commit by commit. also mostly the change is about moving the functions to a new location/package.

**Release note**:

```release-note
```

@madhusudancs @nikhiljindal @colhom
2017-01-18 22:05:20 -08:00
Kubernetes Submit Queue
582aa0d793 Merge pull request #40107 from dashpole/flaky_dynamic_kconfig
Automatic merge from submit-queue

turn on dynamic config for flaky tests

Added dynamic config to inode eviction node e2e tests in #39546, but did not enable it for flaky tests.  This PR enables this feature for the flaky test suite
2017-01-18 20:13:00 -08:00
shashidharatd
85c3f0d6a0 auto-generated bazel BUILD file changes 2017-01-19 08:00:52 +05:30
shashidharatd
d515eb4c9a segrageted federation related test code from e2e.framework 2017-01-19 07:56:30 +05:30
shashidharatd
79ce4cb67d Move some common functions in e2e to e2e.framework for reusability 2017-01-19 07:56:30 +05:30
shashidharatd
62c92678b6 Move all federation e2e testacases to independent package 2017-01-19 07:56:30 +05:30
Kubernetes Submit Queue
9dd96e3120 Merge pull request #39904 from jayunit100/scheduler_factory_iface_2
Automatic merge from submit-queue (batch tested with PRs 39898, 39904)

[scheduler] interface for config

**What this PR fixes**

This PR converts the Scheduler configuration factory into an interface, so that
- the scheduler_perf and scheduler integration tests dont rely on the struct for their implementation
- the exported functionality of the factory (i.e. what it needs to provide to create a scheduler configuration) is completely explicit, rather then completely coupled to a struct.
- makes some parts of the factory immutable, again to minimize possible coupling.  

This makes it easier to make a custom factory in instances where we might specifically want to import scheduler logic without actually reusing the entire scheduler codebase.
2017-01-18 14:31:09 -08:00
Kubernetes Submit Queue
b29d9cdbcf Merge pull request #39898 from ixdy/bazel-release-tars
Automatic merge from submit-queue

Build release tars using bazel

**What this PR does / why we need it**: builds equivalents of the various kubernetes release tarballs, solely using bazel.

For example, you can now do
```console
$ make bazel-release
$ hack/e2e.go -v -up -test -down
```

**Special notes for your reviewer**: this is currently dependent on 3b29803eb5, which I have yet to turn into a pull request, since I'm still trying to figure out if this is the best approach.

Basically, the issue comes up with the way we generate the various server docker image tarfiles and load them on nodes:
* we `md5sum` the binary being encapsulated (e.g. kube-proxy) and save that to `$binary.docker_tag` in the server tarball
* we then build the docker image and tag using that md5sum (e.g. `gcr.io/google_containers/kube-proxy:$MD5SUM`)
* we `docker save` this image, which embeds the full tag in the `$binary.tar` file.
* on cluster startup, we `docker load` these tarballs, which are loaded with the tag that we'd created at build time. the nodes then use the `$binary.docker_tag` file to find the right image.

With the current bazel `docker_build` rule, the tag isn't saved in the docker image tar, so the node is unable to find the image after `docker load`ing it.

My changes to the rule save the tag in the docker image tar, though I don't know if there are subtle issues with it. (Maybe we want to only tag when `--stamp` is given?)

Also, the docker images produced by bazel have the timestamp set to the unix epoch, which is not great for debugging. Might be another thing to change with a `--stamp`.

Long story short, we probably need to follow up with bazel folks on the best way to solve this problem.

**Release note**:

```release-note
NONE
```
2017-01-18 14:24:48 -08:00
David Ashpole
caa9cc0b70 turn on dynamic config for flaky tests 2017-01-18 13:48:47 -08:00
Kubernetes Submit Queue
0fc3f84bf4 Merge pull request #36467 from apelisse/owners-test-e2e_node
Automatic merge from submit-queue

Curating Owners: test/e2e_node

cc @random-liu @timstclair @vishh

In an effort to expand the existing pool of reviewers and establish a
two-tiered review process (first someone lgtms and then someone
experienced in the project approves), we are adding new reviewers to
existing owners files.


If You Care About the Process:
------------------------------

We did this by algorithmically figuring out who’s contributed code to
the project and in what directories.  Unfortunately, that doesn’t work
well: people that have made mechanical code changes (e.g change the
copyright header across all directories) end up as reviewers in lots of
places.

Instead of using pure commit data, we generated an excessively large
list of reviewers and pruned based on all time commit data, recent
commit data and review data (number of PRs commented on).

At this point we have a decent list of reviewers, but it needs one last
pass for fine tuning.

Also, see https://github.com/kubernetes/contrib/issues/1389.

TLDR:
-----

As an owner of a sig/directory and a leader of the project, here’s what
we need from you:

1. Use PR https://github.com/kubernetes/kubernetes/pull/35715 as an example.

2. The pull-request is made editable, please edit the `OWNERS` file to
remove the names of people that shouldn't be reviewing code in the
future in the **reviewers** section. You probably do NOT need to modify
the **approvers** section. Names asre sorted by relevance, using some
secret statistics.

3. Notify me if you want some OWNERS file to be removed.  Being an
approver or reviewer of a parent directory makes you a reviewer/approver
of the subdirectories too, so not all OWNERS files may be necessary.

4. Please use ALIAS if you want to use the same list of people over and
over again (don't hesitate to ask me for help, or use the pull-request
above as an example)
2017-01-18 13:14:11 -08:00
jayunit100
a98d14d2c5 [scheduler] interface for configuration factory, configurator. 2017-01-18 15:06:16 -05:00
Kubernetes Submit Queue
302d3ab1d7 Merge pull request #39625 from deads2k/rbac-36-beta
Automatic merge from submit-queue (batch tested with PRs 39625, 39842)

Add RBAC v1beta1

Add `rbac.authorization.k8s.io/v1beta1`.  This scrubs `v1alpha1` to remove cruft, then add `v1beta1`.  We'll update other bits of infrastructure to code to `v1beta1` as a separate step.

```release-note
The `attributeRestrictions` field has been removed from the PolicyRule type in the rbac.authorization.k8s.io/v1alpha1 API. The field was not used by the RBAC authorizer.
```

@kubernetes/sig-auth-misc @liggitt @erictune
2017-01-18 10:19:11 -08:00
Antoine Pelisse
86248b5f0b Update OWNERS approvers and reviewers: test/e2e_node 2017-01-18 10:16:20 -08:00
Shyam Jeedigunta
cc78a3f428 Passing correct master address to kubemark NPD & authenticating+authorizing it with apiserver 2017-01-18 18:23:23 +01:00
Kubernetes Submit Queue
6dfe5c49f6 Merge pull request #38865 from vwfs/ext4_no_lazy_init
Automatic merge from submit-queue

Enable lazy initialization of ext3/ext4 filesystems

**What this PR does / why we need it**: It enables lazy inode table and journal initialization in ext3 and ext4.

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

**Release note**:
```release-note
Enable lazy inode table and journal initialization for ext3 and ext4
```

**Special notes for your reviewer**:
This PR removes the extended options to mkfs.ext3/mkfs.ext4, so that the defaults (enabled) for lazy initialization are used.

These extended options come from a script that was historically located at */usr/share/google/safe_format_and_mount* and later ported to GO so this dependency to the script could be removed. After some search, I found the original script here: https://github.com/GoogleCloudPlatform/compute-image-packages/blob/legacy/google-startup-scripts/usr/share/google/safe_format_and_mount

Checking the history of this script, I found the commit [Disable lazy init of inode table and journal.](4d7346f7f5). This one introduces the extended flags with this description:
```
Now that discard with guaranteed zeroing is supported by PD,
initializing them is really fast and prevents perf from being affected
when the filesystem is first mounted.
```

The problem is, that this is not true for all cloud providers and all disk types, e.g. Azure and AWS. I only tested with magnetic disks on Azure and AWS, so maybe it's different for SSDs on these cloud providers. The result is that this performance optimization dramatically increases the time needed to format a disk in such cases.

When mkfs.ext4 is told to not lazily initialize the inode tables and the check for guaranteed zeroing on discard fails, it falls back to a very naive implementation that simply loops and writes zeroed buffers to the disk. Performance on this highly depends on free memory and also uses up all this free memory for write caching, reducing performance of everything else in the system. 

As of https://github.com/kubernetes/kubernetes/issues/30752, there is also something inside kubelet that somehow degrades performance of all this. It's however not exactly known what it is but I'd assume it has something to do with cgroups throttling IO or memory. 

I checked the kernel code for lazy inode table initialization. The nice thing is, that the kernel also does the guaranteed zeroing on discard check. If it is guaranteed, the kernel uses discard for the lazy initialization, which should finish in a just few seconds. If it is not guaranteed, it falls back to using *bio*s, which does not require the use of the write cache. The result is, that free memory is not required and not touched, thus performance is maxed and the system does not suffer.

As the original reason for disabling lazy init was a performance optimization and the kernel already does this optimization by default (and in a much better way), I'd suggest to completely remove these flags and rely on the kernel to do it in the best way.
2017-01-18 09:09:52 -08:00
Kubernetes Submit Queue
8decccfbb2 Merge pull request #40038 from deads2k/client-06-move-one
Automatic merge from submit-queue

Start making `k8s.io/client-go` authoritative for generic client packages

Right now, client-go has copies of various generic client packages which produces golang type incompatibilities when you want to switch between different kinds of clients.  In many cases, there's no reason to have two sets of packages.  This pull eliminates the copy for `pkg/client/transport` and makes `client-go` the authoritative copy.

I recommend going by commits, the first just synchronizes the client-go code again so that I could test the copy script to make sure it correctly preserves the original package.

@kubernetes/sig-api-machinery-misc @lavalamp @sttts
2017-01-18 08:24:27 -08:00
deads2k
d1fec7068f generated 2017-01-18 10:35:46 -05:00
deads2k
e74efe41a0 add rbac v1beta1 2017-01-18 09:49:33 -05:00
Kubernetes Submit Queue
d946751924 Merge pull request #40026 from shyamjvs/heapster-rbac-fix
Automatic merge from submit-queue

Added RBAC for heapster in kubemark

Fixes #39952 

cc @wojtek-t @gmarek @deads2k
2017-01-18 06:18:57 -08:00
deads2k
4f915039e4 move pkg/client/transport to client-go 2017-01-18 07:56:01 -05:00
Shyam Jeedigunta
9b0d8b9747 Added RBAC for heapster in kubemark 2017-01-18 13:47:08 +01:00
Clayton Coleman
bcde05753b
Correct import statements 2017-01-17 16:18:18 -05:00
Clayton Coleman
9a2a50cda7
refactor: use metav1.ObjectMeta in other types 2017-01-17 16:17:19 -05:00
Clayton Coleman
36acd90aba
Move APIs and core code to use metav1.ObjectMeta 2017-01-17 16:17:18 -05:00
Clayton Coleman
54d8ed001d
Move ObjectMeta to metav1 2017-01-17 16:17:13 -05:00
Kubernetes Submit Queue
c0a1fa73f5 Merge pull request #39939 from resouer/statefulset
Automatic merge from submit-queue (batch tested with PRs 34763, 38706, 39939, 40020)

Use Statefulset instead in e2e and controller

Quick fix ref: #35534

We should finish the issue to meet v1.6 milestone.
2017-01-17 09:14:51 -08:00
Kubernetes Submit Queue
f7305e6f43 Merge pull request #39974 from deads2k/api-60-move-patch
Automatic merge from submit-queue

Move PatchType to apimachinery/pkg/types

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

`PatchType` is shared by the client and server, they have to agree, and its critical for our API to function.

@smarterclayton @kubernetes/sig-api-machinery-misc
2017-01-17 07:29:06 -08:00
Kubernetes Submit Queue
ea1118aab6 Merge pull request #39969 from shyamjvs/proxy-rbac-fix
Automatic merge from submit-queue (batch tested with PRs 39911, 40002, 39969, 40012, 40009)

Fix RBAC role for kube-proxy in Kubemark

Ref #39959 

This should ensure that kube-proxy (in Kubemark) has the required role and RBAC binding.
@deads2k PTAL

cc @kubernetes/sig-scalability-misc @wojtek-t @gmarek
2017-01-17 06:46:57 -08:00
deads2k
f31ecdd0f7 generated changes 2017-01-17 08:32:05 -05:00
deads2k
26c46971f2 move PatchType to apimachinery 2017-01-17 08:32:05 -05:00
Shyam Jeedigunta
491c26feca Fix RBAC role for kube-proxy in Kubemark 2017-01-17 11:39:00 +01:00
Harry Zhang
a88cbdc52d Update bazel 2017-01-17 16:55:06 +08:00
Dr. Stefan Schimanski
bf307d9948 genericapiserver: cut off pkg/serviceaccount dependency 2017-01-17 09:36:10 +01:00
Harry Zhang
b8678ad130 Use statefulset instead in controller
Rename e2e folder to statefulset
2017-01-17 10:36:37 +08:00
Harry Zhang
4e3444fcde Use statefulset to replace petset 2017-01-17 10:36:37 +08:00
deads2k
8686d67c80 move pkg/util/rand 2017-01-16 16:04:03 -05:00
Kubernetes Submit Queue
6defc30337 Merge pull request #39882 from deads2k/api-59-errors
Automatic merge from submit-queue (batch tested with PRs 38592, 39949, 39946, 39882)

move api/errors to apimachinery

`pkg/api/errors` is a set of helpers around `meta/v1.Status` that help to create and interpret various apiserver errors.  Things like `.NewNotFound` and `IsNotFound` pairings.  This pull moves it into apimachinery for use by the clients and servers.

@smarterclayton @lavalamp First commit is the move plus minor fitting.  Second commit is straight replace and generation.
2017-01-16 10:37:42 -08:00
Kubernetes Submit Queue
4811ad0231 Merge pull request #38592 from krousey/client-context
Automatic merge from submit-queue (batch tested with PRs 38592, 39949, 39946, 39882)

Add optional per-request context to restclient

**What this PR does / why we need it**: It adds per-request contexts to restclient's API, and uses them to add timeouts to all proxy calls in the e2e tests. An entire e2e shouldn't hang for hours on a single API call.

**Which issue this PR fixes**: #38305

**Special notes for your reviewer**:

This adds a feature to the low-level rest client request feature that is entirely optional. It doesn't affect any requests that don't use it. The api of the generated clients does not change, and they currently don't take advantage of this.

I intend to patch this in to 1.5 as a mostly test only change since it's not going to affect any controller, generated client, or user of the generated client.


cc @kubernetes/sig-api-machinery 
cc @saad-ali
2017-01-16 10:37:38 -08:00
deads2k
77b4d55982 mechanical 2017-01-16 09:35:12 -05:00
Kubernetes Submit Queue
8fa23586cf Merge pull request #39918 from liggitt/e2e-examples-permissions
Automatic merge from submit-queue

Fix examples e2e permission check

Ref #39382
Follow-up from #39896

Permission check should be done within the e2e test namespace, not cluster-wide

Also improved RBAC audit logging to make the scope of the permission check clearer
2017-01-16 06:30:29 -08:00
Kubernetes Submit Queue
2652252223 Merge pull request #39867 from Crassirostris/gcl-logging-on-gke
Automatic merge from submit-queue

Include gcl logging test in gke suite
2017-01-14 16:22:14 -08:00
Jordan Liggitt
07e52481e9
Fix examples e2e permission check 2017-01-14 17:22:45 -05:00
Kubernetes Submit Queue
d416e60538 Merge pull request #39609 from jsafrane/remove-test-sleep
Automatic merge from submit-queue

Remove sleep from DynamicProvisioner test.

The comment says that the sleep is there because of 10 minute PV controller
sync. The controller sync is now 15 seconds and it should be quick enough
to hide this in subsequent `WaitForPersistentVolumeDeleted(.. , 20*time.Minute)`
2017-01-13 21:04:51 -08:00
Kubernetes Submit Queue
4744e7ec52 Merge pull request #39889 from Random-Liu/add-docker-1.12-node-e2e
Automatic merge from submit-queue (batch tested with PRs 38427, 39896, 39889, 39871, 39895)

Add docker 1.12 in node e2e.

Add docker 1.12 image in node e2e (including regular node e2e and cri node e2e).

@dchen1107 @yujuhong 
/cc @kubernetes/sig-node-misc
2017-01-13 20:21:38 -08:00
Kubernetes Submit Queue
df4e8053cc Merge pull request #39896 from liggitt/examples-permissions
Automatic merge from submit-queue (batch tested with PRs 38427, 39896, 39889, 39871, 39895)

Grant permissions to e2e examples test service account

ref #39382
2017-01-13 20:21:36 -08:00
Kubernetes Submit Queue
a9f5065833 Merge pull request #39794 from kargakis/updated-unit-tests
Automatic merge from submit-queue

Updated unit tests

@janetkuo updated the flaky unit test to have the same structure with regard to uncasting as the rest of the tests. ptal
2017-01-13 18:39:55 -08:00
Jeff Grafton
bc4b6ac397 Build release tarballs in bazel and add make bazel-release rule 2017-01-13 16:17:44 -08:00
Random-Liu
04e68619ce Add docker 1.12 in node e2e. 2017-01-13 14:58:49 -08:00
Jeff Grafton
14dd0d3bef Add genrule to produce e2e_node.test binary artifact 2017-01-13 14:46:26 -08:00
Jordan Liggitt
9ac2f3a43d
Grant permissions to e2e examples test service account 2017-01-13 17:45:47 -05:00
Kubernetes Submit Queue
6b5d82b512 Merge pull request #37505 from k82cn/use_controller_inf
Automatic merge from submit-queue (batch tested with PRs 39807, 37505, 39844, 39525, 39109)

Made cache.Controller to be interface.

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

#37504
2017-01-13 13:40:41 -08:00
Kubernetes Submit Queue
212234ab3f Merge pull request #39807 from deads2k/client-02-client-go
Automatic merge from submit-queue

run staging client-go update

Chasing to see what real problems we have in staging-client-go.

@sttts you get similar results?
2017-01-13 13:21:19 -08:00
Kubernetes Submit Queue
a6fa5c2bfd Merge pull request #39814 from deads2k/api-58-multi-register
Automatic merge from submit-queue

replace global registry in apimachinery with global registry in k8s.io/kubernetes

We'd like to remove all globals, but our immediate problem is that a shared registry between k8s.io/kubernetes and k8s.io/client-go doesn't work.  Since client-go makes a copy, we can actually keep a global registry with other globals in pkg/api for now.

@kubernetes/sig-api-machinery-misc @lavalamp @smarterclayton @sttts
2017-01-13 12:37:02 -08:00
deads2k
633e9d98fc use apimachinery packages instead of client-go packages 2017-01-13 14:04:54 -05:00
Mik Vyatskov
00aea09b0f Include gcl logging test in gke suite 2017-01-13 15:36:32 +01:00
deads2k
f1176d9c5c mechanical repercussions 2017-01-13 08:27:14 -05:00
Michail Kargakis
846bed027c Fix the overlapping e2e test for deployments
Fix the test to correctly expect the older deployment to be marked as
overlapping since that has the newest selector that overlaps.
2017-01-13 10:23:29 +01:00
Klaus Ma
25fe1e0d82 Made cache.Controller to be interface. 2017-01-13 13:33:23 +08:00
Kubernetes Submit Queue
31483bf546 Merge pull request #39770 from ixdy/ubuntu-slim-base-image
Automatic merge from submit-queue

Update images that use ubuntu-slim base image to :0.6

**What this PR does / why we need it**: `ubuntu-slim:0.4` is somewhat old, being based on Ubuntu 16.04, whereas `ubuntu-slim:0.6` is based on Ubuntu 16.04.1.

**Special notes for your reviewer**: I haven't pushed any of these images yet, so I expect all of the e2e builds to fail. If we're happy with the changes, I can push the images and then re-trigger tests.

**Release note**:

```release-note
NONE
```

cc @aledbf as FYI
2017-01-12 20:39:13 -08:00
Jordan Liggitt
3e14aaf37b
Ensure empty lists don't return nil items fields 2017-01-12 20:09:44 -05:00
Kubernetes Submit Queue
082ce00eca Merge pull request #39478 from rrati/pod-affinity-api-fields
Automatic merge from submit-queue (batch tested with PRs 39803, 39698, 39537, 39478)

[scheduling] Moved pod affinity and anti-affinity from annotations to api fields #25319

Converted pod affinity and anti-affinity from annotations to api fields

Related: #25319
Related: #34508

**Release note**:
```Pod affinity and anti-affinity has moved from annotations to api fields in the pod spec.  Pod affinity or anti-affinity that is defined in the annotations will be ignored.```
2017-01-12 15:06:33 -08:00
Kubernetes Submit Queue
bb2a035b32 Merge pull request #39801 from aleksandra-malinowska/heapster-v1.3.0-beta.0
Automatic merge from submit-queue (batch tested with PRs 39661, 39740, 39801, 39468, 39743)

update heapster version to 1.3.0-beta.0
2017-01-12 13:58:27 -08:00
Kubernetes Submit Queue
ee49906c45 Merge pull request #39661 from NickrenREN/clientset-redundant-modify
Automatic merge from submit-queue

fix redundant alias clientset

remove redundant alias clientset
2017-01-12 13:29:16 -08:00
Robert Rati
6a3ad93d6c [scheduling] Moved pod affinity and anti-affinity from annotations to api
fields. #25319
2017-01-12 14:54:29 -05:00
Kubernetes Submit Queue
1854d48238 Merge pull request #37039 from timothysc/refactor_etcd_to_storage
Automatic merge from submit-queue

Refactor registry etcd to storage

Fixes #17546 

Simple shuffle on naming so any sane new person entering the code base can understand what the actual etcd dependencies are.
2017-01-12 11:15:03 -08:00
Timothy St. Clair
fbc5323dad Refactor registry to use store vs. etcd 2017-01-12 09:23:38 -06:00
Piotr Szczesniak
32cd882090 Revert "Add e2e test for external pv provisioning" 2017-01-12 15:02:09 +01:00
Aleksandra Malinowska
043e809b8f update heapster version to 1.3.0-beta.0 2017-01-12 13:42:31 +01:00
Kubernetes Submit Queue
199af05cd0 Merge pull request #39739 from jszczepkowski/ha-e2e-tests
Automatic merge from submit-queue (batch tested with PRs 39773, 39739)

Fixed cluster validation in e2e tests for HA master.
2017-01-12 04:38:47 -08:00
Kubernetes Submit Queue
1b6d17da24 Merge pull request #39545 from wongma7/external-e2e
Automatic merge from submit-queue (batch tested with PRs 37557, 39545)

Add e2e test for external pv provisioning

fixes https://github.com/kubernetes/kubernetes/issues/36170
2017-01-12 02:36:46 -08:00
Kubernetes Submit Queue
12b344aa7c Merge pull request #39768 from rkouj/check-path-exists
Automatic merge from submit-queue (batch tested with PRs 39768, 39463)

Check if path exists before performing unmount

This is part 3 of an effort to check if path exists before performing an unmount operation.
[Part 1](https://github.com/kubernetes/kubernetes/pull/38547) and [part 2](https://github.com/kubernetes/kubernetes/pull/39311) involved auditing the different volume plugins and refactoring their `TearDownAt()s` to use the common util function/or create one if absent.

The ideal way to do this change would involve refactoring of the `TearDownAt()s` of these plugins and make a common util function that checks path. (The plugins involved in this PR use someway of unmounting a bind mount and unmounting a global path, there is also refactoring needed to consolidate disk_manager of fc, rbd and iscsi). A non-goal part of this effort can also involve refactoring all the `SetupAt()s`

In the interest of time and considering other higher priority issues that I am caught up with, I am unable to give the time the refactoring needs. Hence I've made the minimum change that would give the desired output.

I am tracking the work pending in this issue: https://github.com/kubernetes/kubernetes/issues/39251

```release-note
NONE
```
2017-01-11 20:57:45 -08:00
Kubernetes Submit Queue
18768a4498 Merge pull request #39771 from mikedanese/spam
Automatic merge from submit-queue (batch tested with PRs 39171, 39771)

remove BUILD spammy output

leftover from debugging
2017-01-11 19:37:43 -08:00
Kubernetes Submit Queue
a1f54a8842 Merge pull request #39171 from msau42/tag-e2e-storage
Automatic merge from submit-queue

Add [Volume] tag to all the volume-related E2E tests.

**What this PR does / why we need it**:
Tags all the volume/storage related e2e tests to make it easier to run a volume test suite.

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

**Special notes for your reviewer**:
Please let me know if there are tests that should/should not be included.

**Release note**:
NONE
```release-note
```
2017-01-11 19:24:37 -08:00
NickrenREN
a12dea14e0 fix redundant alias clientset 2017-01-12 10:21:05 +08:00
Dawn Chen
3648eaae04 Revert "controller: unit tests for overlapping and recreate deployments" 2017-01-11 17:33:46 -08:00
Kubernetes Submit Queue
4ac5f278c5 Merge pull request #38742 from timstclair/cri-exec-long
Automatic merge from submit-queue

[CRI] Don't include user data in CRI streaming redirect URLs

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

Avoid userdata in the redirect URLs by caching the {Exec,Attach,PortForward}Requests with a unique token. When the redirect URL is created, the token is substituted for the request params. When the streaming server receives the token request, the token is used to fetch the actual request parameters out of the cache.

For additional security, the token is generated using the secure random function, is single use (i.e. the first request with the token consumes it), and has a short expiration time.

/cc @kubernetes/sig-node
2017-01-11 17:16:07 -08:00
Mike Danese
f269e8a710 remove BUILD spammy output 2017-01-11 15:51:14 -08:00
Kubernetes Submit Queue
9eb7060892 Merge pull request #39088 from kargakis/unit-tests-for-the-d-controller
Automatic merge from submit-queue (batch tested with PRs 39483, 39088, 38787)

controller: unit tests for overlapping and recreate deployments

Belated unit tests for https://github.com/kubernetes/kubernetes/pull/38080 and https://github.com/kubernetes/kubernetes/pull/36748.

@kubernetes/sig-apps-misc
2017-01-11 15:35:46 -08:00
Jeff Grafton
1c2ea28080 Update images that use ubuntu-slim base image to :0.6 2017-01-11 15:07:04 -08:00
rkouj
32766e3b6d Check if path exists before performing unmount 2017-01-11 14:33:05 -08:00
Tim St. Clair
c17f3ee367
Don't include user data in CRI streaming redirect URLs 2017-01-11 13:40:43 -08:00
deads2k
c4fae4e690 mechanical repercussions 2017-01-11 15:20:36 -05:00
Michelle Au
ed06d9e9a1 Tag e2e/pd.go tests with [Volume] 2017-01-11 11:25:21 -08:00
Michelle Au
c822e3e1e8 Add [Volume] tag to all the volume-related E2E tests. 2017-01-11 11:25:21 -08:00
Kubernetes Submit Queue
76b58efcbf Merge pull request #38396 from intelsdi-x/new_portforwardertester_in_test
Automatic merge from submit-queue (batch tested with PRs 39475, 38666, 39327, 38396, 39613)

e2e tests: new portforwardertester with another three tests for case …

PR include:
- add new e2e test cases for BIND_ADDRESS='0.0.0.0'
- add to portforwardertester.go os.Getenv("BIND_ADDRESS") and if not set, it should be localhost for backward compability with existing tests
- for existing tests pass explicity BIND_ADDRESS='localhost'
- rename existing tests

It was mention in the issue: #32128 

cc @mzylowski @pskrzyns
2017-01-11 09:14:56 -08:00
deads2k
6a4d5cd7cc start the apimachinery repo 2017-01-11 09:09:48 -05:00
Kubernetes Submit Queue
14e322cc82 Merge pull request #39547 from copejon/fix-pv-e2e-flake
Automatic merge from submit-queue (batch tested with PRs 39495, 39547)

Tag persistent volume PersistentVolume E2E [Volume][Serial][Flaky]

**What this PR does / why we need it**:
When run parallel with other tests that use PV(C)s, cross-test binding causes flakes.  Add `[Serial]` tag.
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: f
Partly addresses #39119 
 
**Special notes for your reviewer**:
cc @saad-ali @jsafrane @jeffvance
2017-01-10 23:20:10 -08:00
Kubernetes Submit Queue
3f9f7471af Merge pull request #38989 from sjenning/set-qos-field
Automatic merge from submit-queue (batch tested with PRs 39684, 39577, 38989, 39534, 39702)

Set PodStatus QOSClass field

This PR continues the work for https://github.com/kubernetes/kubernetes/pull/37968

It converts all local usage of the `qos` package class types to the new API level types (first commit) and sets the pod status QOSClass field in the at pod creation time on the API server in `PrepareForCreate` and in the kubelet in the pod status update path (second commit).  This way the pod QOS class is set even if the pod isn't scheduled yet.

Fixes #33255

@ConnorDoyle @derekwaynecarr @vishh
2017-01-10 22:24:13 -08:00
Kubernetes Submit Queue
c02412450e Merge pull request #39497 from ymqytw/fix_evictions_test
Automatic merge from submit-queue (batch tested with PRs 39694, 39383, 39651, 39691, 39497)

Fix evictions test

**What this PR does / why we need it**:
Fixes bugs in evictions test. Make vet happy.

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

Ref: #39452

cc: @calebamiles
2017-01-10 21:25:18 -08:00
Kubernetes Submit Queue
3f2a02cf98 Merge pull request #39383 from liggitt/bind-check
Automatic merge from submit-queue (batch tested with PRs 39694, 39383, 39651, 39691, 39497)

Allow rolebinding/clusterrolebinding with explicit bind permission check

Fixes https://github.com/kubernetes/kubernetes/issues/39176
Fixes https://github.com/kubernetes/kubernetes/issues/39258

Allows creating/updating a rolebinding/clusterrolebinding if the user has explicitly been granted permission to perform the "bind" verb against the referenced role/clusterrole (previously, they could only bind if they already had all the permissions in the referenced role via an RBAC role themselves)

```release-note
To create or update an RBAC RoleBinding or ClusterRoleBinding object, a user must:
1. Be authorized to make the create or update API request
2. Be allowed to bind the referenced role, either by already having all of the permissions contained in the referenced role, or by having the "bind" permission on the referenced role.
```
2017-01-10 21:25:13 -08:00
Kubernetes Submit Queue
94cca27385 Merge pull request #36390 from nikhiljindal/cascDelSvc
Automatic merge from submit-queue (batch tested with PRs 38212, 38792, 39641, 36390, 39005)

Updating federated service controller to support cascading deletion

Ref https://github.com/kubernetes/kubernetes/issues/33612

Service controller is special than other federation controllers because it does not use federatedinformer and updater to sync services (it was written before we had those frameworks).
Updating service controller code to instantiate these frameworks and then use deletion helper to perform cascading deletion.
Note that, I havent changed the queuing logic in this PR so we still dont use federated informer to manage the queue. Will do that in the next PR.

cc @kubernetes/sig-federation-misc  @mwielgus @quinton-hoole


```release-note
federation: Adding support for DeleteOptions.OrphanDependents for federated services. Setting it to false while deleting a federated service also deletes the corresponding services from all registered clusters.
```
2017-01-10 19:48:14 -08:00
Kubernetes Submit Queue
ae62c5f047 Merge pull request #38792 from mikedanese/bzl-test
Automatic merge from submit-queue (batch tested with PRs 38212, 38792, 39641, 36390, 39005)

build test binary with bazel

I think... this should work
2017-01-10 19:48:10 -08:00
Kubernetes Submit Queue
234c435827 Merge pull request #39615 from gmarek/density_load_configs
Automatic merge from submit-queue (batch tested with PRs 39695, 37054, 39627, 39546, 39615)

Add configs that run more advanced density and load tests

Wojtek is on vacation this week - @timothysc can you please take a look? It's rather terrible, but I don't have a better idea on how to make parametric tests.

cc @wojtek-t
2017-01-10 18:57:27 -08:00
Kubernetes Submit Queue
a2da4f0cac Merge pull request #39546 from dashpole/dynamic_config_eviction_hard
Automatic merge from submit-queue (batch tested with PRs 39695, 37054, 39627, 39546, 39615)

Use Dynamic Config in e2e_node inode eviction test

Alternative solution to #39249.  Similar to solution proposed by @vishh in #36828.

@Random-Liu @mtaufen
2017-01-10 18:57:26 -08:00
Jeff Grafton
19aafd291c Always --pull in docker build to ensure recent base images 2017-01-10 16:21:05 -08:00
Kubernetes Submit Queue
609e3e3890 Merge pull request #39619 from deads2k/fed-20-rename
Automatic merge from submit-queue (batch tested with PRs 34488, 39511, 39619, 38342, 39491)

rename kubernetes-discovery to kube-aggregator

Rename `kubernetes-discovery` to `kube-aggregator`.  Move and bulk rename.

@kubernetes/sig-api-machinery-misc
2017-01-10 16:07:14 -08:00
Seth Jennings
e2402b781b set qos class field in pod status 2017-01-10 16:31:52 -06:00
ymqytw
28b057ebe9 fix evictions test and refactor the test 2017-01-10 13:43:44 -08:00
Kubernetes Submit Queue
ca50f630d0 Merge pull request #39415 from sttts/sttts-thirdparty-verbs
Automatic merge from submit-queue (batch tested with PRs 39648, 38167, 39591, 39415, 39612)

Add verbs to thirdparty resources in discovery

The namespace controller ignores thirdparty resources right now because verbs are not set. This PR sets a static list of verbs.

Moreover, integration tests are added for the discovery info of thirdparty resources.

/cc @zhouhaibing089
2017-01-10 13:33:14 -08:00
Kubernetes Submit Queue
458110ec36 Merge pull request #39648 from nikhiljindal/delFed14
Automatic merge from submit-queue

Deleting federation-util-14.go that is not being used anywhere

We have the same code in federation-util.go

cc @mwielgus @madhusudancs
2017-01-10 13:19:47 -08:00
Kubernetes Submit Queue
7c3fff1a95 Merge pull request #39551 from chrislovecnm/reconciler-time-increases
Automatic merge from submit-queue (batch tested with PRs 39628, 39551, 38746, 38352, 39607)

Increasing times on reconciling volumes fixing impact to AWS.

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

We are currently blocked by API timeouts with PV volumes.  See https://github.com/kubernetes/kubernetes/issues/39526.  This is a workaround, not a fix.

**Special notes for your reviewer**:

A second PR will be dropped with CLI cobra options in it, but we are starting with increasing the reconciliation periods.  I am dropping this without major testing and will test on our AWS account. Will be marked WIP until I run smoke tests.

**Release note**:

```release-note
Provide kubernetes-controller-manager flags to control volume attach/detach reconciler sync.  The duration of the syncs can be controlled, and the syncs can be shut off as well. 
```
2017-01-10 11:54:15 -08:00
Jordan Liggitt
a2670d3b9d
Allow rolebinding/clusterrolebinding with explicit bind permission check 2017-01-10 14:34:33 -05:00
Dominika Krzyszczyk
32660dcd6b e2e tests: new portforwardertester with another three tests for case 0.0.0.0 and also pack all tests in seperate functions 2017-01-10 19:50:48 +01:00
deads2k
453651cbfc rename kubernetes-discovery to kube-aggregator 2017-01-10 12:27:42 -05:00
Seth Jennings
4c30459e49 switch from local qos types to api types 2017-01-10 10:54:30 -06:00
Jerzy Szczepkowski
c74e664d42 Fixed cluster validation in e2e tests for HA master.
Fixed cluster validation in e2e tests for HA master.
2017-01-10 17:11:37 +01:00
Michail Kargakis
43159a48f3 Fix the overlapping e2e test for deployments
Fix the test to correctly expect the older deployment to be marked as
overlapping since that has the newest selector that overlaps.
2017-01-10 12:57:38 +01:00
nikhiljindal
7bc22d7e65 Deleting federation-util-14.go that is not being used anywhere 2017-01-09 17:43:58 -08:00
nikhiljindal
9efa7f4751 Adding e2e test 2017-01-09 17:08:53 -08:00
chrislovecnm
a973c38c7d The capability to control duration via controller-manager flags,
and the option to shut off reconciliation.
2017-01-09 16:47:13 -07:00
David Ashpole
c3951a72ab use dynamic config to set eviction hard threshold 2017-01-09 15:27:12 -08:00
Mike Danese
c2b5007f1c build test binary with bazel 2017-01-09 14:39:15 -08:00
Jon Cope
f85ef3b83d Tag persistent volume GCE tests [Serial]
Added [Volume] tag per issue #35542; added [Flaky] to GCE tests until confirmed fixed.  Added [Serial] to NFS to address possible cross test contamination.
2017-01-09 15:31:50 -06:00
Kubernetes Submit Queue
d726434330 Merge pull request #39516 from shyamjvs/fix-kubemark-e2e
Automatic merge from submit-queue (batch tested with PRs 39394, 38270, 39473, 39516, 36243)

Modified run-gcloud-compute-with-retries and used it wherever possible in kubemark

This PR fixes #39335 
Simple changes fixing flaky issues within kubemark.

@kubernetes/sig-scalability-misc @wojtek-t @gmarek
2017-01-09 12:05:23 -08:00
Kubernetes Submit Queue
125bf9c164 Merge pull request #38270 from resouer/fix-zone
Automatic merge from submit-queue (batch tested with PRs 39394, 38270, 39473, 39516, 36243)

Fix wrong skipf parameter

**How to reproduce**

When run e2e test, it reports `%!!(MISSING)d(MISSING)`:
```
STEP: Checking for multi-zone cluster.  Zone count = 1
Dec  6 14:16:43.272: INFO: Zone count is %!!(MISSING)d(MISSING), only run for multi-zone clusters, skipping test
[AfterEach] [k8s.io] Multi-AZ Clusters
```

We need to pass a string parameter to `SkipUnlessAtLeast`
2017-01-09 12:05:19 -08:00
Matthew Wong
522b4b3f81 Add expectedSize arg to testDynamicProvisioning 2017-01-09 12:16:33 -05:00
gmarek
2e79abe542 Add configs that run more advanced density and load tests 2017-01-09 15:33:15 +01:00
Jan Safranek
46fb417299 Remove sleep from DynamicProvisioner test.
The comment says that the sleep is there because of 10 minute PV controller
sync. The controller sync is now 15 seconds and it should be quick enough
to hide this in subsequent WaitForPersistentVolumeDeleted(.. , 20*time.Minute)
2017-01-09 10:48:21 +01:00
Tim Hockin
52c07683ef Merge pull request #39448 from bowei/remove-dns
Remove dns
2017-01-06 17:31:05 -08:00
Shyam Jeedigunta
312e2f85a6 run-gcloud-compute-with-retries in kubemark handles resource already exists case 2017-01-06 23:21:15 +01:00
Matthew Wong
7184977c54 Add e2e test for external pv provisioning 2017-01-06 17:07:34 -05:00
Kubernetes Submit Queue
85ad3045be Merge pull request #39349 from shyamjvs/rbac-for-kubemark
Automatic merge from submit-queue

Updated kubemark with RBAC for controllers, proxy and kubelet

Fixes issue #39244 

@kubernetes/sig-scalability-misc @wojtek-t @gmarek
2017-01-06 13:42:54 -08:00
Bowei Du
ba215e2bf2 Result of hack/update-all.sh 2017-01-06 13:08:56 -08:00
Bowei Du
21f84db48f Remove reference to dns code from e2e test
This reference was not necessary and avoids having to vendor dns
back into Kubernetes for now.
2017-01-06 12:57:46 -08:00
Kubernetes Submit Queue
5fc2b3522c Merge pull request #39132 from madhusudancs/fed-newtest-refactor-develop-sh
Automatic merge from submit-queue

[Federation] Recompute registry name and version tag in the federation up script.sh and a bunch of other fixes.
2017-01-06 09:26:08 -08:00
Kubernetes Submit Queue
9ce93ed50a Merge pull request #39496 from stevekuznetsov/skuznets/fix-e2e-container-context
Automatic merge from submit-queue (batch tested with PRs 39493, 39496)

Use privileged containers for host path e2e tests

Test containers need to run as spc_t in order to interact with the host
filesystem under /tmp, as the tests for HostPath are doing. Docker will
transition the container into this domain when running the container as
privileged.

Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>

Currently, this test fails with AVC denials like:
```
time->Thu Jan  5 10:17:51 2017
type=SYSCALL msg=audit(1483629471.846:6623): arch=c000003e syscall=257 success=no exit=-13 a0=ffffffffffffff9c a1=c820010120 a2=80241 a3=1a4 items=0 ppid=4112 pid=4130 auid=4294967295 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=4294967295 comm="mt" exe="/mt" subj=system_u:system_r:svirt_lxc_net_t:s0:c123,c328 key=(null)
type=AVC msg=audit(1483629471.846:6623): avc:  denied  { write } for  pid=4130 comm="mt" name="sub-path" dev="xvda2" ino=118491348 scontext=system_u:system_r:svirt_lxc_net_t:s0:c123,c328 tcontext=system_u:object_r:container_runtime_tmp_t:s0 tclass=dir
```

```release-note
NONE
```

/cc @ncdc @pmorie
2017-01-06 08:44:20 -08:00
Madhusudan.C.S
48f79cf600 Quote a bash variable, fix a typo and add some additional logging. 2017-01-06 19:17:48 +05:30
Harry Zhang
993a99dce9 Fix wrong skipf parameter 2017-01-06 09:45:26 +00:00
Shyam Jeedigunta
ce8c207328 Updated kubemark with RBAC for controller-manager, kubecfg, kubelet and proxy 2017-01-06 08:54:54 +01:00
Steve Kuznetsov
d60cb81f7f
Use privileged containers for host path e2e tests
Test containers need to run as spc_t in order to interact with the host
filesystem under /tmp, as the tests for HostPath are doing. Docker will
transition the container into this domain when running the container as
privileged.

Signed-off-by: Steve Kuznetsov <skuznets@redhat.com>
2017-01-05 17:24:09 -05:00
Jeff Grafton
20d221f75c Enable auto-generating sources rules 2017-01-05 14:14:13 -08:00
Jeff Grafton
f8288ed1f3 Create BUILD files in top-level subdirectories 2017-01-05 14:14:12 -08:00
Jeff Grafton
a53c5f2a4f use gazel to autofix formatting 2017-01-05 14:14:12 -08:00
deads2k
4d7fcae85a mechanicals 2017-01-05 11:14:27 -05:00
Kubernetes Submit Queue
eb8739d3c1 Merge pull request #39311 from rkouj/refactor-tear-down-at
Automatic merge from submit-queue

Check if pathExists before performing Unmount

Unmount operation should not fail if path does not exist

Part two of: https://github.com/kubernetes/kubernetes/pull/38547
Plugins status captured here: https://github.com/kubernetes/kubernetes/issues/39251

cc: @saad-ali
2017-01-04 18:10:30 -08:00
Kubernetes Submit Queue
f4a8713088 Merge pull request #36229 from wojtek-t/bump_etcd_version
Automatic merge from submit-queue (batch tested with PRs 36229, 39450)

Bump etcd to 3.0.14 and switch to v3 API in etcd.

Ref #20504

**Release note**:

```release-note
Switch default etcd version to 3.0.14.
Switch default storage backend flag in apiserver to `etcd3` mode.
```
2017-01-04 17:36:06 -08:00
Kubernetes Submit Queue
a104229e1a Merge pull request #38981 from liggitt/remove-rbac-user-all
Automatic merge from submit-queue (batch tested with PRs 39408, 38981)

Remove RBAC UserAll

* Removes special handling of User * subjects in rolebinding matching evaluation
* Converts v1alpha1 rolebindings to `User *` subjects to `Group system:authenticated` subjects for backwards compatibility

```release-note
RBAC's special handling of the User subject named "*" in RoleBinding and ClusterRoleBinding objects is being deprecated and will be removed in v1beta1. Existing v1alpha1 role bindings to User "*" will be converted to the group "system:authenticated". To match unauthenticated requests, RBAC role bindings must explicitly bind to the group "system:unauthenticated".
```
2017-01-04 16:14:05 -08:00
Kubernetes Submit Queue
06de081d96 Merge pull request #39408 from liggitt/invalid-token-401
Automatic merge from submit-queue

Ensure invalid token returns 401 error, not 403

fixes #39267

If a user attempts to use a bearer token, and the token is rejected, the authenticator should return an error. This distinguishes requests that did not provide a bearer token (and are unauthenticated without error) from ones that attempted to, and failed.
2017-01-04 15:18:18 -08:00
Jordan Liggitt
b8c2ad6d42
Deprecate RBAC UserAll, convert v1alpha1 User * rolebindings to Group system:authenticated 2017-01-04 17:11:16 -05:00
Jordan Liggitt
0902c55c8b
Ensure invalid token returns 401 error 2017-01-04 11:37:05 -05:00
deads2k
ca58ec0237 mechanical changes for move 2017-01-04 10:27:05 -05:00
Dr. Stefan Schimanski
b76958d75a Add verbs to thirdparty resources in discovery 2017-01-04 14:21:40 +01:00
Kubernetes Submit Queue
38d57e5a71 Merge pull request #39355 from kargakis/update-rc-manager
Automatic merge from submit-queue

Share rc cache from the rc manager

@kubernetes/sig-apps-misc @hodovska
2017-01-04 05:18:29 -08:00
Kubernetes Submit Queue
f143ce01e9 Merge pull request #39204 from peay/cronjob-active-forever
Automatic merge from submit-queue

Remove jobs that do not exist from active list of CronJob

**What this PR does / why we need it**: This PR modifies the controller for CronJob to remove from the active job list any job that does not exist anymore, to avoid staying blocked in active state forever. See #37957.

**Which issue this PR fixes**: fixes #37957 

**Special notes for your reviewer**:

**Release note**:

```
```
2017-01-04 03:16:37 -08:00
Kubernetes Submit Queue
819535b96a Merge pull request #36245 from fraenkel/env_configmap
Automatic merge from submit-queue (batch tested with PRs 38433, 36245)

Allow pods to define multiple environment variables from a whole ConfigMap

Allow environment variables to be populated from ConfigMaps

- ConfigMaps represent an entire set of EnvVars
- EnvVars can override ConfigMaps


fixes #26299
2017-01-03 23:28:09 -08:00
Kubernetes Submit Queue
f95362f953 Merge pull request #39367 from jsafrane/sudo
Automatic merge from submit-queue (batch tested with PRs 39284, 39367)

e2e: Use sudo to start/stop kubelet service

It seems that user 'jenkins' does not have permissions to manage services. sudo is already used to e.g. check iptables in https://github.com/kubernetes/kubernetes/blob/master/test/e2e/service.go#L402

Fixes #37956
2017-01-03 19:20:10 -08:00
Kubernetes Submit Queue
3a26058298 Merge pull request #39313 from MrHohn/e2e-service-util
Automatic merge from submit-queue (batch tested with PRs 39280, 37350, 39389, 39390, 39313)

Moves e2e service util functions into service_util.go and cleans up

Basically moves codes into a central place for service util functions.

Some other codes are touched mostly only due to this migration. Also put a bunch of network reachability utils functions into network_utils.go. They seem somehow redundant, may consider combine they later.

@bowei @freehan
2017-01-03 18:25:16 -08:00
Kubernetes Submit Queue
94d4ba7c82 Merge pull request #39104 from deads2k/api-57-admission-all-initializers
Automatic merge from submit-queue (batch tested with PRs 39001, 39104, 35978, 39361, 39273)

refactored admission to avoid internal client references

Refactored admission to avoid internal client references.  This required switching to plugin initializers for them.  And that required some rewiring of the plugin initializers. 

Technically I can decouple from the other two commits, but I'm optimistic that those will go through easy. This is slightly move invasive, but I'd like to shoot for pre-christmas to avoid new admission plugins coming through and breaking bits.

@sttts @derekwaynecarr
2017-01-03 17:18:06 -08:00
Zihong Zheng
e5944f56dc Moves e2e service util functions into service_util.go and cleans up test codes 2017-01-03 15:36:15 -08:00
peay
d8d69d1a36 Remove jobs that do not exist from active list of CronJob 2017-01-03 23:12:50 +00:00
deads2k
2861509b6d refactored admission to avoid internal client references 2017-01-03 15:50:12 -05:00
Kubernetes Submit Queue
d6dbd50909 Merge pull request #37093 from simonswine/fix-tolerate-unready-endpoints-pods-terminating
Automatic merge from submit-queue (batch tested with PRs 39092, 39126, 37380, 37093, 39237)

Endpoints with TolerateUnready annotation, should list Pods in state terminating

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

We are using preStop lifecycle hooks to gracefully remove a node from a cluster. This hook is potentially long running and after the preStop hook is fired, the DNS resolution of the soon to be stopped Pod is failing, which causes a failure there.

**Special notes for your reviewer**:

Would be great to backport that to 1.4, 1.3 

**Release note**:

```release-note
Endpoints, that tolerate unready Pods, are now listing Pods in state Terminating as well
```

@bprashanth
2017-01-03 09:45:24 -08:00
Kubernetes Submit Queue
834f193b25 Merge pull request #39092 from deads2k/rbac-31-remove-abac
Automatic merge from submit-queue

remove abac

Remove the abac authorizer as an authorizer for e2e.
2017-01-03 09:04:52 -08:00
Michael Fraenkel
2d803afc98 ConfigMaps populate environment variables 2017-01-03 11:02:15 -05:00
Michail Kargakis
e5b586b5b0 Share rc cache from the rc manager 2017-01-03 16:59:09 +01:00
Kubernetes Submit Queue
123026aa28 Merge pull request #39350 from sttts/sttts-pkg-apiserver-move
Automatic merge from submit-queue (batch tested with PRs 39075, 39350, 39353)

Move pkg/apiserver to pkg/genericapiserver/api
2017-01-03 07:40:28 -08:00
deads2k
3a265d0eec add permissions to kubectl test for rbac 2017-01-03 09:59:13 -05:00
Dr. Stefan Schimanski
2d58ffc129 Move pkg/{apiserver -> genericapiserver/api} 2017-01-03 14:54:03 +01:00
Christian Simon
b44de1ef27 Fix: With TolerateUnready set, endpoints are still listed for a Pod in state terminating
* Otherwise it prevents long running task in a preStop hook to succeed,
that require DNS resolution
2017-01-03 13:00:15 +00:00
Jan Safranek
309311fb3d e2e: Use sudo to start/stop kubelet service
It seems that user 'jenkins' does not have permissions to manage services.
2017-01-03 12:10:46 +01:00
Kubernetes Submit Queue
76dfee04f5 Merge pull request #38615 from jsafrane/worker-thread
Automatic merge from submit-queue (batch tested with PRs 39150, 38615)

Add work queues to PV controller

PV controller should not use Controller.Requeue, as as it is not available in
shared informers. We need to implement our own work queues instead, where we
can enqueue volumes/claims as we want.
2017-01-02 08:04:29 -08:00
Kubernetes Submit Queue
856c3623b5 Merge pull request #38879 from copejon/test-disruptive-kubelet
Automatic merge from submit-queue

Add Persistent Volume E2E in the context of a disrupted kubelet

This PR adds a test suite for persistent volumes affected by a disrupted kubelet.  Two cases are presented:

1.  A volume mounted via PVC remains accessible after a kubelet restart.
2.  When a pod is deleted while the kubelet is down, the mounted volume is unmounted successfully.
2017-01-02 06:45:52 -08:00
Jan Safranek
0fd5f2028d Add work queues to PV controller
PV controller should not use Controller.Requeue, as as it is not available in
shared informers. We need to implement our own work queues instead where we
can enqueue volumes/claims as we want.
2017-01-02 15:17:24 +01:00
Jan Safranek
eb1c0474f4 Remove jsafrane from some tests
I do not know anything about ESIPP nor clouddns and I have never touched
these tests. It would be better to assign flakes to someone else.
2017-01-02 13:41:51 +01:00
rkouj
8cec46e8ca Check if pathExists before performing Unmount 2016-12-29 18:06:43 -08:00
Kubernetes Submit Queue
274a9f0f70 Merge pull request #38927 from luxas/remove_maintainer
Automatic merge from submit-queue

Remove all MAINTAINER statements in the codebase as they are deprecated

**What this PR does / why we need it**:
ref: https://github.com/docker/docker/pull/25466

**Release note**:

```release-note
Remove all MAINTAINER statements in Dockerfiles in the codebase as they are deprecated by docker
```
@ixdy @thockin (who else should be notified?)
2016-12-29 16:41:24 -08:00
Mike Danese
161c391f44 autogenerated 2016-12-29 13:04:10 -08:00
Kubernetes Submit Queue
99939d360a Merge pull request #39278 from jszczepkowski/ha-e2e-zones
Automatic merge from submit-queue

Added e2e test for HA master that creates multizone workers.
2016-12-29 02:06:45 -08:00
Jerzy Szczepkowski
cdd8ce7b20 Added e2e test for HA master that creates multizone workers.
Added e2e test for HA master that creates multizone workers.
2016-12-29 09:35:01 +01:00
Kubernetes Submit Queue
cc8065f1f1 Merge pull request #39266 from zmerlynn/fix-kubectl-rbac
Automatic merge from submit-queue

Remove system:anonymous check from kubectl test

This verbiage doesn't appear when the cluster is `AlwaysAllow` (and just makes the check more brittle).

Follow-on to #39263, this is the last (consistent) failure on [kops-aws](https://k8s-testgrid.appspot.com/google-aws#kops-aws&sort-by-failures=)
2016-12-28 10:50:30 -08:00
Zach Loafman
4465068462 Remove system:anonymous check from kubectl test
This verbiage doesn't appear when the cluster is AlwaysAllow
2016-12-28 00:31:03 -08:00
Kubernetes Submit Queue
69ddd8eb27 Merge pull request #39247 from wojtek-t/optimize_controller_manager_memory
Automatic merge from submit-queue

Avoid unnecessary memory allocations

Low-hanging fruits in saving memory allocations. During our 5000-node kubemark runs I've see this:

ControllerManager:
- 40.17% k8s.io/kubernetes/pkg/util/system.IsMasterNode
- 19.04% k8s.io/kubernetes/pkg/controller.(*PodControllerRefManager).Classify

Scheduler:
- 42.74% k8s.io/kubernetes/plugin/pkg/scheduler/algrorithm/predicates.(*MaxPDVolumeCountChecker).filterVolumes

This PR is eliminating all of those.
2016-12-28 00:02:59 -08:00
CJ Cullen
345d652598 Tolerate a Forbidden error in e2e RBAC RoleBinding setup. 2016-12-27 20:11:14 -08:00
rkouj
d5f7610b82 Refactor operation_executor to make it unit testable 2016-12-27 15:12:16 -08:00
Wojciech Tyczynski
d1292a7397 Optimize memory allocations in controller manager 2016-12-27 16:11:11 +01:00
Kubernetes Submit Queue
a1265e0864 Merge pull request #37538 from resouer/fix-e2e-respect-id
Automatic merge from submit-queue

CreateNodeSelectorPods should respect parameter

Fix (1): `CreateNodeSelectorPods` should respect parameter `id`.

The existing e2e does not break because it happened use "node-selector" as id, which  is the same as the hard coded value.

Fix (2): The current `CreateNodeSelectorPods` does not use `nodeSelector` parameter, it hard coded a label instead.

The reason current e2e does not influenced because we happened use the same label: https://github.com/kubernetes/kubernetes/blob/master/test/e2e/cluster_size_autoscaling.go#L177

Found these bugs during testing #36238
2016-12-27 04:43:46 -08:00
Kubernetes Submit Queue
1ee7163308 Merge pull request #36802 from brendandburns/i18n
Automatic merge from submit-queue

Begin paths for internationalization in kubectl

This is just the first step, purposely simple so we can get the interface correct.

@kubernetes/sig-cli @deads2k
2016-12-24 13:09:12 -08:00
Brendan Burns
277306449b Add initial translation support. 2016-12-23 20:45:52 -08:00
Kubernetes Submit Queue
5f0ece92de Merge pull request #39008 from brendandburns/unicode
Automatic merge from submit-queue

Support loading UTF16 files if a byte-order-mark is present

Add support in kubectl for loading UTF16 encoded files if they have a correct BOM (Byte-Order-Mark https://en.wikipedia.org/wiki/Byte_order_mark) at the beginning
of the file. Falls back on UTF8 encoding, if no understandable BOM is present.

Fixes part of https://github.com/kubernetes/kubernetes/issues/39007

@fabianofranz @deads2k @kubernetes/sig-cli-misc
2016-12-22 22:11:13 -08:00
Kubernetes Submit Queue
af54124f23 Merge pull request #35676 from krmayankk/contr-ref
Automatic merge from submit-queue (batch tested with PRs 39059, 39175, 35676, 38655)

ReplicaSet has onwer ref of the Deployment that created it

**What this PR does / why we need it**:
This enabled garbage collection for ReplicaSets and ensures they are owned by their respective Deployment objects.

fixes https://github.com/kubernetes/kubernetes/issues/33845

This is an initial PR to get feedback. Will update this quickly with unit tests if this seems like in the right direction
2016-12-22 18:50:32 -08:00
Kubernetes Submit Queue
dba16d052c Merge pull request #39006 from fabianofranz/issues_38834
Automatic merge from submit-queue

In-cluster configs must take flag overrides into account

**What this PR does / why we need it**: Some flags must override in-cluster configs if provided to `kubectl` inside a cluster.

**Which issue this PR fixes**: Fixes https://github.com/kubernetes/kubernetes/issues/38834

**Release note**:
```release-note
Fixed a bug where the --server, --token, and --certificate-authority flags were not overriding the related in-cluster configs when provided in a `kubectl` call inside a cluster.
```
2016-12-22 17:42:27 -08:00
Mayank Kumar
777977612b ReplicaSet has owner ref of the Deployment that created it 2016-12-22 16:45:50 -08:00
deads2k
2444e0f270 tolerate missing subjectaccessreview in e2e 2016-12-22 14:03:57 -05:00
Fabiano Franz
bdea92bccd In-cluster configs must take flag overrides into account 2016-12-22 14:22:01 -02:00
Kubernetes Submit Queue
fc41bc6ec6 Merge pull request #39091 from deads2k/api-54-move-authn
Automatic merge from submit-queue

remove unneeded authenticator dependencies from genericapiserver

Refactors the authenticator options to remove unneeded dependencies.

@sttts
2016-12-22 06:48:24 -08:00
Kubernetes Submit Queue
8e7154502a Merge pull request #39094 from deads2k/rbac-32-finish-e2es
Automatic merge from submit-queue (batch tested with PRs 39146, 39094)

cleanup last e2e authorization failures

Builds on https://github.com/kubernetes/kubernetes/pull/39080.  This adds rbac role bindings during e2e tests for test that use SA permissions to loopback to the API server.

Assigned to me until its ready.
2016-12-22 05:30:19 -08:00
deads2k
ab1b77673f decouple genericapiserver from non-generic authenticator 2016-12-22 07:48:08 -05:00
Random-Liu
a719a7d7e7 Do not use sudo when untar node e2e tar ball. 2016-12-21 16:28:33 -08:00
Brendan Burns
8e561d9ae7 Add support for loading utf16 files. 2016-12-21 14:57:26 -08:00
deads2k
d9a4cfc09f fix e2e tests which use SAs for permissions 2016-12-21 16:25:32 -05:00
Jeff Grafton
30a5efa33b Add flag to node e2e test specifying location of ssh privkey 2016-12-21 11:52:41 -08:00
Kubernetes Submit Queue
1955ed614f Merge pull request #39074 from Random-Liu/node-e2e-set-user
Automatic merge from submit-queue

Node E2E: Set user with `--ssh-user` flag when running remote node e2e.

This PR unblocks https://github.com/kubernetes/test-infra/issues/1348.

In our test environment, we must login test instance as user `jenkins` because of the service account. Node e2e is always using the default user on the host, which works fine till now, because it is always run as `jenkins` in our test environment.

However, now we moved the test runner into a docker container, inside the container user is `root` by default, which will cause error:
```
Permission denied (publickey)
```

This PR added a flag `--ssh-user` to explicitly specify the user used to ssh into test instance. The dockerized test runner can set user to `jenkins` with this flag.

@krzyzacy  @ixdy
2016-12-21 11:21:09 -08:00
Chao Xu
73b5dbcd9b orphan e2e test should fail if timeout 2016-12-21 11:15:48 -08:00
Shyam Jeedigunta
ac30fb28bd Fixing 'systemd restart docker' command in kubemark master 2016-12-21 11:46:33 +01:00
Random-Liu
10f72be5af Support set user with --ssh-user flag when running remote node e2e. 2016-12-21 01:54:02 -08:00
Kubernetes Submit Queue
733faf5280 Merge pull request #35943 from jianhuiz/federation-apiserver-batch-job
Automatic merge from submit-queue

register batch/jobs to federation-apiserver

register batch/jobs api objects to federation-apiserver

**Release note**:
```release-note
Federation: Add `batch/jobs` API objects to federation-apiserver
```

@quinton-hoole @nikhiljindal @deepak-vij 
#34261
2016-12-21 01:44:50 -08:00
Kubernetes Submit Queue
f9707a7d9b Merge pull request #38886 from shyamjvs/node-problem-detector-kubemark
Automatic merge from submit-queue

 Added 'hollow'-node-problem-detector to hollow-nodes in kubemark

Added node-problem-detector container in kubemark hollow-nodes, which takes in a 'hollow' (having an empty list of rules and conditions) kernel monitor config.

cc @kubernetes/sig-scalability-misc @wojtek-t @gmarek
2016-12-21 00:27:25 -08:00
Kubernetes Submit Queue
c3aac2b938 Merge pull request #38968 from liggitt/anonymous-abac
Automatic merge from submit-queue (batch tested with PRs 36751, 38968)

Convert * users/groups to system:authenticated group in ABAC

Part of enabling anonymous auth by default in 1.6 means protecting earlier policies that did not intend to grant access to anonymous users.

This modifies ABAC policies that match `user` or `group` `*` to only match authenticated users.

Docs PR to update examples to use `system:authenticated` or `system:unauthenticated` groups explicitly: https://github.com/kubernetes/kubernetes.github.io/pull/1992

```release-note
ABAC policies using "user":"*" or "group":"*" to match all users or groups will only match authenticated requests. To match unauthenticated requests, ABAC policies must explicitly specify "group":"system:unauthenticated"
```
2016-12-20 23:31:43 -08:00
jianhuiz
196d663b40 register batch/jobs to federated-apiserver 2016-12-20 18:03:20 -08:00
rkouj
d405d041e3 Add e2e test to detach a pd whose node api object was deleted 2016-12-20 12:23:56 -08:00
Jon Cope
da604ad9fa Made server images paths constant, removed redundant import alias 2016-12-20 14:11:38 -06:00
Jon Cope
30a296be82 camel case constants, tweak function documentation 2016-12-20 14:11:37 -06:00
Jon Cope
a2b7193a09 minor fixes: changed string.Contains to mount | grep, nil pod, pv, pvc in AfterEach, set clientNodeIP in BeforeEach 2016-12-20 14:11:37 -06:00
Jon Cope
7d5305718d Add PV E2E: disruptive environment tests
Tweaked 'delete pod during stopped kubelet' test to check for mount

Refactor start, stop, restart funcs into 1 func
2016-12-20 14:11:37 -06:00
Shyam Jeedigunta
7e12fd4bfd Added 'hollow'-node-problem-detector to hollow-nodes in kubemark 2016-12-20 12:04:24 +01:00
Wojciech Tyczynski
498a893fa3 Switch to etcd v3 API by default 2016-12-20 11:57:46 +01:00
Wojciech Tyczynski
76f115a8ee Bump etcd to 3.0.14 2016-12-20 11:57:45 +01:00
Kubernetes Submit Queue
8e888a7671 Merge pull request #38616 from shyamjvs/kubemark-gci-master
Automatic merge from submit-queue

Moved kubemark master from Debian to GCI

This PR fixes issue #37484
Kubemark master now runs on GCI instead of Debian, taking it one step closer to a real cluster master.
Primary changes:
1. changing master VM image/OS in kubemark's config-default.sh to debian
2. moving kubelet to systemd from supervisord
3. changing directory for cert/key/csv files from /srv/kubernetes to /etc/srv/kubernetes

cc @kubernetes/sig-scalability-misc  @wojtek-t @gmarek
2016-12-20 00:36:21 -08:00
Kubernetes Submit Queue
b3e57253cc Merge pull request #36009 from rkouj/GCE-PD-test
Automatic merge from submit-queue

Add test to detach a pd whose node was deleted

**What this PR does / why we need it**:
A test for the following issue :
If a node with a GCE PD attached is deleted (before the volume is detached), subsequent attempts by the attach/detach controller to detach it should not fail.


**Bonus** :Added additional code to ensure that the pd can still be attached to a different node.
Edit : Removed it as it was making the test much slower.

https://github.com/kubernetes/kubernetes/issues/29358
2016-12-19 20:24:02 -08:00
Kubernetes Submit Queue
db5887aa83 Merge pull request #38891 from krousey/gceimageupgrade
Automatic merge from submit-queue (batch tested with PRs 38426, 38917, 38891, 38935)

Support different image during GCE node upgrade

**What this PR does / why we need it**: It lets GCE upgrade tests upgrade to a GCI node image.

**Which issue this PR fixes**: fixes #37855
2016-12-19 18:18:25 -08:00
Rajat Ramesh Koujalagi
f67b4950c0 Add test to detach a pd whose node was deleted 2016-12-19 14:57:28 -08:00
Kris
3b5bf39cfa Support different image during GCE node upgrade 2016-12-19 13:18:50 -08:00
Jordan Liggitt
742ef34484
Convert user/group * to match authenticated users only in ABAC 2016-12-19 13:41:35 -05:00
Kubernetes Submit Queue
ce67a03b81 Merge pull request #38958 from jszczepkowski/ha-validation-fix
Automatic merge from submit-queue (batch tested with PRs 38942, 38958)

Added MULTIZONE flag to e2e remove master script.

Added MULTIZONE flag to e2e remove master script. The script is used by HA tests which set-up multizone cluster.
2016-12-19 08:45:45 -08:00
Kubernetes Submit Queue
a366ca3732 Merge pull request #33837 from jsafrane/e2e-configmap
Automatic merge from submit-queue (batch tested with PRs 34353, 33837, 38878)

Add e2e test for configmap volume

There are two patches:
- refactor e2e volume tests to allow multiple volumes mounted into single pod
- add a test for ConfigMap volume mounted twice to test #28502
2016-12-19 06:42:58 -08:00
Kubernetes Submit Queue
377ad165a1 Merge pull request #34353 from copejon/gce-persistentvolume-testing
Automatic merge from submit-queue (batch tested with PRs 34353, 33837, 38878)

Gce persistentvolume testing

Add E2E PersistentVolume test for a GCE environment.  Tests that deleting a PV or PVC before the referencing pod does not fail on unmount and detach during pod deletion.
cc @jeffvance
2016-12-19 06:42:56 -08:00
Jerzy Szczepkowski
0c669fe6cc Added MULTIZONE flag to e2e remove master script.
Added MULTIZONE flag to e2e remove master script.
The script is used by HA tests which set-up multizone clusters.
2016-12-19 14:37:42 +01:00
Shyam Jeedigunta
9051462497 Migrated kubemark master to GCI from Debian. 2016-12-19 13:51:56 +01:00
Jan Safranek
396e2bc581 Add configmap test 2016-12-19 10:33:38 +01:00
Jan Safranek
2970761cf1 Multiple volumes for e2e tests
Allow mounting of multiple volumes in volume e2e tests.
2016-12-19 10:33:38 +01:00
Alexander Block
13a2bc8afb Enable lazy initialization of ext3/ext4 filesystems 2016-12-18 11:08:51 +01:00
Lucas Käldström
3c5b5f5963 Remove all MAINTAINER statements in the codebase as they aren't very useful and now deprecated 2016-12-17 20:34:10 +02:00
Kubernetes Submit Queue
5b2823adb9 Merge pull request #38191 from sttts/sttts-move-master-options
Automatic merge from submit-queue

Move non-generic apiserver code out of the generic packages
2016-12-17 01:25:45 -08:00
Kubernetes Submit Queue
6c9a4139f3 Merge pull request #38614 from soltysh/remove_ext_jobs
Automatic merge from submit-queue (batch tested with PRs 37468, 36546, 38713, 38902, 38614)

Remove extensions/v1beta1 Job

Fixes https://github.com/kubernetes/kubernetes/issues/32763. This endpoint was deprecated in 1.5 and was planned to be removed in 1.6. 

**Release note**:
```release-note
Remove extensions/v1beta1 Jobs resource, and job/v1beta1 generator.
```
2016-12-16 18:55:37 -08:00
Kubernetes Submit Queue
ff3d4a55b0 Merge pull request #36546 from MrHohn/e2e-firewall
Automatic merge from submit-queue (batch tested with PRs 37468, 36546, 38713, 38902, 38614)

Adds e2e firewall tests for LoadBalancer service, ingress, and e2e cluster

Fixes #25488 and fixes #31827.

This PR adds e2e firewall test for LoadBalancer type service, ingress and e2e cluster.

Test details for LoadBalancer type service as below:
- Verifies corresponding firewall rule has correct `sourceRanges`, `ports and protocols` and `target tags`.
- Verifies requests can reach all expected instances.
- Verifies requests can not reach instances that are not included.

Overview of the test procedure:
- Creates a LoadBalancer type service.
- Validates the corresponding firewall rule.
- Creates netexec pods as service backends.
- Sends requests from outside of the cluster and examine hitting all instances in range.
- Removes tags from one of the instances in order to get it out of firewall rule's range.
- Sends requests from outside of the cluster and examine not hitting this instance.
- Recovers tags for this instances and verifies its traffic is back.

@bprashanth @bowei @thockin
2016-12-16 18:55:30 -08:00
Matt Liggett
69cd805532 Merge pull request #38804 from Random-Liu/disable-au
Node E2E: Disable AU in node e2e test.
2016-12-16 15:32:23 -08:00
Maciej Szulik
4188bb71d3 Update test_owners.csv 2016-12-17 00:10:38 +01:00
Maciej Szulik
cdec94523e Remove extensions/v1beta1 Job - generated changes 2016-12-17 00:07:25 +01:00
Maciej Szulik
9f064c57ce Remove extensions/v1beta1 Job 2016-12-17 00:07:24 +01:00
Zihong Zheng
b43e2134a2 Adds e2e firewall tests.
For LoadBalancer type service:
- Verifies corresponding firewall rule has correct sourceRanges, ports
  & protocols, target tags.
- Verifies requests can reach all expected instances.
- Verifies requests can not reach instances that are not included.

For Ingress resrouce:
- Verifies the ingress firewall rule has correct sourceRanges, target
  tags and tcp ports.

For general e2e cluster:
- Verifies all required firewall rules has correct sourceRange, ports
  & protocols, source tags and target tags.
- Verifies well know ports on master and nodes are not
  exposed externally
2016-12-16 14:31:30 -08:00
Kubernetes Submit Queue
9010d27108 Merge pull request #38900 from bprashanth/ing_feat
Automatic merge from submit-queue

Remove a space in ingress e2e title
2016-12-16 14:15:59 -08:00
bprashanth
bfdf1855c7 Remove a space in ingress e2e title 2016-12-16 12:42:18 -08:00
David Ashpole
5d352439d4 test no longer fails when it fails to get the summary 2016-12-16 11:50:43 -08:00
Kubernetes Submit Queue
84d0fbdb2e Merge pull request #38643 from bprashanth/ing_avoid_nodeport
Automatic merge from submit-queue

Don't check nodeport for nginx ingress

Services behind a standard nginx ingress don't need nodeport, so don't check that.
2016-12-16 10:46:56 -08:00
Jon Cope
e095e1120b Add GCE PD persistent volume test: Check that deleting a PV or PVC prior to deleting the client pod does not cause the pod to fail during its deletion.
Extracted delete operations into functions

wait on pv/pvc bind

removed redundant verification, minor refactors

GCEPD: fixed typo

name verifyDiskAttached to verifyGCEDiskAttached

fix empty log msg

Updated test owners

removed unnecessary api calls

Check for apierr IsNotFound for pod,pv,pvc but ignore result

Disable dynamic provisioning in test PVCs

gofmt'd
2016-12-16 12:07:25 -06:00
Dr. Stefan Schimanski
423db16bd2 Fix federation unit tests as non-root 2016-12-16 17:49:23 +01:00
Robert Rati
11c577f092 [scheduling] Auto-generated file updates from moving node affinity from
annotations to api fields. #35518
2016-12-16 11:42:43 -05:00
Robert Rati
91931c138e [scheduling] Moved node affinity from annotations to api fields. #35518 2016-12-16 11:42:43 -05:00
Dr. Stefan Schimanski
7267299c3c genericapiserver: move MasterCount and service options into master 2016-12-16 17:23:43 +01:00
Kubernetes Submit Queue
5b240ca897 Merge pull request #36748 from kargakis/remove-events-from-deployment-tests
Automatic merge from submit-queue

Fix Recreate for Deployments and stop using events in e2e tests

Fixes https://github.com/kubernetes/kubernetes/issues/36453 by removing events from the deployment tests. The test about events during a Rolling deployment is redundant so I just removed it (we already have another test specifically for Rolling deployments).

Closes https://github.com/kubernetes/kubernetes/issues/32567 (preferred to use pod LISTs instead of a new status API field for replica sets that would add many more writes to replica sets).

@kubernetes/deployment
2016-12-16 03:57:02 -08:00
Kubernetes Submit Queue
cf2dc3968b Merge pull request #38750 from shashidharatd/federation-ci
Automatic merge from submit-queue (batch tested with PRs 38830, 38750)

[Federation] Stop cleaning federation namespace in e2e tests

when --clean-start=true flag is provided to e2e tests it would cleanup all the leftover namespaces except `default` and `kube-system` and because of this when we run e2e tests in federation soak test job, the federation control plane is destroyed before it runs the tests and all tests start to fail.

So adding federation-system to the list of namespace to be left intact and also changed the default federation namespace name from `federation` to `federation-system` to be consistent with the newer method of deploying federation using kubefed.

@madhusudancs  @nikhiljindal
2016-12-16 02:16:17 -08:00
Kubernetes Submit Queue
2a619d543f Merge pull request #38830 from krousey/e2eutil
Automatic merge from submit-queue (batch tested with PRs 38830, 38750)

Remove the ReadyReplica version guard

**What this PR does / why we need it**: Removes outlived version guards.

**Which issue this PR fixes**: fixes #37310
2016-12-16 02:16:16 -08:00
shashidharatd
b58216e333 Stop cleaning federation namespace in e2e tests 2016-12-16 14:21:40 +05:30
Madhusudan.C.S
5a7644c502 [Federation][init-11] Switch federation e2e tests to use the new federation control plane bootstrap via the kubefed init command. 2016-12-16 11:22:44 +05:30
Kubernetes Submit Queue
5ec2fb0bcc Merge pull request #38845 from Random-Liu/fix-node-conformance-report-prefix
Automatic merge from submit-queue

Node Conformance Test: Fix report prefix for node conformance test.

The node conformance CI is running now.

The only problem is that junit files overwrite each other because of the lack of junit prefix. http://gcsweb.k8s.io/gcs/kubernetes-jenkins/logs/ci-kubernetes-node-kubelet-conformance/42/artifacts/

This PR fixes this. I've verified in my environment, it works well.

@timstclair
2016-12-15 18:45:03 -08:00
Kubernetes Submit Queue
092a3b79bc Merge pull request #38688 from dshulyak/cleanup_recreate_test
Automatic merge from submit-queue (batch tested with PRs 35945, 38688)

Move test for evicted pet to Basic StatefulSet functionality block
2016-12-15 17:16:15 -08:00
Random-Liu
c57f2ec064 Fix report prefix for node conformance test. 2016-12-15 15:27:14 -08:00
Kubernetes Submit Queue
d169d59565 Merge pull request #38788 from Random-Liu/fix-node-conformance-test
Automatic merge from submit-queue (batch tested with PRs 38788, 38821, 38829)

Node Conformance Test: Fix node conformance test.

The test suite could build on my desktop. However it is failing on jenkins.
https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-node-kubelet-conformance/1

It turns out that `docker save $IMAGE -o $FILE` only works for docker 1.12. (My desktop is 1.12) For older version docker, we should use `docker save -o $FILE $IMAGE instead`. (Jenkins is using 1.9.1)

@timstclair Could you help me review this short PR? :)
2016-12-15 13:57:16 -08:00
Kris
1d8bebeb2f Remove the ReadyReplica version guard 2016-12-15 11:14:38 -08:00
Kubernetes Submit Queue
32946c5bd0 Merge pull request #38820 from jszczepkowski/e2e-not-ready-nodes
Automatic merge from submit-queue (batch tested with PRs 38818, 38813, 38820)

E2E test lib: improved logging of not ready nodes.
2016-12-15 11:04:21 -08:00
Michail Kargakis
c87e627b9b Add more logs for the rolling test 2016-12-15 19:55:18 +01:00
Michail Kargakis
7ef3e6f7c9 controller: wait for all pods to be deleted before Recreating 2016-12-15 19:55:18 +01:00
Michail Kargakis
31a5b4218d test: remove deployment events from e2e tests 2016-12-15 19:53:36 +01:00
Jerzy Szczepkowski
ec17af655f E2E test lib: improved logging of not ready nodes.
E2E test lib: improved logging of not ready nodes.
2016-12-15 18:23:18 +01:00
Kubernetes Submit Queue
2e2661c403 Merge pull request #38803 from gmarek/kubemark-etcd-flags
Automatic merge from submit-queue

Kubemark etcd flags

Fix for #38770.

cc @shyamjvs
2016-12-15 05:38:38 -08:00
Random-Liu
e5efc21de6 Disable AU in node e2e test. 2016-12-15 01:33:09 -08:00
gmarek
40907930a3 Fix the kubemark fix 2016-12-15 10:26:39 +01:00
Kubernetes Submit Queue
d8efc779ed Merge pull request #38154 from caesarxuchao/rename-release_1_5
Automatic merge from submit-queue (batch tested with PRs 38154, 38502)

Rename "release_1_5" clientset to just "clientset"

We used to keep multiple releases in the main repo. Now that [client-go](https://github.com/kubernetes/client-go) does the versioning, there is no need to keep releases in the main repo. This PR renames the "release_1_5" clientset to just "clientset", clientset development will be done in this directory.

@kubernetes/sig-api-machinery @deads2k 

```release-note
The main repository does not keep multiple releases of clientsets anymore. Please find previous releases at https://github.com/kubernetes/client-go
```
2016-12-14 14:21:51 -08:00
Random-Liu
06507e9378 Fix node conformance test. 2016-12-14 14:21:10 -08:00
Kris
128af75b93 Add timeouts to proxy calls in e2e tests 2016-12-14 13:14:44 -08:00
Chao Xu
6709b7ada2 run hack/update-codegen.sh
run hack/verify-gofmt.sh
update bazel
2016-12-14 12:39:49 -08:00
Chao Xu
c81057be2c move federation_release_1_5 to federation_clientset 2016-12-14 12:39:49 -08:00
Chao Xu
03d8820edc rename /release_1_5 to /clientset 2016-12-14 12:39:48 -08:00
Kubernetes Submit Queue
6c50e73d4d Merge pull request #38763 from aaron12134/spell-corrective-doctrine
Automatic merge from submit-queue

make spellcheck for test/*

**What this PR does / why we need it**: Increase code readability

**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**: only a slight effort 

**Release note**:

```release-note
```
2016-12-14 12:25:53 -08:00
Kubernetes Submit Queue
6fa4042211 Merge pull request #38690 from sttts/sttts-swagger-postbuildhandler
Automatic merge from submit-queue

genericapiserver: unify swagger and openapi in config

- make swagger config customizable
- remove superfluous `Config.Enable*` flags for OpenAPI and Swagger.

This is necessary for downstream projects to tweak the swagger spec.
2016-12-14 11:11:02 -08:00
Dr. Stefan Schimanski
cab89a67df genericapiserver: unify swagger and openapi in config 2016-12-14 18:41:04 +01:00
Shyam Jeedigunta
10b39d9dd7 Fixed kubemark to work when ETCD_X flags are set 2016-12-14 18:13:31 +01:00
aaronxu
3b20730620 spell check for test/* 2016-12-14 06:03:00 -08:00
Kubernetes Submit Queue
86657a1fcf Merge pull request #38153 from Random-Liu/node-conformance-ci
Automatic merge from submit-queue

Node Conformance: Node Conformance CI

For https://github.com/kubernetes/kubernetes/issues/37252.

The first 2 commits of this PR are from #38150 and #38152. Please review those 2 PRs first, they are both minor cleanup.

This PR:
* Add `TestSuite` interface in `test/e2e_node/remote` to separate test suite logic (packaging, deploy, run test) from VM lifecycle management logic, so that different test suites can share the same VM lifecycle management logic.
  * Different test suites such as node e2e, node conformance, node soaking, cri validation etc. should implement different `TestSuite`.
  * `test/e2e_node/runner/remote` will initialize and run different test suite based on the subcommand.
* Add `run-kubelet-mode` which only starts and monitors kubelet, similar with `run-services-mode`. The reason we need this:
  * Unlike node e2e, node conformance test doesn't start kubelet inside the test suite (in fact, in the future node e2e shouldn't do that either), it assumes kubelet is already running before the test.
  * In fact, node e2e should use similar node bootstrap script like cluster e2e, and the bootstrap script should initialize the node with all necessary node software including kubelet. However, it's not the case now.
  * The easiest way for now is to reuse the kubelet start logic in the test suite. So in this PR, we added `run-kubelet-mode`, and use the test binary as a kubelet launcher to start kubelet before running the test.
* Implement node e2e `TestSuite`.
* Implement node conformance `TestSuite`. Use `docker save` and `docker load` to create and deploy conformance docker image; Start kubelet by running test binary in `run-kubelet-mode`; Run conformance test with `docker run`.

This PR will make it easy to implement continuous integration node soaking test and cri validation test (https://github.com/kubernetes/kubernetes/pull/35266).

/cc @kubernetes/sig-node
2016-12-14 00:48:09 -08:00
Kubernetes Submit Queue
f55fc7a9e3 Merge pull request #38734 from bprashanth/ing_cleanup_timeout
Automatic merge from submit-queue (batch tested with PRs 38689, 38743, 38734, 38430)

Temporarily bump e2e cleanup timeout
2016-12-13 21:25:35 -08:00
Random-Liu
02e96df55c Update log level. 2016-12-13 19:08:55 -08:00
Random-Liu
54c874f2c6 Update bazel. 2016-12-13 19:08:55 -08:00
Random-Liu
4cdd1b788a Add node conformance ci test. 2016-12-13 19:08:55 -08:00
Random-Liu
b7ec229e2c Add run kubelet mode. 2016-12-13 19:08:55 -08:00
Random-Liu
bca5aea5ba Refactor RunRemote to support TestSuite interface. 2016-12-13 19:08:55 -08:00
Random-Liu
99dc80ccc2 Add TestSuite interface and update the CreateTestArchive function. 2016-12-13 19:08:55 -08:00
Kubernetes Submit Queue
aca523f586 Merge pull request #38664 from dashpole/flaky_inode
Automatic merge from submit-queue

Inode Eviction Test is Flaky

This Pull Request:
Marks the InodeEviciton test as flaky
Increases the timeout for disk pressure because coreos has nearly 2 million inodes.
Decreases the status polling interval so we can see eviction ordering better.
@Random-Liu
2016-12-13 16:22:40 -08:00
bprashanth
f898bc5ecf Temporarily bump e2e cleanup timeout 2016-12-13 15:13:32 -08:00
Kubernetes Submit Queue
a9c5f67509 Merge pull request #38668 from bprashanth/glbc_version
Automatic merge from submit-queue

Bump glbc version, cleanup test

Matches https://github.com/kubernetes/ingress/pull/55
2016-12-13 13:27:01 -08:00
Kubernetes Submit Queue
4505224cd3 Merge pull request #35436 from danwinship/utilversion
Automatic merge from submit-queue

Add a package for handling version numbers (including non-"Semantic" versions)

As noted in #32401, we are using Semantic Version-parsing libraries to parse version numbers that aren't necessarily "Semantic". Although, contrary to what I'd said there, it turns out that this wasn't actually currently a problem for the iptables code, because the regexp used to extract the version number out of the "iptables --version" output only pulled out three components, so given "iptables v1.4.19.1", it would have extracted just "1.4.19". Still, it could be a problem if they later release "1.5" rather than "1.5.0", or if we eventually need to _compare_ against a 4-digit version number.

Also, as noted in #23854, we were also using two different semver libraries in different parts of the code (plus a wrapper around one of them in pkg/version).

This PR adds pkg/util/version, with code to parse and compare both semver and non-semver version strings, and then updates kubernetes to use it everywhere (including getting rid of a bunch of code duplication in kubelet by making utilversion.Version implement the kubecontainer.Version interface directly).

Ironically, this does not actually allow us to get rid of either of the vendored semver libraries, because we still have other dependencies that depend on each of them. (cadvisor uses blang/semver and etcd uses coreos/go-semver)

fixes #32401, #23854
2016-12-13 12:10:38 -08:00
Kubernetes Submit Queue
d13067ed37 Merge pull request #38507 from gmarek/res-gat-kubemark
Automatic merge from submit-queue (batch tested with PRs 38695, 38507)

Fix resource gatherer for kubemark

Not working yet...
2016-12-13 07:30:35 -08:00
gmarek
1b1a4aef6a Fix resource gatherer for kubemark 2016-12-13 14:59:22 +01:00
Kubernetes Submit Queue
380ad617f3 Merge pull request #38461 from gmarek/job
Automatic merge from submit-queue

Add an option to run Job in Density/Load config

cc @timothysc @jeremyeder 

@erictune @soltysh - I run this test and it seems to me that Job has noticeably worse performance than Deployment. I'll create an issue for this, but this PR is for easy repro.
2016-12-13 05:57:18 -08:00
Dan Winship
f369372dad Drop version-parsing from pkg/version
pkg/version is now just version constants, etc, not version parsing
2016-12-13 08:53:19 -05:00
Dan Winship
bb60f0415a Add a package for handling version numbers (including non-semvers) 2016-12-13 08:53:00 -05:00
gmarek
c9e78f1cd5 Add an option to run Job in Density/Load config 2016-12-13 13:21:30 +01:00
Kubernetes Submit Queue
b14f57ca7e Merge pull request #38620 from wojtek-t/increase_wait_for_nodes_timeout
Automatic merge from submit-queue (batch tested with PRs 38617, 38620)

Increase timeout for waiting for nodes
2016-12-13 03:46:29 -08:00
Dmitry Shulyak
2e9dd13aee Move recreate evicted test to Basic StatefulSet functionality block
Change-Id: I08af6cc9a1f77213fa0b922c3bc964487169cdca
2016-12-13 13:01:20 +02:00
Kubernetes Submit Queue
0a0294cad6 Merge pull request #38227 from shyamjvs/kubemark-master-migrate
Automatic merge from submit-queue (batch tested with PRs 38609, 38227)

On kubemark master, kubelet now runs as a supervisord process and all master components as pods

This PR fixes issue #37485
On kubemark, previously we had a custom setup that runs master components as top-level processes under supervisord, which is lighter than running kubelet and docker.
This PR makes kubelet run as a process under supervisord and the master components (apiserver, controller-manager, scheduler, etcd) as pods, making testing on kubemark mimic real clusters better.
Also, start-kubemark-master.sh now closely resembles cluster/gce/gci/configure-helper.sh, allowing easy integration in future.

cc @kubernetes/sig-scalability @wojtek-t @gmarek
2016-12-13 02:12:34 -08:00
Kubernetes Submit Queue
99f876bb78 Merge pull request #38609 from wojtek-t/cleanup_annoying_test_logs
Automatic merge from submit-queue

Reduce amount of annoing logs in large clusters
2016-12-13 02:12:07 -08:00
Wojciech Tyczynski
6051870a48 Allow for configuring timeout for waiting for nodes 2016-12-13 09:55:34 +01:00
bprashanth
fc57d76018 Delete static-ip after ingress has cleaned up 2016-12-12 19:06:08 -08:00
David Ashpole
0ec482308e increase timeout and marked as flaky. decreased polling interval to better monitor eviction ordering 2016-12-12 17:31:24 -08:00
Mike Danese
82d9ed770c fix examples/ compilation so that test/ also compiles
fix network-tester cauldron serve_hostnames
2016-12-12 15:14:49 -08:00
Mike Danese
c87de85347 autoupdate BUILD files 2016-12-12 13:30:07 -08:00
Kubernetes Submit Queue
00e5777b66 Merge pull request #38607 from Random-Liu/update-node-e2e-cvm-version
Automatic merge from submit-queue (batch tested with PRs 38419, 38457, 38607)

Node E2E: Update CVM version to e2e-node-containervm-v20161208-image.

I built the new node e2e image from e2e-node-containervm-v20161208-image.

@timstclair 
/cc @kubernetes/sig-node
2016-12-12 12:48:09 -08:00
bprashanth
ee6e4bd832 Don't check nodeport for nginx ingress 2016-12-12 12:04:51 -08:00
Wojciech Tyczynski
ebdef4d57e Reduce amount of annoing logs in large clusters 2016-12-12 14:43:41 +01:00
Kubernetes Submit Queue
59c313730c Merge pull request #38510 from kargakis/declutter-deployment-logs
Automatic merge from submit-queue

test: cleanup test logs for deployments

@mfojtik @janetkuo this will help with the deployment logs (should make them a bit cleaner) ptal
2016-12-12 04:58:30 -08:00
Shyam Jeedigunta
f7ce6a7d10 On kubemark master, kubelet now runs as a supervisord process and all master components as pods 2016-12-12 13:56:07 +01:00
Michail Kargakis
0d95d71e65 test: cleanup test logs for deployments 2016-12-12 12:19:51 +01:00
Wojciech Tyczynski
9439453527 Increase single logfile size in kubemark 2016-12-12 11:18:20 +01:00
Random-Liu
b27776a25f Update CVM version to e2e-node-containervm-v20161208-image. 2016-12-12 01:50:37 -08:00
Wojciech Tyczynski
b1da629374 Fix services in load test 2016-12-12 09:40:43 +01:00
Clayton Coleman
c52d510a24
refactor: generated 2016-12-10 18:05:53 -05:00
Clayton Coleman
596d9de8fa
update: linted packages 2016-12-10 18:05:37 -05:00
Clayton Coleman
38127a4e7e
Update disruption test 2016-12-10 18:05:37 -05:00
Clayton Coleman
42d410fdde
Switch to use pkg/apis/meta/v1/unstructured and the new interfaces
Avoid directly accessing an unstructured type if it is not required.
2016-12-10 18:05:28 -05:00
Kubernetes Submit Queue
4e7dc587f6 Merge pull request #38522 from Random-Liu/add-default-node-e2e-filter
Automatic merge from submit-queue (batch tested with PRs 34002, 38535, 37330, 38522, 38423)

Node E2E: `make test-e2e-node` runs the same test with pr builder by default.

This PR makes `make test-e2e-node` run non-serial, non-flaky, non-slow test by default.
This will make it easier to use.

/cc @timstclair
2016-12-09 18:21:45 -08:00
Random-Liu
486ddae35a make test-e2e-node runs the same test with pr builder by default. 2016-12-09 16:06:18 -08:00
Janet Kuo
0e2b0a6f55 Rename pet to stateful pods in statefulset e2e tests logs 2016-12-09 16:01:13 -08:00
Kubernetes Submit Queue
b72c006eb3 Merge pull request #34554 from derekwaynecarr/quota-storage-class
Automatic merge from submit-queue (batch tested with PRs 37270, 38309, 37568, 34554)

Ability to quota storage by storage class

Adds the ability to quota storage by storage class.
1. `<storage-class>.storageclass.storage.k8s.io/persistentvolumeclaims` - quota the number of claims with a specific storage class
2. `<storage-class>.storageclass.storage.k8s.io/requests.storage` - quota the cumulative request for storage in a particular storage class.

For example:

```
$ cat quota.yaml
apiVersion: v1
kind: ResourceQuota
metadata:
  name: storage-quota
spec:
  hard:
    requests.storage: 100Gi
    persistentvolumeclaims: 100
    gold.storageclass.storage.k8s.io/requests.storage: 50Gi
    gold.storageclass.storage.k8s.io/persistentvolumeclaims: 5
    silver.storageclass.storage.k8s.io/requests.storage: 75Gi
    silver.storageclass.storage.k8s.io/persistentvolumeclaims: 10
    bronze.storageclass.storage.k8s.io.kubernetes.io/requests.storage: 100Gi
    bronze.storageclass.storage.k8s.io/persistentvolumeclaims: 15
$ kubectl create -f quota.yaml
$ cat pvc-bronze.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  generateName: pvc-bronze-
  annotations:
    volume.beta.kubernetes.io/storage-class: "bronze"
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 8Gi
$ kubectl create -f pvc-bronze.yaml
$ kubectl get quota storage-quota -o yaml
apiVersion: v1
kind: ResourceQuota
...
status:
  hard:
    bronze.storageclass.storage.k8s.io/persistentvolumeclaims: "15"
    bronze.storageclass.storage.k8s.io/requests.storage: 100Gi
    gold.storageclass.storage.k8s.io/persistentvolumeclaims: "5"
    gold.storageclass.storage.k8s.io/requests.storage: 50Gi
    persistentvolumeclaims: "100"
    requests.storage: 100Gi
    silver.storageclass.storage.k8s.io/persistentvolumeclaims: "10"
    silver.storageclass.storage.k8s.io/requests.storage: 75Gi
  used:
    bronze.storageclass.storage.k8s.io/persistentvolumeclaims: "1"
    bronze.storageclass.storage.k8s.io/requests.storage: 8Gi
    gold.storageclass.storage.k8s.io/persistentvolumeclaims: "0"
    gold.storageclass.storage.k8s.io/requests.storage: "0"
    persistentvolumeclaims: "1"
    requests.storage: 8Gi
    silver.storageclass.storage.k8s.io/persistentvolumeclaims: "0"
    silver.storageclass.storage.k8s.io/requests.storage: "0"
```
2016-12-09 14:11:21 -08:00
Kubernetes Submit Queue
59cfdfb8db Merge pull request #38463 from jszczepkowski/hpa-e2e-fix5
Automatic merge from submit-queue (batch tested with PRs 37860, 38429, 38451, 36050, 38463)

HPA e2e tests: fixed waiting for service creation.
2016-12-09 13:22:20 -08:00
Kubernetes Submit Queue
9e3fc8de9e Merge pull request #36050 from linux-on-ibm-z/master
Automatic merge from submit-queue (batch tested with PRs 37860, 38429, 38451, 36050, 38463)

[Part 2] Adding s390x cross-compilation support for gcr.io images in this repo

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**: This PR enables s390x support to kube-dns , pause, addon-manager, etcd, hyperkube, kube-discovery etc. This PR also includes the changes due to which it can be cross compiled on x86 host architecture.

**Which issue this PR fixes #34328

**Special notes for your reviewer**:  In existing file "build-tools/build-image/cross/Dockerfile" the repository mentioned for installing cross build tool chains for supporting architecture does not have a tool chain for s390x hence in my PR I am changing the repository so that it will be cross compiled for s390x.

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```
Allows cross compilation of Kubernetes on x86 host for s390x also enables s390x support to kube-dns , pause, addon-manager, etcd, hyperkube, kube-discovery etc  
```
2016-12-09 13:22:18 -08:00
Derek Carr
459a7a05f1 Ability to quota storage by storage class 2016-12-09 13:26:59 -05:00
Kubernetes Submit Queue
695fbb8fb6 Merge pull request #38284 from Crassirostris/kibana-test-fix-2
Automatic merge from submit-queue

Increase Kibana e2e test timeout

10 minutes is not always enough to start kibana instance, most probably increasing the timeout will fix https://github.com/kubernetes/kubernetes/issues/36809

Follow-up of https://github.com/kubernetes/kubernetes/pull/36192

CC @piosz
2016-12-09 08:49:42 -08:00
Kubernetes Submit Queue
f5f109ca11 Merge pull request #38292 from gmarek/daemon
Automatic merge from submit-queue

Add Daemons to Load/Density tests

cc @jeremyeder @timstclair @sjug
2016-12-09 07:29:15 -08:00
Kubernetes Submit Queue
72b52d4334 Merge pull request #38302 from Crassirostris/revert-logging-e2e-verbosity
Automatic merge from submit-queue

Revert "Make logging for gcl e2e test more verbose"

Revert test change in favor of https://github.com/kubernetes/kubernetes/pull/38213

CC @piosz
2016-12-09 06:49:21 -08:00
Kubernetes Submit Queue
52e1b36961 Merge pull request #38462 from gmarek/print
Automatic merge from submit-queue

Make resource gatherer print the data about resource usage in case of…
2016-12-09 06:07:57 -08:00
Jerzy Szczepkowski
2b070e1724 HPA e2e tests: fixed waiting for service creation.
HPA e2e tests: fixed waiting for service creation. Fixes #32512.
2016-12-09 14:55:51 +01:00
gmarek
bfe2a2b03c Add Daemons to Load/Density tests 2016-12-09 14:31:46 +01:00
Kubernetes Submit Queue
5b5b1e7533 Merge pull request #38371 from wojtek-t/get_options_in_client
Automatic merge from submit-queue (batch tested with PRs 38354, 38371)

Add GetOptions parameter to Get() calls in client library

Ref #37473 

This PR is super mechanical - the non trivial commits are:
- Update client generator
- Register GetOptions in batch/v2alpha1 group
2016-12-09 04:12:09 -08:00
gmarek
3361576f3b Make resource gatherer print the data about resource usage in case of failure 2016-12-09 11:55:40 +01:00
gajju26
70b92aab45 PR-2 Making docker images availabe for s390x on gcr.io repository and enables s390x support to kube-dns , pause, addon-manager, etcd, hyperkube, kube-discovery modules 2016-12-09 14:38:02 +05:30
Wojciech Tyczynski
aa7da5231f Update bazel files 2016-12-09 09:42:02 +01:00
Wojciech Tyczynski
a9ec31209e GetOptions - fix tests 2016-12-09 09:42:01 +01:00
Kubernetes Submit Queue
98c4c73c71 Merge pull request #37770 from enj/enj/r/storage_decorator
Automatic merge from submit-queue (batch tested with PRs 38278, 37770)

Refactor REST storage to use generic defaults

This removes the repetition in the REST storage builders by moving the logic to `restoptions.ApplyOptions`.  `registry.StorageWithCacher`/`generic.StorageDecorator` no longer assume that they can build the `keyFunc` for arbitrary objects.  `restoptions.ApplyOptions` uses the `registry.Store`'s `KeyFunc` for its call to `generic.StorageDecorator`.

```release-note
Cluster federation servers have changed the location in etcd where federated services are stored, so existing federated services must be deleted and recreated. Before upgrading, export all federated services from the federation server and delete the services. After upgrading the cluster, recreate the federated services from the exported data.
```
2016-12-09 00:25:35 -08:00
Jun Gong
036899ec98 Add --image-pull-progress-deadline option to kubelet 2016-12-09 09:28:57 +08:00
Kubernetes Submit Queue
81dd16a4ae Merge pull request #38244 from MrHohn/e2e-reboot-drop
Automatic merge from submit-queue (batch tested with PRs 36419, 38330, 37718, 38244, 38375)

Guarantees drop packets commands succeed in reboot test

Fixes the main case in #33405 and #36230.
Previous attempted fix in #38057.

During the reboot test, the iptables command that was supposed to take the node offline failed to exec. 
Turned out the xtables lock was holding by other processes led to this failure. Logs as below:
```
I1202 20:00:29.686] Dec  2 20:00:29.685: INFO: ssh jenkins@146.148.111.167:22: stdout:
"+ sleep 10
+ sudo iptables -I INPUT 1 -s 127.0.0.1 -j ACCEPT
Another app is currently holding the xtables lock. Perhaps you want to use the -w option?"
I1202 20:00:29.686] Dec  2 20:00:29.685: INFO: ssh jenkins@146.148.111.167:22: stderr:    ""
I1202 20:00:29.686] Dec  2 20:00:29.685: INFO: ssh jenkins@146.148.111.167:22: exit code: 0
```

This reboot test won't pass if any one of these iptables commands fails. This PR put "reboot" commands into while loops to guarantee it retries until succeed.

`sudo iptables -t filter -nL` is removed since it is clear now that the `FILTER` rules won't be clobbered.

(Tests passed on local cluster.)

@bprashanth
2016-12-08 17:13:58 -08:00
Kubernetes Submit Queue
a4a306ac81 Merge pull request #37718 from dashpole/e2e_node_timeout
Automatic merge from submit-queue (batch tested with PRs 36419, 38330, 37718, 38244, 38375)

adjusted timeouts for inode eviction and garbage collection tests

Inode eviction tests appear to run slower on coreos than the other operating systems I tested on.
I adjusted the timeout for the test from 10 to 30 minutes to compensate.

Garbage collection tests also flake occasionally due to timeouts.
I adjusted the timeout for runtime commands from 2 to 3 minutes, and removed an unused constant.

cc: @Random-Liu
2016-12-08 17:13:56 -08:00
Kubernetes Submit Queue
b0b6f3c256 Merge pull request #38401 from liggitt/addressable-deep-copy
Automatic merge from submit-queue (batch tested with PRs 36071, 32752, 37998, 38350, 38401)

Pass addressable values to DeepCopy

Extracted from https://github.com/kubernetes/kubernetes/pull/35728

These are the places we are currently calling DeepCopy incorrectly, and we need to fix, even if we don't pick up the changes to DeepCopy in #35728:
* creating a new cloner means we have no generated functions registered
* passing non-addressable values doesn't pick up generated deep copy functions, and forces us into reflective mode
2016-12-08 16:26:00 -08:00
Kubernetes Submit Queue
c294bf0d06 Merge pull request #38350 from spxtr/ExpectoPatronum
Automatic merge from submit-queue (batch tested with PRs 36071, 32752, 37998, 38350, 38401)

Eradicate ExpectNoError from test/e2e.

```
$ cd test/e2e
$ sed -i "s/\tExpectNoError/\tframework.ExpectNoError/g" *.go
```
2016-12-08 16:25:58 -08:00
Kubernetes Submit Queue
a4c9c32657 Merge pull request #37998 from ymqytw/add_test_for_concurrent_evictions
Automatic merge from submit-queue (batch tested with PRs 36071, 32752, 37998, 38350, 38401)

Add test for concurrent evictions requests

This is a followup PR after #37668.
Add a test case to make sure concurrent eviction requests can be handled.

@davidopp @lavalamp
2016-12-08 16:25:56 -08:00
Monis Khan
a6bafbacbf
Refactor REST storage to use generic defaults
Signed-off-by: Monis Khan <mkhan@redhat.com>
2016-12-08 17:24:21 -05:00
David Ashpole
93ca4bbf47 adjusted timeouts; fixed but where pods are deleted late; added delay to account for delayed pressure 2016-12-08 14:01:30 -08:00
Zihong Zheng
055a76f005 Guarantees drop packets commands succeed in reboot test 2016-12-08 13:28:22 -08:00
Jordan Liggitt
6819706adf
Pass addressable values to DeepCopy 2016-12-08 14:16:01 -05:00
Madhusudan.C.S
c1cede22cf Use the serviceShard variable in the service shard block, not the service variable. 2016-12-08 11:13:30 -08:00
Kubernetes Submit Queue
126a842832 Merge pull request #38377 from jszczepkowski/hpa-e2e-fix4
Automatic merge from submit-queue (batch tested with PRs 38377, 36365, 36648, 37691, 38339)

HPA e2e tests: fixed problem w/blocking channel.
2016-12-08 10:51:54 -08:00
ymqytw
eb6eb028a7 add a test for concurrent eviction requests 2016-12-08 10:27:19 -08:00
Kubernetes Submit Queue
907a80c7af Merge pull request #37837 from gmarek/secrets
Automatic merge from submit-queue

Add secrets to Density and Load tests

cc @jeremyeder @timstclair @sjug
2016-12-08 08:36:03 -08:00
Kubernetes Submit Queue
95b78dfb66 Merge pull request #37825 from shyamjvs/kubemark-master-script-move
Automatic merge from submit-queue (batch tested with PRs 35939, 38381, 37825, 38306, 38110)

Moved start-kubemark-master.sh from test/kubemark/ to test/kubemark/r…
2016-12-08 07:52:49 -08:00
gmarek
be3889810d Add secrets to Density and Load tests 2016-12-08 11:14:43 +01:00
Kubernetes Submit Queue
99c066efa7 Merge pull request #38260 from fraenkel/port_forward_readiness
Automatic merge from submit-queue

Wait for the port to be ready before starting

Fixes the portforward flakes. See #27673 & #27680
2016-12-08 02:10:46 -08:00
Jerzy Szczepkowski
e94d2fdc4e HPA e2e tests: fixed problem w/blocking channel.
HPA e2e tests: fixed problem w/blocking channel. Resolves #38298.
2016-12-08 10:59:58 +01:00
Kubernetes Submit Queue
6b9a944285 Merge pull request #36637 from resouer/nits-e2e
Automatic merge from submit-queue

Fix useless uuid  in container log path node e2e

@timstclair pointed out there're nits in original PR, ref: https://github.com/kubernetes/kubernetes/pull/34877

So this patch: 
1. removed useless uuid
2. change all those strings to const

Thanks. 🐱
2016-12-08 00:43:57 -08:00
Kubernetes Submit Queue
ee55ea8e68 Merge pull request #37294 from jsafrane/gluster-on-tmpfs
Automatic merge from submit-queue (batch tested with PRs 36626, 37294, 37463, 37943, 36541)

Use tmpfs for gluster-server container volumes.

Gluster server needs a filesystem that supports extended attributes for its data. Some distros (Debian, Ubuntu) ship Docker that runs containers on aufs, which does not support extended attributes and therefore Gluster server fails there.

We can use tmpfs for Gluster server data volumes. ~~This expects that host's /tmp is tmpfs, which is true for  Debian, Ubuntu, RHEL, CentOS and Fedora.~~

I reworked it to mount tmpfs inside the container, the server pod is privileged.

And *after* this PR is merged and new Gluster server container image is pushed we need to bump the image version in https://github.com/kubernetes/kubernetes/blob/master/test/e2e/volumes.go#L407

Edit: I also fixed Gluster server Dockerfile, it was not working at all.
2016-12-08 00:23:10 -08:00
Kubernetes Submit Queue
258971002f Merge pull request #37850 from MrHohn/gke-dns-autoscale
Automatic merge from submit-queue (batch tested with PRs 37092, 37850)

Turns on dns horizontal scaling tests for GKE

Seems like the dns-autoscaler is already enabled in [this recent gke build](https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e-gci-gke/769/).
Turning on the corresponding e2e tests to increase test coverage.

Probably better to wait for this fix #37261 to go in first.

@bowei @bprashanth 
cc @maisem @roberthbailey
2016-12-07 18:13:11 -08:00
Joe Finney
c9edc1c9be Eradicate ExpectNoError from test/e2e. 2016-12-07 17:51:35 -08:00
Kubernetes Submit Queue
04cd4ae43e Merge pull request #38321 from timstclair/misc-fix
Automatic merge from submit-queue (batch tested with PRs 37325, 38313, 38141, 38321, 38333)

Decrease expected lower bound for misc CPU

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

We started enforcing expectations on the `misc` system container in https://github.com/kubernetes/kubernetes/pull/37856, but the CPU usage tends to be lower than the `kueblet` & `runtime` containers (to be expected). For simplicity, I lowered the lower bound for all system containers.
2016-12-07 17:14:20 -08:00
Kubernetes Submit Queue
350c14b81c Merge pull request #38141 from bprashanth/lb_testing
Automatic merge from submit-queue (batch tested with PRs 37325, 38313, 38141, 38321, 38333)

Cleanup firewalls, add nginx ingress to presubmit

Make the firewall cleanup code follow the same pattern as the other cleanup functions, and add the nginx ingress e2e to presubmit. 

Planning to watch the test for a bit, and if it works alright, I'll add the other Ingress e2e to post-submit merge blocker.
2016-12-07 17:14:18 -08:00
Kubernetes Submit Queue
4b44926f90 Merge pull request #37325 from ivan4th/fix-e2e-with-complete-pods-in-kube-system-ns
Automatic merge from submit-queue (batch tested with PRs 37325, 38313, 38141, 38321, 38333)

Fix running e2e with 'Completed' kube-system pods

As of now, e2e runner keeps waiting for pods in `kube-system` namespace to be "Running and Ready" if there are any pods in `Completed` state in that namespace.
This for example happens after following [Kubernetes Hosted Installation](http://docs.projectcalico.org/v2.0/getting-started/kubernetes/installation/#kubernetes-hosted-installation) instructions for Calico, making it impossible to run conformance tests against the cluster. It's also to possible to reproduce the problem like that:
```
$ cat testjob.yaml
apiVersion: batch/v1
kind: Job
metadata:
  name: tst
  namespace: kube-system
spec:
  template:
    metadata:
      name: tst
    spec:
      containers:
      - name: tst
        image: busybox
        command: ["echo",  "test"]
      restartPolicy: Never
$ kubectl create -f testjob.yaml
$ go run hack/e2e.go -v --test --test_args='--ginkgo.focus=existing\s+RC'
```
2016-12-07 17:14:14 -08:00
Zihong Zheng
69dc74bab3 Turns on dns horizontal scaling tests for GKE 2016-12-07 16:05:22 -08:00
Kubernetes Submit Queue
66f5d07e05 Merge pull request #38255 from bprashanth/svc_cleanup
Automatic merge from submit-queue

Delete regional static-ip instead of global for type=lb

Global vs region is the difference between 
```
$ gcloud compute addresses delete foo --global
$ gcloud compute addresses delete foo --region us-central1
```

Type=LoadBalancer users the second type and were were doing the first. 
Also adds some logging.
2016-12-07 13:38:50 -08:00
Tim St. Clair
f4706464f6
Decrease expected lower bound for misc CPU 2016-12-07 12:39:48 -08:00
bprashanth
e1daee5b37 Delete regional static-ip instead of global for type=lb 2016-12-07 11:33:04 -08:00
Kubernetes Submit Queue
f210c97eea Merge pull request #36543 from jayunit100/scheduler_perf_integration_qps
Automatic merge from submit-queue

Fix scheduler_perf test so that QPS is non-zero even if there is a scheduling "cold start" 

@gmarek  ... is something like this more realistic as an expectation ?  That is, wait till scheduling starts, then wait 1 second before any polling attempts....  i.e. 

- gaurantee uniform sleep before measure, by doing it first rather then last
- print the initial status so that its easier to debug in case of issues

#36532
2016-12-07 11:27:57 -08:00
Michael Fraenkel
c6d6dcfa1e Re-enable flaky tests 2016-12-07 14:00:39 -05:00
Michael Fraenkel
e4542e2c67 Wait for the port to be ready before starting
- wait until the port is ready
- verify the container terminated
2016-12-07 14:00:03 -05:00
Kubernetes Submit Queue
0f2c6fc7fc Merge pull request #37009 from sjenning/fix-perms-with-fsgroup
Automatic merge from submit-queue (batch tested with PRs 38294, 37009, 36778, 38130, 37835)

fix permissions when using fsGroup

Currently, when an fsGroup is specified, the permissions of the defaultMode are not respected and all files created by the atomic writer have mode 777.  This is because in `SetVolumeOwnership()` the `filepath.Walk` includes the symlinks created by the atomic writer.  The symlinks have mode 777 when read from `info.Mode()`.  However, when the are chmod'ed later, the chmod applies to the file the symlink points to, not the symlink itself, resulting in the wrong mode for the underlying file.

This PR skips chmod/chown for symlinks in the walk since those operations are carried out on the underlying file which will be included elsewhere in the walk.

xref https://bugzilla.redhat.com/show_bug.cgi?id=1384458

@derekwaynecarr @pmorie
2016-12-07 10:45:16 -08:00
Mik Vyatskov
58a122dd21 Revert "Make logging for gcl e2e test more verbose"
This reverts commit 477ffa403e.
2016-12-07 18:59:37 +01:00
Shyam Jeedigunta
06ce9ae479 Moved start-kubemark-master.sh from test/kubemark/ to test/kubemark/resources/ 2016-12-07 18:15:24 +01:00
Kubernetes Submit Queue
2b1ab2f0d4 Merge pull request #38281 from mwielgus/fix-e2e-util-most
Automatic merge from submit-queue (batch tested with PRs 38282, 38281)

Fix skip logic in e2e framework

Fixes 37792

cc: @wojtek-t
2016-12-07 05:33:12 -08:00
Kubernetes Submit Queue
6c4033eea7 Merge pull request #38282 from sttts/sttts-skip-portforward-e2e-flake-2
Automatic merge from submit-queue

e2e: mark 3rd portforwarding test as flaky

Follow-up of https://github.com/kubernetes/kubernetes/pull/38194 and https://github.com/kubernetes/kubernetes/issues/27680#issuecomment-265392033.

cc @kubernetes/sig-testing
2016-12-07 04:56:03 -08:00
Mik Vyatskov
70b83aa6cc Increase test timeout 2016-12-07 13:26:22 +01:00
Kubernetes Submit Queue
412bed18fe Merge pull request #38193 from wojtek-t/collect_controller_manager_logs_from_kubemark
Automatic merge from submit-queue (batch tested with PRs 38276, 38193)

Collect controller-manager logs from kubemark
2016-12-07 03:54:25 -08:00
Dr. Stefan Schimanski
a445c5c0f2 e2e: mark 3rd portforwarding test as flaky 2016-12-07 12:42:46 +01:00
Marcin Wielgus
eca87cfea8 Fix skip logic in e2e framework 2016-12-07 12:07:27 +01:00
Kubernetes Submit Queue
6a1d0f0b7b Merge pull request #38221 from kubernetes/revert-38157-disable-overlapping-deployment
Automatic merge from submit-queue (batch tested with PRs 38173, 38151, 38197, 38221)

Revert "Disable "overlapping deployment" test on GKE temporarily. #32947"

Reverts kubernetes/kubernetes#38157
2016-12-06 21:14:35 -08:00
Kubernetes Submit Queue
544ccd2e35 Merge pull request #38197 from kargakis/wait-for-readyrs-before-adopting
Automatic merge from submit-queue (batch tested with PRs 38173, 38151, 38197, 38221)

test: wait for ready replica set before adopting

Reworked version of https://github.com/kubernetes/kubernetes/pull/36439 which was reverted in https://github.com/kubernetes/kubernetes/pull/38049. This PR doesn't use any of the new status API added in replica sets so it should cause no trouble with upgrade tests.

@kubernetes/deployment @smarterclayton
2016-12-06 21:14:33 -08:00
Kubernetes Submit Queue
f920391755 Merge pull request #38139 from sjug/clusterverify_ns
Automatic merge from submit-queue (batch tested with PRs 37032, 38119, 38186, 38200, 38139)

New ns param for NewClusterVerification

**What this PR does / why we need it**: Allows the test to specify alternate namespaces to when waiting for pods to be in a specific state.

**Which issue this PR fixes**: fixes #38138

**Special notes for your reviewer**: Minor fix

**Release note**: None
2016-12-06 18:29:40 -08:00
Kubernetes Submit Queue
cbf497b749 Merge pull request #38119 from liggitt/long-running
Automatic merge from submit-queue (batch tested with PRs 37032, 38119, 38186, 38200, 38139)

Detect long-running requests from parsed request info

Follow up to https://github.com/kubernetes/kubernetes/pull/36064

Uses parsed request info to more tightly match verbs and subresources

Removes regex-based long-running request path matching (which is easily fooled)

```release-note
The --long-running-request-regexp flag to kube-apiserver is deprecated and will be removed in a future release. Long-running requests are now detected based on specific verbs (watch, proxy) or subresources (proxy, portforward, log, exec, attach).
```
2016-12-06 18:29:35 -08:00
Kubernetes Submit Queue
f527f44019 Merge pull request #37032 from gnufied/attach-detach-test
Automatic merge from submit-queue

Add integration tests for desire state of world populator

Add integration tests for desire state of world populator
    
This adds tests for code introduced here :
https://github.com/kubernetes/kubernetes/issues/26994
    
Via integration test we can now verify that if pod delete
event is somehow missed by AttachDetach controller - it still
get cleaned up by Desired State of World populator.
2016-12-06 18:23:59 -08:00
Kubernetes Submit Queue
d4d6a32e9b Merge pull request #38123 from deads2k/api-48-remove-fields
Automatic merge from submit-queue (batch tested with PRs 38194, 37594, 38123, 37831, 37084)

remove unnecessary fields from genericapiserver config

Cleans up some unnecessary fields in the genericapiserver config.
2016-12-06 17:41:33 -08:00
Kubernetes Submit Queue
8d761a0735 Merge pull request #38194 from sttts/sttts-skip-portforward-e2e-flake
Automatic merge from submit-queue

e2e: mark portforward tests as flaky

As long as we don't get https://github.com/kubernetes/kubernetes/issues/27673 and https://github.com/kubernetes/kubernetes/issues/27680 under control, this PR marks them as `[Flaky]`.

There is https://github.com/kubernetes/kubernetes/pull/37072 in flight which might improve the situation, but is blocked on socat issues right now with half-open connections.

cc @kubernetes/sig-testing
2016-12-06 17:02:28 -08:00
Kubernetes Submit Queue
b3ca990ce6 Merge pull request #38203 from mwielgus/fix-labeling
Automatic merge from submit-queue

Skip not registered nodes in labeling in CA e2e tests

This PR fixes problems with querying for not yet registered nodes. The underlying problem is related to the way the test is written. So we apply labels to the existing nodes, create pods that require N+1 nodes  with the labels and expect a new node to be added. But the new node is created without the labels. As soon as the node is spotted it is labeled. But sometimes it is too late. CA notices that the new node doesn't solve the problem and ask for another, hoping that this time it will get the node with the labels.  The node is added by MIG but it takes a minute or more for the node to start and register in kubernetes. At this moment the labeling is started. The list of nodes to be labeled is taken from MIG. The extra node is there. But it is not in kubernetes yet. So 404 error is returned on labeling attempt and test fails.

This PR filters the list of nodes to be labeled and applies the labels only on the fully registered nodes.

Fixes 404 in #33754

cc: @jszczepkowski @piosz @fgrzadkowski
2016-12-06 15:37:12 -08:00
bprashanth
f609546b34 Cleanup firewalls, add nginx ingress to presubmit 2016-12-06 14:25:47 -08:00
Kubernetes Submit Queue
f600c94eab Merge pull request #37561 from deads2k/fed-01-types
Automatic merge from submit-queue (batch tested with PRs 36990, 37494, 38152, 37561, 38136)

api federation types

First commit adds types that can back the kubernetes-discovery server with an `kubectl` compatible way of adding federated servers.  Second commit is just generated code.

After we have types, I'd like to start splitting `kubernetes-discovery` into a "legacy" mode which will support what we have today and a "normal" mode which will provide an API federation server like this: https://github.com/kubernetes/kubernetes/blob/master/docs/proposals/federated-api-servers.md that includes both discovery and proxy in a single server.  Something like this: https://github.com/openshift/kube-aggregator .

@kubernetes/sig-api-machinery @nikhiljindal
2016-12-06 14:13:35 -08:00
Kubernetes Submit Queue
bbd3f68268 Merge pull request #38152 from Random-Liu/move-ssh-into-separate-file
Automatic merge from submit-queue (batch tested with PRs 36990, 37494, 38152, 37561, 38136)

Node E2E: Move ssh related functions into ssh.go.

This PR moves all ssh related functions and variables into a separate file `ssh.go`.

This is a minor cleanup preparing for my test framework refactoring work. Will send out the refactor PR later.

/cc @kubernetes/sig-node
2016-12-06 14:13:33 -08:00
Ryan Hitchman
c1fa8cb8a4 Revert "Disable "overlapping deployment" test on GKE temporarily. #32947" 2016-12-06 14:12:21 -08:00
Seth Jennings
51ae5a34b9 fix permissions when using fsGroup 2016-12-06 14:04:16 -06:00
Marcin Wielgus
1266ee7adf Skip not registered nodes in labeling in CA e2e tests 2016-12-06 20:32:24 +01:00
Michail Kargakis
884b0a6f20 test: wait for ready replica set before adopting 2016-12-06 17:37:37 +01:00
Dr. Stefan Schimanski
2d9908a812 Mark portforward e2e tests as flaky 2016-12-06 16:52:33 +01:00
Wojciech Tyczynski
aab227dd42 Collect controller-manager logs from kubemark 2016-12-06 16:30:52 +01:00
deads2k
b723333be3 move APIResourceConfigSource to master 2016-12-06 10:19:25 -05:00
Kubernetes Submit Queue
c3a2cc5370 Merge pull request #38185 from kargakis/restore-poll-for-test-util
Automatic merge from submit-queue

test: restore polling for stabilizing deployment tests

Discussed in 886052c225 (commitcomment-20081416)

@rmmh @janetkuo @wojtek-t ptal
2016-12-06 06:31:01 -08:00
deads2k
f255e46ee4 refactor kubernetes-discovery to use cobra and prep for genericapiserver 2016-12-06 08:08:50 -05:00
Hemant Kumar
fcf5d79be7 Add integration tests for desire state of world populator
This adds tests for code introduced here :
https://github.com/kubernetes/kubernetes/issues/26994

Via integration test we can now verify that if pod delete
event is somehow missed by AttachDetach controller - it still
get cleaned up by Desired State of World populator.
2016-12-06 06:52:52 -05:00
gmarek
070f0979c2 Make it possible to run Load test using Deployments or ReplicaSets 2016-12-06 12:22:58 +01:00
Michail Kargakis
4949d61b39 test: restore polling for stabilizing deployment tests 2016-12-06 11:57:32 +01:00
Kubernetes Submit Queue
077b97e6d5 Merge pull request #37989 from timothysc/etcd_clientv3_enable
Automatic merge from submit-queue

Remove integration test dependencies on etcd client

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does**:

Remove integration test dependencies on etcd client

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```
NONE
```
2016-12-06 02:03:05 -08:00
Kubernetes Submit Queue
67669f1fd0 Merge pull request #36643 from kzwang/ingress-controller
Automatic merge from submit-queue (batch tested with PRs 37870, 36643, 37664, 37545)

Add option to disable federation ingress controller

**What this PR does / why we need it**:
Added an option to enable/disable federation ingress controller as currently federated ingresses doesn't work in environments other than GCE/GKE. Also ignore reconcile config maps if no federated ingresses exist.

**Which issue this PR fixes** 
fixes #33943

@quinton-hoole

**Release note**:
```release-note
Add `--controllers` flag to federation controller manager for enable/disable federation ingress controller
```
2016-12-06 00:22:54 -08:00
Random-Liu
6f92572209 Move ssh related functions into ssh.go. 2016-12-05 23:59:58 -08:00
Kubernetes Submit Queue
2708f5c7dd Merge pull request #37870 from madhusudancs/fed-svc-no-cascading-delete-e2e-fix
Automatic merge from submit-queue

[Federation] Separate the cleanup phases of service and service shards so that service shards can be cleaned up even after the service is deleted elsewhere.

Fixes Federated Service e2e test.

This separation is necessary because "Federated Service DNS should be
able to discover a federated service" e2e test recently added a case
where it deletes the service from federation but not the shards from
the underlying clusters.

Because of the way cleanup was implemented in the AfterEach block
currently, we did not cleanup any of the underlying shards. However,
separating the two phases of the cleanup needs this separation.

cc @kubernetes/sig-cluster-federation @nikhiljindal
2016-12-05 23:50:33 -08:00
Kubernetes Submit Queue
da81f24323 Merge pull request #38150 from Random-Liu/remote-setup-node
Automatic merge from submit-queue (batch tested with PRs 38149, 38156, 38150)

Node E2E: Remove setup-node option

This PR removes `setup-node` option, because:
* It is misleading. `setup-node` doesn't really setup the node, test framework will only put current user into docker user group when it is specified.
* It is not necessary anymore. Because we always run node e2e test as root now, we don't need to do this anymore.

This is a minor cleanup preparing for my test framework refactoring work. Will send out the refactor PR later.

/cc @kubernetes/sig-node
2016-12-05 21:48:40 -08:00
Kubernetes Submit Queue
a22ddb3115 Merge pull request #38156 from eparis/remove-girishkalele
Automatic merge from submit-queue (batch tested with PRs 38149, 38156, 38150)

Remove girishkalele from most places

@matchstick you might need to help here. I am doing this because the bot is trying to create an issue assigned to @girishkalele but it cannot be created as he is not a member of the org any longer.
2016-12-05 21:48:38 -08:00
Kubernetes Submit Queue
e8b19e4ed1 Merge pull request #38149 from bprashanth/lb_e2e
Automatic merge from submit-queue

Move some lb tests to the slow suite

These tests have been stable, so move the basic ones to slow.
2016-12-05 21:43:13 -08:00
Kubernetes Submit Queue
0a7aadc282 Merge pull request #38146 from jessfraz/fix-lint-master
Automatic merge from submit-queue (batch tested with PRs 37328, 38102, 37261, 31321, 38146)

fix golint errors on master for 1.6

Needs to be merged before https://github.com/kubernetes/test-infra/pull/1299 is merged

updates https://github.com/kubernetes/kubernetes/issues/37254
2016-12-05 20:16:55 -08:00
Kubernetes Submit Queue
216a03749f Merge pull request #37261 from MrHohn/dnsautoscale-wait-pods
Automatic merge from submit-queue (batch tested with PRs 37328, 38102, 37261, 31321, 38146)

Fixes flake: wait for dns pods terminating after test completed

From #37194. Based on #36600. Please only look at the second commit.

As mentioned in [comment](https://github.com/kubernetes/kubernetes/issues/37194#issuecomment-262007174), "DNS horizontal autoscaling" test does not wait for the additional pods to be terminated and this may lead to the failure of later tests.

This fix adds a wait loop at the end of the serial test to ensure the cluster recovers to the original state. In the non-serial test it does not wait for the additional pods terminating because it will not affect other tests, given they are able to be run simultaneously. Plus wait for pods terminating will take certain amount of time.

Note this only fixes certain case of #37194. I noticed there are other failures irrelevant to dns autoscaler. LIke [this one](https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e-gci-gce-serial/34/).

@bprashanth @Random-Liu
2016-12-05 20:16:51 -08:00
Kubernetes Submit Queue
b1dba6cd9f Merge pull request #37328 from caesarxuchao/fix-tpr-deleteoptions
Automatic merge from submit-queue (batch tested with PRs 37328, 38102, 37261, 31321, 38146)

Make thirdparty codec able to decode DeleteOptions

Fix #37278. 

Without this PR, the gvk sent to the delegated codec will be the thirdparty one, which is not recognized by the delegated codec (usually api.Codecs).
2016-12-05 20:16:48 -08:00
Kevin Wang
007d7a802f Add option to disable federation ingress controller 2016-12-06 15:14:21 +11:00
Kubernetes Submit Queue
637a5703f6 Merge pull request #37634 from Crassirostris/gcl-e2e-debugging
Automatic merge from submit-queue (batch tested with PRs 38076, 38137, 36882, 37634, 37558)

Make logging for gcl e2e test more verbose

To help debug https://github.com/kubernetes/kubernetes/issues/37241

CC @piosz
2016-12-05 19:25:55 -08:00
Kubernetes Submit Queue
f587c7a49f Merge pull request #38076 from kargakis/requeue-replica-sets-for-availability-checks
Automatic merge from submit-queue (batch tested with PRs 38076, 38137, 36882, 37634, 37558)

Requeue replica sets for availability checks

See https://github.com/kubernetes/kubernetes/issues/35355#issuecomment-264746268 for more details

@kubernetes/deployment @smarterclayton
2016-12-05 19:25:49 -08:00
Ryan Hitchman
8907762844 Disable "overlapping deployment" test on GKE temporarily. #32947 2016-12-05 16:58:52 -08:00
Eric Paris
78798f6191 Remove girishkalele from most places
This also updates the maintainers list and reassigns his tests
2016-12-05 19:29:34 -05:00
Random-Liu
7c2b1f4752 Remove setup-node, which is not needed after we run the whole test as
root.
2016-12-05 16:16:08 -08:00
Chao Xu
6534661a04 make thirdparty codec able to decode DeleteOptions 2016-12-05 15:54:02 -08:00
bprashanth
0d79b01adc Move some lb tests to the slow suite 2016-12-05 15:35:55 -08:00
Jess Frazelle
4d27212149
fix golint errors on master for 1.6
Signed-off-by: Jess Frazelle <acidburn@google.com>
2016-12-05 15:01:33 -08:00
Kubernetes Submit Queue
2c61d2f80c Merge pull request #38121 from deads2k/auth-09-remove-rbac-super
Automatic merge from submit-queue (batch tested with PRs 38111, 38121)

remove rbac super user

Cleaning up cruft and duplicated capabilities as we transition from RBAC alpha to beta.  In 1.5, we added a secured loopback connection based on the `system:masters` group name.  `system:masters` have full power in the API, so the RBAC super user is superfluous.

The flag will stay in place so that the process can still launch, but it will be disconnected.

@kubernetes/sig-auth
2016-12-05 14:14:41 -08:00
Jordan Liggitt
4359054616
Detect long-running requests from parsed request info 2016-12-05 16:46:28 -05:00
Sebastain Jug
98864265a2 New ns param for NewClusterVerification 2016-12-05 16:27:07 -05:00
Timothy St. Clair
162ddc10e2 Update to remove artifical etcd client dependencies in the integration tests 2016-12-05 15:15:47 -06:00
Kubernetes Submit Queue
4fed3269dd Merge pull request #36352 from kargakis/fix-deployment-helper
Automatic merge from submit-queue (batch tested with PRs 36352, 36538, 37976, 36374)

test: update deployment helper to return better error messages

@kubernetes/deployment the problem with https://github.com/kubernetes/kubernetes/issues/36270 is that the selector key is never added in the deployment but this change would make it clearer.
2016-12-05 11:08:42 -08:00
deads2k
2923d09091 remove rbac super user 2016-12-05 13:49:54 -05:00
Madhusudan.C.S
28a7ff3cd0 Test owners update. 2016-12-05 10:33:16 -08:00
Madhusudan.C.S
ae03433a70 Added a comment about the reasoning. 2016-12-05 10:33:16 -08:00
Madhusudan.C.S
bcddb157e4 [Federation] Separate the cleanup phases of service and service shards so that service shards can be cleaned up even after the service is deleted elsewhere.
This separation is necessary because "Federated Service DNS should be
able to discover a federated service" e2e test recently added a case
where it deletes the service from federation but not the shards from
the underlying clusters.

Because of the way cleanup was implemented in the AfterEach block
currently, we did not cleanup any of the underlying shards. However,
separating the two phases of the cleanup needs this separation.
2016-12-05 10:33:15 -08:00
Kubernetes Submit Queue
5e41d0904f Merge pull request #37830 from sttts/sttts-stratify-cert-generation
Automatic merge from submit-queue

Stratify apiserver cert generation

- move self-signed cert generation to `SecureServingOptions.MaybeDefaultWithSelfSignedCerts`
- make cert generation only depend on `ServerRunOptions`, not on an unfinished `Config` (this breaks the chicken-egg problem of a finished config in https://github.com/kubernetes/kubernetes/pull/35387#pullrequestreview-5368176)
- move loopback client config code into `config_selfclient.go`

Replaces https://github.com/kubernetes/kubernetes/pull/35387#event-833649341 by getting rid of duplicated `Complete`.
2016-12-05 10:15:47 -08:00
Dr. Stefan Schimanski
3f01c37b9d Update generated files 2016-12-05 16:05:52 +01:00
Dr. Stefan Schimanski
2dff13f332 Update generated files 2016-12-05 12:42:31 +01:00
Dr. Stefan Schimanski
24e24fc7bb Add verb support to gc and namespace controllers 2016-12-05 12:36:05 +01:00
Dr. Stefan Schimanski
458d2b2fe4 Add verb support for discovery client 2016-12-05 12:36:05 +01:00
Jerzy Szczepkowski
2f6ba11fd8 Merge pull request #38074 from mwielgus/fix-ca-e2e
Fix error handling in cluster autoscaler e2e test
2016-12-05 09:52:04 +01:00
Michail Kargakis
4dfe2a2348 test: update e2e rollover test to use minReadySeconds 2016-12-05 02:47:12 +01:00
Marcin Wielgus
f710480e91 Fix error handling in cluster autoscaler e2e test 2016-12-05 00:35:15 +01:00
Clayton Coleman
3454a8d52c
refactor: update bazel, codec, and gofmt 2016-12-03 19:10:53 -05:00
Clayton Coleman
5df8cc39c9
refactor: generated 2016-12-03 19:10:46 -05:00
Kubernetes Submit Queue
07dd740ac0 Merge pull request #38049 from smarterclayton/revert_36439
Automatic merge from submit-queue (batch tested with PRs 38049, 37823, 38000, 36646)

Revert "test: update rollover test to wait for available rs before adopting"

This reverts commit 5b7bf78f3f from pr #36439 which appears to have mostly broken the gci-gke test.
2016-12-03 14:20:49 -08:00
Kubernetes Submit Queue
ad72d1728c Merge pull request #37547 from sttts/sttts-cut-off-genericapserver-from-registry
Automatic merge from submit-queue

Cut genericapserver->registry dependency

Towards moving genericapiserver into staging.
2016-12-03 12:22:20 -08:00
Kubernetes Submit Queue
9f66f7544b Merge pull request #37856 from timstclair/summary-test
Automatic merge from submit-queue (batch tested with PRs 37692, 37785, 37647, 37941, 37856)

Verify misc container in summary test

Should detect issue from https://github.com/kubernetes/kubernetes/issues/35214, https://github.com/kubernetes/kubernetes/issues/37453

/cc @piosz @dchen1107
2016-12-03 11:45:03 -08:00
Kubernetes Submit Queue
4451410bdc Merge pull request #37647 from bowei/priv-pod-e2e
Automatic merge from submit-queue (batch tested with PRs 37692, 37785, 37647, 37941, 37856)

Remove extraneous curl, pods, etc from privileged pod test
2016-12-03 11:45:00 -08:00
Kubernetes Submit Queue
16a9c0b49c Merge pull request #37692 from wojtek-t/storage_resource_version_for_get
Automatic merge from submit-queue

Handle RV in Get calls to storage interface.

Ref #37473
2016-12-03 11:44:29 -08:00
Clayton Coleman
7aacb61fe1
Revert "test: update rollover test to wait for available rs before adopting"
This reverts commit 5b7bf78f3f.
2016-12-03 14:42:50 -05:00
Dr. Stefan Schimanski
1f5511b131 Move RESTStorageProvider interface into pkg/master 2016-12-03 18:35:15 +01:00
Kubernetes Submit Queue
ba62dafe39 Merge pull request #37663 from Random-Liu/fix-node-e2e-firewall-configure
Automatic merge from submit-queue (batch tested with PRs 37094, 37663, 37442, 37808, 37826)

Node E2E: Fix node e2e firewall configure.

Get rid of the misleading error message:
```
W1129 12:57:16.967] E1129 12:57:16.967130   29815 remote.go:204] Failed to configured firewall: command [ssh -i /home/jenkins/.ssh/google_compute_engine -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o CheckHostIP=no -o StrictHostKeyChecking=no -o ServerAliveInterval=30 -o LogLevel=ERROR 104.154.201.208 -- sudo sh -c 'iptables -L INPUT | grep "Chain INPUT (policy DROP)"&&(iptables -C INPUT -w -p TCP -j ACCEPT || iptables -A INPUT -w -p TCP -j ACCEPT)&&(iptables -C INPUT -w -p UDP -j ACCEPT || iptables -A INPUT -w -p UDP -j ACCEPT)&&(iptables -C INPUT -w -p ICMP -j ACCEPT || iptables -A INPUT -w -p ICMP -j ACCEPT)'] failed with error: exit status 1 output: 
W1129 12:57:17.271] E1129 12:57:17.271169   29815 remote.go:213] Failed to configured firewall: command [ssh -i /home/jenkins/.ssh/google_compute_engine -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o CheckHostIP=no -o StrictHostKeyChecking=no -o ServerAliveInterval=30 -o LogLevel=ERROR 104.154.201.208 -- sudo sh -c 'iptables -L FORWARD | grep "Chain FORWARD (policy DROP)" > /dev/null&&(iptables -C FORWARD -w -p TCP -j ACCEPT || iptables -A FORWARD -w -p TCP -j ACCEPT)&&(iptables -C FORWARD -w -p UDP -j ACCEPT || iptables -A FORWARD -w -p UDP -j ACCEPT)&&(iptables -C FORWARD -w -p ICMP -j ACCEPT || iptables -A FORWARD -w -p ICMP -j ACCEPT)'] failed with error: exit status 1 output: 
W1129 12:57:17.557] E1129 12:57:17.556683   29815 remote.go:204] Failed to configured firewall: command [ssh -i /home/jenkins/.ssh/google_compute_engine -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o CheckHostIP=no -o StrictHostKeyChecking=no -o ServerAliveInterval=30 -o LogLevel=ERROR 104.154.128.178 -- sudo sh -c 'iptables -L INPUT | grep "Chain INPUT (policy DROP)"&&(iptables -C INPUT -w -p TCP -j ACCEPT || iptables -A INPUT -w -p TCP -j ACCEPT)&&(iptables -C INPUT -w -p UDP -j ACCEPT || iptables -A INPUT -w -p UDP -j ACCEPT)&&(iptables -C INPUT -w -p ICMP -j ACCEPT || iptables -A INPUT -w -p ICMP -j ACCEPT)'] failed with error: exit status 1 output: 
W1129 12:57:17.771] I1129 12:57:17.771236   29815 remote.go:231] Killing any existing node processes on tmp-node-e2e-a1212c32-gci-dev-56-8977-0-0
W1129 12:57:17.877] E1129 12:57:17.877123   29815 remote.go:213] Failed to configured firewall: command [ssh -i /home/jenkins/.ssh/google_compute_engine -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o CheckHostIP=no -o StrictHostKeyChecking=no -o ServerAliveInterval=30 -o LogLevel=ERROR 104.154.128.178 -- sudo sh -c 'iptables -L FORWARD | grep "Chain FORWARD (policy DROP)" > /dev/null&&(iptables -C FORWARD -w -p TCP -j ACCEPT || iptables -A FORWARD -w -p TCP -j ACCEPT)&&(iptables -C FORWARD -w -p UDP -j ACCEPT || iptables -A FORWARD -w -p UDP -j ACCEPT)&&(iptables -C FORWARD -w -p ICMP -j ACCEPT || iptables -A FORWARD -w -p ICMP -j ACCEPT)'] failed with error: exit status 1 output: 
W1129 12:57:17.898] I1129 12:57:17.898711   29815 remote.go:239] Extracting tar on tmp-node-e2e-a1212c32-gci-dev-56-8977-0-0
W1129 12:57:17.941] E1129 12:57:17.941566   29815 remote.go:204] Failed to configured firewall: command [ssh -i /home/jenkins/.ssh/google_compute_engine -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o CheckHostIP=no -o StrictHostKeyChecking=no -o ServerAliveInterval=30 -o LogLevel=ERROR 104.154.154.237 -- sudo sh -c 'iptables -L INPUT | grep "Chain INPUT (policy DROP)"&&(iptables -C INPUT -w -p TCP -j ACCEPT || iptables -A INPUT -w -p TCP -j ACCEPT)&&(iptables -C INPUT -w -p UDP -j ACCEPT || iptables -A INPUT -w -p UDP -j ACCEPT)&&(iptables -C INPUT -w -p ICMP -j ACCEPT || iptables -A INPUT -w -p ICMP -j ACCEPT)'] failed with error: exit status 1 output: 
W1129 12:57:18.020] I1129 12:57:18.019802   29815 remote.go:231] Killing any existing node processes on tmp-node-e2e-a1212c32-coreos-alpha-1122-0-0-v20160727
W1129 12:57:18.024] E1129 12:57:18.024044   29815 remote.go:213] Failed to configured firewall: command [ssh -i /home/jenkins/.ssh/google_compute_engine -o UserKnownHostsFile=/dev/null -o IdentitiesOnly=yes -o CheckHostIP=no -o StrictHostKeyChecking=no -o ServerAliveInterval=30 -o LogLevel=ERROR 104.154.154.237 -- sudo sh -c 'iptables -L FORWARD | grep "Chain FORWARD (policy DROP)" > /dev/null&&(iptables -C FORWARD -w -p TCP -j ACCEPT || iptables -A FORWARD -w -p TCP -j ACCEPT)&&(iptables -C FORWARD -w -p UDP -j ACCEPT || iptables -A FORWARD -w -p UDP -j ACCEPT)&&(iptables -C FORWARD -w -p ICMP -j ACCEPT || iptables -A FORWARD -w -p ICMP -j ACCEPT)'] failed with error: exit status 1 output: 
```

The problem is that the command 'iptables -L FORWARD | grep "Chain FORWARD (policy DROP)" returns an error when the rule is not found, which is not expected behaviour.

@freehan
2016-12-03 04:27:48 -08:00
Kubernetes Submit Queue
8bf1ae8313 Merge pull request #37094 from sjug/reshuffle_gobindata_dep
Automatic merge from submit-queue (batch tested with PRs 37094, 37663, 37442, 37808, 37826)

Moved gobindata, refactored ReadOrDie refs

**What this PR does / why we need it**: Having gobindata inside of test/e2e/framework prevents external projects from importing the framework. Moving it out and managing refs fixes this problem.

**Which issue this PR fixes**: fixes #37007
2016-12-03 04:27:46 -08:00
Wojciech Tyczynski
ec247315be Handle RV in Get calls to storage interface. 2016-12-03 10:18:43 +01:00
Kubernetes Submit Queue
df89a3c082 Merge pull request #37103 from sttts/sttts-portforwardtester-linger-on-exit
Automatic merge from submit-queue (batch tested with PRs 37608, 37103, 37320, 37607, 37678)

portfordwardtester: avoid data loss during send+close+exit

Following https://blog.netherlabs.nl/articles/2009/01/18/the-ultimate-so_linger-page-or-why-is-my-tcp-not-reliable when closing the sending connection in the port-forward-tester container.

Potentially fixing https://github.com/kubernetes/kubernetes/issues/27680
2016-12-02 23:32:45 -08:00
Kubernetes Submit Queue
0ca2b4cbf1 Merge pull request #37258 from timstclair/apparmor-test
Automatic merge from submit-queue (batch tested with PRs 37997, 37939, 37990, 36700, 37258)

Add cluster-level AppArmor E2E test

My goal is to reuse this test for an automated cluster upgrade test.
2016-12-02 19:26:52 -08:00
Anirudh
9a9f7ec81d Add in GKE to list. 2016-12-02 16:05:28 -08:00
Dawn Chen
388fb2028c Revert "Skip StatefulSet e2e tests if this resource is not found" 2016-12-02 15:50:19 -08:00
Kubernetes Submit Queue
28e8b5ab2b Merge pull request #36263 from apprenda/kubeadm-unit-tests-pkg-master
Automatic merge from submit-queue

Kubeadm unit tests for kubeadm/app/master package

Added unit tests for the kubeadm/app/master package testing functionality of tokens.go, kubeconfig.go, manifests.go, pki.go, discovery.go, addons.go, and apiclient.go.

This PR is part of the ongoing effort to add tests (#35025)

/cc @pires @jbeda
2016-12-02 14:50:12 -08:00
Kubernetes Submit Queue
d71154b910 Merge pull request #36439 from kargakis/update-rollover-test
Automatic merge from submit-queue

test: update rollover test to wait for available rs before adopting

Scenario that happened in https://github.com/kubernetes/kubernetes/issues/35355#issuecomment-257808460

-- Replica set that is about to be adopted has 2 out of 4 ready replicas
-- Deployment is created with 4 replicas, adopts pre-existing replica set, creates a new one, and starts rolling replicas over to the new replica set.
```
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment: {deployment-controller } ScalingReplicaSet: Scaled down replica set test-rollover-controller to 3
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment: {deployment-controller } ScalingReplicaSet: Scaled up replica set test-rollover-deployment-2505289747 to 1
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment-2505289747: {replicaset-controller } SuccessfulCreate: Created pod: test-rollover-deployment-2505289747-iuiei
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment-2505289747-iuiei: {default-scheduler } Scheduled: Successfully assigned test-rollover-deployment-2505289747-iuiei to gke-jenkins-e2e-default-pool-33c0400e-6q5m
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:05 -0700 PDT - event for test-rollover-deployment: {deployment-controller } ScalingReplicaSet: Scaled up replica set test-rollover-deployment-2505289747 to 2
```
At this point there is no minimum availability for the Deployment (maxUnavailable is 1 meaning desired minimum available is 3 but we only have 2), and the new replica set uses a non-existent image. New replica set is scaled up to 1 (maxSurge is 1), then old replica set is scaled down by one, because cleanupUnhealthyReplicas observes that it has 2 unhealthy replicas - it can only scale down one though because the [maximum replicas it can cleanup is one](d87dfa2723/pkg/controller/deployment/rolling.go (L125)) (4+1-3-1). New replica set is scaled to 2. Available replicas are still 2 (third replica from the old replica set has yet to come up).
-- Deployment is rolled over with a new update. Test reaches for the WaitForDeploymentStatus check but there are only 2 availableReplicas (maxUnavailable is still violated).

This change makes the test wait for a healthy replica set before proceeding thus it should never hit the scenario described above.

@kubernetes/deployment
2016-12-02 12:48:44 -08:00
Tim St. Clair
9ea7e0af26
Add cluster-level AppArmor E2E test 2016-12-02 10:37:28 -08:00
Sebastian Jug
79202656bc - Moved gobindata, refactored ReadOrDie refs
- Remaining spaghetti untangled
- Missed bazel update and a few hardcoded refs
- New instance of framework.ReadOrDie reference removed post rebase
- Resolve new clientset rebase
- Fixed e2e/generated BUILD dep
- A space
- Missed gobindata ref in golang.sh
2016-12-02 12:57:03 -05:00
Derek McQuay
644a0ceec9 kubeadm: adding test owner and bazel update 2016-12-02 08:42:46 -08:00
Kubernetes Submit Queue
11e8bde7e3 Merge pull request #37124 from timothysc/integration_etcd
Automatic merge from submit-queue

[etcd] Reduce the etcd surface area in the integration test to minimize deps

This is a code refactor for isolation of client usage.
2016-12-02 07:29:04 -08:00
Kubernetes Submit Queue
7ec3be4c8e Merge pull request #36964 from ixdy/gobin-build
Automatic merge from submit-queue

Build vendored copy of go-bindata and use that in go generate step

**What this PR does / why we need it**: as the title says, uses the vendored version of `go-bindata` rather than expecting developers to `go get` it (when building outside docker).

**Which issue this PR fixes**: fixes #34067, partially addresses #36655

**Special notes for your reviewer**: we still call `go generate` far too many times:
```console
~/.../src/k8s.io/kubernetes $ which go-bindata
~/.../src/k8s.io/kubernetes $ make
+++ [1116 17:35:28] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:29] Generating bindata:
    test/e2e/framework/gobindata_util.go
+++ [1116 17:35:30] Building go targets for linux/amd64:
    cmd/libs/go2idl/deepcopy-gen
+++ [1116 17:35:35] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:35] Generating bindata:
    test/e2e/framework/gobindata_util.go
+++ [1116 17:35:36] Building go targets for linux/amd64:
    cmd/libs/go2idl/defaulter-gen
+++ [1116 17:35:41] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:41] Generating bindata:
    test/e2e/framework/gobindata_util.go
+++ [1116 17:35:42] Building go targets for linux/amd64:
    cmd/libs/go2idl/conversion-gen
+++ [1116 17:35:47] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:47] Generating bindata:
    test/e2e/framework/gobindata_util.go
+++ [1116 17:35:48] Building go targets for linux/amd64:
    cmd/libs/go2idl/openapi-gen
+++ [1116 17:35:56] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
    k8s.io/kubernetes/vendor/github.com/jteeuwen/go-bindata/go-bindata
+++ [1116 17:35:56] Generating bindata:
    test/e2e/framework/gobindata_util.go
```
Fixing that is a separate effort, though.

cc @sebgoa @ZhangBanger
2016-12-02 07:29:01 -08:00
Kubernetes Submit Queue
edefe66c78 Merge pull request #36106 from apprenda/kubeadm-unit-tests-pkg-node
Automatic merge from submit-queue

Kubeadm unit tests pkg node

Added unit tests for the kubeadm/app/node package testing functionality of bootstrap.go, csr.go, and discovery.go. 

This PR is part of the ongoing effort to add tests (#35025)

/cc @pires @jbeda
2016-12-02 05:45:01 -08:00
Kubernetes Submit Queue
251333971d Merge pull request #37418 from bprashanth/ing_cleanup
Automatic merge from submit-queue

Cleanup old cloud resources after 48 hours

With this pr the ingress e2e purges old leaked resources (>48h), so even if tests fail due to leaks, the entire queue won't close till someone bumps up quota through a manual request.
2016-12-02 03:31:38 -08:00
Kubernetes Submit Queue
6abb472357 Merge pull request #37720 from freehan/lb-src-update
Automatic merge from submit-queue

Fix Service Update on LoadBalancerSourceRanges Field

Fixes: https://github.com/kubernetes/kubernetes/issues/33033
Also expands: https://github.com/kubernetes/kubernetes/pull/32748
2016-12-01 18:21:39 -08:00
Kubernetes Submit Queue
3a4b4749e3 Merge pull request #37648 from Random-Liu/collect-serial-output-node-e2e
Automatic merge from submit-queue

Node E2E: Collect serial output

This is a temporary solution to collect serial output from test GCE node in node e2e.

We should come up with a better idea later. Ideally, node e2e should share the same log collection logic with cluster e2e. https://github.com/kubernetes/kubernetes/blob/master/cluster/log-dump.sh

Mark v1.5 because this helps debug https://github.com/kubernetes/kubernetes/issues/37333.

@mtaufen @dchen1107 
/cc @kubernetes/sig-node
2016-12-01 15:06:59 -08:00
Tim St. Clair
bcf5e434fa
Verify misc container in summary test 2016-12-01 14:02:39 -08:00
Minhan Xia
0ea7b950d3 add e2e test for updating lb source range 2016-12-01 13:56:21 -08:00
Daniel Smith
5b1d875f27 Revert "Modify GCI mounter to enable NFSv3" 2016-12-01 11:47:24 -08:00
Random-Liu
6d4e457f1f Collect serial output when test fails in node e2e. 2016-12-01 10:41:24 -08:00
Derek McQuay
4ab42db17e kubeadm: unit tests for app/node/ pkg 2016-12-01 09:30:19 -08:00
Kubernetes Submit Queue
069c263abd Merge pull request #37639 from MrHohn/e2e-reboot-dump
Automatic merge from submit-queue

Adds termination hook in reboot test for debugging

From #33405 and #36230.

Logs the SSH command issued for dropping inbound / outbound traffic to file and dump it out when test ends.

The first `sudo iptables -t filter -nL` is called to confirm the rules are injected. The second `sudo iptables -t filter -nL` is to check whether the rules get clobbered. Adds `date` in between to check time frame.

@bprashanth @freehan
2016-12-01 07:52:07 -08:00
Kubernetes Submit Queue
13f3b23cf6 Merge pull request #37812 from mwielgus/dis_big_cl
Automatic merge from submit-queue

Skip some disruption e2e test in big clusters

cc: @wojtek-t @davidopp
2016-12-01 06:30:51 -08:00
Marcin Wielgus
cf92f1cdba Skip some disruption e2e test in big clusters 2016-12-01 14:26:38 +01:00
Kubernetes Submit Queue
2fab199390 Merge pull request #36334 from luxas/add_preflight
Automatic merge from submit-queue

Add the system verification test to the kubeadm preflight checks

And refactor the system verification test to accept to write to a specific writer in order to customize the output

This PR is targeting v1.5, PTAL
cc @Random-Liu @dchen1107 @kubernetes/sig-cluster-lifecycle
2016-12-01 04:52:07 -08:00
Jeff Grafton
0d9d623f04 Build vendored copy of go-bindata and use that in go generate step
Additionally remove all instances of `go get`ing go-bindata
2016-11-30 22:23:40 -08:00
Kubernetes Submit Queue
6c2c12fafa Merge pull request #37582 from jingxu97/Nov/retrynfsv3
Automatic merge from submit-queue

Modify GCI mounter to enable NFSv3
2016-11-30 21:59:08 -08:00
Kubernetes Submit Queue
b2cabee2f2 Merge pull request #37412 from janetkuo/revert-revert-remove-slow-statefulset
Automatic merge from submit-queue

Revert "Revert "Remove [Slow] from statefulset basic tests""

Reverts #37387, see https://github.com/kubernetes/kubernetes/pull/37387#issuecomment-262629767

Don't merge yet until #37393 is fixed
2016-11-30 21:11:09 -08:00
Kubernetes Submit Queue
5bba858b33 Merge pull request #37231 from janetkuo/stateful-set-example-files
Automatic merge from submit-queue

Update Stateful Set example files for 1.5

1. Remove initialized annotation from statefulset examples
2. Update storage class annotation to beta in statefulset examples
3. Remove alpha limitation on PetSet in cassandra example

cc @erictune @foxish @kow3ns @enisoc @chrislovecnm @kubernetes/sig-apps

```release-note
NONE
```
2016-11-30 21:11:08 -08:00
Kubernetes Submit Queue
b0fd700f61 Merge pull request #36604 from deads2k/api-42-add-generic-loopback
Automatic merge from submit-queue

move parts of the mega generic run struct out

This splits the main `ServerRunOptions` into composeable pieces that are bindable separately and adds easy paths for composing servers to run delegating authentication and authorization.

@sttts @ncdc alright, I think this is as far as I need to go to make the composing servers reasonable to write.  I'll try leaving it here
2016-11-30 21:11:05 -08:00
Zihong Zheng
c5e68b5451 Fixes flake: wait for dns pods terminating after test completed 2016-11-30 21:04:04 -08:00
Kubernetes Submit Queue
737edd02a4 Merge pull request #35258 from feiskyer/package-aliase
Automatic merge from submit-queue

Fix package aliases to follow golang convention

Some package aliases are not not align with golang convention https://blog.golang.org/package-names. This PR fixes them. Also adds a verify script and presubmit checks.

Fixes #35070.

cc/ @timstclair @Random-Liu
2016-11-30 16:39:46 -08:00
Kubernetes Submit Queue
d9fcabcbd0 Merge pull request #37290 from mwielgus/rev-fed-dep
Automatic merge from submit-queue

Revision handling in federated deployment controller

Deployment controller in regular kubernetes automatically adds an annotation in deployment. This causes a bit of confusion in controller and tests. This PR skips revision annotation in checks. In the next K8S release we will need to have better support for deployment revisions. 

Helps with #36588

cc: @nikhiljindal @madhusudancs
2016-11-30 09:21:25 -08:00
Kubernetes Submit Queue
d51f07b60d Merge pull request #37353 from nikhiljindal/serviceDelete
Automatic merge from submit-queue

Stop deleting underlying services when federation service is deleted

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

Fixing federation service controller to not delete services from underlying clusters when federated service is deleted.
None of the federation controller should do this unless explicitly asked by the user using DeleteOptions. This is the only federation controller that does that.

cc @kubernetes/sig-cluster-federation @madhusudancs

```release-note
federation service controller: stop deleting services from underlying clusters when federated service is deleted.
```
2016-11-30 06:02:39 -08:00
Filip Grzadkowski
cf25ac2655 Merge pull request #37675 from mwielgus/fix_kubectl_e2e
Fix kubectl call in autoscaling e2e test
2016-11-30 14:31:40 +01:00
Marcin Wielgus
b8e7d08968 Fix kubectl call in autoscaling e2e test 2016-11-30 10:28:31 +01:00
Kubernetes Submit Queue
50fb2845d1 Merge pull request #37006 from jayunit100/skip_dont_fail
Automatic merge from submit-queue

Skip rather than fail networking tests on single node

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

Needed for the general e2e tidying we need to do for flakey slow tests, imo pre 1.5, see #31402  and so on.

**Which issue this PR fixes** * 

Dont fail multinode tests if on a single node cluster, skip instead.
2016-11-30 01:26:45 -08:00
Pengfei Ni
f584ed4398 Fix package aliases to follow golang convention 2016-11-30 15:40:50 +08:00
Kubernetes Submit Queue
320b30479f Merge pull request #37583 from mtaufen/test-fr-ssh-issue
Automatic merge from submit-queue

Fix nil pointer dereference in test framework

Checking the `result.Code` prior to `err` in the if statement causes a panic if result is `nil`. It turns out the formatting of the error is already in `IssueSSHCommandWithResult`, so removing redundant code is enough to fix the issue. Logging the SSH result was also redundant, so I removed that as well.
2016-11-29 23:25:23 -08:00
Kubernetes Submit Queue
42d5a1a9cd Merge pull request #37392 from Random-Liu/final-cleanup-for-nct
Automatic merge from submit-queue

Node Conformance Test: Final cleanup for node conformance test.

This PR fits node conformance test with recent change.
* Remove `--manifest-path` because the test will get kubelet configuration through `/configz` now. https://github.com/kubernetes/kubernetes/pull/36919
* Add `$TEST_ARGS` so that we can override arguments inside the container.
* Fix a bug in garbage_collector_test.go which will cause the framework tries to connect docker no matter running the test or not. @dashpole 
* Add `${REGISTRY}/node-test:${VERSION}` for convenience. 
* Bump up the image version to `0.2`. (the one released with v1.4 is `v0.1`)

I've run the test both with `run_test.sh` script and directly `docker run`. Both of them passed.

After this gets merged, I'll build and push the new test image.

@dchen1107 
/cc @kubernetes/sig-node
2016-11-29 22:39:52 -08:00
Kubernetes Submit Queue
517c1c305c Merge pull request #33955 from dashpole/inode_exhaust_tests
Automatic merge from submit-queue

Per-container inode accounting test

Test spins up two pods: one pod uses all inodes, other pod acts normally. Test ensures correct pressure is encountered, inode-hog-pod is evicted, and the pod acting normally is not evicted. Test ensures conditions return to normal after the test.
2016-11-29 22:04:25 -08:00
Kubernetes Submit Queue
ea576b7c53 Merge pull request #36600 from MrHohn/e2e-dnsautoscaling-fix
Automatic merge from submit-queue

Fixes dns autoscaling test flakes

Fixes  #36457 and fixes #36569.

#36457 is flake due to the 10 minutes timeout for scaling down cluster. Changes to use `scaleDownTimeout` from [test/e2e/cluster_size_autoscaling.go](https://github.com/kubernetes/kubernetes/blob/master/test/e2e/cluster_size_autoscaling.go), which is 15 minutes.

The failure in #36569 is because we get the schedulable nodes number at the beginning of the test and assume it will not change unless we manually change the cluster size. But below logs indicate there may be nodes become ready after the test has begun. 

```
[BeforeEach] [k8s.io] DNS horizontal autoscaling
  /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/dns_autoscaling.go:71
Nov 10 00:36:26.951: INFO: Condition Ready of node jenkins-e2e-minion-group-x6w1 is false instead of true. Reason: KubeletNotReady, message: Kubenet does not have netConfig. This is most likely due to lack of PodCIDR
STEP: Replace the dns autoscaling parameters with testing parameters
Nov 10 00:36:26.961: INFO: DNS autoscaling ConfigMap updated.
STEP: Wait for kube-dns scaled to expected number
Nov 10 00:36:26.961: INFO: Waiting up to 5m0s for kube-dns reach 8 replicas
...
Expected error:
      <*errors.errorString | 0xc420b17ef0>: {
          s: "err waiting for DNS replicas to satisfy 8, got 9: timed out waiting for the condition",
      }
      err waiting for DNS replicas to satisfy 8, got 9: timed out waiting for the condition
  not to have occurred
```

This fix puts the logic of counting schedulable nodes into the polling loop. By doing so, the test will have the correct expected replicas count even if schedulable nodes change in between.

@bowei @bprashanth

---

Updates: all `ExpectNoError(err)` are changed to `Expect(err).NotTo(HaveOccurred())`
2016-11-29 15:52:13 -08:00
Random-Liu
85afed5dd0 Fix node e2e firewall configure. 2016-11-29 15:40:31 -08:00
Bowei Du
67fec72a5b Remove extraneous curl, pods, etc from privileged pod test
Removing unneeded dependencies that hopefully will reduce test noise.
2016-11-29 12:52:16 -08:00
Jing Xu
80f2e58ccc Modify GCI mounter to enable NFSv3
This PR is a retry for PR #36610
2016-11-29 10:50:33 -08:00
Zihong Zheng
15e3dd422b Adds termination hook in reboot test for debugging 2016-11-29 10:10:38 -08:00
Mik Vyatskov
477ffa403e Make logging for gcl e2e test more verbose 2016-11-29 18:19:56 +01:00
deads2k
56b7a8b02b remove some options from mega-struct 2016-11-29 10:59:43 -05:00
deads2k
18074d7606 split insecure serving options 2016-11-29 10:59:42 -05:00
deads2k
a08f3ba521 split secure serving options 2016-11-29 10:59:42 -05:00
deads2k
a9af8206cb split generic etcdoption out of main struct 2016-11-29 10:59:42 -05:00
Kubernetes Submit Queue
a3e1e1fa00 Merge pull request #37411 from nikhiljindal/serviceConfigMap
Automatic merge from submit-queue

federation service e2e: Creating configmap for kube-dns

Ref #37105 and #37143.

Creating kube-dns config map to pass federations flag to kube-dns.
This is required since we moved to the new add on manager. With the old add on manager, we were using kube-dns rc that included the federations flag.

cc @kubernetes/sig-cluster-federation @madhusudancs @bowei @MrHohn 

Verified that the tests pass with this change.
2016-11-29 07:31:58 -08:00
jayunit100
7f24ceabaa - Fix scheduler_perf test so that QPS are not zero due to cold start zero
- Wait for 1% of scheduling to start before measuring QPS w map
2016-11-29 09:03:49 -05:00
Dr. Stefan Schimanski
2bb7903a39 portfordwardtester: avoid data loss during send+close+exit 2016-11-29 09:42:14 +01:00
nikhiljindal
6b8d0caac2 Creating configmap for kube-dns 2016-11-29 00:31:33 -08:00
Michael Taufen
f789ecdcaf Fix nil pointer dereference in test framework
Checking the result.Code prior to err in the if statement causes a panic
if result is nil. It turns out the formatting of the error is already in
IssueSSHCommandWithResult, so removing redundant code is enough to fix
the issue. Logging the SSH result was also redundant, so I removed that
as well.
2016-11-28 14:44:51 -08:00
David Ashpole
679c503ae3 changed api to api/v1 2016-11-28 14:24:43 -08:00
Timothy St. Clair
d15e20eed4 Reduce the etcd surface area in the integration test to minimize the client dependency. 2016-11-28 15:58:39 -06:00
Kubernetes Submit Queue
56836cace7 Merge pull request #37394 from nikhiljindal/deploymentE2e
Automatic merge from submit-queue

Fixing a typo in deployment e2e

Ref https://github.com/kubernetes/kubernetes/issues/37105 and https://github.com/kubernetes/kubernetes/issues/37143.

Fixing the failing deployment e2e.
There are 3 deployment cases failing right now. https://github.com/kubernetes/kubernetes/pull/37290 fixes the first and this PR fixes the other 2.

cc @kubernetes/sig-cluster-federation @madhusudancs @mwielgus
2016-11-28 13:26:06 -08:00
Kubernetes Submit Queue
448dfc7b30 Merge pull request #37489 from mwielgus/enable-e2e-gke
Automatic merge from submit-queue

Enable PDB e2e tests on GKE

cc: @davidopp
2016-11-28 13:25:55 -08:00
David Ashpole
a232c15a45 InodeEviction test tests that when some pods create many empty files, both in their container and in volumes, they are evicted before pods that act normally. 2016-11-28 13:09:40 -08:00
Kubernetes Submit Queue
cbd87c3a13 Merge pull request #37481 from mwielgus/more-debug-ca-e2e
Automatic merge from submit-queue

Add more debug information around strange failure in e2e tests

To better understand problems in https://github.com/kubernetes/kubernetes/issues/33754. 

cc: @fgrzadkowski @piosz
2016-11-28 11:45:17 -08:00
Michail Kargakis
5b7bf78f3f test: update rollover test to wait for available rs before adopting 2016-11-28 14:00:59 +01:00
Harry Zhang
3002f5719d Fix nits in node e2e log path 2016-11-28 15:24:22 +08:00
Harry Zhang
3777777e13 Update cluster_size_autoscaling.go
CreateNodeSelectorPods respects nodeSelector
2016-11-28 14:44:24 +08:00
Zihong Zheng
b77484987b Fixes dns autoscaling test flakes 2016-11-27 22:20:54 -08:00
Marcin Wielgus
313d4045af Add more debug information around strange failure in e2e tests 2016-11-25 17:42:53 +01:00
Marcin Wielgus
35843d52b6 Enable PDB e2e tests on GKE 2016-11-25 15:18:19 +01:00
Ivan Shvedunov
29fd58ad0e Fix running e2e with 'Completed' kube-system pods 2016-11-24 19:10:43 +03:00
Jerzy Szczepkowski
1959722243 Revert "Removed "feature" tag" 2016-11-24 11:52:31 +01:00
Clayton Coleman
35a6bfbcee
generated: refactor 2016-11-23 22:30:47 -06:00
Clayton Coleman
a43960da3b Move GroupVersion* to pkg/runtime/schema 2016-11-23 21:03:36 -06:00
Janet Kuo
d2c411aafe Revert "Revert "Remove [Slow] from statefulset basic tests""
This reverts commit ebce195ce1.
2016-11-23 16:31:04 -08:00
Chao Xu
80ca298577 /test/soak 2016-11-23 15:53:09 -08:00
Chao Xu
bcc783c594 run hack/update-all.sh 2016-11-23 15:53:09 -08:00
Chao Xu
f0ad860d66 pkg/dns 2016-11-23 15:53:09 -08:00
Chao Xu
b50367cbdc remove v1.Semantics 2016-11-23 15:53:09 -08:00
Chao Xu
068a7eb415 test/utils 2016-11-23 15:53:09 -08:00
Chao Xu
29400ac195 test/e2e_node 2016-11-23 15:53:09 -08:00
Chao Xu
f3b5d514ab test/integration 2016-11-23 15:53:09 -08:00
Chao Xu
a55c71db4d test/e2e 2016-11-23 15:53:09 -08:00
Dawn Chen
e968173d6b Merge pull request #37384 from derekwaynecarr/fix-cross-build
Fix cross-build for memcg notification
2016-11-23 13:59:18 -08:00
Dawn Chen
5190ace8f0 Merge pull request #37343 from ymqytw/revert_branch
Revert list of primitives fix
2016-11-23 13:45:19 -08:00
Random-Liu
dfbe7be5b5 Final cleanup for node conformance test. 2016-11-23 13:39:54 -08:00
nikhiljindal
34eae2207e Stop deleting underlying services when federation service is deleted 2016-11-23 13:02:39 -08:00
Dawn Chen
7c685579c0 Merge pull request #37389 from janetkuo/statefulset-skip-gke
Skip StatefulSet e2e tests if this resource is not found
2016-11-23 11:49:32 -08:00
nikhiljindal
3cfbe6aff8 Fixing a typo in deployment e2e 2016-11-23 11:18:32 -08:00
Kubernetes Submit Queue
696a88cffe Merge pull request #37356 from kubernetes/jszczepkowski-ha-feature
Automatic merge from submit-queue

Removed "feature" tag
2016-11-23 10:58:45 -08:00
Kubernetes Submit Queue
8c3dbc6df0 Merge pull request #37334 from hongchaodeng/km2
Automatic merge from submit-queue

kubemark: fix start-kubemark.sh
2016-11-23 10:58:39 -08:00
Kubernetes Submit Queue
4c7febd360 Merge pull request #37338 from Random-Liu/fix-remote-log-fetching
Automatic merge from submit-queue

Node E2E: Fix remote log fetching.

For issue https://github.com/kubernetes/kubernetes/issues/37333.

This will help debug https://github.com/kubernetes/kubernetes/issues/37333.

Mark v1.5 because this helps debug an issue https://github.com/kubernetes/kubernetes/issues/37333, which was originally https://github.com/kubernetes/kubernetes/issues/35935. /cc @saad-ali 

@yujuhong @dchen1107 @jingxu97 
/cc @kubernetes/sig-node
2016-11-23 10:58:32 -08:00
Janet Kuo
b88bebded5 Remove initialized annotation from statefulset examples 2016-11-23 10:40:42 -08:00
Janet Kuo
060ff8ebe8 Skip StatefulSet e2e tests if this resource is not found 2016-11-23 10:08:09 -08:00
Derek Carr
1ec69f658c Fix cross-build for memcg notification 2016-11-23 12:36:04 -05:00
Janet Kuo
ebce195ce1 Revert "Remove [Slow] from statefulset basic tests"
This reverts commit 0744033d8c.
2016-11-23 09:13:43 -08:00
Piotr Szczesniak
a3e6ad4b9a Revert "Modify GCI mounter to enable NFSv3" 2016-11-23 13:15:37 +01:00
Jerzy Szczepkowski
d7cdb6bb6a Removed "feature" tag
Removed "feature" tag so that ha master tests will run by default.
2016-11-23 09:22:04 +01:00
Kubernetes Submit Queue
e801fcfc4a Merge pull request #36610 from jingxu97/Nov/nfsv3
Automatic merge from submit-queue

Modify GCI mounter to enable NFSv3

In order to make NFSv3 work, mounter needs to start rpcbind daemon. This
change modify mounter's Dockerfile and mounter script to start the
rpcbind daemon if it is not running on the host.

After this change, need to make push the image and update the sha number in Changelog.
2016-11-22 23:38:51 -08:00
Kubernetes Submit Queue
7a09ba96d8 Merge pull request #37243 from janetkuo/petset-e2e-rename
Automatic merge from submit-queue

Update [Feature:PetSet] e2e tests to [Feature:StatefulSet]

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**: Update StatefulSet e2e test feature tags from [Feature:PetSet] to [Feature:StatefulSet]

**Special notes for your reviewer**: Ref test-infra changes https://github.com/kubernetes/test-infra/pull/1151

cc @erictune @foxish @kow3ns @enisoc @kubernetes/sig-apps

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
NONE
```
2016-11-22 22:52:52 -08:00
ymqytw
d178bc76ed Revert "add a unit test"
This reverts commit 11653b11c1.
2016-11-22 21:01:20 -08:00
Kubernetes Submit Queue
e69b497e07 Merge pull request #37303 from krousey/e2eutil
Automatic merge from submit-queue

Guard the ready replica checking by server version

I fixed replica readiness checking for 1.4->1.5 upgrades by using a field that only exists in versions >=1.4.0 in #36924 

This fixed a lot of issues in 1.4->1.5 upgrade testing, but did not fix 1.3->1.5 upgrade tests. I've disabled replica checking for 1.3 masters as the old logic was broken anyway.

This will not affect the 1.3 CI tests. Just 1.3 -> {1.4, 1.5} upgrade tests.

https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/kubernetes-e2e-gke-container_vm-1.3-container_vm-1.5-upgrade-cluster-new/330?log
is an example of this breakage. This is the tell-tale logs:

```console
Nov 22 09:40:50.469: INFO: 11 / 11 pods in namespace 'kube-system' are running and ready (506 seconds elapsed)
Nov 22 09:40:50.469: INFO: expected 5 pod replicas in namespace 'kube-system', 0 are Running and Ready.
Nov 22 09:40:50.469: INFO: POD  NODE  PHASE  GRACE  CONDITIONS
```
2016-11-22 19:52:22 -08:00
bprashanth
1457d20464 Cleanup old cloud resources after 48 hours 2016-11-22 18:43:21 -08:00
Random-Liu
e000ff0872 Fix remote log fetching. 2016-11-22 18:40:40 -08:00
Hongchao Deng
f9bc3ac419 kubemark: minor fix start-kubemark.sh 2016-11-22 18:00:23 -08:00
Janet Kuo
0744033d8c Remove [Slow] from statefulset basic tests 2016-11-22 15:36:19 -08:00
Janet Kuo
420d32c503 Update [Feature:PetSet] e2e tests to [Feature:StatefulSet] 2016-11-22 15:36:19 -08:00
Kubernetes Submit Queue
e4724e8ab0 Merge pull request #37109 from Random-Liu/fix-lifecycle-hook-test
Automatic merge from submit-queue

Use netexec container in http lifecycle hook test.

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

The original test is using `"echo -e \"HTTP/1.1 200 OK\n\" | nc -l -p 1234` as a simple http server.

However, it seems that this is not very reliable, which may response before golang thinks it should.
So we get the error:
```
I1106 06:14:13.325397    2096 logs.go:41] Unsolicited response received on idle HTTP channel starting with "HTTP/1.1 200 OK\n\n"; err=<nil>
```

This PR changes the test to use the `netexec` container which is a simple http server written by golang and used in many of our networking e2e test. It should be more reliable.
Mark 1.5 since this is fixing a 1.5 release blocking issue. Mark P0 to match the original issue.

@dchen1107
2016-11-22 12:41:37 -08:00
Kubernetes Submit Queue
d0ae65a4a5 Merge pull request #37277 from Random-Liu/update-ubuntu-image
Automatic merge from submit-queue

Node E2E: Update ubuntu image to e2e-node-ubuntu-trusty-docker10-v2-image.

@sjenning Hopefully this will unblock  https://github.com/kubernetes/kubernetes/pull/32577.

I built a new ubuntu trusty image with docker 10 - `e2e-node-ubuntu-trusty-docker10-v2-image`. The kernel version of the new ubuntu image is `4.4.0-47-generic`.

@dchen1107 
/cc @kubernetes/sig-node 

Mark v1.5 because this unblocks a v1.5 feature https://github.com/kubernetes/kubernetes/pull/32577.
2016-11-22 11:59:54 -08:00
Kris
1614b97725 Guard the ready replica checking by server version
This disables ready replica checking for 1.3 masters, but only from 1.4
or 1.5 clients. The old logic was broken anyway due to overlapping
labels with replica sets.
2016-11-22 11:16:15 -08:00
Random-Liu
e0cdeb4c2a Use netexec container in http lifecycle hook test. 2016-11-22 10:09:19 -08:00
Kubernetes Submit Queue
a9b58213b1 Merge pull request #37286 from jszczepkowski/ha-e2e-onerepl
Automatic merge from submit-queue

E2E tests cleanup: regexp for master replica in a separate function
2016-11-22 09:59:38 -08:00
Kubernetes Submit Queue
580c52be38 Merge pull request #36073 from gmarek/supervisord
Automatic merge from submit-queue

Kubemark master components run by supervisord. Try 2.
2016-11-22 09:23:10 -08:00
Marcin Wielgus
11b9706a19 Revision handling in federated deployment controller 2016-11-22 16:20:15 +01:00
Jan Safranek
82d66c7d75 Use tmpfs for gluster-server container volumes.
Gluster server needs a filesystem that supports extended attributes for its
data. Some distros (Debian, Ubuntu) ship Docker that runs containers on aufs,
which does not support extended attributes and therefore Gluster server fails
there.

We can use tmpfs for Gluster server data volumes instead of a directory inside
the container.
2016-11-22 16:11:30 +01:00
Jerzy Szczepkowski
69dc4b0fc5 E2E tests cleanup: moved generation of regexp for master replica to a separate function.
E2E tests cleanup: moved generation of regexp for master replica to a separate function.
2016-11-22 14:52:33 +01:00
Kubernetes Submit Queue
acb8a3f7d5 Merge pull request #36999 from jszczepkowski/ha-e2e-onerepl
Automatic merge from submit-queue

Fixed e2e tests for HA master.

Set of fixes that allows HA master e2e tests to pass for removal/addition master replicas.

The summary of changes:
- fixed host name in etcd certs,
- added cluster validation after kube-down,
- fixed the number of master replicas in cluster validation,
- made MULTIZONE=true required for HA master deployments, ensured we correctly handle MULTIZONE=true when user wants to create HA master but not kubelets in multiple zones,
- extended verification of master replicas in HA master e2e tests.
2016-11-22 05:24:59 -08:00
Kubernetes Submit Queue
1c3f8fa090 Merge pull request #36644 from kargakis/update-progress-test
Automatic merge from submit-queue

test: extend time for a condition to appear in status

Fixes https://github.com/kubernetes/kubernetes/issues/36574
2016-11-22 04:03:38 -08:00
Jerzy Szczepkowski
d01998f5fa Fixed e2e tests for HA master.
Set of fixes that allows HA master e2e tests to pass for removal/addition of master replicas.
2016-11-22 12:03:28 +01:00
Kubernetes Submit Queue
46c671676f Merge pull request #36743 from Crassirostris/return-outofdisk-test
Automatic merge from submit-queue

Remove Feature label from OutOfDisk e2e test

Fix https://github.com/kubernetes/kubernetes/issues/35722

Related to https://github.com/kubernetes/kubernetes/pull/35551 and https://github.com/kubernetes/kubernetes/pull/36225
2016-11-22 02:18:11 -08:00
Random-Liu
ab99cc0eba Update ubuntu image to e2e-node-ubuntu-trusty-docker10-v2-image. 2016-11-22 01:22:20 -08:00
gmarek
4356cb633d Revert "Merge pull request #36065 from kubernetes/revert-35918-supervisor"
This reverts commit a4ee3ed026, reversing
changes made to 8c90bc35e2.
2016-11-22 09:46:48 +01:00
Kubernetes Submit Queue
9a600f627c Merge pull request #37235 from bowei/flake-37114
Automatic merge from submit-queue

Test flake: ignore dig failure; wait until timeout

The intent of this test was to continue trying until the timeout has
been reached. The extra assertion makes the test fail early when it
should not.

https://github.com/kubernetes/kubernetes/issues/37144

fix 37114
2016-11-21 23:34:21 -08:00
Kubernetes Submit Queue
4dd0320db7 Merge pull request #37236 from bowei/flake-kube-proxy
Automatic merge from submit-queue

Update the timeout in CLOSE_WAIT e2e test

I see some test flakes due to the timeout being too strict,
updating to a larger value.

Adding tail -n 1, it looks like there may be leftover state for other
runs. We really only care about one of the CLOSE_WAIT entries.
2016-11-21 21:15:38 -08:00
Kubernetes Submit Queue
88a809470d Merge pull request #34454 from dshulyak/current_enter_running
Automatic merge from submit-queue

Test case for scalling down before scale up finished

Verifies that current pet (one which was created last by scale up action)
will enter running before scale down will take place

related: #30082
2016-11-21 17:01:33 -08:00
Jing Xu
2a8d89e5d1 Modify GCI mounter to enable NFSv3
In order to make NFSv3 work, mounter needs to start rpcbind daemon. This
change modify mounter's Dockerfile and mounter script to start the
rpcbind daemon if it is not running on the host.

After this change, need to make push the image and update the sha number in Changelog.
2016-11-21 16:42:40 -08:00
Bowei Du
9aef074e59 Update the timeout in CLOSE_WAIT e2e test
I see some test flakes due to the timeout being too strict,
updating to a larger value.

Adding tail -n 1, it looks like there may be leftover state for other
runs. We really only care about one of the CLOSE_WAIT entries.
2016-11-21 11:58:15 -08:00
Bowei Du
5b2c0075ba Test flake: ignore dig failure; wait until timeout
The intent of this test was to continue trying until the timeout has
been reached. The extra assertion makes the test fail early when it
should not.
2016-11-21 11:54:47 -08:00
Kubernetes Submit Queue
435268ac19 Merge pull request #32868 from dshulyak/scale_up_down_test_case
Automatic merge from submit-queue

Validate pet set scale up/down order

This change implements test cases to validate that:
- scale up will be done in order
- scale down in reverse order
- if any of the pets will be unhealthy, scale up/down will halt

related: https://github.com/kubernetes/kubernetes/issues/30082
2016-11-21 11:36:01 -08:00
Kubernetes Submit Queue
ab20072189 Merge pull request #37203 from Random-Liu/fix-restart-test
Automatic merge from submit-queue

Filter out non-RestartAlways mirror pod in restart test.

Fixes #37202.

> A quick fix is to filter out non-RestartAlways pods. Because either RestartNever and RestartOnFailure pods could succeed, and we can not deal with terminated mirror pods very well now.

@yujuhong @gmarek 
/cc @kubernetes/sig-node
2016-11-21 10:58:02 -08:00
Kubernetes Submit Queue
6b8c6e169d Merge pull request #37221 from gmarek/master
Automatic merge from submit-queue

Update start-kubemark-master to correctly work in case of master-comp…

@saad-ali - test only change.
2016-11-21 07:52:35 -08:00
Kubernetes Submit Queue
c9ed5262c7 Merge pull request #35947 from brendandburns/tpr
Automatic merge from submit-queue

make groupVersionResource listing dynamic for namespace controller

@derekwaynecarr @kubernetes/sig-api-machinery 

```release-note
Third party resources are now deleted when a namespace is deleted.
```

Fixes https://github.com/kubernetes/kubernetes/issues/32306
2016-11-21 07:52:25 -08:00
gmarek
15471488ba Update start-kubemark-master to correctly work in case of master-components restart 2016-11-21 15:40:58 +01:00
Wojciech Tyczynski
9ccddb9b7d Revert "Add log rotation to kubemark" 2016-11-21 14:55:52 +01:00
Kubernetes Submit Queue
21c3b3028f Merge pull request #34414 from yarntime/add_defaults_test
Automatic merge from submit-queue

add test file for autoscaling defaults

add test file `pkg/apis/autoscaling/v1/defaults_test.go`
2016-11-21 05:23:13 -08:00
Dmitry Shulyak
c09e969e08 Test case for scalling down before scale up finished
Verifies that current pet (one which was created last by scale up action)
will enter running before scale down will take place

Change-Id: Ib47644c22b3b097bc466f68c5cac46c78dd44552
2016-11-21 11:46:34 +02:00
Random-Liu
d9d148f4d6 Filter out non-RestartAlways mirror pod in restart test. 2016-11-21 01:43:14 -08:00
Dmitry Shulyak
36d1af6145 Validate pet set scale up/down order
This change implements test cases to validate that:

    scale up will be done in order
    scale down in reverse order
    if any of the pets will be unhealthy, scale up/down will halt

Change-Id: I4487a7c9823d94a2995bbb06accdfd8f3001354c
2016-11-21 11:21:32 +02:00
gmarek
3d9f002ebd Add commented local testing command in kubemark/run-e2e-tests.sh 2016-11-21 10:00:54 +01:00
gmarek
87f87206bc Pass GCLOUD_COMMON_ARGS do disk attach in Kubemark 2016-11-21 09:04:04 +01:00
Brendan Burns
ef6529bf2f make groupVersionResource listing dynamic when third party resources are
enabled.
2016-11-20 20:48:57 -08:00
Kubernetes Submit Queue
2b86ed3f90 Merge pull request #37077 from soltysh/issue34585
Automatic merge from submit-queue

Retry job update after failure to prevent modification conflict

This fixes #34585 flake.

@janetkuo || @kubernetes/sig-apps  ptal

I've been getting too many emails recently wrt to that issue, so I wanted to "clean" my inbox a bit 😉
2016-11-19 12:43:14 -08:00
Maciej Szulik
b253c20d80 Retry job update after failure to prevent modification conflict 2016-11-19 19:40:08 +01:00
Kubernetes Submit Queue
076051b9f2 Merge pull request #37113 from kubernetes/revert-35697-upgrade-tests
Automatic merge from submit-queue

Revert "Add more test cases to k8s e2e upgrade tests"

Reverts kubernetes/kubernetes#35697
2016-11-19 01:39:44 -08:00
Kubernetes Submit Queue
b9d2d74a94 Merge pull request #37038 from ymqytw/retry_old_patch_after_new_patch_fail
Automatic merge from submit-queue

Fix kubectl Stratigic Merge Patch compatibility

As @smarterclayton pointed out in [comment1](https://github.com/kubernetes/kubernetes/pull/35647#pullrequestreview-8290820) and [comment2](https://github.com/kubernetes/kubernetes/pull/35647#pullrequestreview-8290847) in PR #35647,
we cannot assume the API servers publish version and they shares the same version.

This PR removes all the calls of GetServerSupportedSMPatchVersion().
Change the behavior of `apply` and `edit` to:
Retrying with the old patch version, if the new version fails.
Default other usage of SMPatch to the new version, since they don't update list of primitives.

fixes #36916

cc: @pwittrock @smarterclayton
2016-11-19 01:02:47 -08:00
Kubernetes Submit Queue
290dff2d9d Merge pull request #36911 from dashpole/eviction_defaults
Automatic merge from submit-queue

Eviction Thresholds Update

Sets the defaults for the eviction-hard threshold for GCE based on what we were using during testing: "memory.available<250Mi,nodefs.available<10%,nodefs.inodesFree<5%".
Sets flags for e2e tests to use eviction-minimum-reclaim: "nodefs.available<5%,nodefs.inodesFree<5%"

this fixes #32537
2016-11-19 00:21:19 -08:00
Kubernetes Submit Queue
d725b3e3cd Merge pull request #36775 from bowei/kube-dns-config-map
Automatic merge from submit-queue

Add limited config-map support to kube-dns

This is an integration bugfix for https://github.com/kubernetes/kubernetes/issues/36194

```release-note
kube-dns

Added --config-map and --config-map-namespace command line options. 
If --config-map is set, kube-dns will load dynamic configuration from the config map 
referenced by --config-map-namespace, --config-map. The config-map supports
the following properties: "federations".

--federations flag is now deprecated. Prefer to set federations via the config-map.
Federations can be configured by settings the "federations" field to the value currently 
set in the command line.

Example:

  kind: ConfigMap
  apiVersion: v1
  metadata:
    name: kube-dns
    namespace: kube-system
  data:
    federations: abc=def
```
2016-11-18 23:03:54 -08:00
Kubernetes Submit Queue
fa0eb19bcc Merge pull request #37114 from mikedanese/fix-bzl
Automatic merge from submit-queue

	revert revert of test/e2e/generated/BUILD
2016-11-18 17:03:38 -08:00
Kubernetes Submit Queue
c183664c55 Merge pull request #36630 from nikhiljindal/E2edsi
Automatic merge from submit-queue

Adding e2e tests for validating cascading deletion of federation resources

Ref https://github.com/kubernetes/kubernetes/issues/33612

Adding e2e tests for code in https://github.com/kubernetes/kubernetes/pull/36330 and https://github.com/kubernetes/kubernetes/pull/36476.

Adding test cases to ensure that cascading deletion happens as expected.
Also adding code to ensure that all resources are cleaned up in AfterEach.

cc @kubernetes/sig-cluster-federation @caesarxuchao @madhusudancs
2016-11-18 17:03:27 -08:00
Bowei Du
19be1d2504 Allow kube-dns to load its configuration from a config map
- Adds command line flags --config-map, --config-map-ns.
- Fixes 36194 (https://github.com/kubernetes/kubernetes/issues/36194)
- Update kube-dns yamls
- Update bazel (hack/update-bazel.sh)
- Update known command line flags
- Temporarily reference new kube-dns image (this will be fixed with
  a separate commit when the DNS image is created)
2016-11-18 16:11:12 -08:00
Bowei Du
1456e8435f Add ExecWithOptions to framework
This allows for tweaking more options for executing commands
in pods.
2016-11-18 15:50:49 -08:00
ymqytw
11653b11c1 add a unit test 2016-11-18 15:35:50 -08:00
nikhiljindal
90645ce2b7 Automated bazel and owner changes 2016-11-18 14:44:06 -08:00
nikhiljindal
14246a9494 Updating federation e2e tests to verify cascading deletion 2016-11-18 14:44:06 -08:00
Mike Danese
bfb8902e44 fix test/e2e/ compilation 2016-11-18 14:09:35 -08:00
Mike Danese
ea192ddb28 revert revert of test/e2e/generated/BUILD
broken in fad1990eaa
2016-11-18 11:24:19 -08:00
Antoine Pelisse
18a1c8865f Revert "Add more test cases to k8s e2e upgrade tests" 2016-11-18 11:21:23 -08:00
Kubernetes Submit Queue
577991b0ab Merge pull request #37095 from gmarek/kubemark_logrotation
Automatic merge from submit-queue

Add log rotation to kubemark

We were running out of disk in our large cluster tests, as we didn't have log rotation enabled.

cc @saad-ali
2016-11-18 10:35:46 -08:00
David Ashpole
10f73bde27 added eviction minimum reclaim flags to test flags, and changed gce default config for eviction-hard to match what tests are using 2016-11-18 08:48:40 -08:00
Wojciech Tyczynski
a96dd63367 Add log rotation to kubemark 2016-11-18 16:19:32 +01:00
Kubernetes Submit Queue
4f69d7eda8 Merge pull request #36995 from wojtek-t/extend_logging_for_schedulable_nodes
Automatic merge from submit-queue

Extend logging for unschedulable nodes
2016-11-18 06:53:55 -08:00
Kubernetes Submit Queue
ddcd9708ec Merge pull request #36898 from deads2k/cli-10-fix-unstructuredtpr
Automatic merge from submit-queue

remove TPR registration, ease validation requirements

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

This removes the special casing for TPRs inside of the `UnstructuredObject`, which should allow CRUD against skewed kube api server levels.

@kubernetes/kubectl @kubernetes/sig-cli 
@janetkuo
2016-11-18 06:27:17 -08:00
Wojciech Tyczynski
d549ece3b2 Extend logging for unschedulable nodes 2016-11-18 14:49:32 +01:00
gmarek
3fc177ff7c Allow storing events on a separate disk 2016-11-18 13:19:48 +01:00
Kubernetes Submit Queue
eca9e989a3 Merge pull request #36779 from sjenning/fix-memory-leak-via-terminated-pods
Automatic merge from submit-queue

fix leaking memory backed volumes of terminated pods

Currently, we allow volumes to remain mounted on the node, even though the pod is terminated.  This creates a vector for a malicious user to exhaust memory on the node by creating memory backed volumes containing large files.

This PR removes memory backed volumes (emptyDir w/ medium Memory, secrets, configmaps) of terminated pods from the node.

@saad-ali @derekwaynecarr
2016-11-17 21:29:51 -08:00
Kubernetes Submit Queue
08213afe2f Merge pull request #36910 from janetkuo/restart-cluster-statefulset
Automatic merge from submit-queue

Enable restart statefulset clusters in e2e tests

cc @bprashanth @erictune @foxish @kow3ns @kubernetes/sig-apps
2016-11-17 20:50:56 -08:00
Janet Kuo
f2bab13043 Remove 0 terminationGracePeriodSeconds from statefulset manifests 2016-11-17 19:24:55 -08:00
Random-Liu
87a9d94f24 Update bazel. 2016-11-17 10:18:00 -08:00
Random-Liu
edf7608c51 Remove kubelet related flags from node e2e. Add a single flag kubelet-flags to pass kubelet flags all together. 2016-11-17 10:17:32 -08:00
Random-Liu
090809d8ad Remove dependency on kubelet related flags. 2016-11-17 10:17:32 -08:00
Kubernetes Submit Queue
08204bea62 Merge pull request #36849 from janetkuo/e2e-statefulset-update
Automatic merge from submit-queue

Add e2e test for statefulset updates

Verify that one can (manually) update statefulset template 

cc @erictune @foxish @kow3ns @kubernetes/sig-apps
2016-11-17 10:12:21 -08:00
Kubernetes Submit Queue
5efdea63b2 Merge pull request #37001 from gmarek/routes
Automatic merge from submit-queue

Wait for all Nodes to be schedulable before running e2e tests

This should fix the problem we're seeing when running tests on large clusters.

cc @dchen1107
2016-11-17 09:03:30 -08:00
jayunit100
ec2c963246 Skip rather than fail networking tests on single node 2016-11-17 11:51:03 -05:00
Kubernetes Submit Queue
3ed6000c82 Merge pull request #36994 from gmarek/taints
Automatic merge from submit-queue

Delete taint annotation when removing last taint

It messes with debugging of tests failures.

cc @davidopp @kevin-wangzefeng
2016-11-17 08:26:31 -08:00
gmarek
35626b2a7b Wait for all Nodes to be schedulable before running e2e tests 2016-11-17 16:43:35 +01:00
gmarek
eecc840074 Delete taint annotation when removing last taint 2016-11-17 16:02:34 +01:00
Kubernetes Submit Queue
e120433b54 Merge pull request #36986 from gmarek/secrets
Automatic merge from submit-queue

Allow passing custom list of admission plugins to kubemark

Ref. #36985
2016-11-17 04:21:33 -08:00
Kubernetes Submit Queue
f7f1533a3b Merge pull request #35697 from shashidharatd/upgrade-tests
Automatic merge from submit-queue

Add more test cases to k8s e2e upgrade tests

**Special notes for your reviewer**: 
Added guestbook, secrets, daemonsets, configmaps, jobs to e2e upgrade tests according to the discussions in #35078
Still need to run these test cases in real setup, raised a PR here for initial comments

@quinton-hoole
2016-11-17 04:07:26 -08:00
gmarek
08d60999fc Allow passing custom list of admission plugins to kubemark 2016-11-17 12:32:41 +01:00
Kubernetes Submit Queue
68539c02c1 Merge pull request #36924 from krousey/e2eutil
Automatic merge from submit-queue

Replace controller presence checking logic

fixes #36912
2016-11-17 00:11:11 -08:00
Kubernetes Submit Queue
5f86fef169 Merge pull request #36973 from kubernetes/revert-33850-add_e2e_test_for_kubectl_in_pod
Automatic merge from submit-queue

Revert "add e2e test for kubectl in a Pod"

Reverts kubernetes/kubernetes#33850

That PR introduced a test `Kubectl should be able to talk to api server kubectl running in a pod could talk to api server` that runs against GKE.

Ever since the PR merged the test has been failing against [kubernetes-e2e-gke](https://k8s-gubernator.appspot.com/builds/kubernetes-jenkins/logs/kubernetes-e2e-gke) though it was initially passing in [kubernetes-e2e-gci-gke](https://k8s-gubernator.appspot.com/builds/kubernetes-jenkins/logs/kubernetes-e2e-gci-gke). Presumably this was because the path to kubectl was different between GCI and container-vm (the two test suites).

PR https://github.com/kubernetes/kubernetes/pull/36864 attempted to fix this, but ended up breaking the test in both suites. That PR has been reverted (https://github.com/kubernetes/kubernetes/pull/36971).

Because the test introduced in kubernetes/kubernetes#33850 is still broken, it is being reverted (we should've reverted immediately after it merged instead of waiting this long).
2016-11-16 23:33:46 -08:00
Kubernetes Submit Queue
4dd17995fa Merge pull request #36918 from bprashanth/proxy_retry
Automatic merge from submit-queue

Add clarity/retries to proxy url test

Improve one segment of the kube-proxy networking test by:      
1. Retrying for 30s 
2. Bucketing into 2 failure modes
3. Adding some clarity by describing the exec pod on failure

Althought 1 shouldn't be necessary, I don't think we lose anything if the kube-proxy convenience endpoint doesn't respond immediately, and if it fails for 30s straight it is indicative of something that requires attention probably within 1.5. 

Fixes https://github.com/kubernetes/kubernetes/issues/32436
2016-11-16 22:54:50 -08:00
Saad Ali
172e7562fb Revert "add e2e test for kubectl in a Pod" 2016-11-16 21:38:19 -08:00
Saad Ali
2aa2cf3800 Revert "Fix path to kubectl on host in kubectl-in-pod" 2016-11-16 20:44:25 -08:00
Janet Kuo
849d22b471 Enable restart statefulset clusters in e2e tests 2016-11-16 18:13:26 -08:00
Saad Ali
01897bb3c0 Merge pull request #36864 from dims/fix-path-to-kubectl-in-gke-test
Fix path to kubectl on host in kubectl-in-pod
2016-11-16 17:21:13 -08:00
Kris
5a87385342 Replace controller presence checking logic 2016-11-16 16:12:26 -08:00
Kubernetes Submit Queue
43110dd64d Merge pull request #36920 from yujuhong/bump_image_version
Automatic merge from submit-queue

Bump gci image version for cri builds

#36681 didn't change all the configs.
2016-11-16 15:46:00 -08:00
bprashanth
29a5cb7a9c Add clarity/retries to proxy url test 2016-11-16 14:45:35 -08:00
Kubernetes Submit Queue
92b40dc2f5 Merge pull request #36848 from jingxu97/Nov/gluster
Automatic merge from submit-queue

Enable NFSv4 and GlusterFS tests on cluster e2e tests

Enable NFSv4 and GlusterFS tests on cluster e2e tests for GCI images
only.
2016-11-16 14:19:24 -08:00
Yu-Ju Hong
6ba2c7b857 Bump gci image version for cri builds 2016-11-16 14:09:51 -08:00
Kubernetes Submit Queue
922dff3e39 Merge pull request #36820 from kevin-wangzefeng/fix-kubectl-taint-flake
Automatic merge from submit-queue

fix kubectl taint test flake

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**:
Kubectl taint tests fail often recently, this PR is trying to fix it.

**Which issue this PR fixes**: ref #29503, #32535

**Special notes for your reviewer**:
This PR cannot 100% fix the flake, but just reduce the failing rate, if the two "kubectl taint" tests are running at the same time, it still has chance to fail.
Maybe should mark the tests "Serial" (see also #31906, #36781), but then they won't run for each PR.
2016-11-16 11:48:07 -08:00
deads2k
66e5c38d67 remove TPR registration, ease validation requirements 2016-11-16 14:04:35 -05:00
Jing Xu
afbf5f52e5 Update volumes.go 2016-11-16 10:04:12 -08:00
Seth Jennings
b80bea4a62 fix leaking memory backed volumes of terminated pods 2016-11-16 10:17:22 -06:00
gmarek
0f9c0678b7 Update API server CPU constraints in the density test 2016-11-16 16:33:53 +01:00
Jing Xu
64955959e6 Enable NFSv4 and GlusterFS tests on cluster e2e tests
Enable NFSv4 and GlusterFS tests on cluster e2e tests for GCI images
only.
2016-11-16 07:27:26 -08:00
Kubernetes Submit Queue
28d273c8b2 Merge pull request #36810 from gmarek/secrets
Automatic merge from submit-queue

Add ServiceAccounts to kubemark

cc @yujuhong
2016-11-16 06:01:30 -08:00
Kubernetes Submit Queue
587cbaf988 Merge pull request #36410 from Random-Liu/avoid-printing-test-result-twice
Automatic merge from submit-queue

Node E2E: Avoid printing test result twice.

This is a problem since long time ago.

`RunSshCommand` includes the command output to the error. If the command running the test fails, the test output will also be included in the error. [The runner prints both the test output and the error](https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/runner/remote/run_remote.go#L270), which leads the test result to be printed twice. (See the [test result](https://storage.googleapis.com/kubernetes-jenkins/logs/kubelet-gce-e2e-ci/10968/build-log.txt) on node tmp-node-e2e-af900a4d-e2e-node-ubuntu-trusty-docker9-v1-image)

This PR changes `RunSshCommand` not to put command output into the error, and leave the caller to decide how to deal with command output when the command fails.
2016-11-16 02:23:12 -08:00
Kubernetes Submit Queue
679b725fc0 Merge pull request #36793 from janetkuo/cockroachdb-e2e-test
Automatic merge from submit-queue

Add e2e test for CockroachDB statefulset

Refactor the code of statefulset e2e test for clustered applications, and add a test for CockroachDB. 

The yaml file is copied from examples/cockroachdb/

cc @erictune @foxish @kow3ns @kubernetes/sig-apps
2016-11-16 01:07:41 -08:00
Kubernetes Submit Queue
5b95099eea Merge pull request #36780 from yujuhong/use_labels
Automatic merge from submit-queue

e2e pod cleanup test: restrict pods to be assigned to nodes observed …

The test checks the individual kubelet /runningPods endpoint based on the
initial list of nodes it observes. It is important that all pods are
scheduled only onto those nodes. Apply node labels to ensure no stray pods on
other nodes.

This fixes #35197
2016-11-15 23:14:57 -08:00
Davanum Srinivas
e605398fcf Fix path to kubectl on host in kubectl-in-pod
kubectl-in-pod.json has a hardcoded path for
kubectl in its hostPath ('/usr/bin/kubectl').
When the test actually runs on gke, kubectl
is available at '/workspace/kubernetes/platforms/linux/amd64/kubectl'
and NOT at '/usr/bin/kubectl'. So we need to
fix the hostPath for the test to work properly.

Fixes #36586
2016-11-15 21:34:54 -05:00
Random-Liu
09bc5e23a6 Avoid printing test result twice. 2016-11-15 18:10:27 -08:00
Janet Kuo
b47508700c (Auto-gen) Update bazel 2016-11-15 16:14:02 -08:00
Janet Kuo
45de9fbe34 Add e2e test for statefulset updates 2016-11-15 14:55:08 -08:00
Kubernetes Submit Queue
f0aba3d6fe Merge pull request #35811 from dashpole/garbage_collect_testing
Automatic merge from submit-queue

Garbage collection tests the MaxPerPodContainers and MaxContainers constraints

This is the first version of this test.  It tests that containers are garbage collected according to the default configuration.
2016-11-15 11:22:52 -08:00
David Ashpole
f6224590f7 Test Container Garbage Collection 2016-11-15 09:15:31 -08:00
gmarek
7439a956ef Add ServiceAccounts to Kubemark 2016-11-15 16:03:48 +01:00
Kevin
6211669a19 fix kubectl taint test flake 2016-11-15 23:02:48 +08:00
Kubernetes Submit Queue
d8fa4f4d56 Merge pull request #35897 from k82cn/fix_mac_build
Automatic merge from submit-queue

Fixed failed build on Mac.

fixed build error on Mac.
2016-11-14 20:42:50 -08:00
shashidharatd
a779aca11d Handle comments on upgrade tests 2016-11-15 09:59:51 +05:30
shashidharatd
a4f614f2db Add Jobs to k8s upgrade tests 2016-11-15 09:59:51 +05:30
shashidharatd
e3840da83d Add Daemonset to k8s upgrade tests 2016-11-15 09:59:51 +05:30
shashidharatd
bade01694a Add Guestbook App to k8s upgrade tests 2016-11-15 09:59:51 +05:30
shashidharatd
4bbd40441f Add ConfigMaps to k8s upgrade tests 2016-11-15 09:59:51 +05:30
shashidharatd
7380c1fe76 Add Secrets to k8s upgrade tests 2016-11-15 09:59:51 +05:30
Kubernetes Submit Queue
a7b63e1a95 Merge pull request #36723 from dims/fix-matchcontainer-output-retry
Automatic merge from submit-queue

Cleanup pod in MatchContainerOutput

MatchContainerOutput always creates a pod and does not cleanup. We need
to fix this to be better at re-trying the scenarios.

When there is an error say in the first attempt of ExpectNoErrorWithRetries
(for example in "Pods should contain environment variables for services" test)
the retries logic calls MatchContainerOutput another time and the
podClient.create fails correctly since the pod was not cleaned up the
first time MatchContainerOutput was called.

Fixes #35089
2016-11-14 20:06:22 -08:00
Janet Kuo
2079a52950 Add e2e test for CockroachDB statefulset 2016-11-14 19:05:53 -08:00
Kubernetes Submit Queue
4528bcd29b Merge pull request #36776 from bowei/dns-image-alpine
Automatic merge from submit-queue

Change dnsutils image to use alpine

This reduces the size of the dnsutils image and should reduce the # of failed e2e test runs due to image pull timeout.
2016-11-14 18:41:22 -08:00
Davanum Srinivas
d4a912208d Cleanup pod in MatchContainerOutput
MatchContainerOutput always creates a pod and does not cleanup. We need
to fix this to be better at re-trying the scenarios.

When there is an error say in the first attempt of ExpectNoErrorWithRetries
(for example in "Pods should contain environment variables for services" test)
the retries logic calls MatchContainerOutput another time and the
podClient.create fails correctly since the pod was not cleaned up the
first time MatchContainerOutput was called.

Fixes #35089
2016-11-14 20:36:13 -05:00
Kubernetes Submit Queue
3245e8b355 Merge pull request #36767 from vishh/rename-cgroups-flags
Automatic merge from submit-queue

[kubelet] rename --cgroups-per-qos to --experimental-cgroups-per-qos

This reflects the true nature of "cgroups per qos" feature.

```release-note
 * Rename `--cgroups-per-qos` to `--experimental-cgroups-per-qos` in Kubelet
```
2016-11-14 17:35:19 -08:00
Kubernetes Submit Queue
122a228b63 Merge pull request #36771 from euank/bump-some-memory
Automatic merge from submit-queue

tests: update memory resource limits

```release-note
NONE
```

On ubuntu, the `RestartNever` test OOMs its cgroup limit fairly
frequently.

This bumps the number up to something suitably large since the test
isn't testing anything related to this anyways.

Fixes #36159

Fix based on https://github.com/kubernetes/kubernetes/issues/36159#issuecomment-258992255

cc @yujuhong @saad-ali
2016-11-14 16:59:19 -08:00
Yu-Ju Hong
d80f9e8076 e2e pod cleanup test: restrict pods to be assigned to nodes observed initially
The test checks the individual kubelet /runningPods endpoint based on the
initial list of nodes it observes. It is important that all pods are
scheduled only onto those nodes. Apply node labels to ensure no stray pods on
other nodes.
2016-11-14 15:12:55 -08:00
Vishnu kannan
9066253491 [kubelet] rename --cgroups-per-qos to --experimental-cgroups-per-qos to reflect the true nature of that feature
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-11-14 14:06:39 -08:00
Bowei Du
d99accad41 Change dnsutils image to use alpine
This reduces the size of the image considerably
2016-11-14 13:50:51 -08:00
Euan Kemp
08382c1697 test/e2e: update init container memory limit
On ubuntu, the `RestartNever` test OOMs its cgroup limit fairly
frequently.

This bumps the number up to something suitably large since the test
isn't testing anything related to this anyways.

Fixes #36159
2016-11-14 12:55:33 -08:00
Rajat Ramesh Koujalagi
c0f62b2186 Add test for: mount a secret in the presence of another secret in a
different namespace
2016-11-14 10:52:15 -08:00
Kubernetes Submit Queue
03455d04aa Merge pull request #36623 from yujuhong/adjust_limits
Automatic merge from submit-queue

Use generous limits in the resource usage tracking tests

These tests are mainly used to catch resource leaks in the soak cluster. Using
higher limits to reduce noise.

This should fix #32942 and #32214.
2016-11-14 10:28:19 -08:00
Mik Vyatskov
88708a281a Remove Feature label from OutOfDisk e2e test 2016-11-14 13:22:07 +01:00
Kubernetes Submit Queue
706224d9c3 Merge pull request #36225 from piosz/logging-e2e
Automatic merge from submit-queue

Promoted GCL e2e test to stable

The test is stable - haven't failed during last ~runs.
2016-11-14 04:19:56 -08:00
Michail Kargakis
bf00824e0e test: wait for a complete deployment before getting its conditions 2016-11-14 11:27:46 +01:00
Kubernetes Submit Queue
454f60c758 Merge pull request #36506 from Crassirostris/kibana-test-fix
Automatic merge from submit-queue

Fix kibana e2e test

Thanks @Random-Liu for noticing a problem in kibana e2e test!

Fix https://github.com/kubernetes/kubernetes/issues/36402

@piosz
2016-11-12 19:07:05 -08:00
Mik Vyatskov
2b837ba02c Fixed kibana e2e test 2016-11-12 22:27:37 +01:00
Lucas Käldström
dacec687a4 Add a reporter to the system verification check 2016-11-12 16:36:40 +02:00
Kubernetes Submit Queue
800ef09dc1 Merge pull request #36681 from mtaufen/1.5-gci-dev-56-8977-0-0
Automatic merge from submit-queue

Bump GCI version to gci-dev-56-8977-0-0

@vishh @saad
``` release-note
Updating GCI base image to gci-dev-56-8977-0-0. Changelog as follows:
    * runc: Eliminate redundant parsing of mountinfo
    * Updated kubernetes to v1.4.5
```
2016-11-11 17:34:51 -08:00
Kubernetes Submit Queue
f228edbf8e Merge pull request #36668 from mwielgus/dis_e2e
Automatic merge from submit-queue

Add back e2e tests for disruption budget

The tests were temporarily removed due to problems with api versions in client-go. The test is almost exactly the same as it used to be before api version change.

cc: @caesarxuchao @davidopp
2016-11-11 16:28:53 -08:00
Michael Taufen
a38c61395e Bump GCI version to gci-dev-56-8977-0-0 2016-11-11 16:00:18 -08:00
Kubernetes Submit Queue
b85acd957a Merge pull request #36579 from kargakis/restore-events-for-tests
Automatic merge from submit-queue

Restore event messages for replica sets in the deployment controller

Needed to unblock release upgrade tests (see https://github.com/kubernetes/kubernetes/issues/36453)

@kubernetes/deployment ptal
2016-11-11 15:50:31 -08:00
Marcin
e3091d8304 Add back e2e tests for disruption budget 2016-11-11 22:30:56 +01:00
Kubernetes Submit Queue
1bc5b822cd Merge pull request #36479 from Random-Liu/node-e2e-node-name
Automatic merge from submit-queue

Node Conformance & E2E: Get node name from node object.

This PR changes the node e2e test framework to get node name from apiserver instead of test flags.

When a user tried out the node conformance test, he found that node conformance test will not work properly if kubelet is started with `hostname-override`.

The reason is that node conformance test is using [the default node name - `os.Hostname`](https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/e2e_node_suite_test.go#L124), which may be different from `hostname-override`. This will cause test pods not scheduled, and eventually test timeout.

We can expose a flag from node conformance test, and let user set node name themselves if they are using `hostname-override` on kubelet. However, let the framework automatically detect it from apiserver is more user friendly.

/cc @kubernetes/sig-node 
This PR 1) only changes node e2e test framework; 2) fixes a problem in node conformance test which is a 1.5 feature. @saad-ali Can we have this in 1.5?
2016-11-10 18:56:53 -08:00
Yu-Ju Hong
5bf9a699f1 Use generous limits in the resource usage tracking tests
These tests are mainly used to catch resource leaks in the soak cluster. Using
higher limits to reduce noise.
2016-11-10 18:01:58 -08:00
Kubernetes Submit Queue
e7754e89df Merge pull request #36594 from mtaufen/fixup-density_test
Automatic merge from submit-queue

Fix wrong comparison var in e2e_node density test
2016-11-10 15:27:47 -08:00
Random-Liu
1c70c899f7 Get node name from node object. 2016-11-10 14:25:50 -08:00
Michael Taufen
90f8bffc33 Fix wrong comparison var in e2e_node density test 2016-11-10 10:26:00 -08:00
Kubernetes Submit Queue
44f672e5e2 Merge pull request #34877 from resouer/e2e-log-path
Automatic merge from submit-queue

Add e2e node test for log path

fixes #34661

A node e2e test to check if container logs files are properly created with right content.

Since the log files under `/var/log/containers` are actually symbolic of docker containers log files, we can not use a pod to mount them in and do check (symbolic doesn't supported by docker volume).

cc @Random-Liu
2016-11-10 08:35:59 -08:00
Kubernetes Submit Queue
6c18db06dd Merge pull request #36570 from wojtek-t/fix_kubeproxy_resources
Automatic merge from submit-queue

Fix resource constraints in density test

Fixes one source of flakes in #34911
2016-11-10 07:23:03 -08:00
Michail Kargakis
8ef6fdde72 Restore event messages for replica sets in the deployment controller 2016-11-10 14:34:40 +01:00
Kubernetes Submit Queue
c98fc70195 Merge pull request #36008 from MrHohn/addon-rc-migrate
Automatic merge from submit-queue

Migrates addons from RCs to Deployments

Fixes #33698.

Below addons are being migrated:
- kube-dns
- GLBC default backend
- Dashboard UI
- Kibana

For the new deployments, the version suffixes are removed from their names. Version related labels are also removed because they are confusing and not needed any more with regard to how Deployment and the new Addon Manager works.

The `replica` field in `kube-dns` Deployment manifest is removed for the incoming DNS horizontal autoscaling feature #33239.

The `replica` field in `Dashboard` Deployment manifest is also removed because the rescheduler e2e test is manually scaling it.

Some resource limit related fields in `heapster-controller.yaml` are removed, as they will be set up by the `addon resizer` containers. Detailed reasons in #34513.

Three e2e tests are modified:
- `rescheduler.go`: Changed to resize Dashboard UI Deployment instead of ReplicationController.
- `addon_update.go`: Some namespace related changes in order to make it compatible with the new Addon Manager.
- `dns_autoscaling.go`: Changed to examine kube-dns Deployment instead of ReplicationController.

Both of above two tests passed on my own cluster. The upgrade process --- from old Addons with RCs to new Addons with Deployments --- was also tested and worked as expected.

The last commit upgrades Addon Manager to v6.0. It is still a work in process and currently waiting for #35220 to be finished. (The Addon Manager image in used comes from a non-official registry but it mostly works except some corner cases.)

@piosz @gmarek could you please review the heapster part and the rescheduler test?

@mikedanese @thockin 

cc @kubernetes/sig-cluster-lifecycle 

---

Notes:
- Kube-dns manifest still uses *-rc.yaml for the new Deployment. The stale file names are preserved here for receiving faster review. May send out PR to re-organize kube-dns's file names after this.
- Heapster Deployment's name remains in the old fashion(with `-v1.2.0` suffix) for avoiding describe this upgrade transition explicitly. In this way we don't need to attach fake apply labels to the old Deployments.
2016-11-10 02:36:38 -08:00
Kubernetes Submit Queue
467a1cd23b Merge pull request #35868 from Random-Liu/cleanup-node-e2e-output-dir
Automatic merge from submit-queue

Node E2E: Reorganize node e2e output directories.

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

This PR cleans up the result directory and workspace directory of node e2e test.

Local result directory:

```
/tmp/_artifacts/
        |----- build-log.txt  (build log)
        |----- *.xml  (junit xml file)
        |----- local/  (local run *.log)
        |----- hostname1/  (remote run *.log)
        |----- hostname2/
```

Workspace directory on test node:

```
/tmp/node-e2e-yyyy-mm-ddThh-mm-ss/
        |----- cluster/  (gci mounter)
        |----- cni/  (cni binary)
        |----- e2e_node.test  (test binary)
        |----- e2e_node_test.tar.gz  (test tar)
        |----- etcd060429031/  (etcd data directory)
        |----- ginkgo  (ginkgo binary)
        |----- kubelet (kubelet binary)
        |----- pod-manifest365096781/  (mirror pod directory)
        |----- results/  (test result directory)
```

@mtaufen 
/cc @kubernetes/sig-node
2016-11-10 01:58:58 -08:00
Wojciech Tyczynski
69069cd157 Fix resource constraints in density test 2016-11-10 10:21:27 +01:00
Kubernetes Submit Queue
6b9ce1b4c1 Merge pull request #36330 from nikhiljindal/cascDelRS
Automatic merge from submit-queue

Adding cascading deletion support to more federation controllers

Ref #33612

Adding cascading deletion support for federated daemonsets and ingress.
The code is same as that for namespaces. Just ensuring that DeletionHelper functions are called at right places in these controllers.
e2e tests coming up in another PR.

cc @kubernetes/sig-cluster-federation @caesarxuchao @madhusudancs @mwielgus


```release-note
federation: Adding support for DeleteOptions.OrphanDependents for federated daemonsets and ingresses. Setting it to false while deleting a federated daemonset or ingress also deletes the corresponding resource from all registered clusters.
```
2016-11-10 00:43:36 -08:00
Kubernetes Submit Queue
d263c1d694 Merge pull request #36195 from jingxu97/Nov/testnfs-3
Automatic merge from submit-queue

Enable NFS and GlusterFS tests in both node and cluster e2e tests

This PR is to enable NFS and GlusterFS tests on both node and cluster
e2e tests.

It also change the code to use ExecCommandInPod instead of kubectl since
node does not have kubectl available
2016-11-10 00:07:42 -08:00
nikhiljindal
675da90d51 autogenerated bazel and test owner changes 2016-11-09 21:41:19 -08:00
Jing Xu
88d55388ae Enable NFS and GlusterFS tests in both node and cluster e2e tests
This PR is to enable NFS and GlusterFS tests on both node and cluster
e2e tests for gci and containervm distro.

It also change the code to use ExecCommandInPod instead of kubectl since
node does not have kubectl available
2016-11-09 14:42:52 -08:00
Zihong Zheng
fe3a0d2937 Changed kube-dns-autoscaler's target to Deployment/kube-dns 2016-11-09 09:20:51 -08:00
Zihong Zheng
e8c66d4aee Bumps up Addon Manager to v6.0-alpha.1 and updates related e2e test 2016-11-09 09:19:15 -08:00
Zihong Zheng
68f7a739c0 Modifies Rescheduler e2e test for the new dashboard addon 2016-11-09 09:17:05 -08:00
Kubernetes Submit Queue
b6461c9536 Merge pull request #36504 from wojtek-t/increase_initialization-timeout
Automatic merge from submit-queue

Increase initialization timeout for podStore

Fix #33839 - see https://github.com/kubernetes/kubernetes/issues/33839#issuecomment-259442714 for more details.
2016-11-09 08:50:08 -08:00
Kubernetes Submit Queue
658d010633 Merge pull request #34539 from jszczepkowski/ha-e2e-zones
Automatic merge from submit-queue

Added e2e test for HA master replicas in different zones.
2016-11-09 08:09:28 -08:00
Wojciech Tyczynski
3ed6ea96c0 Increase initialization timeout for podStore 2016-11-09 16:32:58 +01:00
Kubernetes Submit Queue
b504d4d991 Merge pull request #36445 from soltysh/update_owners
Automatic merge from submit-queue

Updated test_owners.csv

@kargakis you asked for it
2016-11-09 07:32:32 -08:00
Kubernetes Submit Queue
c52efa570d Merge pull request #36079 from apprenda/windows_kube_proxy
Automatic merge from submit-queue

Add Windows support to kube-proxy

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**:
This is the first stab at supporting kube-proxy (userspace mode) on Windows

**Which issue this PR fixes** : 
fixes #30278

**Special notes for your reviewer**:
The MVP uses `netsh portproxy` to redirect traffic from `ServiceIP:ServicePort` to a `LocalIP:LocalPort`. 
For the next version we are expecting to have guidance from Microsoft Container Networking team.

**Limitations**:
Current implementation does not support DNS queries over UDP as `netsh portproxy` currently only supports TCP. We are working with Microsoft to remediate this.

cc: @brendandburns @dcbw 

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
```
2016-11-09 01:26:27 -08:00
Kubernetes Submit Queue
00458a12a8 Merge pull request #36442 from wojtek-t/extend_lb_timeout
Automatic merge from submit-queue

Extend test timeout for LB creation in large clusters

This will most probably be necessary to test 3000-node clusters.
2016-11-09 00:10:35 -08:00
Kubernetes Submit Queue
b3e4083f49 Merge pull request #36133 from luomiao/photon-support-PR-v2
Automatic merge from submit-queue

Support persistent volume usage for kubernetes running on Photon Controller platform

**What this PR does / why we need it:**
Enable the persistent volume usage for kubernetes running on Photon platform.
Photon Controller: https://vmware.github.io/photon-controller/

_Only the first commit include the real code change.
The following commits are for third-party vendor dependency and auto-generated code/docs updating._

Two components are added:
pkg/cloudprovider/providers/photon: support Photon Controller as cloud provider
pkg/volume/photon_pd: support Photon persistent disk as volume source for persistent volume

Usage introduction:
a. Photon Controller is supported as cloud provider.
When choosing to use photon controller as a cloud provider, "--cloud-provider=photon --cloud-config=[path_to_config_file]" is required for kubelet/kube-controller-manager/kube-apiserver. The config file of Photon Controller should follow the following usage:

```
[Global]
target = http://[photon_controller_endpoint_IP]
ignoreCertificate = true
tenant = [tenant_name]
project = [project_name]
overrideIP = true
```

b. Photon persistent disk is supported as volume source/persistent volume source.
yaml usage:

```
volumes:
  - name: photon-storage-1
    photonPersistentDisk:
        pdID: "643ed4e2-3fcc-482b-96d0-12ff6cab2a69"
```
pdID is the persistent disk ID from Photon Controller.

c. Enable Photon Controller as volume provisioner.
yaml usage:

```
kind: StorageClass
apiVersion: storage.k8s.io/v1beta1
metadata:
  name: gold_sc
provisioner: kubernetes.io/photon-pd
parameters:
  flavor: persistent-disk-gold
```

The flavor "persistent-disk-gold" needs to be created by Photon platform admin before hand.
2016-11-09 00:10:22 -08:00
Yu-Ju Hong
cbe2358940 Remove mounter flags from cri test configs 2016-11-08 22:14:28 -08:00
Kubernetes Submit Queue
ee029d9f3f Merge pull request #33850 from ymqytw/add_e2e_test_for_kubectl_in_pod
Automatic merge from submit-queue

add e2e test for kubectl in a Pod

Add a e2e test to make sure kubectl can talk to the api server when it is mounted in a pod.
Fixes: #33138
2016-11-08 21:00:53 -08:00
Kubernetes Submit Queue
6983262914 Merge pull request #36267 from vishh/gci-mounter-scope
Automatic merge from submit-queue

Make GCI nodes mount non tmpfs, ext* & bind mounts using an external mounter 

This PR downloads the stage1 & gci-mounter ACIs as part of cluster bring up instead of downloading them dynamically from gcr.io, which was the cause for #36206.

I have also optimized the containerized mounter to pre-load the mounter image once to avoid fetch latency while using it.

Original PR which got reverted: https://github.com/kubernetes/kubernetes/pull/35821

```release-note
GCI nodes use an external mounter script to mount NFS & GlusterFS storage volumes
```

@mtaufen Node e2e is not re-enabled in this PR.

cc @jingxu97
2016-11-08 19:46:32 -08:00
Kubernetes Submit Queue
1e9344e9cc Merge pull request #36418 from jimmycuadra/fix-36323
Automatic merge from submit-queue

Use the new name for cassandra-statefulset.yaml in e2e tests.
2016-11-08 16:41:16 -08:00
Vishnu kannan
0562386385 re-enable node e2e for GCI mounter
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-11-08 11:09:13 -08:00
Vishnu kannan
dd8ec911f3 Revert "Revert "Merge pull request #35821 from vishh/gci-mounter-scope""
This reverts commit 402116aed4.
2016-11-08 11:09:10 -08:00
Kubernetes Submit Queue
2e4e932391 Merge pull request #36413 from Random-Liu/extend-node-e2e-timeout
Automatic merge from submit-queue

Node E2E: Extend the default ci node e2e test timeout to 1h.

With more and more test added into node e2e, 45m seems to be not enough now.
I saw sometimes the test takes 40+m:
* https://storage.googleapis.com/kubernetes-jenkins/logs/kubelet-gce-e2e-ci/10942/build-log.txt (44m4.917870119s)
* https://storage.googleapis.com/kubernetes-jenkins/logs/kubelet-gce-e2e-ci/10965/build-log.txt (40m2.37254827s)

And sometimes even timeout:
* https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/kubelet-gce-e2e-ci/10968
* https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/kubelet-gce-e2e-ci/10941

Although it's quite likely that the timeout happened because the limit is too tight, we are not 100% sure.
This PR extends the test timeout of regular ci node e2e test to 1h. Let's see whether the timeout will happen again.

@yujuhong
2016-11-08 11:08:12 -08:00
Harry Zhang
fad1990eaa Fixe verify bazel
Remove rootfs and chroot in scripts
2016-11-08 13:01:28 -05:00
Harry Zhang
64c8d3ad3d Add e2e node test for log path
Update to use pod to check log file
2016-11-08 13:01:25 -05:00
Miao Luo
b22ccc6780 Support persistent volume on Photon Controller platform
1. Enable Photon Controller as cloud provider
2. Support Photon persistent disk as volume source/persistent volume
source
2016-11-08 09:36:16 -08:00
Maciej Szulik
a4caa51056 Updated test_owners.csv 2016-11-08 16:28:46 +01:00
Kubernetes Submit Queue
a2bf827e18 Merge pull request #36154 from m1093782566/m109-fix-del-ns
Automatic merge from submit-queue

fix e2e delete namespace bug

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What:**

Fix `CreateNamespace()` bug in `test/e2e/framework/framework.go`.

**Why:**

If we successfully create a namespace but fail to create a ServiceAccount in it, we should delete the namespace after test.

The current implement of `CreateNamespace()` int e2e test will forget to delete the namespace which we fail to create serviceAccount in it(but the namespace has been successfully created!).
2016-11-08 07:18:24 -08:00
Wojciech Tyczynski
4d775c175a Extend test timeout for LB creation in large clusters 2016-11-08 15:08:14 +01:00
Kubernetes Submit Queue
866293b704 Merge pull request #33366 from rhcarvalho/execincontainer-timeout-argument
Automatic merge from submit-queue

Add timeout argument to ExecInContainer

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

**What this PR does / why we need it**: This is related to https://github.com/kubernetes/kubernetes/issues/26895. It brings a timeout to the signature of `ExecInContainer` so that we can take timeouts into account in the future. Unlike my first attempt in https://github.com/kubernetes/kubernetes/pull/27956, it doesn't immediately observe the timeout, because it is impossible to do it with the current state of the Docker Remote API (the default exec handler implementation).

**Special notes for your reviewer**: This shares commits with https://github.com/kubernetes/kubernetes/pull/27956, but without some of them that have more controversial implications (actually supporting the timeouts). The original PR shall be closed in the current state to preserve the history (instead of dropping commits in that PR).

Pinging the original people working on this change: @ncdc @sttts @vishh @dims 

**Release note**:

<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->

``` release-note
NONE
```
2016-11-08 01:41:19 -08:00
Jerzy Szczepkowski
8266f55fc4 Added e2e test for HA master replicas in different zones.
Added e2e test for HA master replicas in different zones.
2016-11-08 10:32:31 +01:00
Kubernetes Submit Queue
02ac41ea57 Merge pull request #36421 from wojtek-t/fix_kubemark
Automatic merge from submit-queue

Fix non-default etcd image handling in kubemark

Doesn't touch production code.
2016-11-08 00:26:47 -08:00
Random-Liu
d9ddd64c9c Reorganize node e2e output directories. 2016-11-08 00:12:14 -08:00
Kubernetes Submit Queue
0df6384770 Merge pull request #31093 from Random-Liu/containerize-node-e2e-test
Automatic merge from submit-queue

Node Conformance Test: Containerize the node e2e test

For #30122, #30174.
Based on #32427, #32454.

**Please only review the last 3 commits.**

This PR packages the node e2e test into a docker image:
- 1st commit: Add `NodeConformance` flag in the node e2e framework to avoid starting kubelet and collecting system logs. We do this because:
  - There are all kinds of ways to manage kubelet and system logs, for different situation we need to mount different things into the container, run different commands. It is hard and unnecessary to handle the complexity inside the test suite.
- 2nd commit: Remove all `sudo` in the test container. We do this because:
  - In most container, there is no `sudo` command, and there is no need to use `sudo` inside the container.
  - It introduces some complexity to use `sudo` inside the test. (https://github.com/kubernetes/kubernetes/issues/29211, https://github.com/kubernetes/kubernetes/issues/26748) In fact we just need to run the test suite with `sudo`.
- 3rd commit: Package the test into a docker container with corresponding `Makefile` and `Dockerfile`. We also added a `run_test.sh` script to start kubelet and run the test container. The script is only for demonstration purpose and we'll also use the script in our node e2e framework. In the future, we should update the script to start kubelet in production way (maybe with `systemd` or `supervisord`).

@dchen1107 @vishh 
/cc @kubernetes/sig-node @kubernetes/sig-testing



**Release note**:

<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->

``` release-note
Release alpha version node test container gcr.io/google_containers/node-test-ARCH:0.1 for users to verify their node setup.
```
2016-11-07 23:41:25 -08:00
Wojciech Tyczynski
5ffda62588 Fix non-default etcd image handling in kubemark 2016-11-08 08:29:39 +01:00
Jimmy Cuadra
057d9df616 Use the new name for cassandra-statefulset.yaml in e2e tests.
Fixes #36323.
2016-11-07 22:33:47 -08:00
Kubernetes Submit Queue
d8fa6a99a2 Merge pull request #36296 from nikhiljindal/cascDelFedSecret
Automatic merge from submit-queue

Adding cadcading deletion support for federated secrets

Ref https://github.com/kubernetes/kubernetes/issues/33612

Adding cascading deletion support for federated secrets.
The code is same as that for namespaces.  Just ensuring that DeletionHelper functions are called at right places in secret_controller.
Also added e2e tests.

cc @kubernetes/sig-cluster-federation @caesarxuchao

```release-note
federation: Adding support for DeleteOptions.OrphanDependents for federated secrets. Setting it to false while deleting a federated secret also deletes the corresponding secrets from all registered clusters.
```
2016-11-07 22:15:08 -08:00
Kubernetes Submit Queue
a0c34eee35 Merge pull request #33239 from MrHohn/dns-autoscaler
Automatic merge from submit-queue

Deploy kube-dns with cluster-proportional-autoscaler

This PR integrates [cluster-proportional-autoscaler](https://github.com/kubernetes-incubator/cluster-proportional-autoscaler) with kube-dns for DNS horizontal autoscaling. 

Fixes #28648 and #27781.
2016-11-07 19:31:31 -08:00
Random-Liu
0247626ed2 Extend the default ci node e2e test timeout to 1h. 2016-11-07 19:02:53 -08:00
Kubernetes Submit Queue
18cdbadb96 Merge pull request #36319 from yujuhong/cri_flag
Automatic merge from submit-queue

Rename experimental-runtime-integration-type to experimental-cri

Also rename the field in the component config to `EnableCRI`
2016-11-07 17:07:14 -08:00
Random-Liu
9345e12bc9 Add Dockerfile and Makefile to containerize node conformance test. 2016-11-07 15:27:53 -08:00
Random-Liu
919935beec Remove sudo in test suite and run test with sudo. 2016-11-07 15:27:53 -08:00
Kubernetes Submit Queue
356230f8a1 Merge pull request #36299 from Random-Liu/mark-more-conformance-test
Automatic merge from submit-queue

Node Conformance Test: Mark more conformance test

For https://github.com/kubernetes/kubernetes/issues/30122.

This PR:
1) Removes unused image test.
2) Marks more conformance tests based on https://docs.google.com/spreadsheets/d/1yib6ypfdWuq8Ikyo-rTcBGHe76Xur7tGqCKD9dkzx0Y/edit?usp=sharing.

Notice that 2 tests are not marked conformance for now:
1. **OOM score test:** The test is serial and is verifying host PID directly. The test should start a pod with PID=host and verify inside the pod. @vishh 
2. **Summary api test:** The assumption made in the test doesn't always make sense for arbitrary image, for example: The fs capacity bounds is only [(100mb, 100gb)](https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/summary_test.go#L62). @timstclair 
3. We should consider mark **[cgroup manager test](https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/cgroup_manager_test.go)** as conformance test. 

@dchen1107 @vishh @timstclair 
/cc @kubernetes/sig-node
2016-11-07 12:45:40 -08:00
nikhiljindal
11ede23257 bazel changes 2016-11-07 11:43:00 -08:00
nikhiljindal
17b2178222 Adding cadcading deletion support to federated secrets 2016-11-07 11:42:59 -08:00
Yu-Ju Hong
dcce768a3e Rename experimental-runtime-integration-type to experimental-cri 2016-11-07 11:29:24 -08:00
Zihong Zheng
452e6d8c11 Adds e2e tests for DNS horizontal autoscaling feature
The e2e tests cover cases like cluster size changed, parameters
changed, ConfigMap got deleted, autoscaler pod got deleted, etc.
They are separated into a fast part(could be run parallelly) and
a slow part(put in [serial]). The fast part of the e2e tests cost
around 50 seconds to run.
2016-11-07 11:28:52 -08:00
Kubernetes Submit Queue
dbc4121e16 Merge pull request #36378 from timstclair/cri-test
Automatic merge from submit-queue

Enable StreamingProxyRedirects for CRI e2e tests

Required for CRI attach/exec/port-forward calls.
2016-11-07 11:22:53 -08:00
Kubernetes Submit Queue
b6f077defe Merge pull request #36309 from kargakis/scaled-rollout-fix
Automatic merge from submit-queue

test: wait until all pods are available for newly created deployment

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

@kubernetes/deployment
2016-11-07 09:44:33 -08:00
Tim St. Clair
3977a14463
Enable StreamingProxyRedirects for CRI e2e tests 2016-11-07 09:42:44 -08:00
Kubernetes Submit Queue
1866e1862e Merge pull request #36021 from soltysh/cronjobs
Automatic merge from submit-queue

Rename ScheduledJobs to CronJobs

I went with @smarterclayton idea of registering named types in schema. This way we can support both the new (CronJobs) and old (ScheduledJobs) resource name. Fixes #32150.

fyi @erictune @caesarxuchao @janetkuo 

Not ready yet, but getting close there...

**Release note**:
```release-note
Rename ScheduledJobs to CronJobs.
```
2016-11-07 07:12:17 -08:00
Rodolfo Carvalho
506129ba4e Add timeout argument to ExecInContainer
This allows us to interrupt/kill the executed command if it exceeds the
timeout (not implemented by this commit).

Set timeout in Exec probes. HTTPGet and TCPSocket probes respect the
timeout, while Exec probes used to ignore it.

Add e2e test for exec probe with timeout. However, the test is skipped
while the default exec handler doesn't support timeouts.
2016-11-07 13:00:59 +01:00
Michail Kargakis
886052c225 test: update deployment helper to return better error messages 2016-11-07 11:43:28 +01:00
Kubernetes Submit Queue
301326585f Merge pull request #36308 from kargakis/not-found-fix
Automatic merge from submit-queue

test: ignore 404 when deleting pods

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

@kubernetes/deployment
2016-11-07 02:16:36 -08:00
Kubernetes Submit Queue
e6fadcbf4b Merge pull request #36283 from nikhiljindal/nscascdelTests
Automatic merge from submit-queue

Adding more e2e tests for federated namespace cascading deletion and fixing bugs

Ref https://github.com/kubernetes/kubernetes/issues/33612

Adding more e2e tests for testing cascading deletion of federated namespace.
New tests are now verifying that cascading deletion happen when DeletionOptions.OrphanDependents=false and it does not happen when DeleteOptions.OrphanDependents=true.

Also updated deletion helper to always add OrphanFinalizer. generic registry will remove it if DeleteOptions.OrphanDependents=false. Also updated namespace registry to do the same.

We need to add the orphan finalizer to keep the orphan by default behavior. We assume that its dependents are going to be orphaned and hence add that finalizer. If user does not want the orphan behavior, he can do so using DeleteOptions and then the registry will remove that finalizer.

cc @kubernetes/sig-cluster-federation @caesarxuchao @derekwaynecarr
2016-11-07 01:37:14 -08:00
Maciej Szulik
0b5ef16008 Support ScheduledJob name 2016-11-07 10:14:12 +01:00
Maciej Szulik
41d88d30dd Rename ScheduledJob to CronJob 2016-11-07 10:14:12 +01:00
Paulo Pires
acf3f368bc
Added new userspace proxy mode specifically for Windows. 2016-11-07 09:11:35 +00:00
Kubernetes Submit Queue
cc7070d5d8 Merge pull request #35583 from justinsb/replace_ratelimit
Automatic merge from submit-queue

Create simple version of ratelimit package

Allows for better testing.
2016-11-07 00:01:18 -08:00
Random-Liu
13a50e3b97 Add containerize flag to avoid starting kubelet and collecting logs. 2016-11-06 20:18:23 -08:00
Kubernetes Submit Queue
9534c4f563 Merge pull request #32427 from Random-Liu/system-verification
Automatic merge from submit-queue

Node Conformance Test: Add system verification

For #30122 and #29081.

This PR introduces system verification test in node e2e and conformance test. It will run before the real test. Once the system verification fails, the test will just fail. The output of the system verification is like this:

```
I0909 23:33:20.622122    2717 validators.go:45] Validating os...
OS: Linux
I0909 23:33:20.623274    2717 validators.go:45] Validating kernel...
I0909 23:33:20.624037    2717 kernel_validator.go:79] Validating kernel version
KERNEL_VERSION: 3.16.0-4-amd64
I0909 23:33:20.624146    2717 kernel_validator.go:93] Validating kernel config
CONFIG_NAMESPACES: enabled
CONFIG_NET_NS: enabled
CONFIG_PID_NS: enabled
CONFIG_IPC_NS: enabled
CONFIG_UTS_NS: enabled
CONFIG_CGROUPS: enabled
CONFIG_CGROUP_CPUACCT: enabled
CONFIG_CGROUP_DEVICE: enabled
CONFIG_CGROUP_FREEZER: enabled
CONFIG_CGROUP_SCHED: enabled
CONFIG_CPUSETS: enabled
CONFIG_MEMCG: enabled
I0909 23:33:20.679328    2717 validators.go:45] Validating cgroups...
CGROUPS_CPU: enabled
CGROUPS_CPUACCT: enabled
CGROUPS_CPUSET: enabled
CGROUPS_DEVICES: enabled
CGROUPS_FREEZER: enabled
CGROUPS_MEMORY: enabled
I0909 23:33:20.679454    2717 validators.go:45] Validating docker...
DOCKER_GRAPH_DRIVER: aufs
```

It verifies the system following a predefined `SysSpec`:

``` go
// DefaultSysSpec is the default SysSpec.
 var DefaultSysSpec = SysSpec{
    OS:            "Linux",
    KernelVersion: []string{`3\.[1-9][0-9].*`, `4\..*`}, // Requires 3.10+ or 4+
    // TODO(random-liu): Add more config
    KernelConfig: KernelConfig{
        Required: []string{
            "NAMESPACES", "NET_NS", "PID_NS", "IPC_NS", "UTS_NS",
            "CGROUPS", "CGROUP_CPUACCT", "CGROUP_DEVICE", "CGROUP_FREEZER",
            "CGROUP_SCHED", "CPUSETS", "MEMCG",
        },
        Forbidden: []string{},
    },
    Cgroups: []string{"cpu", "cpuacct", "cpuset", "devices", "freezer", "memory"},
    RuntimeSpec: RuntimeSpec{
        DockerSpec: &DockerSpec{
            Version: []string{`1\.(9|\d{2,})\..*`}, // Requires 1.9+
            GraphDriver: []string{"aufs", "overlay", "devicemapper"},
        },
    },
 }
```

Currently, it only supports:
- Kernel validation: version validation and kernel configuration validation
- Cgroup validation: validating whether required cgroups subsystems are enabled.
- Runtime Validation: currently, only validates docker graph driver.

The validating framework is ready. The specific validation items could be added over time.

@dchen1107 
/cc @kubernetes/sig-node
2016-11-06 17:12:39 -08:00
Marcin
e90d97d262 Autogenerated bazel BUILD 2016-11-06 19:27:24 +01:00
Marcin Wielgus
f7d37219d9 E2e test for federated deployment controller 2016-11-06 19:21:59 +01:00