Commit Graph

874 Commits

Author SHA1 Message Date
Hannes Hörl
6b1d1ccbf5 Allow users to use custom tags
When discovering the kube version we only consider tags that match the
glob 'v*'. By doing so users can create/use their custom tags as long as
they don't look like a version (starting with a 'v').

We already do a similar thing when building the pause container, see how
the `REV` is set in git.k8s.io/kubernetes/build/pause/Makefile.
2019-10-04 12:18:18 +03:00
Davanum Srinivas
138571b23f
Remove hyperkube from release artifacts
Change-Id: Ie09248d6fc688ffffbeb0271824817a5129346a0
2019-10-03 13:33:17 -04:00
Kubernetes Prow Robot
257040c472
Merge pull request #81882 from phenixblue/master
Updates to resolve shellcheck issues in hack/lib/test.sh
2019-09-18 20:43:00 -07:00
Han Kang
866ea74326 remove pkg/version and some of redundant copies of it
Change-Id: Ia58367c1b1274bfb49c8a4784051463abaf795de
2019-09-16 16:24:35 -07:00
howard
6ca5e0ed4d local-up-cluster kube-proxy terminated error
When using hack/local-up-cluster.sh deploy local cluster, it
failed with following message "kube-proxy terminated unexpectedly"
and "Failed to retrieve node info: nodes "127.0.0.1" not found" in
kube-proxy.log.

The root reason for this error is miss boot order of kubernetes
services in local-up-cluster.sh, kube-proxy and kubectl daemon.

When starting kube-proxy, it would check node information. And
these information are collected by kubelet daemon. However, in
the shell script, kube-proxy service start before kubelet daemon.

This patch changed the boot order of kubelet daemon and kube-proxy
and check if node stats ready for kube-proxy start.

Signed-off-by: Howard Zhang <howard.zhang@arm.com>
2019-09-16 10:36:42 +08:00
Joe Searcy
1b7ba643bb Updates to resolve shellcheck issues
Removed hack/lib/test.sh from /hack/shellcheck_failures
Removed  and }s to satisfy shellcheck SC2004
Added double quotes to satisfy shellcheck SC2086
Converted array reference to access all elements to satisfy shellcheck SC2128
Updates to satisfy shellcheck SC2143
Updates to satisfy shellcheck SC2178 & SC2124
Updates to satisfy shellcheck SC2128
Updates to satisfy shellcheck SC2207

Remove double quotes to allow expansion. Fixed piping to grep -q

Removed quotes to allow for expansion on flags
2019-09-13 11:32:54 -07:00
Davanum Srinivas
8fbfdf8267
Update default etcd server to 3.3.15 for kubernetes 1.16
Change-Id: I68f1a5e5339d83077a1a9f312c4e6e33848886c5
2019-08-30 21:29:45 -04:00
Rob Scott
f80cee9280
Adding discovery/v1alpha1 API for EndpointSlices 2019-08-26 14:50:00 -07:00
Han Kang
b037203082 move version logic directly into the component-base, to simplify legacyregistry logic
add version to vendor

move version into component-base top-level

update bazel build files

fix import
2019-08-21 09:43:20 -07:00
Davanum Srinivas
adbd1800c8 Drop cloud-controller-manager artifacts from k/k release 2019-08-06 13:51:27 -04:00
Jordan Liggitt
44930fc939 AdmissionReview: Install/register 2019-08-01 17:17:42 -04:00
Sean Sullivan
fb44be2d97 Move pkg/kubectl/version to staging 2019-07-26 15:48:09 -07:00
SataQiu
298909e20e kubeadm: use local copy of kubectl's version package 2019-07-16 09:51:10 +08:00
Jordan Liggitt
e24377f190 Install/register v1 admission registration types 2019-07-08 09:49:29 -04:00
Davanum Srinivas
543093e775
Add go-runner to the list of e2e test targets
Change-Id: I9c837d8f0a74014434308b46291ad1f81d67109a
2019-07-04 13:34:44 -04:00
John Schnake
b3f5a086ab Adds an optional golang runner to the conformance test image
Adds a go app which runs the e2e tests with ginkgo.

 - Supports all the existing env vars of the bash script
 - Improved flow control to avoid and better report issues
regarding the process PID
 - Adds flags for modifying where to find the test binary and
ginkgo binary so that you can run it locally
 - Adds 3 flags for specifying extra args before the double-dash,
extra args after the double-dash, and the seperator to use between
values in those env vars. This allows setting arbitrary, complex
values for use on the command such as flags which include spaces
or other characters.
2019-07-01 16:26:13 -05:00
Benjamin Elder
59c4eb2a38 fix hack/lib/version.sh shellcheck failures 2019-06-26 09:20:17 -07:00
Benjamin Elder
9b4b5098e1 fix hack/lib/init.sh shellcheck failures 2019-06-25 22:09:32 -07:00
Benjamin Elder
a101acc7eb fix hack/lib/swagger.sh shellcheck failures 2019-06-25 22:09:31 -07:00
Benjamin Elder
4aaa7b4da2 document KUBE_ROOT in util.sh 2019-06-24 11:43:04 -07:00
Benjamin Elder
29b7b2c4f8 add kube::util::list_staging_repos 2019-06-24 11:43:04 -07:00
Benjamin Elder
7b0ea99a3e copy kube::release:md5 to kube::util::md5 2019-06-23 12:08:05 -07:00
hui luo
6c8aabc832 Check KUBE_SERVER_PLATFORMS existence
when compile kubectl on platform other than
linux/amd64, we need to check the KUBE_SERVER_PLATFORMS
array emptiness before assign it.

the example command is:
make WHAT=cmd/kubectl KUBE_BUILD_PLATFORMS="darwin/amd64 windows/amd64"
2019-05-18 09:17:22 -07:00
Christoph Blecker
b8481b62fc
Don't use declare -g in build 2019-05-17 12:22:42 -07:00
adisky
7e2aa46f64
fix unbound variable release.sh 2019-05-16 23:09:19 +05:30
adisky
38b7f2125f
fix unbound array variable 2019-05-15 13:47:48 +05:30
Christoph Blecker
eaafa5952f
Don't use mapfile as it isn't bash 3 compatible 2019-05-06 15:55:12 -07:00
Michael Taufen
dcee810a3f Restrict builds to officially supported platforms
Prior to this change, including windows/amd64 in KUBE_BUILD_PLATFORMS
would, for example, attempt to build the server binaries/tars/images for
Windows, which is not supported. This can break downstream build steps.
2019-04-25 14:05:44 -07:00
Kubernetes Prow Robot
f980370fc0
Merge pull request #76608 from suigh/b1_etcd.sh
update the output of install-etcd.sh, show how to export the environment of etcd
2019-04-19 20:29:42 -07:00
suigh
c056a46ba9 update the output of install-etcd.sh, show how to export the environment of etcd. 2019-04-19 16:43:00 +08:00
Christoph Blecker
4543e68ae5
Fix shellcheck in hack/lib/golang.sh 2019-04-18 18:53:13 -07:00
Davanum Srinivas
7e01702a88
Move "-s -w" flags to GOLDFLAGS as an overridable default.
If GOLDFLAGS is set, whether it is empty or not, we should honor it.
Only if the GOLDFLAGS is totally not set, then we use "-s -w"

