Commit Graph

7280 Commits (dd88e3f32ec9e4f90a455b711cdc448a60639f0e)

Author SHA1 Message Date
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
Filipe Brandenburger 8cd7387cc0 Include `-dirty` suffix in version info when building on a dirty tree
Ensure the output of `git describe` will include the `-dirty` suffix
when building on a tree with modified files in it.

Tested:
- ...

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-09-02 16:23:31 -07:00
Joe Beda 843ae1fbe2 Rename `output/` directory to `_output/`
go build ./... will ignore any directory starting with an underscore.
2014-08-29 14:44:55 -07:00
Tim Hockin f0c3896281 Build tweaks
Wrap long lines.
Add GOFLAGS support to build and test.
Comments.
2014-08-28 22:56:00 -07:00
Deyuan Deng c63205b0a7 Add quotes for variable; change shell redirection. 2014-08-28 22:31:53 -04:00
Deyuan Deng 9fed990da6 Start scheduler locally. 2014-08-28 20:48:36 -04:00
Daniel Smith e2895c3bd8 Merge pull request #1055 from brendandburns/flake
Add the ability to multiple test iterations without rebuilding.
2014-08-28 10:31:44 -07:00
Daniel Smith 8072f69a4c Merge pull request #1054 from filbranden/build_without_godep
Build without godep
2014-08-28 10:07:05 -07:00
Ryan Richard 2565164a8d Add Rackspace support for dev-build-and-up 2014-08-28 10:36:58 -05:00
Brendan Burns 9fce47ac68 Add the ability to multiple test iterations without rebuilding.
Address comments.
2014-08-27 22:07:40 -07:00
Filipe Brandenburger 0ade8a5cf4 Do not leak undocumented variables from config-go.sh
Run the snippet that creates the output/go/ tree in a subshell.

Tested:
- Built it with hack/build-go.sh
- Ran release/build-release.sh successfully.
- Moved away the git tree to confirm no regression in PR #1073.
- Sourced hack/config-go.sh in the shell, confirmed no variable or
  function other than the expected ones leaked into the environment.
- Used `git grep` to confirm the no longer exported variables were
  not in use by any script other than config-go.sh.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 21:17:47 -07:00
Filipe Brandenburger 391cd856c1 Use `cd` and `pwd` in a subshell to define ${KUBE_REPO_ROOT}
The old method (using `readlink`) was convoluted and not portable. We
can achieve the same result using only bash builtins.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 21:17:24 -07:00
Filipe Brandenburger 09dd081543 Document public KUBE_* environment variables and export them
Add a section for environment variables in config-go.sh. Document the
three public environment variables defined by this script. Make sure the
variables get exported so that they can be used by commands spawned by a
shell that sourced the config script.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 21:14:30 -07:00
Filipe Brandenburger e33d4678e6 Fix `line 55: ldflags[*]: unbound variable`
This is caused by bash thinking that an empty array is the same as an
undefined variable and `set -o nounset` treating that as an error.

Fix that by using an empty string as the default for the expansion.

Fixes PR #1069 (6e25f60288).

Tested:
- Before this patch:
  $ mv .git .gitbackup
  $ hack/build-go.sh
  /home/filbranden/devel/kubernetes/hack/config-go.sh: line 55: ldflags[*]: unbound variable

- After this patch:
  $ mv .git .gitbackup
  $ rm -rf output/
  $ hack/build-go.sh
  $ output/go/bin/kubelet -version
  Kubernetes version 0.1+, build (unknown)

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 19:04:48 -07:00
Filipe Brandenburger bf9113ea2e Grab complete version information from git
This replaces the gitcommit() shell function with kube::version_ldflags()
which prepares a string suitable for Go's -ldflags parameter that fills
in the git version fields in pkg/version/base.go.

The gitCommit is now a full 40-character SHA1, the gitVersion will be
filled from `git describe` output (which will only be available once we
have annotated git tags) and gitTreeState will be filled with either
"clean" or "dirty" depending on the tree status at the time of the
build.

Use a kube:: "namespace" (there's really no such a thing in shell, but
the illusion still makes it nice) in order to make this nice to import
into existing shell scripts or on a shell session. (In the future, I'm
planning to introduce more functions and convert some of the top-level
commands into other kube::* shell functions.)

