Commit Graph

448 Commits

Author SHA1 Message Date
Morgan Bauer
3114920d46
goflags must be after subcommand 2016-12-05 12:25:07 -08:00
henry.nash@uk.ibm.com
ec33164686 Prevent SIGPIPE errors causing the version check line to fail
The use of pipe when process the version command can lead to
141 failues on some systems. Using a prefix of tail can prevent this.
2016-12-05 06:36:30 -08:00
Clayton Coleman
138267c876
Switch generator logic to use pkg/apis/meta/v1 2016-12-03 18:57:30 -05:00
Kubernetes Submit Queue
69170e7243 Merge pull request #37826 from danwinship/etcd-path
Automatic merge from submit-queue (batch tested with PRs 37094, 37663, 37442, 37808, 37826)

Fix the PATH that install-etcd.sh tells you to use

After you run install-etcd.sh, it tells you:

    etcd v3.0.14 installed. To use:
    export PATH=${PATH}:/home/danw/rh/go/src/k8s.io/kubernetes/third_party/etcd

which doesn't work if you have an older etcd installed in /usr/bin:

    danw@w541:kubernetes (master)> PATH=${PATH}:/home/danw/rh/go/src/k8s.io/kubernetes/third_party/etcd etcd --version
    etcd Version: 2.2.5

You need to put the local etcd dir first in PATH, not last.
2016-12-03 04:27:53 -08:00
Kubernetes Submit Queue
8bf1ae8313 Merge pull request #37094 from sjug/reshuffle_gobindata_dep
Automatic merge from submit-queue (batch tested with PRs 37094, 37663, 37442, 37808, 37826)

Moved gobindata, refactored ReadOrDie refs

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

**Which issue this PR fixes**: fixes #37007
2016-12-03 04:27:46 -08:00
Kubernetes Submit Queue
7621ada226 Merge pull request #36700 from ingvagabund/move-export-flag-of-kubectl-to-get-subcommand
Automatic merge from submit-queue (batch tested with PRs 37997, 37939, 37990, 36700, 37258)

--export flag belongs to kubectl get, not kubectl

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

When running the kubectl via symlink to hyperkube, the ``--export`` flag is not delegated to `kubectl get` but to `kubectl` only. Ending with unrecognized flag.
2016-12-02 19:26:51 -08:00
Sebastian Jug
79202656bc - Moved gobindata, refactored ReadOrDie refs
- Remaining spaghetti untangled
- Missed bazel update and a few hardcoded refs
- New instance of framework.ReadOrDie reference removed post rebase
- Resolve new clientset rebase
- Fixed e2e/generated BUILD dep
- A space
- Missed gobindata ref in golang.sh
2016-12-02 12:57:03 -05:00
Kubernetes Submit Queue
7ec3be4c8e Merge pull request #36964 from ixdy/gobin-build
Automatic merge from submit-queue

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

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

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

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

cc @sebgoa @ZhangBanger
2016-12-02 07:29:01 -08:00
Jeff Grafton
38690ff7a7 build: don't call unset_platform_envs before building 2016-12-01 10:37:39 -08:00
Dan Winship
b39ddf64f6 Fix the PATH that install-etcd.sh tells you to use
If you have an old etcd installed in /usr/bin then you need to add the
local etcd directory to the *start* of PATH, not the end.
2016-12-01 10:07:23 -05:00
Jeff Grafton
0d9d623f04 Build vendored copy of go-bindata and use that in go generate step
Additionally remove all instances of `go get`ing go-bindata
2016-11-30 22:23:40 -08:00
Jeff Grafton
9848d6cc8d build: clean platform envs to prevent cross-contamination 2016-11-29 16:35:45 -08:00
Ivan Shvedunov
2256b27f95 Add options for build container rsync optimization
KUBE_RSYNC_COMPRESS env var sets rsync compression level.
KUBE_RSYNC_GENERATED_TO_BUILD_CONTAINER env var disables rsyncing
generated files to build containers.
2016-11-23 05:40:39 +03:00
Robert Collins
d388f3100f Fix support for DNS in local-up-cluster.sh
- Fix unbound variables in hack/local-up-cluster.sh

- explicitly set KUBERNETES_PROVIDER in local-up-cluster.
  The default appears to be gce now, so this tries to spawn a service
  in gce... not the desired outcome for a local test setup.

- Remove stale creation of kube-system: the kube-system namespace is
  built in these days.

- Pickup third party etcd automatically.

- Retab hack/local-up-cluster.sh for consistency

- Update hack-local-up's internal credentials to match the user
  instructions we give (which work).

- Note the CA root requirement in local-up-cluster

- Fix a dangling comment in local-up-cluster

To test manually, run something like:
```sudo KUBE_ENABLE_CLUSTER_DNS+true API_HOST_IP=0.0.0.0
   ./hack/local-up-cluster.sh```