See Parameter Expansion section in the urls below:

https://stackoverflow.com/questions/3601515/how-to-check-if-a-variable-is-set-in-bash/16753536
http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html#tag_18_06_02

Change-Id: I826c34efc63c77f0e3e9677fff30a3eb2219a377
2019-04-17 21:55:13 -04:00
SataQiu
4231fa0980 fix shellcheck failures of hack/lib/logging.sh hack/lib/protoc.sh 2019-04-12 16:00:23 +08:00
Jordan Liggitt
2ea3cbdcbc Update hack scripts to use go mod 2019-04-03 10:19:39 -04:00
Jordan Liggitt
7f246d461b Remove third_party/forked/godep 2019-04-03 10:19:39 -04:00
Sean Sullivan
d4d6e19f1e kubectl: removes pkg/version dependency 2019-03-28 16:08:34 -07:00
Kubernetes Prow Robot
f6c51d6e99
Merge pull request #75751 from BenTheElder/bash-fun
fix kube::golang::is_instrumented_package
2019-03-26 23:19:01 -07:00
Benjamin Elder
0833a9cc38 fix kube::golang::is_instrumented_package 2019-03-26 17:17:16 -07:00
Ed Bartosh
3d5d38607d fix 'make generated_files' build on MacOS
Recent change to hack/lib/golang.sh broke the build on MacOS this way:

$ make clean && make generated_files
+++ [0325 13:38:22] Verifying Prerequisites....
+++ [0325 13:38:23] Removing _output directory
k8s.io/kubernetes/vendor/github.com/spf13/pflag
k8s.io/kubernetes/hack/make-rules/helpers/go2make
+++ [0325 13:38:40] Building go targets for darwin/amd64:
    ./vendor/k8s.io/code-generator/cmd/deepcopy-gen
can't load package: package k8s.io/kubernetes: no Go files in k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes
!!! [0325 13:38:40] Call tree:
!!! [0325 13:38:40]  1: k8s.io/kubernetes/hack/lib/golang.sh:629 kube::golang::build_some_binaries(...)
!!! [0325 13:38:40]  2: k8s.io/kubernetes/hack/lib/golang.sh:764 kube::golang::build_binaries_for_platform(...)
!!! [0325 13:38:40]  3: hack/make-rules/build.sh:27 kube::golang::build_binaries(...)
make[1]: *** [_output/bin/deepcopy-gen] Error 1
make: *** [generated_files] Error 2

It was caused by 'binaries' array not being declared with 'local -a'.
It looks like MacOS' old bash version makes an array to contain first
empty element if declared this way.

The fix has been tested on MacOS High Sierra and Linux openSUSE 42.3 (x86_64)

Signed-off-by: Ed Bartosh <eduard.bartosh@intel.com>
2019-03-25 17:08:13 +01:00
toyoda
a52af3a9d5 fix shellcheck failure golang.sh 2019-03-22 13:29:26 +09:00
Han Kang
a5ddc3943a bump required minimum go version to 1.12.1 (strings package compatibility) 2019-03-20 16:07:07 -07:00
Tim Allclair
820a1dc96b Add node.k8s.io/v1beta1 API 2019-03-07 11:57:12 -08:00
Tim Allclair
63f61a6714 Migrate RuntimeClass to internal API 2019-03-07 11:07:54 -08:00
Ismo Puustinen
ecb6d13253 hack/lib/util.sh: fix empty array expansion with bash 3. 2019-03-05 21:34:08 +02:00
Ismo Puustinen
1e34d9df7d hack/lib/util.sh: replace sed with bash replace.
Test script:

  #!/bin/bash

  rev1="foo"
  rev2="\"bar\""
  rev3="'bar'"

  newrev1="${rev1//[\'\"]}"
  newrev2="${rev2//[\'\"]}"
  newrev3="${rev3//[\'\"]}"

  oldrev1=$(echo "${rev1}" | sed "s/['\"]//g")
  oldrev2=$(echo "${rev2}" | sed "s/['\"]//g")
  oldrev3=$(echo "${rev3}" | sed "s/['\"]//g")

  echo "$newrev1 vs. $oldrev1"
  echo "$newrev2 vs. $oldrev2"
  echo "$newrev3 vs. $oldrev3"

expected output:

  foo vs. foo
  bar vs. bar
  bar vs. bar
2019-03-04 23:23:20 +02:00
Ismo Puustinen
0078fce5bd hack/lib/util.sh: don't implicitly convert "find" results into array.
Also fix array item comparison. Test script for the comparison change:

  #!/bin/bash

  staging_apis=(extensions/v1beta1 extensions/v1 extensions/v1alpha)
  group_versions=(v1 extensions/v1beta1 extensions/v1 extensions.k8s.io/v1)

  for group_version in ${group_versions[@]}; do
    # original code
    if [[ " ${staging_apis[@]} " =~ " ${group_version/.*k8s.io/} " ]]; then
      echo "orig: vendor/k8s.io/api/${group_version/.*k8s.io/}"
    fi
    # new code
    for api in ${staging_apis[@]}; do
      if [[ "${api}" = "${group_version/.*k8s.io/}" ]]; then
        echo "new: vendor/k8s.io/api/${group_version/.*k8s.io/}"
      fi
    done
  done

Expected output:

  orig: vendor/k8s.io/api/extensions/v1beta1
  new: vendor/k8s.io/api/extensions/v1beta1
  orig: vendor/k8s.io/api/extensions/v1
  new: vendor/k8s.io/api/extensions/v1
  orig: vendor/k8s.io/api/extensions/v1
  new: vendor/k8s.io/api/extensions/v1
2019-03-04 23:23:20 +02:00
Ismo Puustinen
edd806330a hack/lib/util.sh: mark variables to be used in a sourcing context.
"Decorate" the variables with a no-op function to prevent shellcheck
from complaining that they are not being used. This method provides
visibility to which variables are supposed to be used in a sourcing
script compared to just disabling the warning.
2019-03-04 23:23:20 +02:00
Ismo Puustinen
24b5c67723 hack/lib/util.sh: various shellcheck-reported cleanups.
Use "command -v" instead of "which".  Also remove the redirections,
since "command -v" does not return an error message if the command isn't
found. Also use "read -r" instead of "read" and quote variables
properly. Do some error handling if "pushd" or "popd" fail. Read values
properly into arrays.

However, one shellcheck error is ignored in trap mechanism.  The logic
in trap_add function requires the trap command to be expanded when run.
Just storing the variable into trap doesn't work. Add a shellcheck
disable directive to ignore the error.

