Commit Graph

482 Commits

Author SHA1 Message Date
Di Xu
25a786f74d use more-specific arm32v7 instead of deprecated armhf organization 2017-08-21 10:17:43 +08:00
Cao Shufeng
6bc64dffe7 set proxy when build containers for users behind proxy
Fixes: https://github.com/kubernetes/kubernetes/issues/49921
2017-08-15 09:57:40 +08:00
Davanum Srinivas
827af63e72 Avoid rsync of .git directory
We don't really need the .git directory to be transferred. This
problem was introduced in the PR:
"Run the update-staging-godeps script inside a docker container"

Fixes #50272
2017-08-12 20:52:49 -04:00
Christoph Blecker
2ee8983daf
Dockerize update-staging-godeps 2017-07-25 12:26:57 -07:00
Christoph Blecker
d3b838b608
rsync git directories into kube-build 2017-07-25 12:11:06 -07:00
Dr. Stefan Schimanski
1f40e75aa0 Workaround docker-wait freeze with 17.06.0 2017-07-11 16:22:53 +02:00
Davanum Srinivas
733bb2c31d Add git branch to make build short hash unique
KUBE_ROOT_HASH depends just on the host name and
directory path. So when working with branches, it could lead
to some confusion since the hash is the same even when
you switch from branch to branch. Let us use the git branch
information when we compute the short hash

Fixes #1801
2017-06-02 21:18:00 -04:00
bruceauyeung
396695af15 fix make release/quick-release doesn't respect go build flags 2017-05-25 17:05:09 +08:00
Jeff Grafton
37eb292bc0 Update bazel build to dockerize cloud-controller-manager 2017-05-02 12:07:13 -07:00
Lucas Käldström
4ee9d047fd
Create a docker image for the cloud controller manager 2017-04-30 10:28:56 +03:00
StevenYCChou
7985e2c374 fix typo in build/common.sh 2017-04-16 19:22:30 -04:00
Clayton Coleman
7d413fb53b
protobuf generation modifies types.go, which needs to be copied out
This was broken when we moved to the build container, but no one
noticed. We also likely have another bug, which is that protobuf should
hard fail when we have fields that aren't assigned a tag.
2017-03-17 00:29:13 -04:00
Tim St. Clair
8a5314fb6d
Rebase kube-proxy and debian-iptables on debian-base 2017-02-27 15:48:23 -08:00
Kubernetes Submit Queue
3897fc00db Merge pull request #38926 from luxas/update_cross_go18
Automatic merge from submit-queue

Improve the multiarch situation; armel => armhf; reenable pcc64le; remove the patched golang

**What this PR does / why we need it**: 
 - Improves the multiarch situation as described in #38067 
 - Tries to bump to go1.8 for arm (and later enable ppc64le)
 - GOARM 6 => GOARM 7
 - Remove the golang 1.7 patch
 - armel => armhf
 - Bump QEMU version to v2.7.0

**Release note**:

```release-note
Improve the ARM builds and make hyperkube on ARM working again by upgrading the Go version for ARM to go1.8beta2
```

@kubernetes/sig-testing-misc @jessfraz @ixdy @jbeda @david-mcmahon @pwittrock
2017-01-28 03:51:19 -08:00
Lucas Käldström
04bc44acf9
Remove the patched golang from the kube-cross image and upgrade to go1.8rc1 for arm and ppc64le instead. Reenable the ppc64le builds 2017-01-27 20:03:37 +02:00
Robert Bailey
a6c65f3035 When calling chown, use : instead of . to separate the user and
group for cross platform compatibility.
2017-01-26 13:39:06 -08:00
Kubernetes Submit Queue
d5d9a594d8 Merge pull request #39515 from xilabao/fix-rsync-err
Automatic merge from submit-queue

fix rsync err when make release

fix #39513
2017-01-24 19:46:29 -08:00
xilabao
f6ae588207 fix rsync err when make release 2017-01-24 10:08:09 +08:00
Jeff Grafton
39217af9e9 Update amd64 kube-proxy base image to debian-iptables-amd64:v5 2017-01-11 00:49:13 -08:00
Jeff Grafton
9172bf63e5 Update to debian-iptables-*:v5 2017-01-10 16:23:01 -08:00
deads2k
453651cbfc rename kubernetes-discovery to kube-aggregator 2017-01-10 12:27:42 -05:00
deads2k
47073be356 create kuberentes-discovery image 2016-12-20 07:42:49 -05:00
Alejandro Escobar
7d9c06f82d local-up-cluster changes: added help option, added error message for why docker ps fails and how to recover, added test to check if etcd is in your path to fail fast when not found.
from etcd.sh split the start process into validate fucntion + start function so that the validate piece can be reused elsewhere. the up-cluster script has been changed to remove duplicate docker logic to the one used in buid-tools/common.sh and the validate etcd function is now used here.

moved docker daemon check function to util.sh and made function name changes and upstream changes.
2016-12-16 07:41:35 -08:00
xuxinkun
29dc75abc2 fix kube::log::error in start_rsyncd_container.
Signed-off-by: xuxinkun <xuxinkun@gmail.com>
2016-12-15 10:00:19 +08:00
Jeff Grafton
27d096d27d Rename build-tools/ back to build/ 2016-12-14 13:42:15 -08:00
Mike Danese
27116c6818 rename build/ to build-tools/ 2016-10-24 14:41:56 -07:00
Jeff Grafton
809e528d96 Increase build verbosity for rsync operations in verify-generated-{protobuf,runtime}.sh 2016-10-13 13:40:07 -07:00
Joe Beda
2582f1f368 Add --delete flag when rsyncing into container.
If you delete a source file, we want to reflect that in the build container.  We
only use --delete going that one way as we don't want to accidentally delete
files in the user's source tree.
2016-10-11 10:08:16 -07:00
Kubernetes Submit Queue
160adc3864 Merge pull request #34351 from jbeda/verify-rsync
Automatic merge from submit-queue

