pkg/service:
There were a couple of references here just as a reminder to change the
behavior of findPort. As of v1beta3, TargetPort was always defaulted, so
we could remove findDefaultPort and related tests.
pkg/apiserver:
The tests were using versioned API codecs for some of their encoding
tests. Necessary API types had to be written and registered with the
fake versioned codecs.
pkg/kubectl:
Some tests were converted to current versions where it made sense.
- Updates travis to run karma
- Adds some actual tests
Sample build success: https://travis-ci.org/djvirgen/kubernetes/jobs/61567253
Note: My branch is currently up to date with master but all the Go stuff is failing in Travis. Not sure why Go is failing, but the Karma stuff is running OK. I've also verified that when a Jasmine test fails, Travis will fail the build (see [this build](https://travis-ci.org/djvirgen/kubernetes/jobs/61567666) here).
Integration test often time out because the machine is loaded. Instead of
increasing timeout, this change hopes to address the issue by limiting the
number of tests running simultaneously.
Add a new flag in integration.go to specify the maximum number of concurrent
tests. Set the default in travis and shippable configurations to be 4.
take 30-60s, but a number of them reach the 60s timeout and are
aborted. It seems our Travis (and Shippable?) flakiness is
self-inflicted due to too-short timeouts?
When code coverage is not being collected, just issue a single 'go test'
command, as is already done. Go will internally parallize execution.
When code coverage is being collected, it is necessary to issue separate
'go test' commands for each package, since Go does not support
collecting coverage across packages. Using xargs -P will parallelize
these invocations, however, speeding up test execution.
The number of simultaneous processes to use can be specified with
KUBE_COVERPROCS.
Update Travis config to pass along the number of CPUs to use for running
tests.
* Rewrite a bunch of the hack/ directory with modular reusable bash libraries.
* Have 'build/*' build on 'hack/*'. The stuff in build now just runs hack/* in a docker container.
* Use a docker data container to enable faster incremental builds.
* Standardize output to _output/{local,dockerized}/bin/OS/ARCH/*. This regularized placement makes cross compilation work.
* Move travis specific scripts under hack/travis
With new dockerized incremental builds, I can do a no-op `make quick-release` in ~30s. This is a significant improvement.
This reverts commit 453c328fc9.
Having `godep` installed is not necessarily for build & test, only to
manage the dependencies under the Godeps/ tree.
Signed-off-by: Filipe Brandenburger <filbranden@google.com>