The API_HOST_IP=0.0.0.0 is required otherwise kubedns cannot contact
the master and the dns pod will fail readychecking on the healthz
container.
2016-11-22 13:18:55 +13:00
Jan Chaloupka
7992123449 --export flag belongs to kubectl get, not kubectl
When running the kubectl via symlink to hyperkube, the --export is not delegated to 'kubectl get' but to 'kubectl' only.
Ending with unrecognized flag.
2016-11-17 15:45:55 +01:00
Wojciech Tyczynski
b34ac6baef Bump etcd to 3.0.14 in tests 2016-11-07 08:41:17 +01:00
Kubernetes Submit Queue
47519962bf Merge pull request #35484 from smarterclayton/delete_warning
Automatic merge from submit-queue

Add --force to kubectl delete and explain force deletion

--force is required for --grace-period=0. --now is == --grace-period=1.
Improve command help to explain what graceful deletion is and warn about
force deletion.

Part of #34160 & #29033

```release-note
In order to bypass graceful deletion of pods (to immediately remove the pod from the API) the user must now provide the `--force` flag in addition to `--grace-period=0`.  This prevents users from accidentally force deleting pods without being aware of the consequences of force deletion.  Force deleting pods for resources like StatefulSets can result in multiple pods with the same name having running processes in the cluster, which may lead to data corruption or data inconsistency when using shared storage or common API endpoints.
```
2016-11-05 11:19:04 -07:00
Kubernetes Submit Queue
6a88de9fe1 Merge pull request #35648 from deads2k/api-32-reflective-checks
Automatic merge from submit-queue

add script to check for updates to the files for generation

Adds a verify script to help people writing APIs remember to wire all the individual pieces up.  Eventually it will be better to avoid this altogether, but this is a start.

@ncdc fyi
2016-11-04 01:16:52 -07:00
Marcin
26acced6d8 Add policy api version v1beta1 and disable v1alpha1 2016-11-03 13:26:27 +01:00
Kubernetes Submit Queue
e817594648 Merge pull request #35731 from janetkuo/statefulset-v1beta1
Automatic merge from submit-queue

Move Statefulset (previously PetSet) to v1beta1

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

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

**Special notes for your reviewer**: depends on #35663 (PetSet rename)
cc @erictune @foxish @kubernetes/sig-apps 

**Release note**:

``` release-note
v1beta1/StatefulSet replaces v1alpha1/PetSet.
```
2016-11-03 02:46:57 -07:00
Janet Kuo
c15b9470f5 Replace apps/v1alpha1 with apps/v1beta1 and manually remove generated apps/v1alpha1 files
Manually remove generated apps/v1alpha1 types, protobuf, and api-reference doc files
Manually remove apps/v1alpha1 folder from 1.5 generated client
2016-11-02 15:16:23 -07:00
Clayton Coleman
6e25830378
Add --force to kubectl delete and explain force deletion
--force is required for --grace-period=0. --now is == --grace-period=1.
Improve command help to explain what graceful deletion is and warn about
force deletion.
2016-11-02 17:44:05 -04:00
Madhusudan.C.S
3c692ebd77 [Federation] Implement the kubefed command.
Also:
1. Add it to the client build targets list.
2. Register `kubefed join` and `kubefed unjoin` commands.
2016-11-02 12:48:20 -07:00
deads2k
4850314a5c add script to check for updates to the files for generation 2016-11-01 15:59:50 -04:00
Wojciech Tyczynski
543c2c20ac Update etcd in tests to 3.0.13 2016-10-27 15:06:08 +02:00
Kubernetes Submit Queue
d9873f4556 Merge pull request #35644 from thockin/build-fix-rsync
Automatic merge from submit-queue

Build: Use checksum to rsync results

If dependencies are touched, the Makefile will detect that tools like
deepcopy-gen need to be rebuilt.  It will rebuild them, but if Go decides the
dependencies are not ACTUALLY updated (maybe it was a test file - known
limitation of the current Makefile), it does not touch the resulting binary.
The Makefile touches the result explicitly to mark that the dep change has
been handled.  But rsync blows away that change with the older file, and
helpfully preserves the timestamp.  This repeats on every build.

Now rsync ignores it if the checksum is the same.  Result = faster build.

@wojtek-t @gmarek
2016-10-26 12:42:42 -07:00
Tim Hockin
7aa91bbff6 Use checksum to rsync results
If dependencies are touched, the Makefile will detect that tools like
deepcopy-gen need to be rebuilt.  It will rebuild them, but Go decides the
dependencies are not actually updated (maybe it was a test file - known
limitation of the current Makefile) and does not touch the resulting binary.
Then the Makefile touches the result explicitly to mark thatthe dep change has
been handled.  Then rsync blows away that change with the older file, and
helpfully preserves the timestamp.

Now rsync ignores it if the checksum is the same.  Result = faster build.
2016-10-26 16:30:18 +02:00
mbohlool
75451b49f4 - Add GroupVersion as tags to OpenAPI spec
- Remove all end-point specs as they are not useful in light of GroupVersion tags in main spec
2016-10-25 14:27:48 -07:00
Mike Danese
27116c6818 rename build/ to build-tools/ 2016-10-24 14:41:56 -07:00
Kubernetes Submit Queue
29fc947cbb Merge pull request #34770 from lukaszo/curl_flake
Automatic merge from submit-queue