An alternative to ignoring could be tricking shellcheck with:

  trap ''"${new_cmd}" "${trap_add_name}"
2019-03-04 23:18:54 +02:00
danielqsj
e698682a0e change a way to pass SC2164 in etcd.sh 2019-02-24 20:26:59 +08:00
danielqsj
c215966d22 fix shellcheck failure in etcd shell 2019-02-24 20:19:50 +08:00
Xiang Dai
36065c6dd7 delete all duplicate empty blanks
Signed-off-by: Xiang Dai <764524258@qq.com>
2019-02-23 10:28:04 +08:00
Kubernetes Prow Robot
3afa003126
Merge pull request #73555 from bsalamat/priority_to_ga
Graduate PriorityClass API to GA
2019-02-22 16:14:49 -08:00
Bobby (Babak) Salamat
453498fe2c Graduate PriorityClass to GA 2019-02-22 10:51:13 -08:00
Jordan Liggitt
8c28d3f63c Add networking.k8s.io/v1beta1 Ingress 2019-02-20 16:41:14 -05:00
Kubernetes Prow Robot
aeaeba4a6e
Merge pull request #72772 from lubinsz/pr_etcd
Bug fix: ./hack/install-etcd.sh is not work on Arm64 platform
2019-02-15 06:40:02 -08:00
Kubernetes Prow Robot
6912bbb153
Merge pull request #71223 from sttts/sttts-openapi-aggreation-without-clone
openapi-aggregation: speed up merging from 1 sec to 50-100 ms
2019-02-11 10:30:56 -08:00
Dr. Stefan Schimanski
2393799e2e hack/update-openapi-spec.sh: normalize indention of spec through jq 2019-02-11 13:16:36 +01:00
Kubernetes Prow Robot
e47973bd31
Merge pull request #69086 from bruceauyeung/log-useful-info-instead-of-silent-exit-when-etcd-already-installed
log useful information instead of silent exit without error
2019-02-10 18:14:26 -08:00
Kubernetes Prow Robot
92db54cc53
Merge pull request #73335 from oomichi/cleanup-hack
Add check-file-in-alphabetical-order for cleanup
2019-02-07 18:24:41 -08:00
Bin Lu
5cdb762fb9 Bug fix: ./hack/install-etcd.sh is not work on Arm64 platform
Signed-off-by: Bin Lu <bin.lu@arm.com>
2019-01-30 09:52:06 +08:00
Bin Lu
44a36ea36e Bug fix: ./hack/local-up-cluster.sh is not work on Arm64 platform
Signed-off-by: Bin Lu <bin.lu@arm.com>
2019-01-30 09:49:46 +08:00
bruceauyeung
c53d76d535 log useful information instead of silent exit without error when etcd has already been installed 2019-01-28 15:34:59 +08:00
Kenichi Omichi
c32d1acbb9 Add check-file-in-alphabetical-order for cleanup
Both verify-golint.sh and verify-shellcheck.sh have the same logic
which checks failure_file in alphabetical order.
In addition, we'd like to add another script which requires the
same logic. So this add a common function for cleanup.
2019-01-26 02:09:06 +00:00
Lubomir I. Ivanov
54e8d73920 docs: stop tracking placeholder documentation
The placeholder documentation introduces a couple of problems:
- it complicates the contributor-experience (forces the CI to run
N times before the contributor finds out that they need to call an .sh
script and include certain files from docs/)
- it forces CLI related pull requests for tools like kubeadm and kubectl
to require top level approval from docs/OWNERS as such PRs still need
to touch the .generated_docs file

Stop tracking the placeholder documentation by applying the
following actions:
- remove the utility set-placeholder-gen-docs()
- make verify-generated-docs.sh only generate in a temporary folder
and not match .generated_docs
- mark generate-docs.sh as an alias for update-generated-docs.sh
- remove all current placeholder files in docs folders admin, man,
user-guide, yaml
- ignore the above folders and .generated_docs in a .gitignore file
2019-01-26 01:07:10 +02:00
Kubernetes Prow Robot
e28c757e87
Merge pull request #72972 from liggitt/remove-alpha-initializers
Remove use of alpha initializers
2019-01-24 14:54:52 -08:00
Jordan Liggitt
dc1fa870bf Remove alpha InitializerConfiguration types, Initializers admission plugin 2019-01-23 11:37:39 -05:00
Roy Lenferink
b18bc2ea79 Improved some more bash script variable definitions 2019-01-21 23:11:58 +01:00
Roy Lenferink
6df3deb4bc Bash script syntax improvements 2019-01-19 13:58:58 +01:00
Roy Lenferink
a5d0616bdc Improving syntax for bash scripts 2019-01-18 19:17:16 +01:00
Kubernetes Prow Robot
4a6ac500fb
Merge pull request #72807 from dixudx/hack_host_arch
add method to get host os/arch in hack scripts
2019-01-17 13:51:24 -08:00
Di Xu
88740dfb9e add method to get host os/arch in hack scripts 2019-01-17 23:44:58 +08:00
Jordan Liggitt
9229399bd6 Remove build/verify scripts for swagger 1.2 API docs, API server swagger ui / swagger 1.2 config 2019-01-15 13:33:06 -05:00
Kubernetes Prow Robot
152226c557
Merge pull request #71198 from cofyc/go1.11-GOFLAGS-env
No need to pass GOFLAGS to $goflags variables with go 1.11
2019-01-09 23:35:09 -08:00
Sen Lu
d6801b8211 Diff between PULL_BASE_SHA and HEAD when detecting file changes from
Prow
2019-01-08 11:17:00 -08:00
wojtekt
73d14dede6 Promote Lease API to v1 2018-12-20 15:39:57 +01:00
Kubernetes Prow Robot
3dc1772268
Merge pull request #71891 from WanLinghao/daemonset_storage_test_fix
Fix unit test error in pkg/registry/apps/daemonset/storage/
2018-12-20 04:42:09 -08:00
Christoph Blecker
b19fb0a77e
Clean up artifacts variables in hack scripts 2018-12-19 15:17:13 -08:00
WanLinghao
80b6459bd0 Fix unit test error in pkg/registry/apps/daemonset/storage/ 2018-12-19 13:34:03 +08:00
Kubernetes Prow Robot
a9b69dc381
Merge pull request #71615 from jpbetz/etcd-3.3.10-0-image
Update default etcd server to 3.3.10 for kubernetes 1.14
2018-12-04 02:54:34 -08:00
Joe Betz
862b945e5a Update default etcd server to 3.3.10 for kubernetes 1.13 2018-12-03 11:03:49 -08:00
Kubernetes Prow Robot
9b160ab90f
Merge pull request #71538 from cblecker/godep-path
Don't use hermetic go environment for installing godep
2018-11-30 23:40:08 -08:00
Jeff Grafton
e3fac7690b Make Bazel not follow the infinite symlink in _output/local/go
Otherwise, calling make followed by bazel might fail, requiring one to
run make clean first.