Check for rsync and give friendlier message

Fixes #34300.

Not sure if #34309 is the same issue.  Hopefully it is the same issue.
2016-10-08 02:48:14 -07:00
Kubernetes Submit Queue
bf1e7c8c69 Merge pull request #34288 from ixdy/build-image-rsync-sh
Automatic merge from submit-queue

Make sure rsync.sh is executable inside the build image

I kept having the build fail:
```console
$ make quick-release
+++ [1006 18:13:44] Verifying Prerequisites....
+++ [1006 18:13:44] Building Docker image kube-build:build-d3c60cf83f-3-v1.6.3-9
+++ [1006 18:13:54] Creating data container kube-build-data-d3c60cf83f-3-v1.6.3-9
+++ [1006 18:13:55] Syncing sources to container
!!! [1006 18:16:01] Could not connect to rsync container. See build/README.md for setting up remote Docker engine.
make: *** [quick-release] Error 1
```

`docker ps` revealed the issue:
```console
$ docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
$ docker ps -a
CONTAINER ID        IMAGE                                    COMMAND                  CREATED             STATUS                       PORTS               NAMES
75c2a3c40cb3        kube-build:build-d3c60cf83f-3-v1.6.3-9   "/rsyncd.sh"             6 seconds ago       Exited (126) 5 seconds ago                       kube-rsync-d3c60cf83f-3-v1.6.3-9
3eb215e41f36        kube-build:build-d3c60cf83f-3-v1.6.3-9   "chown -R 85078.5000 "   8 seconds ago       Exited (0) 6 seconds ago                         kube-build-data-d3c60cf83f-3-v1.6.3-9
5a2707af2ccd        882577c54f67                             "/bin/sh -c 'cd ${K8S"   7 days ago          Exited (2) 7 days ago                            stupefied_goldberg
$ docker logs 75c2a3c40cb3
/bin/bash: /rsyncd.sh: Permission denied
```

I'm not sure why this works on Jenkins but not on my machine.
2016-10-07 13:28:58 -07:00
Joe Beda
48906e6295 Check for rsync and give friendlier message 2016-10-07 12:25:09 -07:00
Jonathan Boulle
69874a4dca build: fix typo in error message help
"hasn't been set of is set" --> "hasn't been set or is set"
2016-10-07 16:30:02 +02:00
Jeff Grafton
e4b16a5a18 Make sure rsync.sh is executable inside the build image
Also make sure /etc/localtime is readable

Also move BUILD_IMAGE_VERSION to build-image/VERSION to be consistent
with the way the cross-image works.
2016-10-06 18:56:41 -07:00
Joe Beda
add137c4d5 Use rsync to probe for rsync ready
We were using netcat to try and figure out when the rsync container is ready. Now we instead use rsync itself. I suspect that there was a race condition with some versions of Docker where it would accept connections and then close them during container start.

This fixes #34214 (I think)
2016-10-06 12:13:04 -07:00
Joe Beda
d955f54918 Remove unused bash variables 2016-10-03 19:42:22 -07:00
Joe Beda
4330560b6a Make update-generated-*.sh not hack around with docker images
make-generated-{protobuf,runtime}.sh was doing some really nasty stuff with how
the build container was managed in order to copy results out.  Since we have
more flexibility to grab results out of the build container, we can now avoid
all of this.  Ideally we wouldn't have `hack` calling `build` at all, but we
aren't there yet.
2016-10-03 19:42:21 -07:00
Joe Beda
f861163a15 Move release code (bash) out of build/common.sh 2016-10-03 19:42:21 -07:00
Joe Beda
dc586ea8f7 Use rsync to get source into build container
We also add "version" to all docker images and containers

This version is to be incremented manually when we change the shape of the build
image (like changing the golang version or the set of volumes in the data
container).  This will delete all older versions of images and containers when
the version is different.
2016-10-03 19:42:20 -07:00
Joe Beda
17454a04ac Remove support for boot2docker 2016-10-03 19:42:20 -07:00
deads2k
06b1a9636d promote contrib/mesos to incubator 2016-09-28 10:58:09 -04:00
Jeff Grafton
13a3313957 Bundle kubemark in test tarball instead of server tarball 2016-09-26 11:06:48 -07:00
Random-Liu
a67fec6419 Add separate build process for node test. 2016-09-16 11:17:49 -07:00
David McMahon
4e07b43d70 Deprecate kubernetes/kubenetes release infrastructure and doc. 2016-09-09 17:51:20 -07:00
gmarek
3e2c3a5db2 Make image-puller work on GCI nodes. 2016-09-07 15:23:39 +02:00
Minhan Xia
1a484d5585 bump debian-iptables version 2016-09-02 14:34:29 -07:00
Kubernetes Submit Queue
09a97203aa Merge pull request #30744 from madhusudancs/fed-split-build-to-develop-deploy
Automatic merge from submit-queue

Separate federation build.sh into development and deployment scripts.

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

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

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