Retry curl when it failed during download

Fixes #34769

For now I'm adding retry only to etcd installation as I saw it recently to fail in one of my PRs. We may change it also in other places if it also happens.
2016-10-20 02:10:27 -07:00
Davanum Srinivas
20d1818d78 Enable local-up-cluster.sh to start with the secured port
Generate a kubeconfig for use with controller-manager, kubelet,
scheduler etc. This kubeconfig should use the secure https
port of the api server with appropriate ca cert for the components
to talk to api server.

With this change, one can set API_PORT=0 to completely switch off
insecure access for testing admission controllers etc.

Fixes #33375
2016-10-19 06:36:01 -04:00
Łukasz Oleś
1cda616a9b Retry curl when it failed during download
Fixes #34769
2016-10-19 11:04:49 +02:00
Kubernetes Submit Queue
2e5303d206 Merge pull request #34612 from jellonek/jell/fix_version_generation
Automatic merge from submit-queue

build: Fix version generation.

This PR provides update to version string generation procedure to handle additional case - working on branch delivered from release tag, instead of working on `-(alpha|beta).no` suffixed tag.

Reason of it is that actually if someone would start working on branch forked from release tag (`v1.4.1` for example), will add some commits and then would try to build k8s/run conformance tests - will end up with broken version string in form similar to `v1.4.1.X+YYYY` where `X` is a dictance/number of commits from base tag and `YYYY` will be first 14 characters from commit hash.
Such version - containing four dotted parts is rejected during conformance tests with error similar to:
```
/go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/kubectl.go:843
Oct 11 12:38:33.726: Failed to get server version: Unable to parse server version "v1.4.1.5+somecommithash": Invalid character(s) found in patch number "1.5"
/go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/framework/util.go:413
```

This PR provides a cure for this situation creating version string in form `v1.4.1-X+YYYY` which then should be readable for version validation checks. 

Release note:
```release-note
Fix version string generation for local version different from release and not based on `-alpha.no` or `-beta.no` suffixed tag.
```
2016-10-18 21:11:36 -07:00
Piotr Skamruk
66a85555a2 build: Fix version generation. 2016-10-17 09:13:22 +02:00
Jess Frazelle
3193174142
Remove go patches for darwin
Signed-off-by: Jess Frazelle <acidburn@google.com>
2016-10-13 21:12:15 -07:00
Kubernetes Submit Queue
cfbb5e1040 Merge pull request #34150 from mbohlool/co2
Automatic merge from submit-queue

Fix a typo in openapi spec generation

A typo in util.sh resulted in the wrong spec stored in source tree. The commit should be explanatory.
2016-10-06 08:44:59 -07:00
Wojciech Tyczynski
19e50d56dc Run integration tests with 3.0.10 etcd underneath 2016-10-06 09:32:49 +02:00
mbohlool
4ed8328e8d Fix a typo in util.sh that resulted in wrong openapi spec generation 2016-10-05 15:59:38 -07:00
Joe Beda
dd3ac00c7d Install test subpackages too
We weren't getting incremental builds because of new test only subpackages.  Our
voodoo combo of 'go install' and 'go test -c' didn't cache things like
'test/e2e_node/services'.  Add the '-i' flag to 'go test' to install test only
dependencies too.
2016-10-03 19:42:21 -07:00
Joe Beda
17454a04ac Remove support for boot2docker 2016-10-03 19:42:20 -07:00
Kubernetes Submit Queue
2628af06f8 Merge pull request #33803 from ixdy/go1.7-darwin-client-binaries
Automatic merge from submit-queue

Use patched golang1.7.1 for cross-builds targeting darwin

This PR extends #32517 to use the patched go1.7.1 introduced by that PR to build all darwin targets (e.g. kubectl).

