Commit Graph

3829 Commits

Author SHA1 Message Date
Tim Hockin
a7ab2da8d6 Make unit test runs MUCH faster
Running tests rebuilds almost everything.  Most unit tests do not need to be
rebuilt.  This installs test artifacts and makes subsequent test runs as much
as 6x faster.  I saw pkg/apiserver tests drop from 30+ seconds to 5 seconds.
2016-09-01 00:01:50 -07:00
Kubernetes Submit Queue
199338a551 Merge pull request #31759 from nikhiljindal/fedSwaggerDoc
Automatic merge from submit-queue

Generating API reference docs for federation apiserver

Fixes #30541 

Adding a script `update-federation-api-reference-docs.sh` similar to the existing `update-api-reference-docs.sh` for kube-apiserver. Have moved the common parts to `hack/lib/swagger.sh`.
The new script will produce API reference docs for federation-apiserver.

Next step will be to surface these docs at kubernetes.io.

cc @kubernetes/sig-cluster-federation @kubernetes/sig-api-machinery @caesarxuchao
2016-08-31 15:33:43 -07:00
nikhiljindal
209d544bed Adding a script to update federation API reference docs 2016-08-31 13:21:42 -07:00
jianhuiz
893f499fb8 test Metadata.ClusterName not saved into etcd 2016-08-31 08:12:41 -07:00
Random-Liu
e7a1b4e16f Do not set stop-services=false for node e2e and add more logs. 2016-08-30 17:52:23 -07:00
Kubernetes Submit Queue
1c607b391a Merge pull request #31721 from mml/disrupt.e2e.versioned
Automatic merge from submit-queue

Rewrite disruption e2e test to use versioned client.

This currently includes the changes from #31638.  I will rebase once that is merged.
2016-08-30 15:35:15 -07:00
nikhiljindal
a954ff18e6 Adding update-federation-generated-swagger-docs to generate comment funcs for federation gvs 2016-08-30 14:15:21 -07:00
Matt Liggett
44b2c862ef Rewrite disruption e2e test to use versioned client. 2016-08-30 12:34:45 -07:00
Kubernetes Submit Queue
5c332e0d02 Merge pull request #31628 from Random-Liu/move-image-logic-to-remote-run
Automatic merge from submit-queue

Node E2E: Move the image and host related logic to be remote run specific.

This PR addresses #31597, and better fixes #31588.

With this PR:
1) All remote logic is moved into remote mode.
2) All gci related logic is only called when `HOSTS` and `IMAGES` are not specified.
3) Run node e2e against other node e2e images will work again - `make test-e2e-node REMOET=true IMAGES=e2e-node-containervm-v20160321-image`.
4) List images will work again - `make test-e2e-node REMOTE=true LIST_IMAGES=true`.

Mark 1.4, because https://github.com/kubernetes/kubernetes/pull/31588 is marked as 1.4. And this makes the node e2e work as is described in the [doc ](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/e2e-node-tests.md#run-tests-using-different-images).

@yujuhong @vishh 
/cc @kubernetes/sig-node
2016-08-30 04:24:55 -07:00
Kubernetes Submit Queue
02e0bdc24e Merge pull request #31593 from dims/fix-test-integration-osx
Automatic merge from submit-queue

Fix make test-integration under OSX

Just throw in a doc.go so there's something compilable in the
test/integration/metrics directory.

Fixes #31587
2016-08-30 03:45:07 -07:00
Kubernetes Submit Queue
56434f1144 Merge pull request #31623 from sttts/sttts-mac-ln-T
Automatic merge from submit-queue

Fix build on Mac

