Commit Graph

641 Commits

Author SHA1 Message Date
Jeff Grafton
e231d4280b Replace git_repository with http_archive and use ixdy's fork of bazel tools for pkg_tar 2017-05-03 10:13:06 -07:00
Jeff Grafton
45a6455ac7 Use new docker_bundle rule instead of ixdy's custom docker_build rule 2017-05-02 16:30:24 -07:00
Kubernetes Submit Queue
46971d6d21 Merge pull request #45120 from ixdy/bazel-push-build
Automatic merge from submit-queue

Also upload debs to bin/$OS/$ARCH

**What this PR does / why we need it**: the bazel-built debs are used by the kubeadm e2e tests, so upload them too.

https://github.com/kubernetes/kubernetes/pull/44591#issuecomment-298084453

/assign @pipejakob 
/cc @mikedanese @spxtr 

**Release note**:

```release-note
NONE
```
2017-05-02 15:40:35 -07:00
Jeff Grafton
37eb292bc0 Update bazel build to dockerize cloud-controller-manager 2017-05-02 12:07:13 -07:00
Kubernetes Submit Queue
3791abd628 Merge pull request #44981 from ixdy/version-docker-tag
Automatic merge from submit-queue

Use munged semantic version for side-loaded docker tag

**What this PR does / why we need it**: rather than using the md5sum of the dockerized binary for each side-loaded docker image, use the semantic version (with `+`s replaced with `_`s) for the side-loaded docker images.

The use of the md5sum for the docker tag dates to #6326 2 years ago. I'm not sure why that was chosen, short of it being fairly unique.

My main motivation for changing this is that it makes building the docker images using Bazel's docker rules easier, since the semantic version doesn't depend on the build output.

An added benefit is that the list of images on a running kubernetes cluster is also more straightfoward; rather than a list of opaque, meaningless hexadecimal strings, you get something that indicates the provenance of the image. It'd also be clearer that all of the images came from the same build.

I was able to start a cluster with this change on GCE using both `make quick-release` and `make bazel-release`.

Note that this change has no effect on the tag that's pushed to gcr.io during releases; that's still controlled via `KUBE_IMAGE_DOCKER_TAG`, though we may want to merge this functionality at some point.

@kubernetes/sig-node-pr-reviews is there any reason to stick with using the md5sum strategy? @dchen1107 do you remember why we went with md5sums originally?
cc @spxtr @mikedanese 

**Release note**:

```release-note
```
2017-05-01 19:48:18 -07:00
Kubernetes Submit Queue
03c9c48c81 Merge pull request #44062 from ixdy/semver-regexes
Automatic merge from submit-queue

Support arbitrary alphanumeric strings as prerelease identifiers

**What this PR does / why we need it**: this is basically an extension of #43642, but supports more general prerelease identifiers, per the spec at http://semver.org/#spec-item-9.

These regular expressions are still a bit more restrictive than the SemVer spec allows (we disallow hyphens, and we require the format `-foo.N` instead of arbitrary `-foo.X.bar.Y.bazZ`), but this should support our needs without changing too much more logic or breaking other assumptions.

**Release note**:

```release-note
NONE
```
2017-05-01 12:54:44 -07:00
Lucas Käldström
4ee9d047fd
Create a docker image for the cloud controller manager 2017-04-30 10:28:56 +03:00
Jeff Grafton
f0e0a27f3e Also upload debs to bin/$OS/$ARCH 2017-04-28 13:25:12 -07:00
Timothy St. Clair
01366851ea Prune k8petstore from examples and e2es per discussion on sig-testing 2017-04-28 11:49:23 -05:00
Jeff Grafton
f73e3cbb30 Use munged semantic version for side-loaded docker tag 2017-04-27 15:05:40 -07:00
Kubernetes Submit Queue
14a557b1a2 Merge pull request #44346 from mikedanese/build-static
Automatic merge from submit-queue (batch tested with PRs 41106, 44346, 44929, 44979, 45027)

bazel: statically link dockerized components
2017-04-27 12:11:00 -07:00
Kubernetes Submit Queue
549bd4b7d5 Merge pull request #44591 from ixdy/bazel-push-build
Automatic merge from submit-queue (batch tested with PRs 44591, 44549)

Update repo-infra bazel dependency and use new gcs_upload rule

This PR provides similar functionality to push-build.sh entirely within Bazel rules (though it relies on gsutil).

It's an alternative to #44306.

Depends on https://github.com/kubernetes/repo-infra/pull/13.

**Release note**:

