Commit Graph

578 Commits (da9622a6d79ec1e9b05760538c853282b41d94a8)

Author SHA1 Message Date
Clayton Coleman abc621759a Add --v=4 to e2e bash executions by default
Will allow more debugging output to be available in CLI
2015-01-14 12:37:40 -05:00
Clayton Coleman d986028cf7 Remove trailing commas from e2e services.sh 2015-01-14 12:36:25 -05:00
Zach Loafman 1f210d4961 Merge pull request #3438 from zmerlynn/fix_pd_sh
Deflake pd.sh: Try really, really hard to detach and delete PD
2015-01-14 07:57:39 -08:00
Zach Loafman 21e81de190 Deflake pd.sh: Try really, really hard to detach and delete PD, up pod-up timeout 2015-01-14 07:48:34 -08:00
Clayton Coleman ec803cb809 Allow resource.Builder to stream YAML from the CLI
Add both JSON and YAML STDIN tests in test-cmd
2015-01-14 00:50:13 -05:00
Clayton Coleman be8d97077e hack/test-cmd.sh can be easier to read if we set PATH
instead of using a replacement var.  Makes cut and paste testing
easier.
2015-01-13 19:04:47 -05:00
Clayton Coleman 80260f4cb9 Improve hack/test-cmd.sh tests to check versions and default API behavior 2015-01-13 18:46:13 -05:00
Zach Loafman ba618db226 Fix kubernetes-e2e-gke build
Got a little aggressive combining options here. Accidentally forgot
that this parameter would bork normal GKE.
2015-01-12 16:55:56 -08:00
Zach Loafman c5c70dfcbb Merge pull request #3417 from brendandburns/e2e
Don't just sleep and hope when deleting the pd pod.
2015-01-12 16:13:00 -08:00
Brendan Burns bdcb0c53f5 Don't just sleep and hope when deleting the pd pod. 2015-01-12 16:06:57 -08:00
Daniel Smith 14b718973a Merge pull request #3415 from zmerlynn/e2e_jenkins_script
Add Jenkins e2e script
2015-01-12 15:11:28 -08:00
Brendan Burns a6f6f25dda Merge pull request #3387 from zmerlynn/fix_monitor_flake
Fix monitoring.sh flake (hopefully)
2015-01-12 14:32:31 -08:00
Zach Loafman 3095f1bf64 Add Jenkins e2e script
This commit adds and documents the e2e script that Jenkins runs
2015-01-12 13:49:24 -08:00
Zach Loafman 0b3baad0f4 Kill the forced upload to GCS.
This actually tickles the -opipefail, and is only necessary if you're
rebuilding (which isn't really safe, because it can slice downstream
builds.)
2015-01-12 09:52:58 -08:00
Zach Loafman c5ab2412a3 chmod 755 hack/jenkins/build.sh (sorry) 2015-01-12 09:33:50 -08:00
Dawn Chen 724e766f91 Merge pull request #3360 from zmerlynn/jenkins_scripts_start
Initial commit of Jenkins script + README
2015-01-12 09:22:39 -08:00
Zach Loafman 0918bdbd88 Fix monitoring.sh flake (hopefully)
This was staring at me yesterday, and I even commented that "huh,
there's got to be something wrong with the firewall rules, but then
job/kubernetes-e2e-gce/1002/tapResults/ made it obvious: If you have
two e2e jobs running at the same time in the same project (hint:
Jenkins does), they'll race with each other, since resource names are
project scoped.
2015-01-10 08:19:55 -08:00
Zach Loafman ca1753e51f Initial commit of Jenkins script + README
And a config description. This doesn't yet have much - first want to
make sure I can do the build job. Next I'll submit the e2e script with
its twiddles and switch those over. (After going to 3 e2es, I think
it's finally time for version control.)
2015-01-09 16:28:48 -08:00
Clayton Coleman dcd11761e7 Reenable Coverage and Race detection for travis and integration test 2015-01-09 13:16:30 -05:00
bgrant0607 7bff03fb41 Merge pull request #2878 from smarterclayton/enable_v1beta3
Enable v1beta3 API via --runtime_config=api/v1beta3 flag
2015-01-08 11:04:06 -08:00
Tim Hockin 812e8346ac Merge pull request #3314 from zmerlynn/fix_services_sh_version_skewed
GKE: Fix services.sh for server versions < 0.8.0
2015-01-08 10:55:31 -08:00
Zach Loafman e250c46598 GKE: Fix services.sh for server versions < 0.8.0
Commit e045c6ce broke this test against all server versions <0.8.0,
which immediately broke the GKE Jenkins runs.
2015-01-08 10:42:01 -08:00
Clayton Coleman 7fd887df61 Enable v1beta3 API via --runtime_config=api/v1beta3 flag
This exposes the proper v1beta3 API endpoint when the user specifies
the --runtime_config=api/v1beta3 argument to the apiserver. v1beta3
is still considered experimental and subject to change.

--runtime_config is a map of string keys and values, that can be
specified by providing

    --runtime_config=a=b,b=c,d,e

Only the key must be specified, the value can be omitted.

Enables v1beta3 in hack/local-up-cluster.sh and hack/test-cmd.sh
2015-01-08 13:01:24 -05:00
Clayton Coleman 8262c30c97 Improve serialization round trip test and add v1beta3 2015-01-08 12:44:28 -05:00
Clayton Coleman 2495174ab7 test-cmd should test all api versions 2015-01-08 10:47:53 -05:00
Vish Kannan 869f06c4e8 Merge pull request #3257 from brendandburns/monitoring
Add some more robustness to the curl check.
2015-01-08 07:40:16 -08:00
Zach Loafman 3ddde070f3 Merge pull request #3309 from brendandburns/race
Add some retry around the wget, in an effort to deflake the test
2015-01-07 22:20:42 -08:00
Brendan Burns dba7248d0e Add some more robustness to the curl check. 2015-01-07 21:07:49 -08:00
Brendan Burns eda47206bd Add some retry to the wget checking from container. 2015-01-07 21:05:19 -08:00
Eric Tune 0d4d1e28b2 Merge pull request #3270 from smarterclayton/kubelet_fixes
Cleanup to client initialization in Kubelet
2015-01-07 15:55:38 -08:00
Tim Hockin d314862e46 Merge pull request #3285 from erictune/public_reflectors
Make Reflector helpers reusable.
2015-01-07 14:10:57 -08:00
Eric Tune 7d5ac856c5 Make Reflector helpers reusable.
Scheduler uses Reflector from pkg/client/cache.
It defines some helper classes.
I'd like to use those helpers with pkg/client/cache
in kube-proxy and kubelet too.
2015-01-07 13:49:37 -08:00
Clayton Coleman ba53d723d3 Clean up how client is passed to Kubelet in preparation for reading pods
Also fixes how Kubelet server looks up pods by name when there are multiple
sources.
2015-01-07 14:40:37 -05:00
Rohit Jnagal 62ecd5f3ff Fix few vet errors.
There are quite a few 'composite literal uses unkeyed fields' errors that I have kept out of this patch.
And there's a couple where vet just seems confused. These are the easiest ones.
2015-01-07 08:40:16 +00:00
Eric Tune ee2f63a877 Merge pull request #3221 from thockin/integ
Reduce verbosity on integration tests
2015-01-06 12:50:38 -08:00
Eric Tune 823d878b30 Merge pull request #3246 from zmerlynn/newline_printable
Fix newlines in TAP stdout/stderr output
2015-01-06 11:41:08 -08:00
Zach Loafman 9312af4f79 Fix newlines in TAP stdout/stderr output
It turns out, newlines are not "printable", causing the TAP
stderr/stdout output to be smushed. Also address etune's comment on
pr3208.
2015-01-06 08:08:19 -08:00
Brendan Burns cdad54ba48 Merge pull request #3232 from nikhiljindal/third_party
Moving swagger-ui files from www/swagger-ui to third_party/swagger-ui
2015-01-05 21:38:41 -08:00
nikhiljindal 1db30aeb51 Moving swagger-ui files from www/swagger-ui to third-party/swagger-ui
and adding LICENSE and README files
2015-01-05 16:27:33 -08:00
Joe Beda 943ed6d289 Merge pull request #3146 from zmerlynn/limit_liveness_gke
GKE: Limit liveness.sh to server version >0.7.2
2015-01-05 14:41:39 -08:00
Zach Loafman 7d507a4fa9 Merge pull request #3228 from jbeda/dns-release
Create cluster/addons for things to put into a kubernetes cluster
2015-01-05 14:26:04 -08:00
Zach Loafman e965fc1f79 GKE: Limit liveness.sh to server version >0.7.2
What I really want is
https://github.com/GoogleCloudPlatform/kubernetes/issues/2953, but
haven't had a chance to code that yet. Maybe it's time. (Then I'd
remove the provider-specific test and just say "is it > 0.7.2, or does
it claim to be capable of something from the future?" The latter
covers the HEAD server case .. though just bumping the server version
immediately after release might also accomplish that, too.)
2015-01-05 14:21:21 -08:00
Clayton Coleman d90cf9b8ac Boilerplate checks on 2014, but commit included a 2015 (breaks travis)
Revert boilerplate to 2014 until hack/verify-boilerplate.sh is fixed
2015-01-05 16:28:52 -05:00
Joe Beda 9aa48b7628 Move heapster data files to cluster/addons.
Also pretty up the JSON (make it real JSON) and streamline the sed in cluster/gce/init.sh.
2015-01-05 12:32:35 -08:00
Joe Beda 4e417b98b5 Merge pull request #3206 from zmerlynn/jenkins_style_e2e
Add script to run e2e tests from binary deployment: e2e-from-release.sh
2015-01-05 11:09:38 -08:00
Tim Hockin 987d6ccef4 Reduce verbosity on integration tests 2015-01-05 10:51:43 -08:00
Zach Loafman d938ecaba2 Escape stdout/stderr YAML-like elements for TAP output
Fixes https://github.com/GoogleCloudPlatform/kubernetes/issues/3094
2015-01-04 08:02:43 -08:00
Zach Loafman 51afb97b59 Add script to run e2e tests from binary deployment: hack/e2e-from-release.sh
We need a way to quickly emulate what Jenkins is doing. This script
easily demonstrates problems like
https://github.com/GoogleCloudPlatform/kubernetes/issues/3190, which
git based e2e runs won't show.
2015-01-04 05:55:29 -08:00
Tim Hockin e045c6ce2f Split portals into host and container
After this DNS is resolvable from the host, if the DNS server is targetted
explicitly.  This does NOT add the cluster DNS to the host's resolv.conf.  That
is a larger problem, with distro-specific tie-ins and circular deps.
2014-12-29 09:18:12 -08:00
Tim Hockin 1c9ac79e78 Merge pull request #3141 from lavalamp/optimize
Fix e2e; add template function to make this possible
2014-12-23 15:03:33 -08:00
Daniel Smith eff054515a fix update.sh 2014-12-23 22:48:43 +00:00
Brendan Burns 3f43dd32be Add some extra checks to (hopefully) prevent flakes. 2014-12-23 09:34:27 -08:00
Patryk Dunski 02862f926d Issue #3101 - fixes high CPU load in hack/local-up-cluster.sh when there is no standard input defined 2014-12-22 22:47:00 +01:00
Joe Beda 44ce5bef6a Merge pull request #3088 from sergeyevstifeev/patch-1
Remove unnecessary 'sudo'
2014-12-22 13:19:49 -08:00
Sergey Evstifeev 5236b22cda Run only kubernetes components with sudo 2014-12-22 20:12:02 +01:00
Vishnu Kannan ad37518fbe Improve monitoring e2e test. 2014-12-20 02:02:03 +00:00
Max Forbes c3efef86d0 Add GKE as a provider. 2014-12-19 11:47:06 -08:00
Brendan Burns 4833b88af4 Fix the e2e test to remove a race. 2014-12-18 13:45:41 -08:00
Brendan Burns 1720a4f170 Merge pull request #3001 from zmerlynn/taptimes
Fix duration_ms output to seconds (_ms obviously means measure-in-second...
2014-12-17 21:42:01 -08:00
Zach Loafman d3aed6c9cd Add kubernetes-test.tar.gz
Add test artifacts to the build. This lets you do:

tar -xzf kubernetes.tar.gz
tar -xzf kubernetes-test.tar.gz
cd kubernetes
go run ./hack/e2e.go -up -test -down

without having a git checkout.
2014-12-17 14:30:30 -08:00
Zach Loafman 7ee633d186 Fix duration_ms output to seconds (_ms obviously means measure-in-seconds!?) 2014-12-17 10:04:09 -08:00
Zach Loafman c25229937c Add test timing to TAP output in hack/e2e.go
Found this buried at https://issues.jenkins-ci.org/browse/JENKINS-16647
2014-12-16 16:54:45 -08:00
bgrant0607 003ba68e4c Merge pull request #2978 from brendandburns/exec
Add an e2e test for exec liveness probes.  Fix the docker exec integration
2014-12-16 14:53:21 -08:00
Joe Beda e933ac5784 Make it clearer how to run kubectl after bringing up a local cluster.
Fixes #2935.
2014-12-16 14:21:22 -08:00
Brendan Burns 3a0d16ff35 Add an e2e test for exec liveness probes. Fix the docker exec integration. 2014-12-16 13:53:32 -08:00
bgrant0607 56ee66831b Merge pull request #2979 from brendandburns/e2e
Wait for not pending, not for running.
2014-12-16 13:49:49 -08:00
Brendan Burns 12803c1a0e Merge pull request #2944 from deads2k/deads-make-monitoring.sh-run
make e2e/monitor.sh work outside gce
2014-12-16 13:28:49 -08:00
Brendan Burns d2ff21d3d5 Wait for not pending, not for running.
When failures occur, we go to 'Terminated' which can cause
indefinite blocking.
2014-12-16 13:27:34 -08:00
deads2k 8313e5d9bf make e2e/monitor.sh work outside gce 2014-12-16 15:01:16 -05:00
Daniel Smith e62280d84a Merge pull request #2957 from brendandburns/e2e
Add an e2e test for http liveness.
2014-12-16 11:42:33 -08:00
Brendan Burns f1b55c04e2 Add an e2e test for http liveness. 2014-12-16 11:38:52 -08:00
Alex Robinson fe76243b05 Make it easy to use the e2e tests to test upgrading a running master
by adding support for testing official release versions and writing a
simple script to first bring up and test the old version before
upgrading it and testing it again. Related to supporting in-place
upgrades of masters (#2524).
2014-12-15 16:03:11 -08:00
Max Forbes f9108c62c2 Use GCLOUD var consistently. 2014-12-15 13:08:10 -08:00
Max Forbes bea37d5b17 Fix up e2e tests. 2014-12-15 11:53:51 -08:00
Brendan Burns 2d1b279311 Merge pull request #2905 from smarterclayton/misc_cleanup
Small fixes to prepare for v1beta3
2014-12-15 11:49:29 -08:00
Clayton Coleman 7d2a64b2a8 test-cmd should test all api versions 2014-12-12 18:23:17 -05:00
Zach Loafman 43addc7202 Add Test Anything Protocol (TAP) output to e2e.go
Adds a --tap option to change outputs to match the TAP format. Changes
pass/fail in general to "ok" / "not ok".
2014-12-11 12:20:38 -08:00
Zach Loafman 369064c69f Add --times to e2e.go
Make each test available for execution --times times. Acts like a
multi-deck shoe. (Otherwise this is easily scriptable outside the
e2e.go command).

Useful for "I want to walk away for a few hours leaving some end-to-ends
running", until we have more stress tests. Also useful for detecting
flakes.

Reporting is changed to break out Passed, Flaky and Failed. I chose to
keep all three lines even if --times isn't on, just for consistency in
scraping. Similarly, it always outputs the counts now. A report looks
like:

2014/12/09 07:31:21 Passed tests: goe2e.sh[100/100] guestbook.sh[100/100] private.sh[100/100] services.sh[100/100]
2014/12/09 07:31:21 Flaky tests: basic.sh[99/100] certs.sh[99/100] monitoring.sh[98/100] pd.sh[98/100] update.sh[98/100]
2014/12/09 07:31:21 Failed tests:
2014/12/09 07:31:21 8 test(s) failed.
2014-12-11 12:18:56 -08:00
Brendan Burns a670f833bd Improve the pd e2e test by deleting the pod, and verifying that the PD was unmounted by
recreating the pod.
2014-12-10 20:31:46 -08:00
Clayton Coleman d1d7505272 Rename client Minions->Nodes, select the correct path for v1beta3
Replaces the client public interface but leaves old references to "minions"
for a later refactor.  Selects the path "nodes" for v1beta3 and "minions"
for older versions.
2014-12-10 12:08:19 -05:00
Deyuan Deng bf42ea26d5 Use EXIT pseudo-signal 2014-12-08 21:28:18 -05:00
Zach Loafman b7a7e92ad1 Add --pushup to e2e.go
Silly but hopefully memorable name for an option to --push OR --up
depending on cluster state.
2014-12-08 15:23:30 -08:00
Daniel Smith c5667e1cfe Merge pull request #2782 from zmerlynn/e2e.shuffle
Run e2e tests in deterministic random order
2014-12-08 13:01:32 -08:00
Zach Loafman f3a992aa08 Run e2e tests in deterministic random order
Currently, we run the e2e tests in whatever order readdir happens to
return, which is random on some filesystems, name sorted on others,
create order on others, etc. Eventually, we may want to be
automatically hermetic between e2e tests (especially as we introduce
more resource destructive tests), but until then, it would be useful
if we permute the test order randomly between runs to ensure that
developers don't accidentally rely on a particular order. This
introduces a form of forced hermeticism, since improper state cleanup
from one test may not perturb a given test, but there's probably *a*
test in the suite that the order will perturb, so the RNG will find
that order eventually.

Adds logging of the generated seed, and an --orderseed argument that
can be used to re-run in the same order. Also sorts the pass/fail list
now for easier human reading.
2014-12-08 11:10:39 -08:00
Daniel Smith 0166649364 Merge pull request #2783 from zmerlynn/IsUp
Check if cluster is up before e2e test without -up
2014-12-08 10:54:22 -08:00
Zach Loafman 3afcebecca Fix e2e-suite/certs.sh unbound variables
Fixes e2e failure on GCE
2014-12-07 16:39:56 -08:00
Zach Loafman 3009c88865 Check if cluster is up before e2e test without -up
Minor usability nuisance: If you run:
  go run hack/e2e.go -v -test
.. and you don't happen to have an up e2e cluster, it should fail
fast, rather than chugging through every test and having them fall
over.
2014-12-07 15:35:22 -08:00
Brendan Burns 2a53b002ef Fix the update test. 2014-12-05 15:21:53 -08:00
Brendan Burns f5dd5138ef Merge pull request #2774 from brendandburns/fix
Make certs.sh executable.
2014-12-05 15:19:18 -08:00
Brendan Burns c60742a436 Make certs.sh executable. 2014-12-05 14:11:19 -08:00
Jordan Liggitt 4ab41f5be8 Add script to build ui assets, rebuild with latest go-bindata 2014-12-04 22:38:00 -08:00
Daniel Smith 9dfd5a1247 Merge pull request #2731 from brendandburns/bash
Adjust the regexp so that we can handle extra sub versions.
2014-12-04 11:12:47 -08:00
Tim Hockin 2486331d34 Add an e2e case for public IPs 2014-12-03 08:30:00 -08:00
Tim Hockin bf1395f06a use a here-doc instead of kubecfg run 2014-12-02 23:55:45 -08:00
Brendan Burns 373cf77ae1 Adjust the regexp so that we can handle extra sub versions. 2014-12-02 23:00:01 -08:00
Brendan Burns 77d4950f83 Add an e2e test for cert generation. 2014-12-02 17:08:48 -08:00
Brendan Burns 6ec5da9f6a Merge pull request #2706 from vishh/monitoring_e2e
Adding an e2e test for monitoring.
2014-12-02 14:00:18 -08:00
Vishnu Kannan 090eb966f2 Adding an e2e test for monitoring. 2014-12-02 06:54:59 +00:00
James Kyle 361c8dbae5 Support remote docker hosts on OS X.
This commit brings two main changes, notably:

Two new options that can be set as environment variables

- DOCKER_OPTS: any arbitrary set of docker options. Example: --tlsverify
- DOCKER_NATIVE: This forces the use of the native docker available.
                 This is most useful if you're on OS X and do not want
                 to use boot2docker.

Now uses 'docker cp' instead of tar piping to transfer files. This
currently must be done by copying the binaries off of the docker volume
and into a local filesystem (/tmp) before a docker cp is done. This
workaround will no longer be necessary after bug fix
https://github.com/docker/docker/pull/8509 makes it into stable.

This was necessary because the tar | tar method was creating corrupted
archives on OS X even with the < /dev/null workaround.
2014-12-01 11:47:16 -08:00
Joe Beda 6ba07b38fc Convert gcutil to gcloud compute 2014-11-25 15:17:00 -08:00
Joe Beda 175ca37bc7 trace-bash flag for e2e.go 2014-11-25 15:16:35 -08:00
Brendan Burns 45d1f26889 Merge pull request #2583 from jbeda/window-build
Support building/packaging Windows client binaries.
2014-11-25 11:17:20 -08:00
Brendan Burns e1764e2e01 Add an e2e test for gce pd.
Add an example for gce pd.
Add an extra log message.
2014-11-25 09:02:00 -08:00
Joe Beda 5bf43236e3 Support building/packaging Windows client binaries.
Ug -- .exe suffix is a pain.  These are largely untested.
2014-11-24 14:10:28 -08:00
Eric Tune 248dddf34a Merge pull request #2538 from brendandburns/fix
Increase the verbosity of integration test runs.
2014-11-24 09:41:08 -08:00
Brendan Burns 5bda4f9292 Increase the verbosit of integration test runs. 2014-11-21 21:45:21 -08:00
Brian Grant 2ac8400cb2 Add API documentation pre-commit hook. 2014-11-20 20:25:44 +00:00
Brendan Burns cea52d7e4f Merge pull request #2409 from mattmoor/master
Implements a credentialprovider library for use by DockerPuller.
2014-11-17 21:53:25 -08:00
Matt Moore 0c5d9ed0d2 Implements a credentialprovider library for use by DockerPuller.
This change refactors the way Kubelet's DockerPuller handles the docker config credentials to utilize a new credentialprovider library.

The credentialprovider library is based on several of the files from the Kubelet's dockertools directory, but supports a new pluggable model for retrieving a .dockercfg-compatible JSON blob with credentials.

With this change, the Kubelet will lazily ask for the docker config from a set of DockerConfigProvider extensions each time it needs a credential.

This change provides common implementations of DockerConfigProvider for:
 - "Default": load .dockercfg from disk
 - "Caching": wraps another provider in a cache that expires after a pre-specified lifetime.

GCP-only:
 - "google-dockercfg": reads a .dockercfg from a GCE instance's metadata
 - "google-dockercfg-url": reads a .dockercfg from a URL specified in a GCE instance's metadata.
 - "google-container-registry": reads an access token from GCE metadata into a password field.
2014-11-17 21:46:54 -08:00
Joe Beda 66d287f7e4 Merge branch 'rename-to-kube' of https://github.com/eparis/kubernetes into eparis-rename-to-kube
* 'rename-to-kube' of https://github.com/eparis/kubernetes:
  rename kube server binaries to kube-

Conflicts:
	docs/salt.md
2014-11-17 09:52:10 -08:00
Brendan Burns 403e57be09 Merge pull request #2404 from jbeda/fix-nogo-build
Make dockerized build work when golang isn't installed.
2014-11-17 09:43:08 -08:00
Joe Beda f18cd53687 Make dockerized build work when golang isn't installed. 2014-11-16 16:29:58 -08:00
Brendan Burns c38880047d Update guestbook to fix given recent changes. 2014-11-15 19:36:02 -08:00
Tim Hockin eafdc684e9 Merge pull request #1922 from brendandburns/guestbook
Update the services now that Services v2 has IP per service.
2014-11-14 21:13:19 -08:00
Daniel Smith e4eb6149f8 Merge pull request #2383 from brendandburns/fix
Fix service e2e test, by eliminating the assumption that ips are re-used
2014-11-14 17:22:50 -08:00
Brendan Burns 97001e317b Fix service e2e test, by eliminating the assumption that ips are re-used. 2014-11-14 17:22:01 -08:00
Joe Beda 06d838ffb1 Merge pull request #2369 from jbeda/vagrant-fix
Vagrant fixes
2014-11-14 16:43:06 -08:00
Dawn Chen aa711af39e Merge pull request #2355 from brendandburns/kubelet
Add support for the a clusters cloud interface to cloud provider.
2014-11-14 11:14:17 -08:00
Brendan Burns d3e48c9525 Add the container API to our dependencies.
Update google-api-go-client
2014-11-14 10:38:22 -08:00
Joe Beda 5a0159ea00 Get Vagrant to start using TLS client certs.
Also fix up cert generation. It was failing during the first salt highstate when trying to chown the certs as the apiserver user didn't exist yet.  Fix this by creating a 'kube-cert' group and chgrping the files to that.  Then make the apiserver a member of that group.

Fixes #2365
Fixes #2368
2014-11-13 22:16:45 -08:00
Eric Paris a99c3c7963 rename kube server binaries to kube-
apiserver becomes kube-apiserver
controller-manager -> kube-controller-manager
scheduler and proxy similarly.

Only thing I promise is that right now hack/build-go.sh and
build/release.sh exit with 0.  That's it.  Who knows if any of this
actually works....
2014-11-13 20:08:26 -05:00
Daniel Smith c219d138ef make e2e test get events in background, for easier debugging after the fact. 2014-11-13 17:03:06 -08:00
Dawn Chen 143d986b28 Merge pull request #2336 from davidopp/master
Change update example to use a trivial webserver instead of nginx (issue...
2014-11-13 09:57:00 -08:00
Daniel Smith 4e1ab8045b fix e2e.go args for kubectl 2014-11-12 15:22:09 -08:00
David Oppenheimer 3d69351924 Change update example to use a trivial webserver instead of nginx (issue #1803). 2014-11-12 15:13:11 -08:00
Brendan Burns 110b5a3345 Update the services now that Services v2 has IP per service. 2014-11-12 11:31:28 -08:00
davidopp 6a736901ca Revert "Change update example to use a trivial webserver instead of nginx (issue..." 2014-11-11 23:03:23 -08:00
davidopp 004bc49349 Merge pull request #2320 from davidopp/master
Change update example to use a trivial webserver instead of nginx (issue...
2014-11-11 22:56:27 -08:00
David Oppenheimer 03ae4b54a3 Change update example to use a trivial webserver instead of nginx (issue #1803). 2014-11-11 22:16:18 -08:00
Eric Tune cf21f97cd2 Merge pull request #2309 from lavalamp/fix3
Refactors of kubectl object printers.
2014-11-11 16:39:04 -08:00
Daniel Smith d6d6229fea Actually let hack/e2e.go run kubectl 2014-11-11 15:32:12 -08:00
Daniel Smith 10c2a98eb0 Merge pull request #2043 from hmrm/e2e-vagrant
Clean up e2e bash-in-go script
2014-11-11 13:39:39 -08:00
Joe Beda ba611c2e31 Merge pull request #2299 from jbeda/version-fix
Use all tags for version detection
2014-11-11 12:19:10 -08:00
Joe Beda e02322ba4e Use all tags for version detection 2014-11-11 11:20:19 -08:00
Haney Maxwell fae27e2f17 Clean up e2e test 2014-11-11 11:03:07 -08:00
Brendan Burns 2c1221864d Make a standalone binary. 2014-11-10 13:34:11 -08:00
Daniel Smith d5c6499d93 Update scripts to expect versioned output in templates. 2014-11-07 16:47:22 -08:00
Daniel Smith b8aa87ed50 Add handy -cfg and -ctl options to make it easy to run a kubecfg or kubectl command against your e2e cluster. 2014-11-07 16:47:22 -08:00
Daniel Smith 5d0036070c Remove test verbosity; makes it hard to find failures when travis reports one. 2014-11-05 17:36:47 -08:00
Eric Paris 8a0e3e51e0 fix unbounded host_platform when building with --use_go_build
It's actually used unset a couple of lines after this patch, but this
just resolves it in one place instead of calling
$(kube::golang::host_platform) twice.
2014-11-04 13:58:06 -05:00
Eric Paris 7403de8bd4 add --use_go_build option when building binaries
Because of Fedora's crazy packaging guidelines, go install basically
isn't allowed.  So allow us to use go build instead of go install.
test-integration also needs to accept the flag to be able to pass it
along to the build function.
2014-11-04 13:04:22 -05:00
Clayton Coleman 6026c8b56a Add more extensive test-cmd scenarios for output 2014-11-04 10:44:56 -05:00
Clayton Coleman 179213f61c local-up-cluster: terminate all processes on SIGINT 2014-11-04 10:44:56 -05:00
Brendan Burns a4abafea02 Merge pull request #2129 from ddysher/fix-local-up
Fix local cluster scripts
2014-11-03 13:24:42 -08:00
Dawn Chen 2d92305338 Merge pull request #2132 from erikstmartin/kubelet-rootdir-fix
Fixes #1612 kubelet should fail to start if it cannot create rootDir
2014-11-03 12:51:47 -08:00
Erik St. Martin f75f2bbc0f Fixes #1612 kubelet should fail to start if it cannot create rootDir 2014-11-03 14:44:46 -05:00
Clayton Coleman 3836d24838 Merge pull request #2109 from smarterclayton/test_cmd_can_fail_on_public_addr
test-cmd.sh can fail if public IP not available
2014-11-03 11:21:27 -05:00
Deyuan Deng a7bdb362da Fix local cluster scripts 2014-11-02 23:30:14 -05:00
Joe Beda bbb66af3db Merge pull request #2092 from jbeda/1729-hack-build
Rationalize `build` and `hack` directories
2014-11-01 18:02:12 -07:00
Joe Beda 5d33ce46cc Rework hack/ and build/ directories.
* 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.
2014-11-01 17:56:41 -07:00
Clayton Coleman c1c11557a4 hack/local-up-cluster fails to even launch apiserver
--machines was removed but still referenced in hack/local-up-cluster.
This is not a total fix, but at least allows the apiserver to start.
2014-11-01 12:20:16 -04:00
Clayton Coleman 6e1527ed06 test-cmd.sh can fail if public IP not available
test-cmd runs a 127.0.0.1 version of the apiservers, but does not
set --public_address_override, which means it can fail on some systems
(like Macs) which don't expose a bindable external port by default.

Since reachability is not necessary for test-cmd.sh today, set
public_address_override to 127.0.0.1
2014-11-01 12:19:13 -04:00
Eric Tune 55c2d6bbbb Add basic Authorization.
Added basic interface for authorizer implementations.
Added default "authorize everything" and "authorize nothing
implementations.
Added authorization check immediately after authentication check.
Added an integration test of authorization at the HTTP level of
abstraction.
2014-10-31 12:04:33 -07:00
Deyuan Deng 019b7fc74c Separate minion controller from master. 2014-10-30 20:24:15 -04:00
Daniel Smith 6befc75da5 Build local go components as well as a release 2014-10-28 12:37:03 -07:00
bgrant0607 653d9d70d1 Merge pull request #1993 from hmrm/e2e-vagrant
Allow e2e tests to run with vagrant
2014-10-27 19:19:29 -07:00
bgrant0607 e45910fb08 Merge pull request #2017 from jbeda/fix-e2e
Fix e2e tests
2014-10-27 16:51:19 -07:00
Joe Beda 053d65c086 Fix e2e tests 2014-10-27 16:31:31 -07:00
bgrant0607 ddea4ff709 Merge pull request #1977 from lavalamp/fix4
Start running e2e go tests. Disable broken test.
2014-10-27 16:27:11 -07:00
Brendan Burns df3dd288f2 Fix the e2e tests and kubecfg given recent additional validation. 2014-10-27 13:39:21 -07:00
Joe Beda 019170e6fb Merge pull request #1716 from proppy/boot2docker-bootstrap
docker: add cluster bootstrap and doc
2014-10-27 11:46:55 -07:00
Haney Maxwell d709d8561a Allow e2e tests to run with vagrant 2014-10-24 17:16:10 -07:00
Johan Euphrosine 966c3dae70 boot2docker: add cluster bootstrap and doc 2014-10-23 18:06:17 -07:00
Daniel Smith 1e249be99d Start running e2e go tests. Disable broken test. 2014-10-23 16:13:46 -07:00
Daniel Smith 47f1cb966b Fixes to e2e script 2014-10-23 14:54:50 -07:00
Brendan Burns e1ae7bd16c Merge pull request #1973 from lavalamp/fix4
fix backwards compatible script
2014-10-23 12:52:37 -07:00
Daniel Smith d055e279fe fix backwards compatible script 2014-10-23 12:51:21 -07:00
Brendan Burns dbb23abac2 Fix the guestbook e2e test. 2014-10-23 11:32:01 -07:00
Daniel Smith bfabb41604 New e2e script (in go this time) that doesn't completely suck 2014-10-23 11:03:30 -07:00
Brendan Burns 77d2815b86 Merge pull request #1967 from jbeda/e2e-fix
Fix e2e test for .ID->.Name change
2014-10-22 17:20:44 -07:00
Joe Beda 33763d07b2 Fix e2e test for .ID->.Name change 2014-10-22 17:19:53 -07:00
Haney Maxwell 3160500940 Refactor kubelet access and add SSL 2014-10-22 14:53:59 -07:00
Joe Beda cb027ce2a9 Look at all tags when looking for version.
'git describe' uses only annotated tags by default.  We want to use all tags as we can only create 'lightweight' tags in the GitHub UI.
2014-10-17 14:34:30 -07:00
Tim Hockin 95f57dc886 Clean up e2e more
Don't early-terminate on test fail.
Log which tests failed at the end.
2014-10-16 11:08:39 -07:00
Tim Hockin 99bca68c7d Add local-up support 2014-10-16 08:36:47 -07:00
Tim Hockin 1c2f04b8b7 Add e2e test 2014-10-16 08:36:47 -07:00
Tim Hockin e907011111 Core support for ip-per-service 2014-10-16 08:36:47 -07:00
Eric Tune 6f577aa321 Merge pull request #1789 from lavalamp/eventing4
Add event creation library and implement in scheduler.
2014-10-15 15:55:26 -07:00
Joe Beda 1874926a70 Merge pull request #1815 from thockin/e2e
Better final print in e2e
2014-10-15 15:51:18 -07:00
Sam Ghods 4b220f8b0a kubectl: kubecfg rewrite for better modularity and improved UX 2014-10-15 15:29:54 -07:00
Tim Hockin ee1f2ddf7c Better final print in e2e 2014-10-15 14:31:15 -07:00
bgrant0607 e7573f63b3 Merge pull request #1812 from thockin/e2e
Allow e2e to only run some tests
2014-10-15 13:45:17 -07:00
Tim Hockin d6d92d13f0 Allow e2e to only run some tests 2014-10-15 13:08:25 -07:00
Daniel Smith 180e90f7eb Merge pull request #1790 from jbeda/1678-fix-e2e
Deal with the case where a pod goes away after we list it.
2014-10-15 12:01:28 -07:00
Daniel Smith 2987747a0f Merge pull request #1794 from brendandburns/e2e
Add a pod update e2e test in go. Also adjust validation logic a little.
2014-10-15 11:59:30 -07:00
Daniel Smith d4c750a878 Fix vet-go.sh and some things it complained about 2014-10-15 11:56:19 -07:00
Joe Beda 391335cbff Deal with the case where a pod goes away after we list it.
Fixes #1678
2014-10-15 11:20:17 -07:00
Tim Hockin 360f2e53b0 Revamp e2e basic test to use a smaller container. 2014-10-15 10:54:56 -07:00
Brendan Burns 8d38f8890e Add an e2e test in go. Also adjust validation logic a little to make it more reasonable.
Not integrated into existing e2e yet.
2014-10-14 16:43:00 -07:00
Joe Beda e1b9f1aae2 Handle empty array in update.sh
Fixes #1776
2014-10-14 13:07:22 -07:00
Joe Beda 96c1bc17ca Set shell options for reliability.
Tweak a few other small things in our shell scripts.
2014-10-10 12:33:36 -07:00
Joe Beda d43a6ec5a3 Standardize how we refer to the kubernetes root.
Now use $KUBE_ROOT as the variable pretty much everywhere.
2014-10-10 12:33:36 -07:00
Joe Beda 38d5906044 Clean up READMEs and broken stuff.
Move all support for clouds that are broken with this change into an `icebox` directory.  We'll move that stuff back out as we fix it up.
2014-10-10 12:33:36 -07:00
Filipe Brandenburger 60af857077 Merge pull request #1633 from thockin/vet
Add a script to run 'go vet'
2014-10-09 17:23:51 -07:00
Johan Euphrosine 784553c483 hack: add cluster in a pod manifest 2014-10-08 17:52:08 -07:00
Tim Hockin 61dcb91885 Add a script to run 'go vet' 2014-10-07 17:54:38 -07:00
Sam Ghods 868c6fe4b8 Increase logging levels in hack/local-up-cluster.sh 2014-10-07 00:07:05 -07:00
Sam Ghods 97dd16b913 Fix hack/local-up-cluster.sh to ensure apiserver comes up 2014-10-06 19:38:27 -07:00
Dawn Chen a86d496f9a Fix e2e tests. 2014-10-06 13:37:24 -07:00
David Reynolds 9fece09f26 Use -addr in start_etcd instead of -bind-addr 2014-09-30 19:33:28 -07:00
Joe Beda 81e91db697 Grab images as part of update e2e test 2014-09-26 14:31:12 -07:00
Joe Beda 7d6f5b45ea Merge pull request #1414 from brendandburns/fix
Clean up scripts to require a minimal gsutil version.
2014-09-25 09:54:36 -07:00
Tim Hockin d5f3d152d2 Merge pull request #1435 from brendandburns/e2e2
Add a new network for e2e tests, to isolate it from any other cluster.
2014-09-25 08:47:19 -07:00
Brendan Burns 511ec280b9 Add a new network for e2e tests, to isolate it from any other cluster. 2014-09-24 22:37:19 -07:00
Brendan Burns 431caa93df Merge pull request #1335 from dchen1107/exit1
Convert existing kubernetes system to use ContainerStatus, instead of
2014-09-24 21:37:24 -07:00
Dawn Chen 96686b3692 Update e2e test to reflect the change. 2014-09-24 16:42:10 -07:00
Brendan Burns 4a034b4e77 Clean up scripts to require a minimal gsutil version. 2014-09-24 14:27:16 -07:00
Daniel Smith 50eb2cf59c fix verify-gofmt's version detection 2014-09-24 14:25:21 -07:00
Dawn Chen 0e6ec3cbfc Convert existing kubernetes system to use ContainerStatus, instead of
docker.Container directly.

Conflicts:
	pkg/kubelet/dockertools/docker.go
	pkg/registry/pod/rest.go
2014-09-24 11:16:46 -07:00
Filipe Brandenburger 30db3e281d Cleanup hack/test-integration.sh
Proper quoting, error checks, use $KUBE_* variables when applicable, trap to do
cleanup on all errors, call cleanup explicitly on successful exit.

Tested:
- Ran it manually to completion, test run successful.
- Interrupted it during the run, checked that $? was non-zero, etcd was killed.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-09-23 09:37:29 -07:00
Eric Paris a96d16f8c0 Allow option to not build cmd/integration
In case it was built seperately (as in, on Fedora, we cannot use go
install as we do not have write permission to portions of the GOPATH)
2014-09-23 11:56:26 -04:00
Eric Paris 3a40db8f56 hack: Switch some $(dirname $0)../blah to use ${KUBE_*} vars
This doesn't fix anything broken. But we have config-go which exports
KUBE_REPO_ROOT and KUBE_TARGET.  Using those means the test scripts can
be more easily moved around the repo and still work.  Especially in
hack/test-integration.sh where we use hack/build-go.sh which is going
to use KUBE_TARGET to place the binary, then we use a different method
to find/execute the binary...
2014-09-23 10:10:55 -04:00
Tim Hockin cf86d66076 rename labels in kubcfg logic 2014-09-22 15:34:13 -07:00
Clayton Coleman 463a16af36 Add benchmarks for API tests 2014-09-19 17:17:54 -04:00
Clayton Coleman 54e0af8b96 Allow -race to be disabled in test-go.sh 2014-09-19 14:09:42 -04:00
Clayton Coleman 27bbd7df56 Increase the hack/test-go.sh timeout to account for more fuzzing
We fuzz v1beta1 and v1beta2 now, so fuzzer takes twice as long.
2014-09-18 14:17:32 -04:00
Jessica Forrester 2dc30aa932 Remove unused enable_cors flag and allow localhost without a port as an origin in local-up-cluster 2014-09-12 13:01:32 -04:00
Filipe Brandenburger fabf7c7f55 Fix the e2e scripts after PR 1284 which added a new file. 2014-09-11 15:32:11 -07:00
Daniel Smith 6757b402d5 Merge pull request #1133 from jwforres/enable_cors
Add option to enable a simple CORS implementation for the api server
2014-09-11 13:59:14 -07:00
Eric Paris d687156154 Try to document all environment variable used by config-go.sh 2014-09-10 17:16:27 -04:00
Eric Paris df5fe66636 KUBE_NO_GODEPS to not use in tree godeps
If this is set, and it normally shouldn't be, the config file will not
add the in tree Godeps to the GOPATH.  So all of them must be solved by
the KUBE_EXTRA_GOPATH
2014-09-10 16:51:23 -04:00
Eric Paris 35f03d4241 KUBE_EXTRA_GOPATH to append to the GOPATH
So you can add your own package to the GOPATH outside of the kube tree
2014-09-10 16:47:57 -04:00
Eric Paris e426dd78a1 function to turn list of targets to list of go packages 2014-09-10 13:16:45 -04:00
Eric Paris 4ba97e3968 Move default target list from build_go to config_go 2014-09-10 12:20:50 -04:00
Jessica Forrester 8b4ca9c2a7 Move CORS handler wrapping into cmd/apiserver and switch config flag to a list of allowed origins 2014-09-09 17:50:18 -04:00
Jessica Forrester 8723eece49 Add option to enable a simple CORS implementation for the api server 2014-09-09 17:50:18 -04:00
Daniel Smith d397d64b9e go test -cover -race is fixed now 2014-09-09 14:06:23 -07:00
Dan Mace 2e1d62ac65 Typo correction 2014-09-08 20:23:30 -04:00
Joe Beda 073327277b Fix label query in e2e basic.sh 2014-09-05 14:10:02 -07:00
Joe Beda 1410724031 Fix up some flaky behavior of the new improved update e2e test. 2014-09-05 13:04:31 -07:00
Daniel Smith ee1c0838d8 Merge pull request #1142 from jbeda/tweak-demo
Improve update demo, support rolling template update
2014-09-05 10:07:58 -07:00
Filipe Brandenburger be322fc5da Merge pull request #1174 from eparis/version-shell-overrides
Allow setting of git_commit, version, and dirty via shell varables
2014-09-05 09:26:01 -07:00
Eric Paris 428e0aaff0 Allow setting of git_commit, version, and dirty via shell varables
This is particularly useful if building from a tarball instead of from a
checked out git repo (as all Linux distributions do)
2014-09-05 11:48:04 -04:00
Eric Paris c7e8e05706 Capitalize bash variable and prefix with KUBE_
We intend to make these setable by the environment.  This just does the
renaming.
2014-09-05 11:42:51 -04:00
Eric Paris 78b82382cf default to build all binaries even if build options given 2014-09-05 10:07:10 -04:00
Joe Beda ce34eacd2c Fix up e2e test for update demo.
Use the scripts that are in the example directory.  Also actually run the update as part of the test.
2014-09-04 13:25:39 -07:00
Joe Beda c47b405841 Use KUBECFG instead of CLOUDCFG in scripts 2014-09-04 13:25:39 -07:00
Andriy Yurchuk 22ce0022d1 Merge branch 'master' into build-go-verbose 2014-09-04 22:16:24 +03:00
Brendan Burns 4a934427db Exclude vendored etcd. 2014-09-04 12:05:34 -07:00
Andriy Yurchuk 24d0eb43ec Merge branch 'master' into build-go-verbose 2014-09-04 21:27:15 +03:00
Dawn Chen 87278a6f56 Merge pull request #1179 from brendandburns/fix
Fix travis and cluster installs.
2014-09-04 10:32:45 -07:00
Brendan Burns 3864cf453a Fix travis and cluster installs. 2014-09-04 10:31:09 -07:00
Brendan Burns 78df593c57 Fix a shell typo. 2014-09-04 10:03:49 -07:00
Tim Hockin 512b0ab90a Merge pull request #1176 from brendandburns/travis
Re-enable travis for Go tip
2014-09-04 09:57:14 -07:00
Brendan Burns 53e3bff464 Re-enable travis for Go tip 2014-09-04 09:56:28 -07:00
Andriy Yurchuk 5878794fd7 Be a little more verbose while building local go 2014-09-04 13:25:16 +03:00
Filipe Brandenburger 3d03b4b80f Also assume arguments starting with dashes are go flags in `hack/build-go.sh`
Tested:
  $ hack/build-go.sh cmd/kubelet -v
  github.com/GoogleCloudPlatform/kubernetes/pkg/...

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-09-03 14:59:29 -07:00
Filipe Brandenburger 8effbdc63f In `hack/test-go.sh` treat arguments that start with a dash as go flags.
This fixes `hack/test-go.sh pkg/apiserver -test.run=<a_specific_test_name>`
which was broken by PR #1116.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-09-03 14:57:19 -07:00
Tim Hockin 640a1d323d Improve test script
add usage
verify flag value for -i is numeric
allow multiple targets on the command line
actually capture coverage output
fix lingering GOFLAGS undef issue
fix issue with -i not working at all: ((x++)) returns 1 when x is 0, which is
  incompatible with "set -e"
2014-09-03 09:40:20 -07:00
Filipe Brandenburger b94749ec70 Set gitMajor and gitMinor from hack/build-go.sh
Set the values of major and minor version based on the output of the
`git describe` command, which uses annotated tags as source of
versioning information.

Minor will get a "+" appended whenever the annotated tag does not match
the tree exactly (including when the tree is dirty.) So that only
official releases will have a "bare" minor version, all others will have
a "+" to indicate the binaries contain changes from the released version
in minor.

(This is similar to how versions of development builds of the Linux
kernel work.)

Tested:
- With no annotated tags:
  $ hack/build-go.sh
  $ _output/go/bin/kubecfg -version=raw
  version.Info{Major:"0", Minor:"1+", GitVersion:"v0.1+", GitCommit:"7d29873bdee87efacaace30ab3602297cacf1b4f", GitTreeState:"clean"}

- Tagging current version on a clean git tree:
  $ git tag -a -m 'Test tag v2.3' v2.3
  $ hack/build-go.sh
  $ _output/go/bin/kubecfg -version=raw
  version.Info{Major:"2", Minor:"3", GitVersion:"v2.3", GitCommit:"7d29873bdee87efacaace30ab3602297cacf1b4f", GitTreeState:"clean"}

- Tagging current version on a dirty git tree:
  $ git tag -a -m 'Test tag v2.3' v2.3
  $ touch test.txt  # this is enough to mark the tree as dirty
  $ hack/build-go.sh
  $ _output/go/bin/kubecfg -version=raw
  version.Info{Major:"2", Minor:"3+", GitVersion:"v2.3-dirty", GitCommit:"7d29873bdee87efacaace30ab3602297cacf1b4f", GitTreeState:"dirty"}

- Tagging a previous version on a clean tree:
  $ git tag -a -m 'Test tag v2.3' v2.3 HEAD~5
  $ hack/build-go.sh
  $ _output/go/bin/kubecfg -version=raw
  version.Info{Major:"2", Minor:"3+", GitVersion:"v2.3-6-g7d29873bdee87e", GitCommit:"7d29873bdee87efacaace30ab3602297cacf1b4f", GitTreeState:"clean"}

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-09-02 16:23:31 -07:00