There's a difference now that -version will report a full SHA1, this
will be improved in a follow up change which will improve the Go code
for -version handling to give a more meaningful string that should be
enough to identify the origin of the binary in git.

Tested:
- Built it and checked output of -version:
  $ hack/build-go.sh
  $ output/go/bin/kubelet -version
  Kubernetes version 0.1+, build 3ff7ee4b8c843c7767cd856fbf7d3027cd5410e6

- Ran the release script and checked output of the common.sls file:
  $ release/build-release.sh TESTINSTANCE
  $ cat output/release/master-release/src/saltbase/pillar/common.sls
  instance_prefix: TESTINSTANCE-minion
  go_opt: -ldflags '-X github.com/GoogleCloudPlatform/kubernetes/pkg/version.gitCommit 3ff7ee4b8c843c7767cd856fbf7d3027cd5410e6 -X github.com/GoogleCloudPlatform/kubernetes/pkg/version.gitTreeState clean'

- Successful run of hack/e2e-test.sh end-to-end tests.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 17:36:04 -07:00
Filipe Brandenburger 4df5573967 Remove build dependency on `godep`
Instead of using `godep path`, we can simply set the GOPATH directly to
point to the Godeps/_workspace. We can still use `godep` to manage the
dependencies on the Godeps/ tree, but we don't need to have it available
for straight builds from git.

v2: Rebased and moved to inside kube::setup_go_environment() function.

Tested:
- Built it without godep in $PATH:
  $ hack/build-go.sh
- Ran unit tests without godep in $PATH:
  $ hack/test-go.sh
- Retested after rebase.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 17:15:09 -07:00
Filipe Brandenburger 6e25f60288 Move go detection and environment setup into its own function
This way hack/config-go.sh can be used in environments where Go is not
available, such as running release/build-release.sh for Vagrant.

(The intention is to make config-go.sh a general library of helper
functions and import it from most other shell scripts.)

Fixes Issue #1057.

Tested:
- Built it and made sure it works.
  $ hack/build-go.sh
  $ output/go/bin/kubelet -version
  Kubernetes version 0.1+, build 0766e7a411c7-dirty

- Ran unit tests.
  $ hack/test-go.sh
  ok      github.com/GoogleCloudPlatform/kubernetes/examples      1.105s  coverage: 0.0% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/api       6.188s  coverage: 86.1% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/api/errors        1.015s  coverage: 81.8% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/apiserver 1.806s  coverage: 85.1% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/client    1.211s  coverage: 67.2% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/client/cache      1.115s  coverage: 95.5% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/gce 1.052s  coverage: 7.3% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/vagrant     1.045s  coverage: 76.8% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/constraint        1.038s  coverage: 100.0% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/controller        1.559s  coverage: 78.8% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/conversion        3.440s  coverage: 72.4% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/election  1.034s  coverage: 71.4% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/health    1.043s  coverage: 94.5% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/healthz   1.034s  coverage: 100.0% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/httplog   1.027s  coverage: 82.4% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/kubecfg   6.081s  coverage: 58.5% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet   1.400s  coverage: 72.2% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/config    1.139s  coverage: 90.1% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/labels    1.041s  coverage: 98.7% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/master    1.033s  coverage: 33.3% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/proxy     1.095s  coverage: 86.5% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/proxy/config      1.038s  coverage: 39.2% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/registry/binding  1.046s  coverage: 100.0% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/registry/controller       1.039s  coverage: 43.6% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/registry/endpoint 1.029s  coverage: 25.0% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/registry/etcd     1.110s  coverage: 79.5% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/registry/minion   1.048s  coverage: 72.3% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/registry/pod      1.052s  coverage: 62.1% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/registry/service  1.054s  coverage: 80.0% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/scheduler 1.030s  coverage: 90.4% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/service   1.363s  coverage: 83.8% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/tools     1.136s  coverage: 81.9% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/util      1.049s  coverage: 83.9% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/util/config       1.036s  coverage: 92.9% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/util/wait 1.029s  coverage: 86.7% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/volume    1.032s  coverage: 83.3% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/pkg/watch     1.040s  coverage: 100.0% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/plugin/pkg/scheduler  1.026s  coverage: 90.9% of statements
  ok      github.com/GoogleCloudPlatform/kubernetes/plugin/pkg/scheduler/factory  1.075s  coverage: 85.4% of statements
  ?       github.com/GoogleCloudPlatform/kubernetes/test/integration      [no test files]