```release-note
NONE
```
2017-04-27 10:54:56 -07:00
Lucas Käldström
6b5d5371d9
Bump to go1.8.1 and remove the edge GOROOT 2017-04-25 23:45:47 +03:00
Jeff Grafton
a9bfae8ec3 Update repo-infra bazel dependency and use new gcs_upload rule 2017-04-25 13:45:28 -07:00
Piotr Szczesniak
113f120e29 Removed fluentd-gcp manifest pod 2017-04-20 15:53:24 +02:00
Christoph Blecker
89500f149a
Add hack/lib to kubernetes release tarball 2017-04-19 15:33:43 -07:00
StevenYCChou
7985e2c374 fix typo in build/common.sh 2017-04-16 19:22:30 -04:00
Kubernetes Submit Queue
515b089e9f Merge pull request #44364 from mikedanese/delete-unbuilding
Automatic merge from submit-queue

bazel: delete deb that doesn't build

cmd/kube-aggregator is long gone.
2017-04-14 17:22:50 -07:00
Mike Danese
3757e8bb5c bazel: statically link dockerized components
and remove libc from docker images when it's not needed.
2017-04-14 15:51:54 -07:00
Jeff Grafton
73a7e348c0 Add a few missing binaries to the Bazel SERVER_TARGETS list 2017-04-14 13:37:41 -07:00
Mike Danese
5b12a2abb9 have multiple BUILD files in vendor/ 2017-04-14 10:36:15 -07:00
Mike Danese
82089af496 bazel: delete deb that doesn't build 2017-04-11 14:56:52 -07:00
Manjunath A Kumatagi
47b0aee273 Bump K8S_GOLANG_EDGE_VERSION to 1.8.1 2017-04-07 14:51:18 -04:00
Jeff Grafton
37b07dfe62 Support arbitrary alphanumeric strings as prerelease identifiers 2017-04-04 16:30:54 -07:00
Kubernetes Submit Queue
10e9ef7189 Merge pull request #43817 from spxtr/owners
Automatic merge from submit-queue

Update my OWNERS entries.

Not sure why I was set as a reviewer for apimachinery and apiserver stuff. Adding myself to build/.
**Release note**:
```release-note
NONE
```
2017-03-31 11:29:29 -07:00
Kubernetes Submit Queue
d1dd73e9f6 Merge pull request #42668 from ixdy/build-silence-docker-rmi
Automatic merge from submit-queue (batch tested with PRs 42379, 42668, 42876, 41473, 43260)

Silence error messages from the docker rmi call we expect to fail

**What this PR does / why we need it**: when we removed `docker tag -f` in #34361 we added a bunch of `docker rmi` calls to preserve behavior for older docker versions. That step is usually a no-op, however, and results in confusing messages like
```
Tagging docker image gcr.io/google_containers/kube-proxy:c8d0b2e7a06b451117a8ac58fc3bb3d3 as gcr.io/kubernetes-release-test/kube-proxy-amd64:v1.5.4
Error response from daemon: No such image: gcr.io/kubernetes-release-test/kube-proxy-amd64:v1.5.4
```

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

**Special notes for your reviewer**: I could probably remove the `docker rmi` calls entirely, though I don't know if folks are still using docker < 1.10. (I think Jenkins still has 1.9.1.)

**Release note**:

```release-note
NONE
```

cc @jessfraz
2017-03-30 23:36:24 -07:00
Joe Finney
896db18f28 Update my OWNERS entries. 2017-03-29 10:13:21 -07:00
Manjunath A Kumatagi
52f9875c0b Fix docker volume selinux issue 2017-03-24 22:37:29 -04:00
Jeff Grafton
e39978e6bf Update a few regex patterns to support release candidates 2017-03-24 14:38:04 -07:00
Dan Gillespie
04c20f441f bump Kubernetes packaged CNI to v0.5.1 2017-03-22 12:47:31 -07: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
Jeff Grafton
836b59962a Silence error messages from docker rmi calls we expect to fail 2017-03-07 12:49:57 -08:00
Kubernetes Submit Queue
79883dc48d Merge pull request #42070 from luxas/remove_kube_discovery
Automatic merge from submit-queue

Remove the kube-discovery binary from the tree

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

kube-discovery was a temporary solution to implementing proposal: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/bootstrap-discovery.md

However, this functionality is now gonna be implemented in the core for v1.6 and will fully replace kube-discovery:
 - https://github.com/kubernetes/kubernetes/pull/36101 
 - https://github.com/kubernetes/kubernetes/pull/41281
 - https://github.com/kubernetes/kubernetes/pull/41417

