pull-kubernetes-e2e-gce-rbe are still failing with the following:
```
INFO: Waited 10 seconds for server process (pid=72) to terminate.
FATAL: Attempted to kill stale server process (pid=72) using SIGKILL, but it did not die in a timely fashion.
make: *** [Makefile:626: bazel-release] Error 36
make: Leaving directory '/home/prow/go/src/k8s.io/kubernetes'
```
we have added a pkill just after the line for bazel shutdown, so let's
continue to give the pkill a chance to run.
The upgrade of dependencies in #78187 introduced a regression in
detecting if SELinux is enabled or not. As the library requires
the golang build tag `selinux` to be enabled after that version update.
Fixes bug report #83679
There are two ways of building kubemark: 1) via Dockerfile and 2) via
bazel.
In CI/CD tests we use the 1) way and use debian:jessie as the base
image.
But if you build kubemark via bazel it will use the discouraged busybox
base image.
This PR fixes that by using debian:jessie everywehre and pinning exact
sha version to make the kubemark image hermetic.
Use GNU Make 4.2.1(such as fedora-29) to build k8s in a long directory,
it failed with `execvp: /bin/bash: Argument list too long'
[snip]
$ cd /buildarea1/hjia/wrlinux-1019/I_/suspect_/that_/if_/you_/create_/your_/project_/in_/a_/very_/deep_/directory/build_master-wr_qemux86-64_faw_2019090509/build/tmp-glibc/work/core2-64-wrs-linux/kubernetes/v1.16.0-alpha+git7054e3ead7e1a00ca6ac3ec47ea355b76061a35a-r0/kubernetes-v1.16.0-alpha+git7054e3ead7e1a00ca6ac3ec47ea355b76061a35a/src/import
$ make cross KUBE_BUILD_PLATFORMS=linux/amd64 GOLDFLAGS=""
|+++ [0804 16:38:32] Building go targets for linux/amd64:
| ./vendor/k8s.io/code-generator/cmd/deepcopy-gen
|make[1]: execvp: /bin/bash: Argument list too long
|make[1]: *** [Makefile.generated_files:184: pkg/kubectl/cmd/testing/zz_generated.deepcopy.go] Error 127
|make: *** [Makefile:557: generated_files] Error 2
...
[snip]
From make manual [1]
$?
The names of all the prerequisites that are newer than the target, with spaces between them.
While two `$?' was passed to bash in a line, it caused above failure,
drop a duplicated one could workaround the issue.
[1] https://www.gnu.org/software/make/manual/html_node/Automatic-Variables.html
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Preemptible instances are cheaper, and the small chanse of a vm being
killed doesn't matter when running during development. This is a
tradeoff the user should be able to decide on.
More info here:
https://cloud.google.com/compute/docs/instances/preemptible
The default setting is false, so unless setting
PREEMPTIBLE_INSTANCES=true, everything will behave as before.
Signed-off-by: Odin Ugedal <odin@ugedal.com>
default behavior does not change, it uses k8s.gcr.io by default
added two vars: KUBE_DOCKER_REGISTRY, KUBE_BASE_IMAGE_REGISTRY.
KUBE_BASE_IMAGE_REGISTRY is for base image registry of server binaries
KUBE_DOCKER_REGISTRY is for released images registry
user can interact with them by:
`KUBE_DOCKER_REGISTRY=### KUBE_BASE_IMAGE_REGISTRY=### make quick-release`
Signed-off-by: Hui Luo <luoh@vmware.com>
Force us to use python2 especially for scenarios where both python2 and
3 are both installed as `make bazel-release` fails currently.
Change-Id: I70bc45909ca87e5cf7ccdbddf60740a8a3e7e58b
Added explanation of the `k8s:conversion-gen-external-types` comment
tag.
Added explanation of how the developer can selectively override the
generated conversion functions.
Also updated description in Makefile.generated_files.
One can run:
make generated_files UPDATE_API_KNOWN_VIOLATIONS=true
to update the checked-in known API violation exceptions list.
Also updated README and the error message on how to resolve the
failure.
Pick up some code from https://github.com/heptio/kube-conformance
Fix up build scripts for the new conformance image
Fix Header template and Copyright to make verify job go green
update README and add execute permissions for script
Change-Id: Ib6509acd816cc2fb3a516bfb8e0ff9e32bff8f79
Automatic merge from submit-queue (batch tested with PRs 66341, 66405, 66403, 66264, 66447). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Move api rules list under api-approvers-owned package
Additions to this list should be rare and carefully reviewed
```release-note
NONE
```
Automatic merge from submit-queue (batch tested with PRs 66152, 66406, 66218, 66278, 65660). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Update crictl to v1.11.1.
Update `crictl` to v1.11.1 to fix several bugs. Release note: https://github.com/kubernetes-incubator/cri-tools/releases/tag/v1.11.1
@kubernetes/sig-node-pr-reviews @kubernetes/sig-cluster-lifecycle-pr-reviews
@kubernetes/sig-gcp-pr-reviews
Signed-off-by: Lantao Liu <lantaol@google.com>
```release-note
Update crictl to v1.11.1.
```
Automatic merge from submit-queue (batch tested with PRs 64181, 65737). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
API linter framework and namesMatch API rule
**What this PR does / why we need it**:
Bump kube-openapi dependency to use the [API linter framework](https://github.com/kubernetes/kube-openapi/pull/83) in k/k OpenAPI spec generation procedure.
Currently one API rule is enforced:
"Go field names must be CamelCase. JSON field names must be camelCase. Other than capitalization of the initial letter, the two should almost always match. No underscores nor dashes in either."
**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes#65244
**Special notes for your reviewer**:
Most code change in this PR was generated (~1700 lines). Please see commits for detail.
**Release note**:
```release-note
NONE
```
/sig api-machinery
/cc @pwittrock @mbohlool
check in existing API rule violations;
the Make rule fails if generated violation report differs from the
checked-in violation file and prints error message;
add documentation.
Automatic merge from submit-queue (batch tested with PRs 65230, 57355, 59174, 63698, 63659). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Bumps cri-tools version to GA in bazel build
Fixeskubernetes/kubeadm#903
Signed-off-by: Chuck Ha <ha.chuck@gmail.com>
**What this PR does / why we need it**:
This PR bumps cri-tools version to appropriate version for k8s 1.11
**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixeskubernetes/kubeadm#903
**Special notes for your reviewer**:
**Release note**:
```release-note
NONE
```
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
Overhaul Makefile for generated code
Calculate all go dependencies in a single Go program, rather than a complicated series of `go list` invocations and `Makefile` logic. This simplifies the
Makefile dramatically.
Also adds tests to ensure the dependencies stay correct. This test is pretty slow, though.
Also fixes a few anomalies found by the test.
Fixes#54371
```release-note
NONE
```
Fixeskubernetes/kubeadm#903
The version in the spec file must be hardcoded because the `{filename}`
syntax in the tar command is a substitutaion by bazel which happens before
the spec file does its ownt %{} substitutions. Therefore, if we use %{version}
bazel will not be able to find {crictl-v%{version}-...} in its list of
files so no substituation will take place and the file will not be found.
Signed-off-by: Chuck Ha <ha.chuck@gmail.com>
Bazel walks through the Kubernetes repo to add vendor targets for OpenAPI generation. `SkippedPaths` is used to skip the paths such as `_examples`. However, it doesn't work as desired, because it matches for `_` at the beginning of the path, so paths like `vendor\..\_example` are picked up by the generator. This PR fixes this.