This is necessary because binaries built with earlier versions of Go regularly segfault on macOS Sierra (see #32999 and #33070).

This solution is somewhat hacky, but we intend to cherry-pick this to 1.4, and switching all of 1.4 to build with go1.7.1 is very high risk.

I haven't yet pushed the cross build image yet, so this will fail to build. Will test locally and update with results.

First step of fixing #33801.

cc @luxas @pwittrock @david-mcmahon @liggitt @smarterclayton @jfrazelle @Starefossen @gerred
2016-09-30 12:29:18 -07:00
Jeff Grafton
f769b02c8f Use patched go1.7.1 for cross-builds targeting darwin 2016-09-29 17:05:23 -07:00
mbohlool
35b5174bf1 Generate and verify openapi specs in source tree at api/openapi-spec 2016-09-29 17:03:31 -07:00
deads2k
06b1a9636d promote contrib/mesos to incubator 2016-09-28 10:58:09 -04:00
Kubernetes Submit Queue
83b4133ea8 Merge pull request #33496 from mikedanese/build-kubeadm-kubedisco
Automatic merge from submit-queue

build kube-discovery and kubeadm with release

This will start publishing binaries from our ci builds.

@errordeveloper @dgoodwin
2016-09-27 03:46:57 -07:00
Jeff Grafton
13a3313957 Bundle kubemark in test tarball instead of server tarball 2016-09-26 11:06:48 -07:00
Mike Danese
b421bf4315 build kube-discovery and kubeadm with release 2016-09-26 10:20:04 -07:00
Lucas Käldström
b17e107def Various improvements plus added a version command 2016-09-25 22:38:39 +03:00
Kubernetes Submit Queue
a18bc2eb09 Merge pull request #33277 from mkumatag/genman_all
Automatic merge from submit-queue

Automatic generation of man pages

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

**What this PR does / why we need it**:
Currently genman supports only kubectl command, so this PR will enable genman to generate man pages for rest of the command like - kube-apiserver, kube-controller-manager, kube-proxy, kube-scheduler, kubelet
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
N/A
**Special notes for your reviewer**:

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
```
2016-09-24 02:10:19 -07:00
deads2k
7a8fa18116 update generation scripts to share API group version constants 2016-09-22 13:30:41 -04:00
Manjunath A Kumatagi
6047787fa3 Add support for generating all the manpages to genman 2016-09-22 20:09:22 +05:30
Kubernetes Submit Queue
dae3bddf90 Merge pull request #32884 from Random-Liu/separate-build-for-node-e2e
Automatic merge from submit-queue

Add separate build process for node test.

This PR is part of https://github.com/kubernetes/kubernetes/pull/31093. However, because currently node e2e is built on `KUBE_TEST_PLATFORMS`, which includes linux/amd64, darwin/amd64, windows/amd64 and linux/arm, it caused #32251 to fail.

In fact, node e2e is running on the same node with kubelet, and it also has built-in apiserver, etcd and namespace controller. All of them are only built on `KUBE_SERVER_PLATFORMS`, so node e2e should also only be built on those platforms.
```
KUBE_SERVER_PLATFORMS=(
     linux/amd64
     linux/arm
     linux/arm64
   )
```

This PR added a separate build process for node e2e to address this.

@vishh Do you need this for v1.4? because this blocks your #32251. /cc @dchen1107
2016-09-16 14:16:57 -07:00
Random-Liu
a67fec6419 Add separate build process for node test. 2016-09-16 11:17:49 -07:00
Lucas Käldström
aa045f786e Use a patched golang version for building linux/arm, fixes kube-apiserver 2016-09-14 18:04:22 +03:00
Chao Xu
7e92025cfd stick to 2.2.1 etcd 2016-09-09 16:35:05 -07:00
Daniel Smith
279219ca89 Use etcd 2.3.7 (container already pushed) 2016-09-09 09:45:53 +02:00
Jordan Liggitt
a869de61bd
Namespace certificates API group 2016-09-01 14:39:06 -04:00
nikhiljindal
209d544bed Adding a script to update federation API reference docs 2016-08-31 13:21:42 -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
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
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
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
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
Chao Xu
b45e578ddd ignore staging in munge scripts 2016-08-24 13:09:13 -07:00
gen0cide-
89a63d0863 Updating version check for etcd 2016-08-21 17:13:52 -07:00
Kubernetes Submit Queue
c39b584ea2 Merge pull request #30583 from colemickens/fix-hack-path-handling
Automatic merge from submit-queue

fix path handling in hack/lib/init.sh

Jenkinsfile pipeline jobs get cloned into "\<project\> (\<branch\>)". As a result, I can't use certain things in `hack/lib/init.sh`.

This is a small fix for that problem.

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
NONE
```
2016-08-21 10:34:32 -07:00
Kubernetes Submit Queue
ada58f5ff2 Merge pull request #30823 from nikhiljindal/swaggerDocs
Automatic merge from submit-queue

Adding a script to fetch swagger spec from federation apiserver

First step for https://github.com/kubernetes/kubernetes/issues/30541.
Next step is to generate docs like http://kubernetes.io/docs/api-reference/v1/definitions/ from this swagger spec.

cc @kubernetes/sig-cluster-federation @kubernetes/sig-api-machinery
2016-08-20 18:09:58 -07:00
Kubernetes Submit Queue
1e09eb7949 Merge pull request #30500 from wojtek-t/etcd_migration
Automatic merge from submit-queue

Support for etcd migration

@xiang90 @timothysc @hongchaodeng
2016-08-19 00:34:06 -07:00
Kubernetes Submit Queue
b1194ffb43 Merge pull request #30659 from ixdy/disable-kubemark-ppc
Automatic merge from submit-queue

Disable linux/ppc64le compilation by default

Work-around for #30384.

I'm still testing this locally to see if it actually works. The build is slow. (PR Jenkins won't tell us whether this fixes ppc.)