So due to that `kube-discovery` isn't used in any v1.6 code, it should be removed.
The image `gcr.io/google_containers/kube-discovery-${ARCH}:1.0` should and will continue to exist so kubeadm <= v1.5 continues to work.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Remove cmd/kube-discovery from the tree since it's not necessary anymore
```
@jbeda @dgoodwin @mikedanese @dmmcquay @lukemarsden @errordeveloper @pires
2017-03-04 12:58:23 -08:00
Kubernetes Submit Queue
d1f9921449 Merge pull request #42090 from timstclair/kube-proxy
Automatic merge from submit-queue (batch tested with PRs 41921, 41695, 42139, 42090, 41949)

Rebase kube-proxy and debian-iptables on debian-base

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

Slimmer images are generally preferred, but it's a minor optimization. The larger advantage to this change is the reduced attack surface from removing unnecessary packages, and easier maintenance from sharing a common base image.

Size comparison:
```
gcr.io/google-containers/debian-iptables-amd64:v6         127.9 MB
gcr.io/google-containers/debian-iptables-amd64:v7          45.1 MB
```

**Which issue this PR fixes** https://github.com/kubernetes/kubernetes/issues/40248

**Special notes for your reviewer**:
Tested by deploying to a private test cluster and running the e2es. This will fail the jenkins builds until I push the `gcr.io/google-containers/debian-iptables-amd64:v7` image, which I will do once I have an LGTM.

**Release note**:
```release-note
Clean up the kube-proxy container image by removing unnecessary packages and files.
```

/cc @luxas @ixdy
2017-03-01 04:10:06 -08:00
Mike Danese
33ea2d11fc remove trusty GCE kube-up.sh 2017-02-28 10:08:17 -08:00
Madhusudan.C.S
8de2f05f63 Move push-federation-images.sh to federation and implement similar functionality in jenkins build directory for presubmits. 2017-02-27 17:54:37 -08: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
5b5bb97463 Merge pull request #41915 from timstclair/debian-base
Automatic merge from submit-queue (batch tested with PRs 35408, 41915, 41992, 41964, 41925)

Standard Debian base image

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

The goal of this new image is to provide a standard base image for Kubernetes system images that require substantial external dependencies (e.g. kube-proxy and fluentd). The image is significantly reduced from the standard `debian:jessie-slim` image (40 MB vs 80 MB), and removes a number of unnecessary dependencies such as e2fsprogs, systemd, and sysv-rc. In the future we may consider further reducing it to the bare minimum to run the package manager, with the requirement that images based on it add all the dependencies they need.

I tested this by rebasing kube-proxy on this image and running the e2e tests. I'm targeting 1.6 for rebasing kube-proxy & fluentd on this.

For the rational behind basing on Debian, see https://github.com/kubernetes/kubernetes/issues/40248#issuecomment-280781931

Largely based off [debian-iptables](https://github.com/kubernetes/kubernetes/tree/master/build/debian-iptables/) and [ubuntu-slim](https://github.com/kubernetes/ingress/tree/master/images/ubuntu-slim).

**Which issue this PR fixes**
https://github.com/kubernetes/kubernetes/issues/40248

**Special notes for your reviewer**:
@luxas Please review the qemu cross-build logic in the Makefile. It's copied from [debian-iptables](https://github.com/kubernetes/kubernetes/blob/master/build/debian-iptables/Makefile), but I'm not sure exactly what it's doing.

/cc @jessfraz @dlorenc
2017-02-26 18:07:54 -08:00
Lucas Käldström
c4e989f51c
Remove the kube-discovery binary from the tree 2017-02-24 21:23:26 +02:00
Tim St. Clair
ef950c48de
Standard Debian base image 2017-02-23 16:15:09 -08:00
Wojciech Tyczynski
a7d2136ce1 Update etcd to 3.0.17 in integration tests 2017-02-23 10:08:50 +01:00
Christoph Blecker
c3de31c8d0
Bump golang versions to 1.7.5 2017-02-21 13:02:16 -08:00
deads2k
ab0a57760e remove kube-aggregator from bazel until we can build it 2017-02-14 14:57:52 -05:00
deads2k
1d40c3ff76 update scripts for new kube-aggregator location 2017-02-14 14:16:59 -05:00
Kubernetes Submit Queue
17a78d941e Merge pull request #40561 from ixdy/bazel-src-tarball
Automatic merge from submit-queue (batch tested with PRs 40124, 39216, 40561, 40595, 40735)

Include a dummy src tarball unless PACKAGE_SRC=true is set

**What this PR does / why we need it**: alternative to #40546. I think this will keep the cluster startup scripts happy.

**Release note**:

```release-note
NONE
```
2017-02-01 12:32:48 -08:00
Mike Danese
e61ed4414e add myself to build and test approvers 2017-01-31 11:13:09 -08:00
Jeff Grafton
89a66e250b Include a dummy src tarball unless PACKAGE_SRC=true is set 2017-01-30 16:53:13 -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
914824cc09
Update go version to go1.8rc2 and fix the addon-manager changelog 2017-01-27 22:44:18 +02:00
Lucas Käldström
84006601a0
Upgrade go version in Makefiles to 1.7, use qemu 2.7, armel => armhf and goarm=6 => goarm=7 and use go 1.7.4 2017-01-27 20:04:24 +02:00