Use portable `ln -snf` instead of `-sTf` (introduced in https://github.com/kubernetes/kubernetes/pull/31525).
2016-08-30 02:16:55 -07:00
Kubernetes Submit Queue
09a97203aa Merge pull request #30744 from madhusudancs/fed-split-build-to-develop-deploy
Automatic merge from submit-queue

Separate federation build.sh into development and deployment scripts.

The idea behind this separation is that it provides a clear distinction
between the dev environment and the prod environment. The
deploy/deploy.sh script will be shipped to the users, but
develop/develop.sh will be purely for development purposes and won't
be part of a release distribution.

Purely for developer convenience, all the deployment functionality is
made available through the develop/develop.sh script.

This change also copies deploy/* files into the release distribution.

cc @kubernetes/sig-cluster-federation @colhom 

```release-note
Federation can now be deployed using the `federation/deploy/deploy.sh` script. This script does not depend on any of the development environment shell library/scripts. This is an alternative to the current `federation-up.sh`/`federation-down.sh` scripts. Both the scripts are going to co-exist in this release, but the `federation-up.sh`/`federation-down.sh` scripts might be removed in a future release in favor of `federation/deploy/deploy.sh` script.
```
2016-08-29 13:46:19 -07:00
Kubernetes Submit Queue
033e473e12 Merge pull request #31242 from wojtek-t/attach_ttls
Automatic merge from submit-queue

Support for TTLs in etcd migration.

Ref #20504
2016-08-29 12:57:57 -07:00
Kubernetes Submit Queue
bf4530612c Merge pull request #31572 from fejta/delete
Automatic merge from submit-queue

Delete unused, deprecated scripts

This has been unused since https://github.com/kubernetes/kubernetes/pull/23415
2016-08-29 12:15:26 -07:00
Random-Liu
4c9587bf61 Move the image and host related logic only to be run in remote mode. 2016-08-29 11:48:23 -07:00
Kubernetes Submit Queue
295f1786fb Merge pull request #31588 from ingvagabund/make-gcloud-compute-conditional
Automatic merge from submit-queue

node e2e script: call 'gcloud compute' only if necessary

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

The ``gcloud compute`` is called everytime even if it is not needed.
When runnin node e2e tests on RHEL, the test-e2e-node.sh script is run
the way in which it takes execution path without ``gcloud`` invocation.

With the current code, ``gcloud`` is called everytime.
Thus introducing additional runtime dependency.

**Special notes for your reviewer**:

First introduced here: https://github.com/kubernetes/kubernetes/pull/29815
2016-08-29 11:33:34 -07:00
Davanum Srinivas
b06a6bfbb1 Fix make test-integration under OSX
Just throw in a doc.go so there's something compilable in the
test/integration/metrics directory.

Fixes #31587
2016-08-29 13:50:44 -04:00
Dr. Stefan Schimanski
f2f3a459d8 Use portable ln -snf instead of -sTf 2016-08-29 18:58:56 +02:00
Kubernetes Submit Queue
1e42723269 Merge pull request #31525 from dcbw/handle-existing-go_pkg_dir
Automatic merge from submit-queue

Don't error out if ${go_pkg_dir} already exists

I have 'make' aliased to 'make -j4' for various reasons, and that's always worked fine for Kubernetes in the past.  But it recently broke because EEXIST errors from this symlink creation are fatal.  So make them not fatal, because if the path already exists, why try to create it again?  It exists because two invocations of setup_env() are run in parallel due to the -j4, and they race to create the symlink and one obviously fails.

ln: failed to create symbolic link ‘/home/dcbw/Development/containers/kubernetes/_output/local/go/src/k8s.io/kubernetes’: File exists
Makefile.generated_files:285: recipe for target '_output/bin/deepcopy-gen' failed
make[1]: *** [_output/bin/deepcopy-gen] Error 1
make[1]: *** Waiting for unfinished jobs....
+++ [0826 10:18:02] Generating bindata:
    /home/dcbw/Development/containers/kubernetes/test/e2e/framework/gobindata_util.go
+++ [0826 10:18:02] Building the toolchain targets:
    k8s.io/kubernetes/hack/cmd/teststale
+++ [0826 10:18:03] Building go targets for linux/amd64:
    cmd/libs/go2idl/conversion-gen
Makefile:281: recipe for target 'generated_files' failed
make: *** [generated_files] Error 2
2016-08-28 13:57:32 -07:00
Kubernetes Submit Queue
058bfbfd52 Merge pull request #31536 from bprashanth/nginxe2e
Automatic merge from submit-queue

Get network name via e2e environment.

This should work, right? I plan to pipe it through into the TestContext soon, just not today, and I'd like some test runtime over the weekend. Open to suggestions.
2016-08-28 13:08:44 -07:00
Jan Chaloupka
8f28091c97 Call 'gcloud compute' only if necessary
The 'gcloud compute' is called everytime even if it is not needed.
When runnin node e2e tests on RHEL, the test-e2e-node.sh script is run
the way in which it takes execution path without gcloud invocation.

With the current code, gcloud is called everytime.
Thus introducing additional runtime dependency.
2016-08-28 13:25:41 +02:00
Erick Fejta
5f2e9331cb Delete unused, deprecated scripts 2016-08-26 18:26:12 -07:00
Kubernetes Submit Queue
60f978de07 Merge pull request #30316 from caesarxuchao/debug-cascading-deletion
Automatic merge from submit-queue

[GarbageCollector] Increase log verbosity for Garbage collector tests

I cannot reproduce the flake of GC locally, see https://github.com/kubernetes/kubernetes/issues/28713#issuecomment-237842105, so I increased the log verbosity for Garbage collector tests.
2016-08-26 18:09:36 -07:00
Chao Xu
9ac91e5172 debugging gc 2016-08-26 15:58:33 -07:00
Kubernetes Submit Queue
adc2db5ff9 Merge pull request #29929 from madhusudancs/fed-bin-downsize-v2
Automatic merge from submit-queue

[Federation] Downsize the release binary distribution v2.

Second attempt of PR #29632.

There are two things that this PR does:

1. It removes `federation-apiserver` and `federation-controller-manager` from binaries and docker_wrapped_binaries target lists.
2. Build the docker image for `hyperkube` on-the-fly while pushing the federation images. 

```release-note
Federation binaries and their corresponding docker images - `federation-apiserver` and `federation-controller-manager` are now folded in to the `hyperkube` binary. If you were using one of these binaries or docker images, please switch to using the `hyperkube` version. Please refer to the federation manifests - `federation/manifests/federation-apiserver.yaml` and `federation/manifests/federation-controller-manager-deployment.yaml` for examples.
```

cc @kubernetes/sig-cluster-federation @colhom 

Fixes Issue #28633
2016-08-26 15:11:58 -07:00
bprashanth
43022591d1 Get network name via e2e environment. 2016-08-26 13:31:08 -07:00
Dan Williams
e063c760c2 Don't error out if ${go_pkg_dir} already exists
If it already exists, the world is OK and there's no need to panic.
2016-08-26 13:10:13 -05:00
Eric Paris
6f90869996 Merge pull request #31452 from jeffmendoza/cleanup-docs-yamls
Removed non-md files from docs. Moved doc yamls to test/fixtures.
2016-08-26 12:17:12 -04:00
Wojciech Tyczynski
793d3acd8b Support for TTLs in etcd migration. 2016-08-26 10:28:00 +02:00
Kubernetes Submit Queue
3af6ad1c33 Merge pull request #31478 from david-mcmahon/fix-cache-gen
Automatic merge from submit-queue

Fix the creation of the jobResultsCache.json file.

Let's try this again.
ref https://github.com/kubernetes/release/pull/60
2016-08-25 18:33:52 -07:00
Kubernetes Submit Queue
c70583ac10 Merge pull request #30902 from krousey/version_metric
Automatic merge from submit-queue

Split the version metric out to its own package

This PR breaks a client dependency on prometheus. Combined with #30638, the client will no longer depend on these packages.
2016-08-25 18:33:48 -07:00
David McMahon
55bfc885db Fix the creation of the jobResultsCache.json file. 2016-08-25 17:27:05 -07:00
Kubernetes Submit Queue
610a978e48 Merge pull request #31363 from rmmh/5day-update
Automatic merge from submit-queue

Get 5 days of test history when updating test owners.
2016-08-25 16:44:15 -07:00
Kubernetes Submit Queue
a953eb42b1 Merge pull request #30551 from david-mcmahon/job-cache
Automatic merge from submit-queue

Construct a valid json file for the job cache.
2016-08-25 15:55:19 -07:00
Jeff Mendoza
95b73058d2 Removed non-md files from docs. Moved doc yamls to test/fixtures.
Most of the contents of docs/ has moved to kubernetes.github.io.
Development of the docs and accompanying files has continued there, making
the copies in this repo stale. I've removed everything but the .md files
which remain to redirect old links. The .yaml config files in the docs
were used by some tests, these have been moved to test/fixtures/doc-yaml,
and can remain there to be used by tests or other purposes.
2016-08-25 15:09:27 -07:00
Madhusudan.C.S
a6ff2364c5 Addressed review comments. 2016-08-25 14:34:19 -07:00
Madhusudan.C.S
d9cea93eb6 [Federation] Do not build separate binaries for federation control plane components, hyperkube should be sufficient.
Also build the hyperkube docker image on-the-fly.

This is only a temporary fix until the proposal in issue
https://github.com/kubernetes/kubernetes/issues/28630 is implemented.

Also, the new build/deployment method completely obviates this step.

We use debian image instead of busybox and do not build hyperkube as a
static binary yet. Wait until PR
https://github.com/kubernetes/kubernetes/pull/26028 is merged to build
static hyperkube binaries.
2016-08-25 14:29:32 -07:00
Kubernetes Submit Queue
a143cdd072 Merge pull request #31409 from Random-Liu/fix-verify-golint-sort-hint
Automatic merge from submit-queue

Fix sort hint in `hack/verify-golint.sh`

The `verify-golint.sh` sorts all items with `LANG=C sort`, but it only hints developers to use `sort`, which causes a little trouble for me.

/cc @jfrazelle  @sttts
2016-08-25 14:07:01 -07:00
Kubernetes Submit Queue
863dd10ae4 Merge pull request #30540 from Random-Liu/refactor-node-e2e-framework
Automatic merge from submit-queue

Node Conformance Test: Refactor node e2e framework

For #30122, #30174.
Based on #30348.

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

This PR is part of our roadmap to package node conformance test.
The 1st commit is from #30348, it removed unnecessary dependencies in the node e2e test framework, because we've statically linked these dependencies.

The PR refactored the node e2e framework. Moving different utilities into different packages under `pkg/`.

We need to do this because:
1) Files like e2e_remote.go and e2e_build.go should only be used by runner, but they were compiled into the test suite because they were placed in the same package. The worst thing is that it will introduce some never used flags in the test suite binary.
2) Make the directory structure more clear. Only test should be placed in `test/e2e_node`, other utilities should be placed in different packages in `pkg/`.

@dchen1107 @vishh 
/cc @kubernetes/sig-node @kubernetes/sig-testing
2016-08-25 14:06:56 -07:00
Kubernetes Submit Queue
d836b248b2 Merge pull request #30738 from caesarxuchao/copy-keep-vendor
Automatic merge from submit-queue

Keep vendor/ and Godep/ when creating the staging client, add a readme

In copy.sh, instead of removing the vendor/, moving it to _vendor. vendor/ is needed when we publish the staging client to its own repository.
2016-08-25 11:17:44 -07:00
Dr. Stefan Schimanski
e356e52247 Add sysctl whitelist on the node 2016-08-25 13:22:01 +02:00
Random-Liu
5d11de1c2e Fix sort hint in hack/verify-golint.sh. 2016-08-24 20:55:14 -07:00
Random-Liu
afb780d4ee Move utilities into different packages. Add local and remove runner. 2016-08-24 20:18:45 -07:00
Erick Fejta
1aea03e7a8 Moved runner to test-infra 2016-08-24 15:47:10 -07:00
Chao Xu
b45e578ddd ignore staging in munge scripts 2016-08-24 13:09:13 -07:00
Ryan Hitchman
23fb96b010 Get 5 days of test history when updating test owners, to avoid
accidentally removing tests that run rarely.
2016-08-24 12:00:13 -07:00
Kris
1740358573 Split the version metric out to its own package 2016-08-24 11:47:16 -07:00
Kubernetes Submit Queue
b551bf1e5c Merge pull request #31330 from ixdy/kubekins-docker
Automatic merge from submit-queue

Explicitly set CLOUDSDK_CONFIG override early in e2e-runner

I'm guessing this is why a number of gci-on-gke builds started failing after https://github.com/kubernetes/test-infra/pull/432 was merged - we're overriding the gcloud configuration location from the default, so the activated service account no longer works. Previously we did this service activation late, but after we'd overridden the value.

I've changed it to explicitly set to a known-good value every time at the very start.

cc @vishh @maisem @spxtr @fejta
2016-08-24 11:38:05 -07:00
Kubernetes Submit Queue
c69e3d32a2 Merge pull request #31302 from ixdy/jenkins-build-script
Automatic merge from submit-queue

Use `make release` on Jenkins to support crossbuilds

Partner PR to https://github.com/kubernetes/test-infra/pull/440 to fix https://github.com/kubernetes/test-infra/issues/393.

We probably should pull the build functionality out of e2e.go entirely, but I leave that to future work.

cc @luxas @david-mcmahon @fejta
2016-08-24 10:55:38 -07:00
Kubernetes Submit Queue
ef2718620c Merge pull request #30900 from jsafrane/pvc-admission
Automatic merge from submit-queue

Add admission controller for default storage class.

The admission controller adds a default class to PVCs that do not require any
specific class. This way, users (=PVC authors) do not need to care about
storage classes, administrator can configure a default one and all these PVCs
that do not care about class will get the default one.

The marker of default class is annotation "volume.beta.kubernetes.io/storage-class", which must be set to "true" to work. All other values (or missing annotation) makes the class non-default.

Based on @thockin's code, added tests and made it not to reject a PVC when no class is marked as default.
. 
@kubernetes/sig-storage
2016-08-24 03:32:46 -07:00