cc @Random-Liu @spxtr @david-mcmahon @luxas
2016-08-18 23:12:09 -07:00
nikhiljindal
d76cdc7482 Adding a script to fetch swagger spec from federation apiserver 2016-08-18 17:19:21 -07:00
Wojciech Tyczynski
f3c32673ec Add migration test 2016-08-18 08:31:33 +02:00
Timothy St. Clair
730fc70107 Update etcd default ports for v3, and validate tests 2016-08-17 07:49:19 -05:00
Jeff Grafton
dec4d1ea33 Disable linux/ppc64le compilation by default.
It can be reenabled with KUBE_BUILD_PPC64LE=y.
2016-08-16 17:05:42 -07:00
Cole Mickens
1cb361ea2b Handle spaces in some hack/ scripts. Cleanup after hyperkube build. 2016-08-15 21:13:13 +00:00
Kubernetes Submit Queue
1cc23155f7 Merge pull request #30546 from thockin/build-vol-whole-output
Automatic merge from submit-queue

Fix subtle build breakage

Repro case:
$ make clean generated_files
$ hack/update-generated-protobuf.sh

This would complain about not finding `fmt`, and it was indicating the wrong
GOROOT.  The problem was that the first step built binaries for generating
code, which *embeds* the value of GOROOT into the binary.  The whole tree was
bind-mounted into the build container and then JUST the dockerized dir was
mounted over it.  The in-container build tried to use the existing binaries,
but GOROOT is wrong.

This change whites-out the whole _output dir.

I first made just an anonymous volume for _output, but docker makes that as
root, which means I can't write to it from our non-root build.  So I just put
it in the data container.  This seems to work.  The biggest change this makes
is that the $GOPATH/bin/ and $GOPATH/pkg/ dirs will persist across dockerized
builds.

NB: this requires a `make clean` to activate.

@lavalamp @jbeda @quinton-hoole @david-mcmahon
2016-08-15 11:42:09 -07:00
Tim Hockin
5217a502d1 Set GOROOT 2016-08-12 21:35:32 -07:00
Tim Hockin
99a6a8ab16 Fix subtle build breakage
Repro case:
$ make clean generated_files
$ hack/update-generated-protobuf.sh

This would complain about not finding `fmt`, and it was indicating the wrong
GOROOT.  The problem was that the first step built binaries for generating
code, which *embeds* the value of GOROOT into the binary.  The whole tree was
bind-mounted into the build container and then JUST the dockerized dir was
mounted over it.  The in-container build tried to use the existing binaries,
but GOROOT is wrong.

This change whites-out the whole _output dir.

I first made just an anonymous volume for _output, but docker makes that as
root, which means I can't write to it from our non-root build.  So I just put
it in the data container.  This seems to work.  The biggest change this makes
is that the $GOPATH/bin/ and $GOPATH/pkg/ dirs will persist across dockerized
builds.
2016-08-12 21:20:38 -07:00
Timothy St. Clair
a0d177ca71 Update core etcd references to use 3.0.4 2016-08-12 13:39:07 -05:00
Timothy St. Clair
456c43c22d Update to shift etcd 2.2 references to use 3.0.3 2016-08-09 08:51:15 -05:00
Tim St. Clair
9abdf719b8
Add a verbosity concept to kubernetes scripts
The KUBE_VERBOSE environment variable sets the verbosity level to
use. Log messages can specify a verbosity by setting the V
variable. e.g.

    V=2 kube::log::info foo bar

Would only print "foo bar" if $KUBE_VERBOSE >= 2.
2016-08-04 22:01:22 -07:00
Madhusudan.C.S
31f5525f43 Revert "[Federation] Downsize the release binary distribution." 2016-08-01 23:54:09 -07:00
Madhusudan.C.S
5a3a84968b [Federation] Do not build separate binaries for federation control plane components, hyperkube should be sufficient. 2016-08-01 11:45:21 -07:00
Jay Vyas
6166083c78 kill repo-root : test/e2e/serviceloadbalancers.go
bindata and yaml, Gobindata automation
bindata utils for generating, go generate
match server version
gitignore for dirty, ca, rbase, KUBE_ROOT, buildfix
(rebased jul-25,29)
2016-07-29 14:35:19 -04:00
Hongchao Deng
74e6626967 Update etcd deprecated flag
- "-addr" => "--advertise-client-urls"
- "-bind-addr" => "--listen-client-urls"
2016-07-22 11:01:11 -07:00
k8s-merge-robot
13b93ce656 Merge pull request #28363 from mikebrow/enable-debug-build-options
Automatic merge from submit-queue

adds source debug build options

See issue & discussion here: #28227

Enables source debugging the Kubernetes binaries with tools like delve by providing the user with the ability to provide debug build options to the glang compiler.

Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2016-07-20 21:48:27 -07:00
k8s-merge-robot
43f1fa9ce3 Merge pull request #28875 from david-mcmahon/dot-github
Automatic merge from submit-queue

Don't add analytics to .entries.
2016-07-13 12:54:30 -07:00
David McMahon
ecb774ca4e Don't add analytics to .entries. 2016-07-13 11:09:38 -07:00
Mike Brown
6ca905ac37 adds source debug build options
Signed-off-by: Mike Brown <brownwm@us.ibm.com>
2016-07-13 11:01:30 -05:00
Tim Hockin
9613e15801 Make releases work 2016-07-12 21:52:54 -07:00
Tim Hockin
881e21c2d5 Link _output/bin/ to real binaries for this arch
This makes followup commits easier wrt finding binaries during build.
2016-07-12 21:52:00 -07:00
k8s-merge-robot
96f2e94056 Merge pull request #27808 from david-mcmahon/kube-upstream
Automatic merge from submit-queue