cc @kubernetes/sig-cluster-federation @colhom 

```release-note
Federation can now be deployed using the `federation/deploy/deploy.sh` script. This script does not depend on any of the development environment shell library/scripts. This is an alternative to the current `federation-up.sh`/`federation-down.sh` scripts. Both the scripts are going to co-exist in this release, but the `federation-up.sh`/`federation-down.sh` scripts might be removed in a future release in favor of `federation/deploy/deploy.sh` script.
```
2016-08-29 13:46:19 -07:00
Madhusudan.C.S
a6ff2364c5 Addressed review comments. 2016-08-25 14:34:19 -07:00
Madhusudan.C.S
d9cea93eb6 [Federation] Do not build separate binaries for federation control plane components, hyperkube should be sufficient.
Also build the hyperkube docker image on-the-fly.

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

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

We use debian image instead of busybox and do not build hyperkube as a
static binary yet. Wait until PR
https://github.com/kubernetes/kubernetes/pull/26028 is merged to build
static hyperkube binaries.
2016-08-25 14:29:32 -07:00
Madhusudan.C.S
9650a84f7b Separate federation build.sh into development and deployment scripts.
The idea behind this separation is that it provides a clear distinction
between the dev environment and the prod environment. The
deploy/deploy.sh script will be shipped to the users, but
develop/develop.sh will be purely for development purposes and won't
be part of a release distribution.

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