Additionally, add comments explaining why we must do this.
2018-11-29 10:47:36 -08:00
Christoph Blecker
b1aae87327
Don't use hermetic go environment for installing godep
This is unneeded, and causes this build environment to persist throughout the lifetime of any godep script.
2018-11-28 16:31:25 -08:00
Yecheng Fu
ce22322ef1 No need to pass GOFLAGS to $goflags variables.
In go 1.11, go commands will use `GOFLAGS` as default flags, see
https://golang.org/doc/go1.11#go_command.

There is no need to pass GOFLAGS to $goflags, and if we do, go commands
will fail with "duplicate flags" error, e.g.

```
$ make test-integration WHAT=./test/integration/scheduler GOFLAGS="-v"
...
go test: v flag may be set only once
run "go help test" or "go help testflag" for more information
...
```
2018-11-27 09:53:02 +08:00
Christoph Blecker
35cdbdf16c
Use ensured godep instead of relying on PATH 2018-11-07 11:02:01 -08:00
Christoph Blecker
c0c62821d7
Install ensured godep inside hermetic GOPATH 2018-11-06 12:23:27 -08:00
k8s-ci-robot
3fdb1e6bdb
Merge pull request #69952 from Katharine/include-staging
Include vendor/k8s.io in coverage instrumentation
2018-10-18 14:44:28 -07:00
Katharine Berry
9ec5b7ffde Include vendor/k8s.io in coverage. 2018-10-17 17:15:27 -07:00
Patrick Barker
381d0a5d14 adds dynamic audit api 2018-10-16 06:46:34 -06:00
k8s-ci-robot
8e4f7812b8
Merge pull request #69368 from dims/upstream-heptio-kube-conformance
upstream heptio/kube-conformance
2018-10-12 19:13:33 -07:00
Davanum Srinivas
6830bad2a6
upstream heptio/kube-conformance
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
2018-10-12 15:33:15 -04:00
k8s-ci-robot
88e50c9c99
Merge pull request #69548 from tallclair/bazel-e2e
Fix find-binary to locate bazel e2e tests
2018-10-12 01:16:03 -07:00
Tim Allclair
275212bbc9 Fix find-binary to locate bazel e2e tests 2018-10-08 17:20:02 -07:00
Christoph Blecker
962fdbcbca
Bump golang version to 1.11.1 2018-10-05 12:58:56 -07:00
Davanum Srinivas
a89242b7fd
Remove extra debugging log::status call
Introduced by mistake in:
d9cfd77149

Change-Id: I71ddf7131c47e74dddfa1f8ccc69cc980eeefb94
2018-09-27 17:36:44 -04:00
Davanum Srinivas
d9cfd77149
Ensure reproducible builds - support for SOURCE_DATE_EPOCH with dockerized builds
- Pass in SOURCE_DATE_EPOCH when we run the docker container
- Looks like cleaning up symbol table also helps
- Also trimming the path

Tips from
- https://blog.filippo.io/reproducing-go-binaries-byte-by-byte/
- https://blog.filippo.io/shrink-your-go-binaries-with-this-one-weird-trick/

Change-Id: Iedba85d9c1a36790fb8814795f7c27c1371cff1b
2018-09-26 07:28:09 -04:00
Katharine Berry
449e94b295 Use KUBE_BUILD_WITH_COVERAGE directly. 2018-09-07 08:48:16 -07:00
Timothy St. Clair
ad2ed0e7df Update default etcd server to 3.2.24 for kubernetes 1.12
Signed-off-by: Timothy St. Clair <timothysc@gmail.com>
2018-09-06 10:24:57 -05:00
Kubernetes Submit Queue
68d22a878d
Merge pull request #67971 from Katharine/coverage-instrumentation
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

Add ability to build with runtime coverage instrumentation

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