Move KUBE_GIT_UPSTREAM out of init.sh and into *-munge-docs.sh.

It is only used in those 2 scripts and this way we can set the value dynamically.
Clean up a bit too (80col, formatting)
2016-07-08 13:32:09 -07:00
Wojciech Tyczynski
3686e55d37 Remove cmd/integration test 2016-07-04 13:07:12 +02:00
David McMahon
ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
k8s-merge-robot
337805d1a7 Merge pull request #27816 from spxtr/no-travis
Automatic merge from submit-queue

Remove all traces of travis.
2016-06-28 03:53:34 -07:00
k8s-merge-robot
ff7c280200 Merge pull request #27163 from ixdy/curl-flakes
Automatic merge from submit-queue

Pass --keepalive-time 2 to curl to fix unexpected EOF flakes

I hope this fixes #22967.
2016-06-26 13:35:03 -07:00
k8s-merge-robot
0e28a01661 Merge pull request #26439 from aanm/adding-g-curl-option
Automatic merge from submit-queue

Add -g curl option to hack/lib/util.sh wait_for_url

Add `-g` curl option

```
This  option  switches  off  the "URL globbing parser". When you set this option,
you can specify URLs that contain the letters {}[] without having them being
interpreted by curl itself. Note that these letters are not normal legal URL
contents but they should be encoded according to the URI standard.
```

> Why?

So that IPv6 addresses with `[` and `]`, like `[::1]:8080`, work with that script.

Signed-off-by: André Martins <aanm90@gmail.com>
2016-06-25 05:59:09 -07:00
k8s-merge-robot
ba7e0b4dad Merge pull request #27482 from quinton-hoole/2016-06-15-build-darwin-test-binaries-on-os-x
Automatic merge from submit-queue

Build Darwin test binaries on OS X when KUBE_FASTBUILD is set

Without this, on OS X, test binaries would not be built for the local ARCH, and test scripts fail with an obscure error due to not being able to find the correct binary to run.

This makes the behavior on OS X more consistent with Linux.

Tested on OS X and Linux.
2016-06-24 13:57:04 -07:00
David McMahon
610234dc47 Move KUBE_GIT_UPSTREAM out of init.sh and into *-munge-docs.sh.
It is only used in those 2 scripts and this way we can set the value dynamically.
Clean up a bit too (80col, formatting)
2016-06-21 16:25:45 -07:00
Joe Finney
ab4a65c10a Remove all traces of travis. 2016-06-21 15:58:34 -07:00
k8s-merge-robot
637734f003 Merge pull request #27047 from luxas/enable-ppc64le
Automatic merge from submit-queue

Enable all ppc64le builds, except for hyperkube

Partially fixes: #25886 
Talked to @Pensu, and all other binaries seem to work fine

@david-mcmahon @ixdy @Pensu @smarterclayton
2016-06-18 16:32:19 -07:00
Quinton Hoole
5c546a187b Build Darwin test binaries on OS X. 2016-06-15 14:42:04 -07:00
Lucas Käldström
9673ca16b2 Enable builds for all ppc64le binaries except hyperkube 2016-06-15 22:59:25 +03:00
Jeff Grafton
e89e262196 Pass --keepalive-time 2 to curl to fix unexpected EOF flakes 2016-06-09 17:37:25 -07:00
Daniel Smith
8faa88626d Revamp doc generation
Auto generated docs are **NO LONGER CHECKED IN**, only placeholders.

To generate them, e.g. before exporting docs, run hack/generate-docs.sh.

hack/verify-generated-docs.sh ensures that generated docs are merely the
placeholder text.

hack/update-generated-docs.sh puts the placeholder text in the proper
places.

The old munge behavior is moved into hack/{update|verify}-munge-docs.sh.
2016-06-08 17:22:12 -07:00
Matt Liggett
5dcb8210ac Retain debug logs for etcd when there is a place to keep them.
For help debugging #25845
2016-06-07 12:25:10 -07:00
k8s-merge-robot
421c12e69e Merge pull request #26458 from david-mcmahon/godep-version
Automatic merge from submit-queue

Check for a valid godep version.
2016-06-03 11:04:38 -07:00
k8s-merge-robot
eb57124562 Merge pull request #26522 from xiangpengzhao/fix_noproxy
Automatic merge from submit-queue

Export no_proxy if behind a proxy

Fix #26261
2016-06-02 18:43:43 -07:00
David McMahon
d038c53c0b Check for a valid godep version. 2016-06-02 16:35:14 -07:00
Lucas Käldström
a46a1cdc12 Don't set the env var CC when not cross-compiling 2016-05-30 23:59:34 +03:00
Xiangpeng Zhao
ab9d60f26e Add a comment 2016-05-30 20:18:06 +08:00
k8s-merge-robot
5fd2bb5c20 Merge pull request #26047 from dims/fix-issue-26041
Automatic merge from submit-queue