- Ran release/build-release.sh without go or godep in my $PATH.
  $ PATH=...
  $ which go
  $ which godep
  $ release/build-release.sh MYTEST
  Building release tree
  ~/devel/kubernetes ~/devel/kubernetes
  ~/devel/kubernetes
  Packaging release
  $ cat output/release/master-release/src/saltbase/pillar/common.sls
  instance_prefix: MYTEST-minion
  go_opt: -ldflags "-X
  github.com/GoogleCloudPlatform/kubernetes/pkg/version.gitCommit '0766e7a411c7-dirty'"
  $ find output/release/master-release/ | wc -l
  598

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 17:04:19 -07:00
Clayton Coleman 9006eadcfe kube-proxy can read config from the apiserver
All clients that talk to a "master" as a host:port or URL
(scheme://host:port) parameter.  Add tests.
2014-08-27 15:49:01 -04:00
Filipe Brandenburger b777eb19e2 Add additional ldflags constants for Kubernetes versioning
Now it is possible to push these variables through ldflags:
- gitMajor
- gitMinor
- gitVersion (from latest annotated tag, output of git describe)
- gitCommit (renamed commitFromGit, intended to have the full sha1)
- gitTreeState (either "clean" or "dirty")

These are spawned into its separate source file, since they are meant to
be updated separately when a new version is released.

Also use the notation vX.Y+ for when git information is not present.
(This is consistent with the kernel build, e.g. Linux 3.15+ means its
version is >= 3.15 and < 3.16.)

v2: Added comments to the individual fields in pkg/version/base.go

Tested:
- Built it and checked the -version output:
  $ hack/build-go.sh
  $ output/go/bin/kubelet -version
  Kubernetes version 0.1+, build c328679ef8aa

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 10:06:22 -07:00
Filipe Brandenburger 7785f14b32 Fix gitcommit() in hack/config-go.sh
Previously it would only print a version when the tree was dirty. Fix it
so that it will also print one on a clean tree.

Tested:
- Built it from a committed tree:
  $ hack/build-go.sh
  $ output/go/bin/kubelet -version
  Kubernetes version 0.1, build a091590dd10c

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-27 09:16:35 -07:00
Daniel Smith 4d232cfee2 Merge pull request #1046 from ghodss/start-etcd-local-up-cluster
Modify hack/local-up-cluster.sh to use start_etcd function
2014-08-26 17:33:35 -07:00
Sam Ghods 242e1f9690 Modify hack/local-up-cluster.sh to use start_etcd function 2014-08-26 16:57:36 -07:00
Joe Beda 5722eba780 Propagate version info into salt config and use to build.
Fixes #1043.
2014-08-26 16:17:06 -07:00
Joe Beda bce7a4bd90 Merge pull request #1014 from smarterclayton/set_commit_with_ldflags
Use -ldflags to set git commit version
2014-08-26 10:56:56 -07:00
Clayton Coleman 9336373857 Use -ldflags to set git commit version 2014-08-25 16:40:47 -04:00
Daniel Smith 12af8a2161 Merge pull request #1008 from MSOpenTech/azure-fix
Refactor Azure deploy scripts
2014-08-25 11:45:33 -07:00
Clayton Coleman b037989478 Add an integration test for etcd 2014-08-23 11:44:21 -04:00
Clayton Coleman 8a677b1226 Rename integration-test and update README 2014-08-23 11:44:21 -04:00
Jeff Mendoza d8d09ace41 Refactor Azure deploy scripts.
Refactored to work with cluster/* scripts which require
actions to be defined as methods in cluster/azure/util.sh
2014-08-22 15:48:06 -07:00
Clayton Coleman 1c68247954 Merge pull request #909 from lavalamp/scheduler3
Scheduler plugin v1
2014-08-21 19:04:51 -04:00
Brendan Burns 0c1b89c7f2 Add some extra debugging, and a sleep to attempt to deflake the update test. 2014-08-20 22:28:54 -07:00
Tim Hockin 5f21ff5b45 Whitespace 2014-08-20 20:17:16 -07:00
Daniel Smith dddad888b5 Begin scheduler plugin 2014-08-20 15:32:49 -07:00
Brendan Burns 0adde96bba Update e2e scripts to use the -template parameter.
Add a script for the update demo.
2014-08-20 12:24:39 -07:00
brendandburns 6c9fda472d Merge pull request #952 from smarterclayton/let_timeout_be_overriden
Let coverage and timeout be overriden in hack/test-go.sh
2014-08-19 09:36:04 -07:00
Clayton Coleman d573d81306 Let coverage and timeout be overriden in hack/test-go.sh
As usual, shell review / test gratefully accepted.  Tested on OSX and
F20
2014-08-19 01:13:03 -04:00
Joe Beda 617e5c72af Improve documentation and checks for godep 2014-08-18 15:34:00 -07:00
Daniel Smith a753372948 Merge pull request #922 from brendandburns/godep
Add a better error message if godep isn't in the path.
2014-08-18 09:37:56 -07:00
Brendan Burns ff5ca94aa0 Add a better error message if godep isn't in the path. 2014-08-15 20:44:29 -07:00
derekwaynecarr 8c07a0f524 Fix verify-boilerplate 2014-08-15 13:12:01 -05:00
Joe Beda 629f964791 Fix e2e teardown 2014-08-14 13:57:50 -07:00
Brendan Burns 9f49650fba Add a tear down option to the e2e, that just tears down the cluster
Useful for cleaning state after failed runs.
2014-08-14 09:58:40 -07:00
Nan Monnand Deng eb462eba06 changed scripts to use godep 2014-08-13 15:02:14 -04:00
Daniel Smith 713a9488a2 Fix verification scripts to actually look at all go files. 2014-08-12 17:47:59 -07:00
csrwng c65470583e Remove etcd servers flag from controller manager in local-up-cluster 2014-08-07 10:02:15 -04:00
Tim Hockin 812d651b1b Call build-go.sh before bundling a release
Now the dev-build-and-* scripts actually work.
2014-08-04 13:58:32 -07:00
Clayton Coleman 67166e581b Run all go tests in parallel (6x speedup)
Currently hack/test-go.sh runs in serial in independent executions of
go test.  By running all tests at once, we get parallel execution.
However, we cannot use -coverprofile with this mode, which seems worthwhile.

On a 4-core mac, runs tests in 15s that ran in 80s before. Tested on F20 and
OSX Mavericks.
2014-08-04 13:39:34 -04:00
brendandburns 6564f14ac4 Merge pull request #704 from derekwaynecarr/issue_603
Improve testing reliability
2014-08-04 09:11:57 -07:00
Filipe Brandenburger d00e08bb5f Fix shell script quoting, clean up build scripts
Fix quoting so that it works with arbitrary path names (e.g. containing
spaces.)  Make hack/config-go.sh non-executable since it is meant for
sourcing and not as a standalone.

Tested:
- Checked out the tree to a directory with spaces, called the
  build script from outside the tree, confirmed it worked as expected.
- Confirmed binaries work by running them with -version.
- Ran hack/build-go.sh cmd/kubecfg and confirmed only kubecfg was built.
- Ran hack/build-go.sh cmd/integration and confirmed it was built.
- Checked it out on a Mac and confirmed that the build script works.
- Confirmed that hack/test-go.sh and hack/test-cmd.sh work.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-08-01 08:23:16 -07:00
Filipe Brandenburger de405ac126 Improve generation of version information from the git tree
Detect whether the tree is dirty and append a "-dirty" indication to the
git commit (common practice with other repos, e.g. kernel, docker.)

Properly handle the case where a git tree is not found (e.g. building
from archive.)

In the sed expression, look for the variable to be updated
(commitFromGit) instead of hardcoding a line number.

Tested:

- Built from a dirty tree:
    $ output/go/bin/kubelet -version
    Kubernetes version 0.1, build 2d784c684c75-dirty

- Built from a clean tree:
    $ output/go/bin/kubelet -version
    Kubernetes version 0.1, build 505f23a31172

- Built from an archive:
    $ hack/build-go.sh
    WARNING: unable to find git commit, falling back to commitFromGit = `(none)`
    $ output/go/bin/kubelet -version
    Kubernetes version 0.1, build (none)

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-07-30 18:48:57 -07:00
Filipe Brandenburger 7e56609139 Handle -version flag on all commands
Tested: Passed -version argument to kubelet (and all other binaries):
  $ output/go/bin/kubecfg -version
  Kubernetes version 0.1, build 6454a541fd56

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
2014-07-30 18:48:56 -07:00
derekwaynecarr 10e8c43f46 Improve testing reliability 2014-07-30 16:34:48 -04:00
Daniel Smith 3b8488028d Add /version to server and check it in client.
Will help detect client/version skew and prevent e2e test from passing
while running a version other than the one you think it's running.
2014-07-28 15:45:25 -07:00
Brendan Burns d898fb46cd Exit if release.sh has errors. 2014-07-28 15:24:07 -07:00
brendandburns 1d4ed339c9 Merge pull request #664 from smarterclayton/remove_integration_from_build-go
Remove cmd/integration from hack/build-go.sh
2014-07-28 14:49:31 -07:00
Clayton Coleman f9b6248f26 Travis should test that build-go.sh generated something
Add a new hack/test-cmd.sh that tries to use the generated
executables in a meaningful way.  It does not require Docker
so as to be runnable in Travis
2014-07-28 15:23:17 -04:00
Clayton Coleman 34c1ad2a07 Remove cmd/integration from hack/build-go.sh
Covered by hack/integration-test.sh in travis
2014-07-28 14:46:28 -04:00
brendandburns 616398987a Merge pull request #643 from zhgwenming/build
Use 'go install' instead of 'go build' to generate all commands at the same time.
2014-07-28 11:44:05 -07:00
brendandburns d558a93a98 Merge pull request #651 from smarterclayton/allow_api_port_to_change
Allow API_{PORT,HOST} to be changed via hack/local-up
2014-07-28 10:47:39 -07:00
Albert Zhang 0375709fa3 Use 'go install' to build all commands at the same time.
'go build' compiles the packages but discards the results if multiple packages specified.
2014-07-27 22:20:13 -04:00
Clayton Coleman 7a63b53ee2 Allow API_PORT to be changed via hack/local-up 2014-07-27 15:38:12 -04:00
Brendan Burns ea15e6709c Add a sanity check for running etcd servers to the integration test script. 2014-07-26 22:31:30 -07:00
Kelsey Hightower 124b0e7ee6 Fix hack/build-go.sh to work on all platforms
Currently the hack/build-go.sh build script does not work
on OS X 10.9.x systems. This changes reverts back to building
one binary via a for loop.
2014-07-26 15:28:48 -07:00
brendandburns 25150947c8 Merge pull request #626 from smarterclayton/speed_up_build
Build all commands at the same time
2014-07-25 12:57:25 -07:00
Clayton Coleman 6f84fc06da Remove cmd/ prefix on build-go.sh
Update places that depend on it.
2014-07-25 13:31:20 -04:00
Clayton Coleman 899127701e Build all commands at the same time
In Go it's much more efficient to build several commands in the same
`go build` because the build has to load most of the dependency tree
each time.  Roughly 50% on my machine:

Together (go1.2 on OS X):

    real  0m4.049s
    user  0m8.387s
    sys   0m2.766s

Separate:

    real  0m13.392s
    user  0m12.420s
    sys   0m6.882s
2014-07-25 13:23:23 -04:00
Clayton Coleman f7948015bd The quotes around the file should not be necessary
In Go 1.2 on the Mac they result in a file created with actual
quotes.
2014-07-25 13:11:45 -04:00
Brendan Burns bf5ae4bb9d Fork API types. 2014-07-24 21:47:08 -07:00
derekwaynecarr 69ae2fe4bb Initial vagrant setup and e2e testing support 2014-07-24 16:32:36 -04:00
Jeff Mendoza 95ec94514b Rename and move Azure scripts. 2014-07-18 16:13:05 -07:00
Jeff Mendoza 3ff6b0f8a6 First draft of shell scripts for deploying kube to Azure. 2014-07-18 13:11:50 -07:00
Albert Zhang 23e9c39a96 make build script works on os x if the current dir is not the kubernetes root 2014-07-13 18:47:52 +08:00
Brendan Burns 96187c10f0 Fix build script for os x. 2014-07-12 21:46:28 -07:00
Kouhei Ueno 663b80b6a3 make hack/config-go.sh sourceable from zsh 2014-07-12 15:37:24 +09:00
Clayton Coleman 9a9d140a8a -cover causes races in Go 1.2
Make -covermode=atomic the default until we drop 1.2 support
Enable Go 1.2 in Travis
2014-07-11 15:48:31 -04:00
Clayton Coleman 8b06cd8e01 Allow hack/test-go.sh to support flags
Pass arguments after the package directly to go test

    hack/test-go.sh pkg/util -v -test.run=TestNewStringSet

And also allow global flags

    hack/test-go.sh "" -v
2014-07-07 09:30:44 -04:00
Nan Deng 903c4a957c remove 1.2 2014-07-02 23:27:00 -07:00
Nan Deng e444bf23f6 turn off code cover. 2014-07-02 23:23:14 -07:00
Nan Deng 0a97e514b3 turn on race detector by default 2014-07-02 23:22:09 -07:00
Daniel Smith 60f05c8d8d update version package when building. 2014-07-02 15:32:30 -07:00
Brendan Burns e5f36b8ec1 Disable gofmt for non go1.2 or go1.3 2014-07-01 11:25:59 -07:00
Brendan Burns 4d6a783e5f Initial add of an environment variable for the kubernetes master. 2014-07-01 10:12:38 -07:00
Brendan Burns c002cac157 Add some extra validation and checking to the local cluster setup. 2014-06-27 21:47:01 -07:00
Daniel Smith ce7eb7686a Merge pull request #256 from ironcladlou/local-cluster-proxy
Launch proxy as part of local-up-cluster.sh
2014-06-26 14:16:40 -07:00
Dan Mace b733585123 Launch proxy as part of local-up-cluster.sh 2014-06-26 15:48:26 -04:00
Justin Huff 253a783365 Remove localkube 2014-06-26 11:52:23 -07:00
brendandburns 60e2d4b258 Merge pull request #250 from lavalamp/fix
Make boilerplate hook work for .sh files, too.
2014-06-26 10:01:46 -07:00
Daniel Smith c97c514742 Rename cloudcfg to kubecfg 2014-06-25 18:01:37 -07:00
Daniel Smith 260af3017b Make boilerplate hook work for .sh files, too. 2014-06-25 17:11:48 -07:00
Justin Huff e948248546 Make local-up-cluster more user-friendly 2014-06-25 12:19:37 -07:00
Daniel Smith f7968ce00b Make integration test the manifest url feature. Make kubelet's docker pull command testable. 2014-06-24 16:57:35 -07:00
brendandburns e173c21b7a Merge pull request #210 from lavalamp/fix_doc
Add script to verify all boilerplate; add line to make travis run it.
2014-06-23 19:47:56 -07:00
Daniel Smith a446467848 Fix jq detection (tested, works) 2014-06-23 13:57:05 -07:00
Daniel Smith 06410321e3 Add script to verify all boilerplate; add line to make travis run it. 2014-06-23 13:50:14 -07:00
Tim Hockin 035bc3ba3c Minor: allow hack/build-go.sh to take args for faster iteration.
e.g.
    $ ./hack/build-go.sh kubelet
    +++ Building kubelet
    $
2014-06-23 11:38:04 -07:00
Justin Huff 5736cc8d8a Pass through args to localkube 2014-06-20 09:28:23 -07:00
Daniel Smith 53f6f3ead2 fix e2e test 2014-06-19 14:57:06 -07:00
brendandburns e6b8555ba8 Add quotes around ${TRAVIS}. 2014-06-18 13:59:03 -07:00
Daniel Smith 3124db63c6 Merge pull request #155 from brendandburns/scripts
Add a version check for go.
2014-06-18 13:53:42 -07:00
Brendan Burns 35bf0fc0b7 Add a version check for go. 2014-06-18 13:38:29 -07:00
Brendan Burns e824f84f20 Always build the cloudcfg binary at the beginning of the e2e script. 2014-06-18 10:10:18 -07:00
Brendan Burns 5f66d33880 Add load balancing support to services. 2014-06-17 21:28:20 -07:00
Daniel Smith c27ad1390d etcd does some trickery that was avoiding the pid capturing in our tests. Run in subshell. 2014-06-16 22:05:12 -07:00
Daniel Smith b709532fdd Move jq requirement message 2014-06-16 20:45:38 -07:00
Daniel Smith b3c934cde1 Parse status; makes test much faster 2014-06-16 20:42:17 -07:00
Daniel Smith d3049e4d11 Still build and push before running test, even if cluster is already running. 2014-06-15 23:39:24 -07:00
Daniel Smith f03460ce5b Rename local-up2.sh to local-up-cluster.sh 2014-06-15 22:15:37 -07:00
Daniel Smith 0a4e6b50ed Add an alternate local-up experience. 2014-06-15 22:06:55 -07:00
Daniel Smith c7a307ceb2 Merge pull request #105 from lavalamp/improve_e2e
Add a new e2e test; fix some bugs/usability problems
2014-06-14 16:03:56 -07:00
Daniel Smith f02c27312b Fix --allowed syntax 2014-06-14 09:52:29 -07:00
Daniel Smith cba453d72b Fix basic test the other way. 2014-06-13 17:31:57 -07:00
Daniel Smith 74ea18209a Add mac instructions 2014-06-13 17:27:01 -07:00
Daniel Smith 2d0b111ba8 Fix basic e2e test 2014-06-13 17:24:12 -07:00
Joe Beda d230625e1a Move third_party code under third_party/src so it can be used in $GOPATH. 2014-06-13 17:15:49 -07:00
Daniel Smith 5626703634 Add a new e2e test; fix some bugs/usability problems 2014-06-13 16:30:26 -07:00
Daniel Smith de3ae061ee Split up e2e test code. More e2e tests on the way. 2014-06-13 12:35:03 -07:00
Daniel Smith d937f6f776 working on a better e2e test 2014-06-13 11:26:55 -07:00
Joe Beda 110a390c97 Switch from `gcloud compute` to `gcutil`.
We'll switch back to the future once the interface has settled down.
2014-06-12 15:43:00 -07:00
Daniel Smith 69acbf5a74 Fix build 2014-06-12 09:35:04 -07:00
Daniel Smith 187f7d2534 cloudcfg working locally now 2014-06-12 09:35:04 -07:00
Daniel Smith 9e03e1d8ea Generate password for local cluster, too 2014-06-12 09:35:04 -07:00
Daniel Smith 5d02bf0e4b change name 2014-06-12 09:35:04 -07:00
Daniel Smith 8178240bbe Add a binary and scripts for running a local kubernetes cluster. 2014-06-12 09:35:04 -07:00
Daniel Norberg 0a4e7985a9 e2e-test: expose minion 8080 port
Otherwise the test fails when trying to reach the
nginx containers.
2014-06-11 20:36:00 -04:00
Brendan Burns 9010ef954c Update tests 2014-06-09 07:16:43 -07:00
Brendan Burns 40d615056e Add a sleep to the e2e tests to ensure that the docker pull finishes. 2014-06-07 22:04:34 -07:00
Brendan Burns bdbd79bf0a fix up whitespace. 2014-06-06 23:42:14 -07:00
Brendan Burns f833d9a594 Add a error if go isn't present on the system. 2014-06-06 23:42:13 -07:00
Joe Beda 894a7e3282 Move everything out of src and reorganize scripts.
Fixed up some scripts to be more robust.  Changed the e2e test setup to use g1-small instances.  Fixed up documentation to reflect the new script locations.  Disabled the "curl | bash" cluster launch as it hasn't been well tested and doesn't include the cloudcfg tool yet.
2014-06-06 21:41:19 -07:00