This PR adds the ability to instrument a subset of kubernetes binaries to report code coverage information. The specific use-case is to help determine coverage of our end-to-end Conformance tests, as well as provide data that can be used to help determine where to focus. This PR focuses on making it possible to build with instrumentation; collecting and using the generated coverage data will be done in later PRs. For more details as to the intent, see the [design doc](https://docs.google.com/document/d/1FKMBFxz7vtA-6ZgUkA47F8m6yR00fwqLcXMVJqsHt0g/edit?usp=sharing) (google doc; requires kubernetes-dev membership).

Specifically, this PR adds a new `KUBE_BUILD_WITH_COVERAGE` make variable, which when set will cause `kube-apiserver`, `kube-controller-manager`, `kube-scheduler`, `kube-proxy` and `kubelet` to be built with coverage instrumentation. These coverage-instrumented binaries will flush coverage information to disk every five seconds, defaulting to a temporary directory unless the `KUBE_COVERAGE_FILE` environment variable is set at launch, in which case it will write to that file instead.

The mechanism used to achieve coverage instrumentation is to build the targeted binaries as "unit tests" with coverage enabled, and then rigging the unit tests to just execute the binary's usual entry point. This is implemented only for the bash build system.

/sig testing

```release-note
NONE
```
2018-09-01 01:32:52 -07:00
Kubernetes Submit Queue
1c4973d480
Merge pull request #68096 from BenTheElder/images-only
Automatic merge from submit-queue (batch tested with PRs 67571, 67284, 66835, 68096, 68152). If you want to cherry-pick this change to another branch, please follow the instructions here: https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md.

add make targets for building server images

**What this PR does / why we need it**: Adds `make release-images` and `make quick-release-images`, which allow building the docker-wrapped images without building a full release. Without these you can either use `make {quick}-release` and build test tarballs etc, or hack around in the build system yourself. Using this can be considerably faster if you just want to build the binaries and images, and not the release tarballs etc.

**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 #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```

/sig release
2018-08-31 20:41:43 -07:00
Katharine Berry
9b790dab7d Address shell-related comments. 2018-08-31 17:07:25 -07:00
Katharine Berry
facce197b1 Update stale comment. 2018-08-31 16:04:48 -07:00
Benjamin Elder
037fabd842 add make targets for building server images 2018-08-31 14:31:21 -07:00
Katharine Berry
0fb4b920b5 Address review comments. 2018-08-31 10:49:36 -07:00
Katharine Berry
9d499cd005 Be sure we delete the dummy tests. 2018-08-30 18:32:22 -07:00
Katharine Berry
8fe6467013 Improve bash formatting. 2018-08-30 16:18:15 -07:00
Katharine Berry
da4bbd421c Add runtime coverage support. 2018-08-29 14:48:24 -07:00
Katharine Berry
aa2a7d001a Build relevant binaries with coverage. 2018-08-29 14:48:24 -07:00
Mike Dame
f407700af9 Add autoscaling/v2beta2 and custom_metrics/v1beta2 to necessary files 2018-08-27 11:07:52 -04:00
Kubernetes Submit Queue
bcd220d898
Merge pull request #63633 from misterikkit/hacktest
Automatic merge from submit-queue (batch tested with PRs 65247, 63633, 67425). 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>.

test: allow etcd to run on other ports.

running `make test-integration` with the `ETCD_PORT` option set should
work. Numerous integration test expect the correct URL to be populated
in the `KUBE_INTEGRATION_ETCD_URL` environment variable.



**What this PR does / why we need it**:
This makes the ETCD_PORT option work correctly.

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

**Special notes for your reviewer**:
I expect nobody is using the ETCD_PORT option, but I noticed that it is broken.

**Release note**:

```release-note
NONE
```
/sig testing
2018-08-23 14:15:08 -07:00
Kubernetes Submit Queue
76e9fdaa72
Merge pull request #67402 from SneakyFish5/etcd-error-message
Automatic merge from submit-queue (batch tested with PRs 65561, 67109, 67450, 67456, 67402). 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>.

Better error message if etcd not installed

**What this PR does / why we need it**:
Add an error message to install etcd if command check fails instead of just saying to add etcd to PATH.

**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 #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-08-15 18:15:19 -07:00
SneakyFish5
861ab506ea Better error message if etcd not installed 2018-08-15 14:56:42 -05:00
Christoph Blecker
7a10073e4a
Update kube::util::ensure-cfssl 2018-08-09 14:42:57 -07:00
Davanum Srinivas
a66e1f089e
Drop kube-aggregator container image from release
First version of this was only standalone, now the code is being
vendored by anyone who wants to use it. So the standalone binary and
container are no longer useful.

Change-Id: Ib9369de66b4ecb3451f73ba2a252526d6615b96f
2018-08-08 15:57:52 -04:00
Jordan Liggitt
cc1a7735e8
move easyrsa check to gce prereq check 2018-08-06 19:56:10 -04:00
Kubernetes Submit Queue
1b6a505451
Merge pull request #66690 from spiffxp/verify-no-libressl
Automatic merge from submit-queue (batch tested with PRs 66284, 66690). 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>.

Exit gce kube-up.sh early if openssl is LibreSSL

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

macOS has an openssl binary, but it's actually LibreSSL, which doesn't play well with the easyrsa script that cluster/gce/util.sh uses to generate certs

Instead of waiting until we generate certs to discover easyrsa doesn't work, consider openssl a prereq for gce, and include a check for the version string starting with OpenSSL

Also, mirror kube-up.sh's "... calling" output in kube-down.sh

**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 kubernetes/community#1954

```release-note
NONE
```
2018-07-30 20:01:58 -07:00
Davanum Srinivas
d98c21e912
enable etcd logging in local-e2e jobs
We are not saving the etcd logs and just redirecting the output
to /dev/null. In this change, we set ETCD_LOGFILE to the same
directory where we log other kube relates processes.

Change-Id: I719a941665b749b864f2efdcdfc7ddc7b2a61776
2018-07-27 14:50:40 -04:00
Aaron Crickenberger
a9aa892177 Exit gce kube-up.sh early if openssl is LibreSSL
macOS has an openssl binary, but it's actually LibreSSL, which
doesn't play well with the easyrsa script that cluster/gce/util.sh
uses to generate certs

Instead of waiting until we generate certs to discover easyrsa doesn't
work, consider openssl a prereq for gce, and include a check for the
version string starting with OpenSSL

Also, mirror kube-up.sh's "... calling" output in kube-down.sh
2018-07-26 14:48:51 -07:00
Brandon Dalla Rosa
510f6b8916 Adding IKS functionality to kubemark 2018-07-23 11:42:22 -04:00
Kubernetes Submit Queue
6d3bba7391
Merge pull request #64246 from wojtek-t/lease_object_type
Automatic merge from submit-queue (batch tested with PRs 64246, 65489, 65443). 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>.

Create "Lease" API in the new "coordination.k8s.io" api group

Part of "Efficient Node heartbeats" KEP:
https://github.com/kubernetes/community/blob/master/keps/0009-node-heartbeat.md

Part of: https://github.com/kubernetes/kubernetes/issues/14733

```release-note
NONE
```
2018-06-27 08:17:10 -07:00
wojtekt
f38e952f4e Add coordination API group with Lease type 2018-06-27 13:30:13 +02:00
Christoph Blecker
50fd906f74
Update vendored tool go install location to use GOPATH 2018-06-25 15:45:14 -07:00
Christoph Blecker
2edd10709c
Fix run-in-gopath issue with symlink'd gopath 2018-06-25 14:25:55 -07:00
Kubernetes Submit Queue
02dba36128
Merge pull request #65019 from mirake/fix-typo-toto
Automatic merge from submit-queue (batch tested with PRs 65265, 64822, 65026, 65019, 65077). 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>.

Typo fix: toto -> to
2018-06-21 11:25:16 -07:00
ruicao
95c232ee07 Typo fix: toto -> to 2018-06-12 23:12:39 +08:00
Mayank Gaikwad
5357f9a7e8 Added OS verification for third party etcd binary 2018-06-06 16:44:28 +05:30
Jeff Grafton
e4ded2b3ec Explictly enable cgo when building kubectl for darwin from darwin 2018-05-23 12:32:01 -07:00
Jeff Grafton
dca376a03e Add KUBE_CGO_OVERRIDES env var to force enabling CGO 2018-05-23 12:31:57 -07:00
Andy Xie
3e53e99aae log bad format git version 2018-05-22 23:49:50 +08:00
ravisantoshgudimetla
1db5990013 Move scheduling api to beta 2018-05-12 02:01:04 -04:00
Jonathan Basseri
39cfbf95f5 test: allow etcd to run on other ports.
running `make test-integration` with the `ETCD_PORT` option set should
work. Numerous integration test expect the correct URL to be populated
in the `KUBE_INTEGRATION_ETCD_URL` environment variable.
2018-05-09 13:54:55 -07:00
Mark Janssen
ac731ed2e5 Update to go1.10.2 2018-05-04 00:39:21 +02:00
Kubernetes Submit Queue
b5f61ac129
Merge pull request #62657 from matthyx/master
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>.

Update all script shebangs to use /usr/bin/env interpreter instead of /bin/interpreter

This is required to support systems where bash doesn't reside in /bin (such as NixOS, or the *BSD family) and allow users to specify a different interpreter version through $PATH manipulation.
https://www.cyberciti.biz/tips/finding-bash-perl-python-portably-using-env.html
```release-note
Use /usr/bin/env in all script shebangs to increase portability.
```
2018-05-02 19:44:32 -07:00
Kubernetes Submit Queue
42415e3186
Merge pull request #63046 from cblecker/go-go-minimum
Automatic merge from submit-queue (batch tested with PRs 63046, 62925, 63014). 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>.

Bump minimum required go version to 1.10.1

**What this PR does / why we need it**:
We have supported go1.10.x for a few weeks now (#60597). CI has all been updated. This enforces it as the new minimum go version required go k8s >=1.11

**Release note**:
No release note, as #60597 already had one.
```release-note
NONE
```
2018-04-24 00:42:09 -07:00
Kubernetes Submit Queue
fce3ad5198
Merge pull request #62151 from thockin/build-cleanup-with-go-1-10
Automatic merge from submit-queue (batch tested with PRs 62495, 63003, 62829, 62151, 62002). 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>.

Build cleanup with go 1.10

Simplify our build/test scripts now that go 1.10 is in play.  It has caching that seems to actually work.

**Release note**:
```release-note
NONE
```
2018-04-23 22:45:24 -07:00
Christoph Blecker
94d56ffbde
Bump minimum required go version to 1.10.1 2018-04-23 18:08:10 -07:00
Matthias Bertschy
9b15af19b2 Update all script to use /usr/bin/env bash in shebang 2018-04-19 13:20:13 +02:00
Joe Betz
a795cb61bc Bump etcd default server version to 3.2.18 2018-04-11 21:12:44 -07:00
Tim Hockin
59ef5e2379 Generate bindata through make 2018-04-10 20:55:03 -07:00
Tim Hockin
57d60ece72 Don't support go build any more.
Given run-in-gopath.sh, I can't see why we need it.  It is slower and
produces no better results.
2018-04-10 20:38:08 -07:00
Tim Hockin
46146f6f3d Remove 'teststale'
As of go 1.10, go's own build cache will ensure we do not rebuild or
relink tests.
2018-04-10 20:38:08 -07:00
Tim Hockin
5433ebd629 Simplify static build, rely on go's cache
As of go 1.10, we do not need to explicitly build the stdlib for static
any more.  That happens automatically.  Timing tests show no discernible
difference between a `go install` with and without it.

Also use 'static' suffix instead of 'cgo'.
2018-04-10 20:38:08 -07:00
Tim Hockin
c773e88941 Set GOCACHE (1.10) as a subdir of GOPATH 2018-04-10 20:38:08 -07:00
Kubernetes Submit Queue
22440e1576
Merge pull request #62037 from cblecker/godep-bump
Automatic merge from submit-queue (batch tested with PRs 61959, 62037). 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>.

Bump godep version to v80

**What this PR does / why we need it**:
Update the minimum godep, to v80 (supposed to be the final version).

**Release note**:
```release-note
NONE
```
2018-04-04 02:45:08 -07:00
Kubernetes Submit Queue
3ea4e449c3
Merge pull request #57600 from thockin/vendor-gazelle
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>.

Vendor gazelle and kazel

Rather that relying on upstream git repos that can break, vendor it all.  These are NOT head of tree, respectively - they are some backrev forms that were previously being used.

```release-note
NONE
```
2018-04-02 12:13:06 -07:00
Christoph Blecker
ba71e6307a
Bump godep version to v80 2018-03-30 15:54:52 -07:00
Tim Hockin
4a5e554704 Don't change GOPATH or PATH in a script lib 2018-03-29 17:01:32 -07:00
Tim Hockin
f72484df88 Remove kube::util::go_install_from_commit 2018-03-29 17:01:32 -07:00
Davanum Srinivas
1f4246957f Allow curl --max-time to be configurable
In nested virutalized environments, the 1 second max-time is too
low. Just bumping up WAIT_FOR_URL_API_SERVER does not work unless
we bump up the max-time too. Let us just make it configurable like
so folks can customize to their environment.
2018-03-28 10:21:15 -04:00
Cao Shufeng
2273d08f4b remove deprecated -a
ref: https://github.com/kubernetes/kubernetes/pull/60210
ref: https://github.com/kubernetes/kubernetes/pull/60793
2018-03-26 14:40:28 +08:00
Kubernetes Submit Queue
e40ffd7197
Merge pull request #59172 from fisherxu/removeyear
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>.

Remove YEAR field of all generated files and fix kubernetes boilerplate checker

**What this PR does / why we need it**:
Remove YEAR field of all generated files and fix kubernetes boilerplate checker
xref: [remove YEAR fileds in gengo #91](https://github.com/kubernetes/gengo/pull/91)

**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 [#gengo/issues/24](https://github.com/kubernetes/gengo/issues/24)

**Special notes for your reviewer**:
/cc @thockin @lavalamp @sttts 

**Release note**:

```release-note
NONE
```
2018-03-21 12:44:37 -07:00
Kubernetes Submit Queue
dbea6f6372
Merge pull request #61085 from hzxuzhonghu/unversioned-cleanup
Automatic merge from submit-queue (batch tested with PRs 60919, 60953, 61085, 61083, 60971). 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>.

remove unused `pkg/api/unversioned`

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

clean code, see #61084 

**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 #61084

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-03-20 20:34:31 -07:00
Kubernetes Submit Queue
b651ed5ea7
Merge pull request #60998 from jpbetz/etcd-3.1.12
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>.

Bump to etcd 3.1.12 to pick up critical fix

etcd [3.1.12](https://github.com/coreos/etcd/releases/tag/v3.1.12) (as well as 3.2.17 and 3.3.2) was released yesterday to fix a bug critical to kubernetes:

Fix [mvcc "unsynced" watcher restore operation](https://github.com/coreos/etcd/pull/9297).
- "unsynced" watcher is watcher that needs to be in sync with events that have happened.
- That is, "unsynced" watcher is the slow watcher that was requested on old revision.
- "unsynced" watcher restore operation was not correctly populating its underlying watcher group.
- Which possibly causes [missing events from "unsynced" watchers](https://github.com/coreos/etcd/issues/9086).

This will be backported to 1.9 as well.

Release note:
```release-note
Upgrade the default etcd server version to 3.1.12 to pick up critical etcd "mvcc "unsynced" watcher restore operation" fix.
```

cc @gyuho @wojtek-t @shyamjvs @timothysc @jdumars
2018-03-13 09:11:10 -07:00
hzxuzhonghu
f12647e16d pkg/api/unversioned related cleanup 2018-03-13 17:20:16 +08:00
Jeff Grafton
7713453356 Exclude commas when pulling the tag out of the git export-subst format string 2018-03-12 15:20:22 -07:00
Joe Betz
e2a25f9b54 Bump to etcd 3.1.12 to pick up critical fix 2018-03-09 14:28:23 -08:00
Shyam Jeedigunta
21f5e69f08 Rollback etcd server version to 3.1.11 due to #60589 2018-03-08 13:07:15 +01:00
fisherxu
32319d6ef7 add boilerplate.generatego.txt and let all code-generators use it
remove YEAR field in boilerplate under staging

add Do Not Edit for types_swagger_doc and add apiextensions-apiserver's example in codegen.sh
2018-03-08 17:52:44 +08:00
Joe Betz
04c6d0ab26 Bump etcd server patch version to 3.2.16 2018-03-05 13:58:51 -08:00
Ryan Hitchman
f6e23e32f9 Only install etcd for verify tests that need it. 2018-02-28 22:05:52 -08:00
Ismo Puustinen
1f41f32d3e hack/lib/protoc.sh: don't split find-binary output. 2018-02-26 16:46:19 +02:00
Ismo Puustinen
afc459758e hack/lib/util.sh: remove shadowed case statements.
The topmost case statements shadow those coming after them. Since they
are never run, remove them.
2018-02-26 16:46:19 +02:00
Ismo Puustinen
f03730682c hack/lib/util.sh: do not iterate over ls output.
Use globs to make the code more resilient for directory names with
special characters or whitespace.
2018-02-26 16:46:19 +02:00
Ismo Puustinen
4a82a011a0 hack/lib/util.sh: improve staging api finding.
Do not bother with pushd/popd construct -- there is no need to go back
to original directory in a subshell. Use "find --exec" instead of "find
| xargs" to handle special file names better.
2018-02-26 16:46:19 +02:00
Ismo Puustinen
39f4763afe hack/lib/util.sh: add double quotes.
Also move one test to use bash [[ insted of [.
2018-02-26 16:46:19 +02:00
Ismo Puustinen
73b5f1b78c hack/lib/init.sh: prevent splitting in 'dirname' result.
You can test this change like this:

  $ mkdir -p '/tmp/foo bar/x'
  $ cd $(dirname "/tmp/foo bar/x")
  bash: cd: too many arguments
  $ cd "$(dirname "/tmp/foo bar/x")"
  $ pwd
  /tmp/foo bar
2018-02-26 16:46:19 +02:00
Ismo Puustinen
173f8e2e4a hack/lib/golang.sh: use double quotes.
It's admittedly extremely unlikely that the host platform name would
contain special characters, but still use double quotes to pattern
matching.

Consider this script:

  #!/bin/bash

  bar="foobar"
  foo="foo*"

  [[ $bar == $foo ]] && echo "first true"
  [[ "$bar" == "$foo" ]] && echo "second true"

We get the output:

  first true

The plan is to move from first case to the second case to prevent
pattern match where there shouldn't be any.
2018-02-26 16:46:18 +02:00
Ismo Puustinen
c0c888fdc1 hack/lib/golang.sh: do not split on array items. 2018-02-26 16:45:19 +02:00
Ismo Puustinen
9209953c62 hack/lib/golang.sh: split strings into arrays safely. 2018-02-26 16:45:19 +02:00
Mike Arpaia
c5031fafd0
Unset CDPATH in build script to fix path generation
In https://github.com/kubernetes/kubernetes/issues/52255, it was
determined that if the user has a CDPATH, running `make` will fail. This
is because using the KUBE_ROOT variable results in invalid paths when
the CDPATH environment variable is set.
2018-02-22 01:12:02 -08:00
Mike Danese
b973840481 gke-certificates-controller: rm -rf 2018-02-15 12:01:00 -08:00
Christoph Blecker
ceacae42a6
Check if netstat or iproute2 is available 2018-02-14 10:33:04 -08:00
Kubernetes Submit Queue
1aa2a027ed
Merge pull request #57445 from chenzhiwei/version-check
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>.

Build Kubernetes binaries with valid Semantic Version

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

Refuse to build Kubernetes when a version string like `v1.8.3+xx+xx`.

This PR is to restrict the `KUBE_GIT_VERSION`, if the version string does match the rule of Semantic Version, then refuse to build.

Since Kubernetes Conformance test needs the `KUBE_GIT_VERSION` to be a valid Semantic Version, so I think it's better to restrict the version string.

**Release note**:
```release-note
NONE
```
2018-02-13 21:07:02 -08:00
Davanum Srinivas
ea7547cd42 Check etcd port instead of process name
currently the pgrep check does not allow any etcd process to exist
other than the one we intend to start in our scripts. All we need
to know is if the port is free. So let us use netstat to check
if anyone is using that port. We don't really need to know if there
is another instance of etcd is running or not.
2018-02-10 12:28:21 -05:00
Tim Hockin
3586986416 Switch to k8s.gcr.io vanity domain
This is the 2nd attempt.  The previous was reverted while we figured out
the regional mirrors (oops).

New plan: k8s.gcr.io is a read-only facade that auto-detects your source
region (us, eu, or asia for now) and pulls from the closest.  To publish
an image, push k8s-staging.gcr.io and it will be synced to the regionals
automatically (similar to today).  For now the staging is an alias to
gcr.io/google_containers (the legacy URL).

When we move off of google-owned projects (working on it), then we just
do a one-time sync, and change the google-internal config, and nobody
outside should notice.

We can, in parallel, change the auto-sync into a manual sync - send a PR
to "promote" something from staging, and a bot activates it.  Nice and
visible, easy to keep track of.
2018-02-07 21:14:19 -08:00
Kubernetes Submit Queue
9ee71b720e
Merge pull request #59059 from smarterclayton/move_partial_object
Automatic merge from submit-queue (batch tested with PRs 59158, 38320, 59059, 55516, 59357). 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>.

Promote v1alpha1 meta to v1beta1

No code changes, just renames. We can discuss if there are any field / naming changes here or in a follow-up

Parent #58536
Fixes #53224
Prereq to #55637

@kubernetes/sig-api-machinery-pr-reviews @deads2k

```release-note
The `meta.k8s.io/v1alpha1` objects for retrieving tabular responses from the server (`Table`) or fetching just the `ObjectMeta` for an object (as `PartialObjectMetadata`) are now beta as part of `meta.k8s.io/v1beta1`.  Clients may request alternate representations of normal Kubernetes objects by passing an `Accept` header like `application/json;as=Table;g=meta.k8s.io;v=v1beta1` or `application/json;as=PartialObjectMetadata;g=meta.k8s.io;v1=v1beta1`.  Older servers will ignore this representation or return an error if it is not available.  Clients may request fallback to the normal object by adding a non-qualified mime-type to their `Accept` header like `application/json` - the server will then respond with either the alternate representation if it is supported or the fallback mime-type which is the normal object response.
```
2018-02-05 12:40:37 -08:00
Joe Betz
f0d04b7131 Update etcd server version to 3.2.13 2018-02-02 17:25:13 -08:00
Clayton Coleman
d07a608607 Promote v1alpha1 meta to v1beta1
No code changes, just renames
2018-02-02 14:00:45 -05:00
Chen Zhiwei
3b8b9e6a24 Build Kubernetes binaries with valid Semantic Version 2018-01-31 12:59:52 +08:00
Christoph Blecker
d58afe6384
When installing vendored godep, ensure that it's in path 2018-01-30 09:30:36 -08:00
David McMahon
b0706f415a Increase KUBE_PARALLEL_BUILD_MEMORY to 40G. 2018-01-24 13:15:33 -08:00
Kubernetes Submit Queue
658ca939fd
Merge pull request #57420 from rphillips/fixes/semver_metadata
Automatic merge from submit-queue (batch tested with PRs 58375, 58306, 58386, 57420, 58035). 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>.

add semver metadata regex

**What this PR does / why we need it**: When building a release tag with optional semver metadata, the minor and major versions are not parsed correctly (empty strings). This fix adds optional support to the regex for the metadata component.

example:

```
~/w/g/s/k/kubernetes ❯❯❯ git tag v1.9.0+stable.0                                 fixes/semver_metadata ✭
~/w/g/s/k/kubernetes ❯❯❯ hack/print-workspace-status.sh                          fixes/semver_metadata ✭
STABLE_BUILD_GIT_COMMIT 63e2eacd22
STABLE_BUILD_SCM_STATUS clean
STABLE_BUILD_SCM_REVISION v1.9.0+stable.0
STABLE_BUILD_MAJOR_VERSION 1
STABLE_BUILD_MINOR_VERSION 9
STABLE_DOCKER_TAG v1.9.0_stable.0
gitCommit 63e2eacd22
gitTreeState clean
gitVersion v1.9.0+stable.0
gitMajor 1
gitMinor 9
buildDate 2017-12-19T21:08:48Z
```

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

**Special notes for your reviewer**:

**Release note**:
```release-note
NONE
```
2018-01-17 13:08:35 -08:00
Kubernetes Submit Queue
7bbab6234f
Merge pull request #58303 from php-coder/fix_verify-swagger-spec_sript
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>.

Fix update-swagger-spec.sh to always cleanup etcd

**What this PR does / why we need it**:
This PR fixes `hack/update-swagger-spec.sh` so it always cleanup etcd and to noe leave orphaned process after its execution. This process also doesn't allow to run the script again as it detects existing etcd and won't start.

I also made a minor improvement by adding guard against an empty arguments.

**Release note**:
```release-note
NONE
```

CC @simo5
2018-01-17 02:43:58 -08:00
Slava Semushin
a2b728a706 hack/update-swagger-spec.sh(cleanup): fix signal handler to really cleanup etcd and minor improvements.
Prior this change, etcd wasn't cleaned up on my machine that lead to
orphaned etcd process after the update-swagger-spec.sh failed.

This change also adds additional improvements:
- don't kill/wait/rm when argument is empty.
- use kube::util::trap_add.
2018-01-17 09:58:57 +01:00
Kubernetes Submit Queue
c7e3e55cd3
Merge pull request #58225 from ixdy/gazelle-from-bazel-gazelle
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>.

Install gazelle from bazelbuild/bazel-gazelle instead of rules_go

**What this PR does / why we need it**: downloads gazelle from its new home; it's being removed from `bazelbuild/rules_go`. It also removes @spiffxp's workaround from a few weeks ago.

**Special notes for your reviewer**: these should really be vendored (https://github.com/kubernetes/kubernetes/pull/57600), but this prevents us from running into issues in the meantime.

**Release note**:

```release-note
NONE
```

/approve no-issue
/assign @BenTheElder
2018-01-15 12:22:29 -08:00
Kubernetes Submit Queue
a990b04dc8
Merge pull request #58207 from strigazi/fix-cmp-ver
Automatic merge from submit-queue (batch tested with PRs 58207, 58258). 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>.

Use sort -V to compare golang versions

Change hack/lib/golang.sh to compare golang
version properly with "sort -s -t. -k 1,1 -k 2,2n -k 3,3n",
which sorts key by key and not as strings.



**What this PR does / why we need it**:
trivial fix: hack/lib/golang.sh compare versions like strings, 1.10 is greater than 1.9 as a version but not as a string. Use "sort -s -t. -k 1,1 -k 2,2n -k 3,3n" to compare properly. 

**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 #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-01-15 10:35:28 -08:00
Spyros Trigazis
fc37221db5 Fix comparison of golang versions
Change hack/lib/golang.sh to compare golang
version properly with "sort -s -t. -k 1,1 -k 2,2n -k 3,3n",
which sorts key by key and not as strings.
2018-01-15 17:26:34 +01:00
Mike Danese
1e2b644260 cluster: move logging library to hack/
it's used once in cluster and used a bunch in hack/ and build/
2018-01-13 16:37:50 -08:00
Jeff Grafton
0d5eb00a39 Revert "Rewrite go_install_from_commit to handle pkgs that aren't in HEAD"
This reverts commit e55938940d.
2018-01-12 12:27:49 -08:00
Jonathan Basseri
30b89d830b Move scheduler code out of plugin directory.
This moves plugin/pkg/scheduler to pkg/scheduler and
plugin/cmd/kube-scheduler to cmd/kube-scheduler.

Bulk of the work was done with gomvpkg, except for kube-scheduler main
package.
2018-01-05 15:05:01 -08:00
Jordan Liggitt
0d5b9dd3d4
Avoid error on closed pipe 2018-01-03 16:44:50 -05:00
Jeff Grafton
924fd3b058 Update helper scripts to find binaries in new bazel-bin paths 2017-12-23 13:13:09 -08:00
Tim Hockin
e9dd8a68f6 Revert k8s.gcr.io vanity domain
This reverts commit eba5b6092a.

Fixes https://github.com/kubernetes/kubernetes/issues/57526
2017-12-22 14:36:16 -08:00
Aaron Crickenberger
e55938940d Rewrite go_install_from_commit to handle pkgs that aren't in HEAD
This is brittle and really only intended to workaround the fact that
gazelle has moved out of the bazelbuild/rules_go repo to its own
repo. I would rather see this reverted once we move to the same
version of gazelle as used by kubernetes/test-infra
2017-12-22 14:45:21 -05:00
Ryan Phillips
63e2eacd22 add semver metadata regex
* supports v1.9.0+stable.0
2017-12-19 15:04:56 -06:00
Kubernetes Submit Queue
cdbfff0773
Merge pull request #57222 from xialonglee/keep-ldfalgs-spaces-safe
Automatic merge from submit-queue (batch tested with PRs 55475, 57155, 57260, 57222). 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>.

make sure that 'ldflags' are space-safe

**What this PR does / why we need it**:
Recently I met the problem as #56216 described, I download the source-tar of 1.8.5 and run `make` command failed because of invalid ldflag: 
 `-X k8s.io/kubernetes/pkg/version.gitTreeState=git archive`

Though #56249 has change version string `git archive` to `archive`, i think we should avoid this problem happen again.

cc @ixdy 

**Release note**: NONE
2017-12-18 19:45:46 -08:00
Tim Hockin
eba5b6092a Use k8s.gcr.io vanity domain for container images 2017-12-18 09:18:34 -08:00
xialonglee
4a999d73e3 make sure that 'ldflags' are spaces safe 2017-12-15 11:15:24 +08:00
Jonathan MacMillan
e830b5390b Fix a comment in hack/lib/version.sh about which tags are used to get the version. 2017-12-05 19:00:16 -08:00
Marcin Owsiany
69dd010a41 Unmute curl when fetching cfssl. 2017-11-27 08:09:13 +01:00