Get install-etcd.sh to work on OSX

Check the platform before we download the etcd binary. On OSX, save
the zip file, unzip it and link the directory with the correct
name.

Fixes #26041
2016-05-30 02:19:02 -07:00
Dr. Stefan Schimanski
a79a420fde Move shell completion generation into 'kubectl completion' command 2016-05-30 07:23:36 +02:00
André Martins
10fb9bdcf3 Add -addr option to hack/lib/etcd.h
Signed-off-by: André Martins <aanm90@gmail.com>
2016-05-28 12:15:45 +01:00
k8s-merge-robot
3f455fba12 Merge pull request #26441 from aanm/fixing-local-up-cluster-sh
Automatic merge from submit-queue

Add more global options to local-up-cluster.sh

I added a couple more global variables to the `local-up-cluster.sh` script.

The `KUBELET_HOST` environment name make sense to me. If it isn't the best name I will change it.

The `ETCD` ones make sense since they are being used under `hack/lib/etcd.sh`

Signed-off-by: André Martins <aanm90@gmail.com>
2016-05-28 01:30:55 -07:00
David McMahon
12edc97862 Verify changes against upstream vendor/ as well. 2016-05-27 16:27:42 -07:00
André Martins
bd37100713 Add more global env vars to local-up-cluster.sh
Signed-off-by: André Martins <aanm90@gmail.com>
2016-05-27 23:58:01 +01:00
André Martins
8497255bcd Add -g curl option to hack/lib/util.sh wait_for_url
Signed-off-by: André Martins <aanm90@gmail.com>
2016-05-27 20:50:38 +01:00
Eric Paris
cd700ee3eb Merge pull request #26313 from nikhiljindal/fedServerDoc
federation: Adding a tool to generate docs for federation apiserver and controller manager
2016-05-26 23:09:51 -04:00
Colin Hom
a092fd2dd4 Federation build and e2e test integration
Federation components are now buildable and e2e-testable via e2e.go.
2016-05-25 15:07:27 -07:00
nikhiljindal
f98bda0b47 Adding a tool to generate federation docs 2016-05-25 15:04:20 -07:00
xiangpengzhao
6d2b72d3b9 Set no_proxy for localhost 2016-05-24 20:26:16 -04:00
nikhiljindal
991eb753a2 Renaming federated-apiserver to federation-apiserver 2016-05-24 11:49:39 -07:00
Davanum Srinivas
0f94aeada2 Get install-etcd.sh to work on OSX
Check the platform before we download the etcd binary. On OSX, save
the zip file, unzip it and link the directory with the correct
name.

Fixes 26041
2016-05-23 17:34:52 -04:00
k8s-merge-robot
0257f54a8c Merge pull request #24850 from madhusudancs/speedup-do-nothing
Automatic merge from submit-queue

Improve the speed of do-nothing build.

As @thockin found out here https://github.com/kubernetes/kubernetes/issues/24518, vast majority of the do-nothing build time is spent in rebuilding the test binaries. There is no staleness check support for test binaries.

This commit implements the staleness checks for test binaries and uses them while building packages.

On my workstation, do-nothing hack/build-go.sh time goes from ~20 secs to ~4 secs, of which only ~1 sec is from doing test binary staleness check now (as opposed to ~17 secs it took to build the test binaries before). I did some experiments to bring this time down to <1 sec. I measured using go test -bench, but it was not very useful in this case. I believe, a vast majority of that ~1 second is being spent in fork/exec and piping the results back to the staleness check program along with the ser-deser involved, but it needs to be validated. Not a proof, but to provide some supporting evidence to this claim, running `go list -f format packages` in the shell takes about 600ms irrespective of what's in the format.

Tests are TBD. I am still trying to figure out how to test this, but I would like to get early feedback

cc @mikedanese @mml
2016-05-22 10:33:04 -07:00
k8s-merge-robot
a503bb828a Merge pull request #24653 from gtank/go-devel-builds
Automatic merge from submit-queue

hack: allow devel builds of go

This is issue https://github.com/kubernetes/kubernetes/issues/6913. It seems reasonable that someone running a devel build is responsible for making sure it's a sane version.