This change also copies deploy/* files into the release distribution.
2016-08-25 12:37:50 -07:00
Kubernetes Submit Queue
a24df66dc8 Merge pull request #30870 from piosz/rescheduler-setup
Automatic merge from submit-queue

Salt configuration for Rescheduler

ref #29023
2016-08-19 02:54:24 -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
Piotr Szczesniak
1f3fdab063 Salt configuration for Rescheduler 2016-08-18 12:24:09 +02:00
Madhusudan.C.S
2c32dc6ca4 Provide absolute path to cross build image VERSION file.
This allows invoking builds from non-root directories.
2016-08-16 22:51:04 -07: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
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
Michal Rostecki
5a85ed7646 Avoid duplicated contrib/ sources
This commit removes a part of common.sh script which copied
contrib/ sources for enabled contribs, which resulted in the
duplicated files inside tarball.

Fixes #30150
2016-08-10 07:39:37 +02:00
Tim Hockin
3b1407af70 Add goimports to the cross build 2016-08-05 22:58:57 -07:00
Kubernetes Submit Queue
3e5b40d9a5 Merge pull request #29947 from ixdy/go-bindata-cross-image
Automatic merge from submit-queue

Install go-bindata in cross-build image

Another follow-up to #25584.

We need `go-bindata` to create `test/e2e/generated`, and downloading it with `go get` at build time is painful for a variety of reasons. We can just include it in the cross-build image and not worry about it, especially as it updates very infrequently.

This fixes `hack/update-generated-protobuf.sh` as well.

cc @jayunit100 @soltysh
2016-08-04 06:03:29 -07:00
Jeff Grafton
b03784934d Add go-bindata to the cross-build image 2016-08-03 11:09:55 -07:00
Erick Fejta
add6feb53c Use format instead of awk to extract active account/project 2016-08-03 10:46:20 -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
Jess Frazelle
a333cf429a update go to 1.6.3
Signed-off-by: Jess Frazelle <me@jessfraz.com>
2016-07-18 16:29:46 -04:00
Mike Danese
95e2e299a9 move kube-dns to the cluster/addons/ directory 2016-07-14 11:44:00 -07:00
Tim Hockin
7e5b59b08c Include almost the whole tree in the build img 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
Zach Loafman
3edbadc8a2 Migrate to kuberetes-release-dev
This turns off the kubernetes-release-dev mirror. #28193 should have
shifted all the references over, this should ensure that it's true.
2016-07-11 13:37:10 -07:00
Lorrin Nelson
85589b406b Fix unintentional grammatical double-negative in error message when Docker not found on OS X. 2016-07-07 11:26:30 -07:00
Lorrin Nelson
d0e36819a4 Fix build on OS X when GNU sed is present.
See #20147, which fixed it when system default BSD sed was present but did not account for possibiliyt of GNU sed on OS X.
2016-07-07 11:26:30 -07:00
k8s-merge-robot
e232ecd201 Merge pull request #28498 from endocode/kayrus/fix_kuberoot
Automatic merge from submit-queue

build: fixed ${KUBE_ROOT} prefix for build scripts

Running `./make-build-image.sh` command inside the `build` directory doesn't work:

```sh
$ cd build
$ ./make-build-image.sh 
./../build/common.sh: line 32: hack/lib/init.sh: No such file or directory
```

This PR adds `${KUBE_ROOT}` prefix for the `source` bash function. Also I added braces to unify the code style.

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-07-07 07:33:25 -07:00
Brandon Weeks
d3208c6c3f
Test for certificate error and prompt to regenerate
If the docker-machine certificates get in a bad state, the current behavior
causes an infinite loop waiting for `docker-machine env` to return. Now it will
echo the certificate error and prompt the user to regenerate.
2016-07-06 10:27:16 -07:00
Anton Khramov
745d253d72 build: fixed ${KUBE_ROOT} prefix for build scripts 2016-07-05 14:47:31 +02:00
Tim Hockin
55eaa38036 Allow non-root build to write go code. 2016-07-03 00:39:59 -07:00
Tim Hockin
c3f4fb53ed Set hostname on build container 2016-07-03 00:38:32 -07:00
Tim Hockin
4959c2c76f Clean up logging in build container 2016-07-03 00:38:32 -07:00
Tim Hockin
ac75bd11cf Run builds as the calling user
This means no 'sudo' is needed to copy files out.
2016-07-03 00:36:20 -07:00
Tim Hockin
8fe8ec980e Cleanup a TODO from godeps -> vendor change
This logs a false "error" message, so it's time to go.  It was needed to ensure
nobody has stale build images laying around, but that was quite a while ago, so
it's probably safe now.
2016-07-02 15:15:39 -07:00
David McMahon
ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
k8s-merge-robot
3d22132a14 Merge pull request #28233 from zmerlynn/revert-revert-28172
Automatic merge from submit-queue

Revert revert of #28172

We're going to try reintroducing just the build changes in #28172, get signal off of that, and wait on re-introducing #28193. I also setup the `gke-updown` job for faster signal: https://github.com/kubernetes/test-infra/pull/239.

This reverts commit fe64293c6a.

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-29 14:09:51 -07:00
k8s-merge-robot
3a6494e9ae Merge pull request #28132 from madhusudancs/fed-kubedns-flags-nodebootstrap
Automatic merge from submit-queue

Substitute federation_domain_map parameter with its value in node bootstrap scripts.

This PR also removes the substitution code we added to the build scripts.

**Release Note**

```release-note
If you use one of the kube-dns replication controller manifest in `cluster/saltbase/salt/kube-dns`, i.e. `cluster/saltbase/salt/kube-dns/{skydns-rc.yaml.base,skydns-rc.yaml.in}`, either substitute one of `__PILLAR__FEDERATIONS__DOMAIN__MAP__` or `{{ pillar['federations_domain_map'] }}` with the corresponding federation name to domain name value or remove them if you do not support cluster federation at this time. If you plan to substitute the parameter with its value, here is an example for `{{ pillar['federations_domain_map'] }`
pillar['federations_domain_map'] = "- --federations=myfederation=federation.test"
where `myfederation` is the name of the federation and `federation.test` is the domain name registered for the federation.
```

cc @erictune  @kubernetes/sig-cluster-federation @MikeSpreitzer @luxas 

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-06-29 14:09:46 -07:00
Zach Loafman
ae313b6c8b Revert "Revert "Merge pull request #28172 from zmerlynn/push-alt-ci""
This reverts commit fe64293c6a.
2016-06-29 11:52:07 -07:00
Zach Loafman
fe64293c6a Revert "Merge pull request #28172 from zmerlynn/push-alt-ci"
This reverts commit 43437e4528, reversing
changes made to 532491aab6.
2016-06-29 07:56:48 -07:00
Zach Loafman
42827482b2 Build: Add KUBE_GCS_RELEASE_BUCKET_MIRROR option to push-ci-build.sh
And start pushing to new CI bucket as well.
2016-06-28 15:02:48 -07:00
k8s-merge-robot
f3359fe134 Merge pull request #27867 from johscheuer/add-upgrade-docker-vm
Automatic merge from submit-queue

Add upgrade Docker VM

Add an Error Message to upgarde your Docker VM if needed, example output:

```bash
+++ [0622 13:19:48] No docker host is set. Checking options for setting one...
+++ [0622 13:19:49] docker-machine was found.
+++ [0622 13:19:49] A Docker host using docker-machine named 'kube-dev' is ready to go!
Can't connect to 'docker' daemon.  please fix and retry.

Possible causes:
  - On Mac OS X, DOCKER_HOST hasn't been set. You may need to:
    - Create and start your VM using docker-machine or boot2docker:
      - docker-machine create -d virtualbox --virtualbox-memory 4096 --virtualbox-cpu-count -1 kube-dev
      - boot2docker init && boot2docker start
    - Set your environment variables using:
      - eval $(docker-machine env kube-dev)
      - $(boot2docker shellinit)
  - On Linux, user isn't in 'docker' group.  Add and relogin.
    - Something like 'sudo usermod -a -G docker jscheuermann'
    - RHEL7 bug and workaround: https://bugzilla.redhat.com/show_bug.cgi?id=1119282#c8
  - On Linux, Docker daemon hasn't been started or has crashed.
!!! Error in hack/../hack/update-generated-protobuf.sh:53
  'return 1' exited with status 1
Call stack:
  1: hack/../hack/update-generated-protobuf.sh:53 main(...)
Exiting with status 1
Updating generated-protobuf FAILED

$docker info
Error response from daemon: client is newer than server (client API version: 1.24, server API version: 1.23)
```

After running `docker-machine upgrade kube-dev` everything is fine again. So we should add a hint in the error message that this can also happen.
2016-06-28 04:35:20 -07:00
Madhusudan.C.S
816c4d9e2b Substitute federation_domain_map parameter with its value in node bootstrap scripts.
This also removes the substitution code we added to the build
scripts in one of the previous commits.
2016-06-27 14:54:49 -07:00
Matt Liggett
220da9949a Remove extra double quotes in --federations.
Fixes #28059
2016-06-24 16:43:52 -07:00
Madhusudan.C.S
3ee03a5584 Remove federation_domain_map entirely if it isn't set, seems to be not replaced by empty value. 2016-06-24 09:59:17 -07:00
Madhusudan.C.S
f980aa2ae1 Address review comments. 2016-06-23 17:47:09 -07:00
Madhusudan.C.S
c2e70a7c35 Parametrize the kube-dns --federations command line argument in the manifest.
This parameter is later substituted with the environment variable during
the build process.
2016-06-23 16:18:45 -07:00
Johannes Scheuermann
66e595b480 Add support for Docker for MacOS 2016-06-23 00:09:01 +02:00
Johannes Scheuermann
97ac3595d3 Add upgrade Docker VM 2016-06-22 23:27:41 +02:00
David McMahon
ef35e80604 Add sources to server tarballs. 2016-06-21 18:16:29 -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
Lucas Käldström
9673ca16b2 Enable builds for all ppc64le binaries except hyperkube 2016-06-15 22:59:25 +03:00
nikhiljindal
ee478ec8c2 include federation binaries in the list of images we push during release 2016-06-14 14:30:51 -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
nikhiljindal
d2ea7a29ab Add federation controller manager to federation e2es 2016-06-02 00:17:11 -07:00
k8s-merge-robot
ee412efcef Merge pull request #26335 from girishkalele/kubedns-transition
Automatic merge from submit-queue

Switch DNS addons from skydns to kubedns

Change GCI and trusty cluster-helper scripts to use kubedns instead of skydns.
2016-05-31 16:14:48 -07:00
Girish Kalele
4c1047d359 Switch DNS addons from skydns to kubedns
Unified skydns templates using a simple underscore based template and
added transform sed scripts to transform into salt and sed yaml
templates

Moved all content out of cluster/addons/dns into build/kube-dns and
saltbase/salt/kube-dns
2016-05-31 10:14:14 -07:00
Prashanth Balasubramanian
c01a0583f7 Trusty deployment 2016-05-30 15:58:03 -07:00
Dr. Stefan Schimanski
a79a420fde Move shell completion generation into 'kubectl completion' command 2016-05-30 07:23:36 +02:00
k8s-merge-robot
e7269a13ff Merge pull request #26413 from mwielgus/gci-ca
Automatic merge from submit-queue

Support for cluster autoscaler in GCE Trusty and GCI images

Fixes: #26346
Ref: #26197

cc: @fgrzadkowski  @vulpecula @piosz @jszczepkowski
2016-05-27 06:58:15 -07:00
Marcin
5f2695be8e Support for cluster autoscaler in GCE Trusty and GCI images 2016-05-27 12:02:20 +02:00
Alex Mohr
2233417673 Merge pull request #25973 from derekwaynecarr/fix_build
Fix builds on selinux systems
2016-05-26 15:47:06 -07: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
Andy Zheng
f31c4f6d69 Revert "Revert "Add support for running GCI on the GCE cloud provider""
This reverts commit 40f53b1765.
2016-05-23 00:52:08 -07:00
derekwaynecarr
3b93d4dac1 Fix builds on selinux systems 2016-05-20 13:21:20 -04:00
Daniel Smith
40f53b1765 Revert "Add support for running GCI on the GCE cloud provider" 2016-05-18 21:31:28 -07:00
Andy Zheng
a737e1eba1 Add support for running GCI on the GCE cloud provider 2016-05-18 15:15:05 -07:00
Tim Hockin
92da8e6f1c Make it possible to use kube-cross as non-root
The extra TMPDIR was not writable except as root.  This is not the only fix
needed for this goal, but is necessary.
2016-05-10 10:06:56 -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
cbf886c7f4 Convert everything to use vendor/ 2016-05-08 20:30:37 -07:00
k8s-merge-robot
f46f35a9df Merge pull request #23600 from mikedanese/addon-manager
Automatic merge from submit-queue

run kube-addon-manager in a static pod

Depends on https://github.com/kubernetes/kubernetes/pull/23605 and https://github.com/kubernetes/kubernetes/pull/24108

Ref #23233
2016-05-08 11:30:44 -07:00
Robert Bailey
d010c7d5d5 Merge pull request #24940 from ihmccreery/fix-release
Proper account checking and respect TMPDIR in release process
2016-05-06 14:51:39 -07:00
Robert Bailey
57359e4f2f Merge pull request #24549 from MHBauer/osx-build-experience
improve the osx build experience
2016-05-06 14:40:21 -07:00
Robert Bailey
5f4f59e671 Merge pull request #24950 from andyzheng0831/apiserver
GCI/Trusty: Support ABAC authorization
2016-05-06 13:59:39 -07:00
Robert Bailey
aa24694c60 Merge pull request #24662 from soltysh/protobuf_selinux
Fix SELinux settings for mounted volumes
2016-05-06 13:36:16 -07:00
Mike Danese
3e1c0b5951 run kube-addon-manager in a pod 2016-05-06 11:01:06 -07:00
Doug Davis
9323760399 Add a better error message to run.sh
I ran build/run.sh w/o any args (by mistake) and it just said
   `Invalid input.`
after several other steps. I had no idea whether I was doing something
wrong or if my env was busted. Clearly, I just forget to include the
command that run.sh was to invoke in the Docker container.  But it took
me time to go track down where this error came from and why. So to help
others I just tweaked the error message to be:
   `Invalid input - please specify a command to run.`

Very minor thing,I know, but if it helps others...

Signed-off-by: Doug Davis <dug@us.ibm.com>
2016-05-05 13:43:14 -07:00
k8s-merge-robot
c79c5864e7 Merge pull request #25051 from spxtr/fix-1.6.2
Automatic merge from submit-queue

Use v1.6.2-1 tag for build.

Is there any reason these don't use the VERSION file like everything else? cc @luxas @ixdy
2016-05-05 03:36:27 -07:00
Jeff Grafton
0f041382ee Use HOSTNAME in Docker build image tag hash
Additionally, use REPO_DIR in update-generated-protobuf, since this
should be more unique (when set).
2016-05-02 16:03:27 -07:00
Joe Finney
f128b30318 Use v1.6.2-1 tag for build. 2016-05-02 14:43:06 -07:00
Morgan Bauer
b8987ba28a
improve the osx build experience
- give the docker-machine VM more memory and access to all CPU cores
 - make DOCKER_MACHINE_NAME not readonly beacuse it is set by docker-machine
 - redirect stderr to ignore unhelpful error messages
 - unquote 'docker-machine create' argument
2016-04-29 10:26:22 -07:00
Andy Zheng
27c9ee3646 GCI/Trusty: Support ABAC authorization 2016-04-28 14:04:28 -07:00
Isaac Hollander McCreery
a9c004640e build/push-official-release.sh checks if proper account is active, not just present 2016-04-28 10:55:46 -07:00
Andy Zheng
93929c3853 Add support for running clusters on GCI 2016-04-27 15:24:21 -07:00
Maciej Szulik
5761b4a8bd Fix SELinux settings for mounted volumes 2016-04-27 17:45:04 +02: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
3b2aae809f Merge pull request #22573 from freehan/udpproxy
Automatic merge from submit-queue

Flush conntrack state for removed/changed UDP Services

fixes: #19029
2016-04-19 21:06:45 -07:00
k8s-merge-robot
16e2e87a89 Merge pull request #23605 from mikedanese/pause-kube
Automatic merge from submit-queue

don't ship kube-registry-proxy and pause images in tars.

pause is built into containervm. if it's not on the machine we should just pull
it. nobody that I'm aware of uses kube-registry-proxy and it makes build/deployment
more complicated and slower.
2016-04-15 00:26:20 -07:00
Lucas Käldström
4559a84d3b Build Kubernetes, etcd and flannel for arm64 and ppc64le 2016-04-14 07:29:10 +03:00
Minhan Xia
4fa6f3841a fixing dead endpoint black hole udp traffic 2016-04-13 10:20:02 -07:00
k8s-merge-robot
af1803bfb9 Merge pull request #23763 from david-mcmahon/build-regex
Automatic merge from submit-queue

Fix valid CI version regex in parse_and_validate_release_version().

Ref: #23759
cc @ihmccreery
2016-04-12 05:19:55 -07:00
k8s-merge-robot
4f329516ae Merge pull request #22149 from luxas/onedotsix
Automatic merge from submit-queue

Up to golang 1.6

A second attempt to upgrade go version above `go1.4`
Merge ASAP after you've cut the `release-1.2` branch and feel ready.
`go1.6` should perform slightly better than `go1.5`, so this time it might work
@gmarek @wojtek-t @zmerlynn @mikedanese @brendandburns @ixdy @thockin
2016-04-05 13:26:18 -07:00
Mike Danese
32426d6e97 don't ship kube-registry-proxy and pause in tars.
pause is built into containervm. if it's not on the machine we should just pull
it. nobody that I'm aware of uses kube-registry-proxy and it makes build/deployment
more complicated and slower.
2016-04-05 07:32:07 -07:00
k8s-merge-robot
b8d000853e Merge pull request #21617 from luxas/hyperkube_for_arm
Automatic merge from submit-queue

Cross-build hyperkube and debian-iptables for ARM. Also add a flannel image

We have to be able to build complex docker images too on `amd64` hosts.
Right now we can't build Dockerfiles with `RUN` commands when building for other architectures e.g. ARM.

Resin has a tutorial about this here: https://resin.io/blog/building-arm-containers-on-any-x86-machine-even-dockerhub/
But it's a bit clumsy syntax.

The other alternative would be running this command in a Makefile:
```
# This registers in the kernel that ARM binaries should be run by /usr/bin/qemu-{ARCH}-static
docker run --rm --privileged multiarch/qemu-user-static:register --reset
```
and 
```
ADD https://github.com/multiarch/qemu-user-static/releases/download/v2.5.0/x86_64_qemu-arm-static.tar.xz /usr/bin
```
Then the kernel will be able to differ ARM binaries from amd64. When it finds a ARM binary, it will invoke `/usr/bin/qemu-arm-static` first and lets `qemu` translate the ARM syscalls to amd64 ones.
Some code here: https://github.com/multiarch

WDYT is the best approach? If registering `binfmt_misc` in the kernels of the machines is OK, then I think we should go with that.
Otherwise, we'll have to wait for resin's patch to be merged into mainline qemu before we may use the code I have here now.

@fgrzadkowski @david-mcmahon @brendandburns @zmerlynn @ixdy @ihmccreery @thockin
2016-04-04 22:03:32 -07:00
Lucas Käldström
560268e036 Add a flannel image for arm and amd64. Cross-build debian-iptables for arm, arm64 and ppc64le. Build and push hyperkube for arm on every release 2016-04-04 23:33:32 +03:00
David McMahon
c7c7d6c0aa Fix valid CI version regex in kube::release::parse_and_validate_release_version(). 2016-04-04 12:14:15 -07:00
David McMahon
a7b789cb0a Honor incoming OUT_DIR from the Makefile. 2016-03-28 16:34:07 -07:00
Lucas Käldström
2928d0a8ec Up to golang 1.6 2016-03-27 17:17:04 +03:00
Andy Zheng
0a8e68fb49 Trusty: Avoid reaching GCE custom metadata size limit 2016-03-20 10:22:50 -07:00
zhouhaibing089
884fbf3d22 only pull addon images when it does not exist 2016-03-17 10:52:32 +08:00
k8s-merge-robot
2bb7960b61 Merge pull request #22738 from wojtek-t/build_protobufs_in_docker
Auto commit by PR queue bot
2016-03-15 16:56:26 -07:00
Wojciech Tyczynski
52798beef2 Generate protobuf-related files in Docker 2016-03-09 10:45:24 +01:00
mfanjie
d433632cd2 add proxy settings for vagrant 2016-03-07 09:57:26 +08:00
Andy Zheng
242b9977c7 Remove manifest copies from Trusty support
This change revises the way to provide kube-system manifests for clusters on Trusty. Originally, we maintained copies of some manifests under cluster/gce/trusty/kube-manifests, which is not scalable and hard to maintain. With this change, clusters on Trusty will use the same source of manifests as ContainerVM. This change also fixes some minor problems such as shell variables and comments to meet the style guidance better.
2016-03-04 11:16:49 -08:00
David McMahon
7a54cb2ad0 Add Godeps/LICENSES to server tarball. 2016-03-02 11:23:32 -08:00
k8s-merge-robot
6dbdcfe78f Merge pull request #22116 from david-mcmahon/license-tool
Auto commit by PR queue bot
2016-03-02 07:14:40 -08:00
David McMahon
ffeaef6201 New Godeps LICENSE generation tool.
Includes initial Godeps/LICENSES and Godeps/.license_file_state file to ensure
fast local generation.
2016-03-01 18:16:09 -08:00
k8s-merge-robot
cdf456af0e Merge pull request #21520 from mikedanese/fastbuild
Auto commit by PR queue bot
2016-02-28 07:23:22 -08:00
Filip Grzadkowski
6f6cb45638 Make #19601 backward compatible.
Fixes #20047
2016-02-25 14:24:51 +01:00
David McMahon
b24fc293e3 Merge pull request #21557 from luxas/fix_typo
Do not push images that don't exist
2016-02-19 11:56:21 -08:00
Mike Danese
132c4271dc add linux fastbuild option to ./build/release.sh 2016-02-19 10:18:05 -08:00
Lucas Käldström
bfc9cfdb82 Do not push images that don't exist 2016-02-19 18:45:14 +02:00
k8s-merge-robot
4de373aafd Merge pull request #20714 from fgrzadkowski/push_gcr
Auto commit by PR queue bot
2016-02-18 23:31:13 -08:00
Phillip Wittrock
5fe856c749 Merge pull request #20882 from mikedanese/push-kube-cross
push kube-cross to gcr.io
2016-02-18 16:26:29 -08:00
Filip Grzadkowski
2c51e03759 Switch to k8s.production.user@gmail.com for pushing docker images during the release.
Fixes #19623
2016-02-18 20:15:02 +01:00
laushinka
7ef585be22 Spelling fixes inspired by github.com/client9/misspell 2016-02-18 06:58:05 +07:00
Mike Danese
f3b9fa62d6 push kube-cross to gcr.io
And do as much of the build setup work in it as possible.
2016-02-16 10:05:46 -08:00
k8s-merge-robot
62258cab24 Merge pull request #21031 from zmerlynn/distribute-source
Auto commit by PR queue bot
2016-02-14 11:12:18 -08:00
Lucas Käldström
b67445b064 Share the host's timezone with the build container 2016-02-11 07:44:05 +02:00
Zach Loafman
b857f61009 Output tar of build image during release process
To meet licensing/compliance guidelines, bundle up the source. One of
the easiest ways to do this is just to grab the entire build image
directory - this makes it pretty much guaranteed that the user could
re-run the Docker build again from the exact code point if they wanted
to (they just need to poke at our scripts to figure out how).
2016-02-10 18:04:04 -08:00
k8s-merge-robot
fc3316ee1b Merge pull request #20398 from mfanjie/mfanjie-patch-1
Auto commit by PR queue bot
2016-02-09 22:55:18 -08:00
Lucas Käldström
c969c041e2 Add support for building arm, arm64 and ppc64le server and client targets 2016-02-07 20:35:14 +02:00
fmeng
aaea05980c change sed_opts as array 2016-02-06 16:49:35 +08:00
Daniel Smith
75c1dcaacd Merge pull request #20463 from andyzheng0831/trusty-master
Support master on Ubuntu Trusty
2016-02-05 15:49:28 -08:00
fmeng
ef42dad78e update proxy settings for kubernetes build. 2016-02-04 17:38:07 +08:00
Zach Loafman
e87b93f1b8 KUBE_BUILD_GOLANG_VERSION=1.4.2 2016-02-03 11:46:03 -08:00
Andy Zheng
b103f0f279 Support master on Ubuntu Trusty
This change support running kubernetes master on Ubuntu Trusty.
It uses pure cloud-config and shell scripts, and completely gets
rid of saltstack or the release salt tarball.
2016-02-03 11:22:28 -08:00
fmeng
368fb2225c fix sed error in build/common.sh 2016-01-29 10:45:50 +08:00
k8s-merge-robot
a95f1b84cb Merge pull request #17243 from yifan-gu/gce_coreos
Auto commit by PR queue bot
2016-01-27 13:02:20 -08:00
Zach Loafman
07c304b43d build: Use Go version in cross image tag
The new tag format is cross-<go version>-<cross version>, starting
with cross-1.5.3-1.

Also bump the image we pre-pull / warn-on to 1.5.3

Fixes #19990
2016-01-22 11:45:41 -08:00
Yifan Gu
723402c4e9 build/common.sh: Copy manifests. 2016-01-21 16:32:15 -08:00
Alex Mohr
e98fb3c424 Merge pull request #19810 from spiffxp/empty-docker-opts-cp
Support building on remote docker-machine instances
2016-01-21 14:30:57 -08:00
Alex Mohr
ae56a2a1d5 Merge pull request #19555 from spiffxp/verify-prereqs-noargs
verify_prereqs doesn't special-case on 'clean' arg
2016-01-21 10:43:41 -08:00
Isaac Hollander McCreery
041f152e80 Add flag to force pull on docker build 2016-01-20 09:14:57 -08:00
Aaron Crickenberger
d46a97224a Support building on remote docker-machine instances
Use case: I have a docker-machine instance in the cloud, and an empty
DOCKER_OPTS env var.  I want to `build/run.sh hack/build-go.sh`

Previously, this would invoke `docker '' cp` which was erroring out
with: '' not a command.
2016-01-18 17:44:23 -08:00
Mike Danese
c446bf508e Merge pull request #19431 from spiffxp/docker-machine-rm-hardcode
Allow for use of docker-machine not named kube-dev
2016-01-14 13:46:10 -08:00
Aaron Crickenberger
4488f7d33c verify_prereqs doesn't special-case on 'clean' arg
update docs and invocation accordingly
2016-01-12 11:26:59 -08:00
k8s-merge-robot
cc7acc0c58 Merge pull request #19061 from fgrzadkowski/release_docker
Auto commit by PR queue bot
2016-01-11 20:56:00 -08:00
k8s-merge-robot
ce9b117a19 Merge pull request #16698 from mml/issue3885
Auto commit by PR queue bot
2016-01-09 13:38:41 -08:00
Aaron Crickenberger
5062197ec6 Allow for use of docker-machine not named kube-dev 2016-01-08 17:07:48 -08:00
Matt Liggett
c6e9ad066e Initial node drain implementation for #3885.
It cordons (marks unschedulable) the given node, and then deletes every
pod on it, optionally using a grace period.  It will not delete pods
managed by neither a ReplicationController nor a DaemonSet without the
use of --force.

Also add cordon/uncordon, which just toggle node schedulability.
2016-01-06 17:28:18 -08:00
Andy Zheng
d27e3ae8a1 Run kube-proxy in Trusty in a static pod.
We copy the manifest from salt configurations, and then remove the salt
content in the file and replace the variables with values.
2016-01-05 16:11:58 -08:00
Filip Grzadkowski
e7e8c5af84 Push docker images for cluster components during release. 2016-01-05 12:36:10 +01:00
Mike Danese
c00dfe82f8 Revert "Push server docker images during the release" 2015-12-22 19:59:56 -08:00
k8s-merge-robot
78b573e803 Merge pull request #18893 from fgrzadkowski/release_docker
Auto commit by PR queue bot
2015-12-22 16:54:18 -08:00
k8s-merge-robot
3f91f18a55 Merge pull request #18488 from yifan-gu/dockerized_python
Auto commit by PR queue bot
2015-12-19 10:52:15 -08:00
Yifan Gu
516032f336 kube-addons: Use python container if python is not found on the machine.
To build the python image, BUILD_PYTHON_IMAGE should be set during make.
When the addon script is running, it will check if python is installed
on the machine, if not, it will use the python image that built previously.
2015-12-18 15:14:56 -08:00
Filip Grzadkowski
f6fce5cd43 Push docker images during the release. 2015-12-18 16:08:44 +01:00
Andy Zheng
75e23a3845 Add release support for trusty kube-system manifests.
This is a follow-up work for PR 18115. It adds release support for
kube-system manifests.
2015-12-10 10:47:01 -08:00
k8s-merge-robot
ac65782e03 Merge pull request #17121 from mikedanese/kube-proxy-static
Auto commit by PR queue bot
2015-11-20 07:19:26 -08:00
k8s-merge-robot
c8d2ec6ffd Merge pull request #16919 from ihmccreery/enable-prerelease-push-official-release
Auto commit by PR queue bot
2015-11-20 06:47:23 -08:00
Isaac Hollander McCreery
2fad9a1271 Use env variables instead of BASH_REMATCH for parse_and_validates 2015-11-19 09:51:51 -08:00
Isaac Hollander McCreery
58eaa33979 Enable push-official-version to deal with prereleases 2015-11-19 09:51:51 -08:00
Mike Danese
1d9d11c836 run kube-proxy in a static pod 2015-11-18 16:52:10 -08:00
Mike Danese
ae05eed14a add a way to discover git version from a built release 2015-11-18 11:11:50 -08:00
k8s-merge-robot
840f3dad53 Merge pull request #16960 from andyzheng0831/trusty
Auto commit by PR queue bot
2015-11-17 01:21:15 -08:00
k8s-merge-robot
b250006e65 Merge pull request #17194 from mikedanese/configure-baseimage
Auto commit by PR queue bot
2015-11-16 13:48:49 -08:00
Matt Moore
b750d1dddc Drop the beta for GCR v2 images.
beta.gcr.io is no longer needed to pull through v2.
2015-11-14 12:19:02 -08:00