<!-- Reviewable:start -->
---
This change is [<img src="http://reviewable.k8s.io/review_button.svg" height="35" align="absmiddle" alt="Reviewable"/>](http://reviewable.k8s.io/reviews/kubernetes/kubernetes/24653)
<!-- Reviewable:end -->
2016-05-22 08:51:54 -07:00
k8s-merge-robot
82cb4c1758 Merge pull request #23930 from ArtfulCoder/vendor-skydns
Automatic merge from submit-queue

Use SkyDNS as a library for a more integrated kube DNS
2016-05-21 23:33:35 -07:00
k8s-merge-robot
88daa2efde Merge pull request #25611 from soltysh/remote_check
Automatic merge from submit-queue

Update upstream remote regex

I've fixed the upstream remote regex so that it properly recognizes ssh link, like this one: 
```
upstream git@github.com:kubernetes/kubernetes.git (fetch)
``` 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-05-21 01:34:10 -07:00
Abhishek Shah
a92ea56024 added build stuff for kube-dns 2016-05-20 15:08:11 -07:00
Clayton Coleman
2c9b83f291 Disable ppc64le for now 2016-05-19 10:19:35 -04:00
k8s-merge-robot
3a5d53d467 Merge pull request #23430 from huangyuqi/uber-cluster-manager
Automatic merge from submit-queue

Implement the cluster-controller of kubernetes federation

This PR is the cluster-controller of kubernetes federation.
This controller of federation phase 1 just collect the status of federated clusters.
2016-05-18 10:07:27 -07:00
George Tankersley
8b507d8cdc hack: allow devel builds of go 2016-05-16 11:06:21 -07:00
huangyuqi
21fe26bd07 remove the rs&subrs logic from cluster controller 2016-05-16 16:48:27 +08:00
Lucas Käldström
8e64b5f347 Speed up hack/local-up-cluster.sh by building hyperkube instead of separate binaries. Also add arm64 as a valid arch 2016-05-15 16:38:11 +03:00
Madhusudan.C.S
7e486bd777 Build and use the teststale binary on only the host platform. 2016-05-14 20:29:39 -07:00
Maciej Szulik
c283103602 Update upstream remote regex 2016-05-14 09:48:14 +02:00
Madhusudan.C.S
dd154350e8 Address review comments. 2016-05-13 23:09:44 -07:00
Madhusudan.C.S
dcaf005ffe Improve the speed of do-nothing build.
As thockin found out here https://github.com/kubernetes/kubernetes/issues/24518,
vast majority of the do-nothing build time is spent in rebuilding the test
binaries. There is no staleness check support for test binaries.

This commit implements the staleness checks for test binaries and uses them
while building packages.

Tests are TBD. I am still trying to figure out how to test this.
2016-05-13 23:09:44 -07:00
Tim Hockin
9a83015e60 Fix path munging funcs and usage
Our `realpath` and `readlink -f` functions (required only because of MacOS,
thanks Steve) were poor substitutes at best.  Mostly they were downright
broken.  This thoroughly overhauls them and adds a test (in comments, since we
don't seem to have shell tests).  For all the interesting cases I could think
of, the fakes act just like the real thing.

Then use those and canonicalize KUBE_ROOT.  In order to make recursive calls of
our shell tool not additively grow `pwd` we have to essentially make the
sourcing of init.sh idempotent.
2016-05-08 20:30:38 -07:00
Tim Hockin
527cb50583 Demand at least go1.6 2016-05-08 20:30:37 -07:00
Tim Hockin
cbf886c7f4 Convert everything to use vendor/ 2016-05-08 20:30:37 -07:00
k8s-merge-robot
41b7b04faf Merge pull request #24554 from ingvagabund/dhodovska-events-flag-for-describers
Automatic merge from submit-queue

Introduce events flag for describers

Printing events for a given object is not always needed. Thus, introducing --show-events=false to ``kubectl describe`` to skip events printing.

Fixes: #24239
2016-05-08 14:41:28 -07:00
Robert Bailey
2f65d2e617 Merge pull request #24666 from smarterclayton/munge_upstream
mungedocs should not assume upstream remote
2016-05-06 13:37:35 -07:00
Robert Bailey
828b4f8240 Merge pull request #24825 from kubernetes/revert-23157-fix-tags
Revert "Always use long format in git tag."
2016-05-06 13:34:32 -07:00
Jan Chaloupka
dd2c9c578d Introduce kubectl describe --show-events
Introduce DescriberSettings for Describer display options
Introduce --show-events flag and DescriberSettings in Describer methods
Introduce unit-tests
Regenerated kubectl describe docs
Add events flag tests to test-cmd.sh

Signed-off-by: dhodovsk@redhat.com
Signed-off-by: jchaloup@redhat.com
2016-05-06 11:40:11 +02:00
jay vyas
7a824aaf49 Cassandra de-flake 2016-05-04 21:11:56 -04:00
Clayton Coleman
4636af5b87
mungedocs should not assume upstream remote
The standard Git convention is "origin", not "upstream", so make it
flexible in the scripts for those who are set up differently.
2016-04-27 21:33:09 -04:00
Isaac Hollander McCreery
215872613b Revert "Always use long format in git tag." 2016-04-26 15:03:15 -07:00
nikhiljindal
aa4cdac005 hack/build-go tp build federation/cmd/federated-apiserver as well 2016-04-21 12:38:53 -07:00
k8s-merge-robot
d40bf503ed Merge pull request #24256 from porridge/fix-newlines
Automatic merge from submit-queue

Fix spacing in usage_from_stdin and info_from_stdin (issue #24186).

If "a" is a bash array, then the syntax to append the contents of $line as a
new element to the array is a+=("$line"), not messages+=$line

Using the former syntax just seems to append to the first element, creating a
long string and thus losing newline information.

Fixing this allows us to drop some empty lines from invocations of
usage_from_stdin.
2016-04-16 07:31:12 -07:00