Commit Graph

6390 Commits (5658a327dd339d363ee9a55703f21061ca0a891c)

Author SHA1 Message Date
Marcin Owsiany b1be35ebf1 Save benchmark data in perfdash-friendly format. 2018-02-14 14:22:18 +01: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
Kubernetes Submit Queue fb5caac2da
Merge pull request #59797 from ipuustin/shell-bugfix3
Automatic merge from submit-queue (batch tested with PRs 59532, 59685, 59797). 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>.

Continue fixing bash scripts

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

This PR continues the work of fixing bugs in shell scripts (see https://github.com/kubernetes/kubernetes/pull/59572 for the previous PR). The fixed scripts are `hack/grab-profiles.sh` and `hack/update-codegen.sh`. Most of the issues are found by using `shellcheck`. The goal is to make the scripts work and behave as they did previously, but fix obvious bugs and make them more robust and resilient for irregular input such as file names with special characters or whitespace in them.

**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-02-13 18:48:33 -08:00
Kubernetes Submit Queue 50e28a5d50
Merge pull request #59532 from cblecker/verify-jobs-to-stderr
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>.

Route verify script output to stderr

**What this PR does / why we need it**:
This changes a few of the review scripts that weren't routing their output to stderr, to route there error output there. This allows the junit report to pick up on the error message.

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

**Special notes for your reviewer**:

**Release note**:
```release-note
NONE
```
2018-02-13 18:45:04 -08:00
Kubernetes Submit Queue cca7ccbff1
Merge pull request #59530 from rramkumar1/ipvs-plumbing
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>.

Add a new environment variable to the gce startup scripts called KUBE_PROXY_MODE

**What this PR does / why we need it**:
This PR adds a new environment variable called KUBE_PROXY_MODE to the startup scripts for gce. This variable will allow a user to specify the kube-proxy implementation they want to use, with the choices being ipvs or iptables (iptables is default). 

Next steps:

1. Need to remove use of feature gateway when IPVS goes GA
2. Need to add logic of loading required ipvs kernel modules in the scripts 

Question: If the proxier is IPVS, is it necessary to have the iptables sync period flags? 

**Release note**:
```release-note
None
```
2018-02-13 17:45:32 -08:00
Kubernetes Submit Queue 2a8049890a
Merge pull request #59492 from dims/remove-old-keystone-authenticator
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 experimental keystone authenticator

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

experimental-keystone-url and experimental-keystone-ca-file were always
experimental. So we don't need a deprecation period.
KeystoneAuthenticator was on the server side and needed userid/password
to be passed in and used that to authenticate with Keystone. We now
have authentication and authorization web hooks that can be used. There
is a external repo with a webook for keystone which works fine along
with the kubectl auth provider that was added in:
a0cebcb559

So we don't need this older style / hard coded / experimental code
anymore.

**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
kube-apiserver: the experimental in-tree Keystone password authenticator has been removed in favor of extensions that enable use of Keystone tokens.
```
2018-02-13 14:14:45 -08:00
Davanum Srinivas 9238f38400 local-up-cluster.sh should be conformant out-of-the-box
rename ALLOW_SECURITY_CONTEXT to DENY_SECURITY_CONTEXT_ADMISSION to be
in line with the other admission plugins (like PSP_ADMISSION). Make
sure by default, this plugin is not  enabled as well.
2018-02-13 13:08:08 -05:00
Ismo Puustinen 6beb1ddac3 hack/update-codegen.sh: fix finding api names.
Use "find -exec" instead of plain "find | xargs" to fix handling of
difficult file names (such as those containing spaces). Also, use
"mapfile" for creating the array from the output instead of letting the
shell split the results into the array. Add double quotes to places
where variable handling needs it to prevent splitting and globbing.
2018-02-13 15:45:37 +02:00
Ismo Puustinen a9905f2ad3 hack/update-codegen.sh: fix finding items in an array.
The current code

  if ! [[ " ${INTERNAL_DIRS[@]:-} " =~ " ${int_group} " ]]; then

is broken because the array is concatenated in [[ .. ]] structure. This
means that the match will be done to any substring in the resulting
string which just happens to include ${int_group}. Fix this to use a
loop instead, and do exact matching. Also make tabs consistent in the
for loop.
2018-02-13 15:45:37 +02:00
Ismo Puustinen b6fbe2aee5 hack/update-codegen.sh: split string into array robustly.
Use "mapfile" and "read" to split the $KUBE_AVAILABLE_GROUP_VERSIONS
string into an array using space as the delimiter. This prevents shell
from globbing and splitting the string in potentially wrong places.
2018-02-13 15:41:00 +02:00
Kubernetes Submit Queue fd553ca8e2
Merge pull request #53766 from liggitt/ui-redirect
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 /ui/ redirect

The existing kube-apiserver hard-codes `/ui` to redirect to an optional add-on, which is not appropriate. It does not work in the following scenarios:
* https-enabled dashboards
* the dashboard is deployed to a different namespace or service name
* the dashboard is not installed at all
* authorization is enabled and does not allow access to /ui

This PR removes the hard-coded `/ui` redirect.

```release-note
apiserver: the /ui kube-dashboard redirect has been removed. Follow instructions specific to your deployment to access kube-dashboard
```
2018-02-13 04:29:18 -08:00
Ismo Puustinen 7da195cac2 hack/grab-profiles.sh: fix typos in error strings and variables.
Change "argumet" -> "argument" and "addreses" -> "addresses".
2018-02-13 12:58:23 +02:00
Ismo Puustinen 0cc190cfa0 hack/grab-profiles.sh: bash script cleanups.
Use double quotes around variables in places where they might be
used in globbing. Also replace an "echo | sed" construct with bash
variable substitution.

You can compare the variable substitution with this example:

  $ addresses="foo;bar,test"
  $ for token in $(echo $addresses | sed 's/[,;]/\n/g'); do echo "token: $token"; done
      token: foo
      token: bar
      token: test
  $ for token in ${addresses//[,;]/' '}; do echo "token: $token" ; done
      token: foo
      token: bar
      token: test
2018-02-13 12:58:23 +02:00
Ismo Puustinen a0db1dc8c9 hack/grab-profiles.sh: use double quotes in trap.
The SSH_PID variable doesn't get expanded in the trap because of the
single quotes. Change to double quotes.

This is an example how the change works:

   $ FOO="bar"
   $ echo '$FOO'
      $FOO
   $ echo "$FOO"
      bar
2018-02-13 12:58:23 +02:00
Ismo Puustinen 1fe4192b67 hack/grab-profiles.sh: fix typo in variable name.
Variable "controller_manager_port" was never updated, because it was
misspelled "controller-managerr_port" in assignment.
2018-02-13 12:58:22 +02:00
Nikhita Raghunath ebad418c29 add --go-header-file to use kube boilerplate 2018-02-13 12:34:54 +05:30
Jordan Liggitt f8e206e802
Remove /ui/ redirect 2018-02-12 10:54:33 -05:00
Kubernetes Submit Queue 198a098d9d
Merge pull request #59506 from juanvallejo/jvallejo/handle-watch-multiple-reqs
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 --watch on multiple requests

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

`kubectl get <resource> --watch` only supports watching a single resource kind at a time.
This check fails if more than one resource `Info` is returned.

When dealing with large quantities of a single resource kind, or an amount that exceeds the value of `--chunk-size`, more than one request is made to the server causing a resource `Info` to be created for each of the requests, ultimately causing the above check to fail even though we are dealing with the same type of resource.

This patch modifies that check to take into account the GVKs of all infos returned, and only fail if at least one differs.

cc @deads2k
2018-02-12 02:25:45 -08:00
Kubernetes Submit Queue 317853c90c
Merge pull request #59464 from dixudx/fix_all_typos
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 all the typos across the project

**What this PR does / why we need it**:
There are lots of typos across the project. We should avoid small PRs on fixing those annoying typos, which is time-consuming and low efficient.

This PR does fix all the typos across the project currently. And with #59463, typos could be avoided when a new PR gets merged.

**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**:
/sig testing
/area test-infra
/sig release
/cc @ixdy 
/assign @fejta 

**Release note**:

```release-note
None
```
2018-02-10 22:12:45 -08:00
Di Xu 48388fec7e fix all the typos across the project 2018-02-11 11:04:14 +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
juanvallejo aea8deee03
fix --watch on multiple requests 2018-02-09 15:17:02 -05:00
Kubernetes Submit Queue 05944b1d2c
Merge pull request #59623 from ixdy/bazel-source-date-epoch
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>.

bazel: support using SOURCE_DATE_EPOCH to override date

**What this PR does / why we need it**: ports #48708 to apply to the bazel build as well.
Note that bazel already sets `BUILD_TIMESTAMP` using `SOURCE_DATE_EPOCH`, but we have our own timestamp variable, so we need to fix it too.

We could combine this with something like
```shell
SOURCE_DATE_EPOCH=$(git log -1 --format=%cd --date=format:%s)
```
to get closer to repeatable builds. (This uses the timestamp from the last git commit.)

**Release note**:

```release-note
NONE
```

/assign @BenTheElder @mikedanese
2018-02-08 22:34:29 -08:00
Kubernetes Submit Queue 53207e1be6
Merge pull request #55684 from wu-qiang/kms-plugin-grpc-api
Automatic merge from submit-queue (batch tested with PRs 58437, 59490, 55684). 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>.

gRPC-based KMS plugin service

**What this PR does / why we need it**:
Implement for issue https://github.com/kubernetes/kubernetes/issues/51965
**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 #51965

**Special notes for your reviewer**:
@destijl @sakshamsharma @deads2k @ericchiang
The implementation based on the document https://docs.google.com/document/d/1S_Wgn-psI0Z7SYGvp-83ePte5oUNMr4244uanGLYUmw/edit
**Release note**:

```release-note
Implement envelope service with gRPC, so that KMS providers can be pulled out from API server.
```
2018-02-08 21:34:41 -08:00
Jeff Grafton c0d0c7bc0e bazel: support using SOURCE_DATE_EPOCH to override date 2018-02-08 21:12:03 -08:00
Kubernetes Submit Queue c179b8a05c
Merge pull request #58437 from tossmilestone/scheduler-golint
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>.

Enable golinting for scheduler packages.

**What this PR does / why we need it**:
Enable golinting for scheduler packages

**Which issue(s) this PR fixes**:
Fixes #58234 

**Special notes for your reviewer**:
- `pkg/scheduler/api` and `pkg/scheduler/api/v1` are not removed from `hack/.golint_failures`, because there are auto-generated go files by `deepcopy-gen` in the package, which have golint errors and are not suggested manually edited.
- Please help to refine the comments if there are error or inaccurate descriptions. Thanks! 

**Release note**:

```release-note
Enable golint for `pkg/scheduler` and fix the golint errors in it.
```
2018-02-08 21:02:24 -08:00
Jiaying Zhang 90c2098103 Create pkg/kubelet/apis/deviceplugin/v1beta1 directory.
The proto stays the same as v1alpha. Only changes Version in
constants.go to "v1beta1" and the BUILD file to pick up the new dir.
2018-02-08 17:04:43 -08:00
Rohit Ramkumar 12d4eac038 Add a new environment variable to the startup scripts called
KUBE_PROXY_MODE
2018-02-08 15:10:07 -08:00
Kubernetes Submit Queue b9361192b8
Merge pull request #59280 from dims/allow-custom-cloud-controller-manager
Automatic merge from submit-queue (batch tested with PRs 57824, 58806, 59410, 59280). 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>.

Ability to run an external binary instead of hyperkube cloud-controller-manager

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

Since we want folks to test their own binaries, let's allow
a way for them them to specify a custom binary.

**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-02-08 03:29:42 -08:00
Kubernetes Submit Queue fb340a4695
Merge pull request #57824 from thockin/gcr-vanity
Automatic merge from submit-queue (batch tested with PRs 57824, 58806, 59410, 59280). 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>.

2nd try at using a vanity GCR name

The 2nd commit here is the changes relative to the reverted PR.  Please focus review attention on that.

This is the 2nd attempt.  The previous try (#57573) 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.

xref https://github.com/kubernetes/release/issues/281

TL;DR:
  *  The new `staging-k8s.gcr.io` is where we push images.  It is literally an alias to `gcr.io/google_containers` (the existing repo) and is hosted in the US.
  * The contents of `staging-k8s.gcr.io` are automatically synced to `{asia,eu,us)-k8s.gcr.io`.
  * The new `k8s.gcr.io` will be a read-only alias to whichever regional repo is closest to you.
  * In the future, images will be promoted from `staging` to regional "prod" more explicitly and auditably.

 ```release-note
Use "k8s.gcr.io" for pulling container images rather than "gcr.io/google_containers".  Images are already synced, so this should not impact anyone materially.
    
Documentation and tools should all convert to the new name. Users should take note of this in case they see this new name in the system.
```
2018-02-08 03:29:32 -08:00
tossmilestone a4e49d19f9 Enable golint for `pkg/scheduler` 2018-02-08 14:25:55 +08:00
Christoph Blecker 757feee04f
Route verify-godep-licenses output to stderr 2018-02-07 21:45:02 -08:00
Christoph Blecker a34b1cfcfa
Route verify-godeps output to stderr 2018-02-07 21:44:35 -08:00
Christoph Blecker 4ae195cb2a
Route verify-boilerplate output to stderr 2018-02-07 21:41:31 -08:00
Christoph Blecker 3a9e115423
Route verify-gofmt output to stderr 2018-02-07 21:39:49 -08:00
Christoph Blecker 6375e2b24d
Route verify-bazel output to stderr 2018-02-07 21:39:38 -08: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
Wu Qiang c28f66c7e7 Add verify script for kms generated file 2018-02-08 01:29:56 +00:00
Wu Qiang 9825018e4a Add generated script for kms api pb file 2018-02-08 01:00:38 +00:00
Wu Qiang a6368bb04c Only support unix socket for kms gRPC, also add Version method 2018-02-08 01:00:38 +00:00
Wu Qiang 16b04d68b1 Fix verify error and address review comments
Signed-off-by: Wu Qiang <qiang.q.wu@oracle.com>
2018-02-08 01:00:38 +00:00
Davanum Srinivas 18590378c4 Remove experimental keystone authenticator
experimental-keystone-url and experimental-keystone-ca-file were always
experimental. So we don't need a deprecation period.
KeystoneAuthenticator was on the server side and needed userid/password
to be passed in and used that to authenticate with Keystone. We now
have authentication and authorization web hooks that can be used. There
is a external repo with a webook for keystone which works fine along
with the kubectl auth provider that was added in:
a0cebcb559

So we don't need this older style / hard coded / experimental code
anymore.
2018-02-07 19:28:55 -05:00
Kubernetes Submit Queue 93cd559048
Merge pull request #58832 from liggitt/move-workload-internal-types
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>.

Move workload registries to apps package

xref #43214
Starts the process of moving internal types to the apps packages for apps types

```release-note
NONE
```
2018-02-07 12:47:17 -08:00
Kubernetes Submit Queue cf7073a831
Merge pull request #58973 from verb/cri-enum
Automatic merge from submit-queue (batch tested with PRs 59276, 51042, 58973, 59377, 59472). 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 Container Runtime Interface to use enumerated namespace modes

**What this PR does / why we need it**: This updates the CRI as described in the [Shared PID Namespace](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/node/pod-pid-namespace.md#container-runtime-interface-changes) proposal. This change to the alpha API is not backwards compatible: implementations of the CRI will need to update to the new API version.

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

**Special notes for your reviewer**:
/assign @yujuhong 

**Release note**:

```release-note
[action-required] The Container Runtime Interface (CRI) version has increased from v1alpha1 to v1alpha2. Runtimes implementing the CRI will need to update to the new version, which configures container namespaces using an enumeration rather than booleans.
```
2018-02-07 12:00:47 -08:00
Jordan Liggitt ae41593f85
Move workload registries to apps package 2018-02-07 13:29:06 -05:00
Kubernetes Submit Queue 15dbd4e2ae
Merge pull request #59227 from juanvallejo/jvallejo/remove-mapper-dep-printer
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 mapper dependency for cmdutil.Factory#PrintSuccess

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

Part of a series of patches removing printing stack dependency on mappings the rest mapper

**Before**
```
$ kubectl label pod/my-pod label=label
pod "my-pod" labeled
```

**After**
```
$ kubectl label pod/my-pod label=label
pods "my-pod" labeled
```

cc @deads2k
2018-02-07 08:39:15 -08:00
juanvallejo beb5ea641a
remove mapper dependency - PrintSuccess 2018-02-07 10:10:45 -05:00
Maciej Szulik 5fec14942c Return information about which int tests failed in the summary 2018-02-07 15:21:46 +01:00
Lee Verberne e10042d22f Increment CRI version from v1alpha1 to v1alpha2
This also incorporates the version string into the package name so
that incompatibile versions will fail to connect.

Arbitrary choices:
- The proto3 package name is runtime.v1alpha2. The proto compiler
  normally translates this to a go package of "runtime_v1alpha2", but
  I renamed it to "v1alpha2" for consistency with existing packages.
- kubelet/apis/cri is used as "internalapi". I left it alone and put the
  public "runtimeapi" in kubelet/apis/cri/runtime.
2018-02-07 09:06:26 +01:00
Kubernetes Submit Queue fa85bf7094
Merge pull request #59439 from dims/bump-timeout-for-api-server-for-slower-boxes
Automatic merge from submit-queue (batch tested with PRs 59441, 58264, 59287, 59396, 59439). 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 timeout in slower virtual machines

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

60 seconds seems to work better in slower boxes

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

```
2018-02-06 20:27:45 -08:00
Davanum Srinivas 8c4ddf6fcd Better timeout in slower virtual machines
60 seconds seems to work better in slower boxes
2018-02-06 16:57:17 -05:00
Kubernetes Submit Queue 313f443015
Merge pull request #58991 from juanvallejo/jvallejo/fix-apply-force
Automatic merge from submit-queue (batch tested with PRs 51323, 59306, 58991, 59050). 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 apply --force w/ invalid resource

Fixes https://github.com/kubernetes/kubernetes/issues/58984

- First commit: Fixes cases where `--force` is provided with `kubectl apply`, with an object that is BOTH invalid and will cause a conflict error
- Second commit: Fixes cases where `--force` is provided with `kubectl apply`, with an invalid object 

Justification for the first commit here: https://bugzilla.redhat.com/show_bug.cgi?id=1539529#c3

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

cc @ironcladlou
2018-02-06 10:40:37 -08:00
juanvallejo ef0e40d39c
fix apply --force w/ invalid AND conflicting resource 2018-02-06 11:29:00 -05:00
dmathieu dadce343be fix golint warnings in daemon controller
The only on remaining asks to rename DaemonSetsController, which is a
public interface and would need proper deprecation first.
2018-02-06 13:51:34 +01:00
Kubernetes Submit Queue 8fbf21a2eb
Merge pull request #59348 from stewart-yu/fixkuberoot
Automatic merge from submit-queue (batch tested with PRs 55986, 59375, 59334, 59348, 58027). 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 ${KUBE-ROOT} for file directory

**What this PR does / why we need it**:
If we using following command
```shell
cd hack
./test-update-storage-objects.sh
```
it would throw err about unable find file `examples\persistent-volume-provisioning\rbd\rbd-storage-class.yaml`.
I think we should add `${KUBE-ROOT} `for file directory, so that we can run command in relative directory.

**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-02-05 21:14:40 -08:00
Kubernetes Submit Queue e81b0021b6
Merge pull request #59334 from cblecker/top-dir-owners
Automatic merge from submit-queue (batch tested with PRs 55986, 59375, 59334, 59348, 58027). 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 OWNERS files for remaining subdirs of kubernetes/

**What this PR does / why we need it**:
This adds OWNERS files for the remaining subdirs of kubernetes/

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

**Special notes for your reviewer**:
- translations: the kubectl specific translations are being handled by sig-cli, but the rest of the files like README and test have been handled and approved mostly by @brendandburns.
- third_party: this is a tricky mix of stuff like forked code.. mostly handled by the likes of @thockin, @lavalamp, or @smarterclayton for approvals.
- Godep/vendor: Right now @thockin mostly approves these as there are some tricky pieces around ensuring the licenses are compliant. For these, I've created a vendor-(reviewers|approvers) aliases, and associated those with both the Godeps and vendor folders. Right now @thockin is the only person in them, but that can easily expand in the future if there is a documented process on what to look for when approving dependency bumps.

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

/assign thockin 
/cc fejta
2018-02-05 21:14:37 -08:00
Davanum Srinivas a9473cb6b9 Ability to run an external binary instead of hyperkube cloud-controller-manager
Since we want folks to test their own binaries, let's allow
a way for them them to specify a custom binary.
2018-02-05 16:03:56 -05: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
stewart-yu 50cdfc6076 add kube-root for file directory 2018-02-05 17:54:17 +08:00
Christoph Blecker 61b4f176d9
Ignore OWNERS file in verify-godeps 2018-02-04 23:54:08 -08:00
Davanum Srinivas 73b46ff7db Fix golint for openstack and cinder packages 2018-02-04 17:15:32 -05: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
Mike Danese 4961065562 cluster: remove unused functions 2018-02-01 07:23:50 -08:00
Kubernetes Submit Queue 7e33ffba10
Merge pull request #58728 from dashpole/cadvisor_testing
Automatic merge from submit-queue (batch tested with PRs 57683, 59116, 58728, 59140, 58976). 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 node-e2e framework for testing cadvisor

**What this PR does / why we need it**:
With cadvisor checked out in your gopath, we can now run cadvisor integration tests: `make test-e2e-node TEST_SUITE=cadvisor`.  
This has a number of advantages:
 * we can use the same images to test both, configured the same way.
 * we will now get cadvisor logs from the integration test.
 * we can now use the familiar node-e2e arguments to specify images to test with cadvisor
 * no more managing snowflake VMs for cadvisor.

**Special notes for your reviewer**:
cadvisor doesnt currently produce junit* files, so I removed that as a requirement.
This wont actually work until https://github.com/google/cadvisor/pull/1868 is merged as well.

Related issue:
https://github.com/kubernetes/test-infra/issues/190

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

/assign @Random-Liu 
/sig node
/priority important-soon
/kind cleanup
2018-02-01 07:04:40 -08:00
Kubernetes Submit Queue 3775ae59a8
Merge pull request #59120 from dims/remove-alpha-command-for-ccm-with-hyperkube
Automatic merge from submit-queue (batch tested with PRs 59106, 58985, 59068, 59120, 59126). 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 alpha when running cloud-controller-manager with hyperkube

**What this PR does / why we need it**:
We used to use `hyperkube alpha cloud-controller-manager` to run ccm. The alpha was dropped from the command in e48847e6ce (diff-dfaeb837c577bcd60dd9105c43427a35R118)

**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-02-01 05:53:42 -08:00
Kubernetes Submit Queue 5e3e705e82
Merge pull request #59068 from shyamjvs/benchmarking-script-fix
Automatic merge from submit-queue (batch tested with PRs 59106, 58985, 59068, 59120, 59126). 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>.

Disable JUnit-style reporting for benchmark script

Fixes https://github.com/kubernetes/test-infra/issues/6392

/cc @porridge 

```release-note
NONE
```
2018-02-01 05:53:40 -08:00
David Ashpole 17e8d8c040 use node-e2e framework for testing cadvisor 2018-01-31 10:14:54 -08:00
Kubernetes Submit Queue aa12b9b7cb
Merge pull request #58849 from cblecker/staging-speed
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>.

Only run verify-staging-godeps if staging/godeps are touched

**What this PR does / why we need it**:
I had a lightbulb moment. On presubmit, we only verify godeps if one of the following is changed:
- The godep scripts
- The Godeps/ dir
- The vendor/ dir

The same should apply to verifying the staging godeps, adding in the staging dir itself. The logic being, if we don't touch Godeps/vendor, we don't touch the script that generates stuff, and we don't make changes to the staging dir itself (like adding/removing imports), then we don't need to verify godeps.

Note that post-submit CI jobs will still check these, as I'm copying the same logic that's in verify-godeps

This seems too easy, so *please* point out if I'm missing something.

**Release note**:
```release-note
NONE
```
2018-01-31 09:33:45 -08:00
Shyam Jeedigunta 9ddaeae2c6 Disable JUnit-style reporting for benchmark script 2018-01-31 18:33:21 +01:00
Davanum Srinivas a40e167f39 remove alpha when running cloud-controller-manager with hyperkube 2018-01-31 11:53:57 -05:00
Kubernetes Submit Queue f404c15453
Merge pull request #59048 from cblecker/godep-fix
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 installation and use of vendored godep

**What this PR does / why we need it**:
Fixes the installation of the vendored godep to ensure that the binary ends up in the path when it's done.

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

**Special notes for your reviewer**:
It looks like this broke in https://github.com/kubernetes/kubernetes/pull/51766, but didn't matter because our pinned version was the same as the latest version (so we didn't notice). This fixes it in my local env -- hopefully it will in CI too.

**Release note**:
```release-note
NONE
```
2018-01-31 02:39:10 -08: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
Christoph Blecker 78ed389122
Remove unneeded code 2018-01-30 09:29:51 -08:00
Kubernetes Submit Queue 9e2878d93c
Merge pull request #58567 from hzxuzhonghu/admission-01
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>.

kube-apiserver flag --admision-control is deprecated, use the new --e…

…nable-admission-plugins



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

1. As #58123 mark kube-apiserver flag `admission-control` deprecated,  replace it in some places.

**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
```
/assign @liggitt @deads2k @sttts
2018-01-30 09:21:38 -08:00
Christoph Blecker 4fb2265bd8
Don't go get godep in jenkins scripts 2018-01-30 07:42:58 -08:00
Kubernetes Submit Queue b98c515819
Merge pull request #57723 from mkumatag/image_manifest
Automatic merge from submit-queue (batch tested with PRs 57322, 57723, 58706, 59004, 58857). 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 the pause image a manifest list

**What this PR does / why we need it**:
Build and push manifest for kubernetes images

**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 https://github.com/kubernetes/kubernetes/issues/57869

**Special notes for your reviewer**:

**Release note**:

```
NONE
```
2018-01-29 20:11:35 -08:00
Kubernetes Submit Queue d8f32b2917
Merge pull request #58968 from deads2k/server-07-deadarg
Automatic merge from submit-queue (batch tested with PRs 58955, 58968, 58971, 58963, 58298). 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 --tls-ca-file which had no effect

The flag has had no effect since we started configuring loopback based on the direct cert.  I've marked it deprecated this release so we don't break launch scripts right away, but its coming.  I think we should remove it in 1.11.


```release-note-action-required
kube-apiserver flag --tls-ca-file has had no effect for some time.  It is now deprecated and slated for removal in 1.11.  If you are specifying this flag, you must remove it from your launch config before ugprading to 1.11.
```
2018-01-29 13:48:42 -08:00
Kubernetes Submit Queue a58ca14275
Merge pull request #58902 from yujuhong/rm-rktshim
Automatic merge from submit-queue (batch tested with PRs 56995, 58498, 57426, 58902, 58863). 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>.

kubelet: remove the rktshim directory

This package contains only placeholders without actual implementation.
Since it is not currently under active development, remove it to avoid
unnecessary change needed whenever the interface is changed.
2018-01-29 12:37:44 -08:00
Davanum Srinivas a264991dfe fix parameter advertise_address should be --advertise-address 2018-01-29 11:14:52 -05:00
David Eads 114711f77d remove --tls-ca-file which had no effect 2018-01-29 10:31:37 -05:00
Yu-Ju Hong 318606ca5c kubelet: remove the rktshim directory
This package contains only placeholders without actual implementation.
Since it is not currently under active development, remove it to avoid
unnecessary change needed whenever the interface is changed.
2018-01-26 18:03:34 -08:00
Christoph Blecker 0088f3d67f
Add in godeps verification for hack/lib/ and build/ 2018-01-26 13:29:35 -08:00
Kubernetes Submit Queue f4bab0b1bd
Merge pull request #58783 from cblecker/verify-junit
Automatic merge from submit-queue (batch tested with PRs 58783, 58800, 58846). 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>.

Produce junit results for verify job

**What this PR does / why we need it**:
Junit results may make the verify job clearer, and give us better insights into timings

**Release note**:

```release-note
NONE
```
2018-01-26 10:19:33 -08:00
Kubernetes Submit Queue 27d01b5ab9
Merge pull request #57938 from dims/add-binary-configmap
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>.

Add binary configmap

Reviving code from https://github.com/kubernetes/kubernetes/pull/33549 submitted by @zreigz

**What this PR does / why we need it**:
Add support for binary files in ConfigMap

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

**Special notes for your reviewer**:

**Release note**:

```release-note
ConfigMap objects now support binary data via a new `binaryData` field. When using `kubectl create configmap --from-file`, files containing non-UTF8 data will be placed in this new field in order to preserve the non-UTF8 data. Use of this feature requires 1.10+ apiserver and kubelets.
```
2018-01-26 04:34:33 -08:00
Kubernetes Submit Queue c71ec3e029
Merge pull request #58771 from david-mcmahon/mem-increase
Automatic merge from submit-queue (batch tested with PRs 58518, 58771, 58101, 56829). 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>.

Increase KUBE_PARALLEL_BUILD_MEMORY to 40G.

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

Memory requirements for parallel builds has grown significantly.  Keep the pace with an increase in `KUBE_PARALLEL_BUILD_MEMORY`.

cc @javier-b-perez
2018-01-26 01:03:35 -08:00
Christoph Blecker accb8cdda5
Only run verify-staging-godeps if staging/godeps are touched 2018-01-25 19:02:06 -08:00
Christoph Blecker f801f3f174
Change flags to variables so that they can be passed through make 2018-01-25 13:30:30 -08:00
Christoph Blecker a107ae51af
Set KUBE_JUNIT_REPORT_DIR on dockerized test 2018-01-25 13:30:29 -08:00
Christoph Blecker 5fe4d279ca
Produce junit results for verify job 2018-01-25 13:30:25 -08:00
Kubernetes Submit Queue 70620cb9ea
Merge pull request #58726 from marun/move-multi-zone-e2e
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>.

Move multizone e2e to e2e/scheduling from e2e/multicluster 

afaik these tests should be the responsibility of @kubernetes/sig-scheduling-pr-reviews instead of @kubernetes/sig-multicluster-pr-reviews. 

```release-note
NONE
```
2018-01-25 10:37:30 -08:00
Kubernetes Submit Queue 884e4b7b9c
Merge pull request #58753 from soltysh/explain_cronjobs
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 kubectl explain for cronjobs

**What this PR does / why we need it**:
`kubectl explain cronjob` was failing with `error: Couldn't find resource for "batch/v1, Kind=CronJob"` the reason for that is that even though we were getting the group and version from the mapper, we always rewrote it with the default value for a specific group, unless user specified the output version. 


**Special notes for your reviewer**:

**Release note**:
```release-note
Fix kubectl explain for resources not existing in default version of API group
```
for review:
/assign @juanvallejo 
for approval:
/assign @deads2k
2018-01-25 09:54:03 -08:00
Maru Newby 7ecf404fc6 Move multizone e2e to sig scheduling path 2018-01-25 08:42:16 -08:00
Maciej Szulik c7efab40b6 Fix kubectl explain for cronjobs 2018-01-25 16:10:31 +01:00
David McMahon b0706f415a Increase KUBE_PARALLEL_BUILD_MEMORY to 40G. 2018-01-24 13:15:33 -08:00
Shyam Jeedigunta 040bce890a Fix bug in dockerized benchmarking script 2018-01-24 20:14:57 +01:00
Shyam Jeedigunta d0d7cf644e Create benchmark results file before writing to it 2018-01-24 14:21:29 +01:00
hzxuzhonghu 0a230fad17 kube-apiserver flag --admision-control is deprecated, use the new --enable-admission-plugins 2018-01-24 20:47:54 +08:00
Manjunath A Kumatagi 17a1ec10cf Make the pause image a manifest list 2018-01-24 02:10:45 -05:00
David Eads 972693cffe generated 2018-01-23 14:11:49 -05:00
David Eads 9baae557da add apiregistration v1 2018-01-23 14:11:49 -05:00
Kubernetes Submit Queue c2ad53674b
Merge pull request #58539 from cblecker/update-use-make
Automatic merge from submit-queue (batch tested with PRs 58539, 58685). 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>.

Force use of Makefile for update

**What this PR does / why we need it**:
This forces the use of `make update` instead of `hack/update-all.sh`. The main reason for this is ensuring that `make generated_files` runs first, as the files it generates are used in some of the other update scripts. I've seen this a couple times bite contributors where they just haven't regenerated the code yet, so the update-all scripts don't fully do their job.

**Release note**:
```release-note
NONE
```
2018-01-23 07:24:31 -08:00
Davanum Srinivas 43aa077cbb run a full round trip scenario 2018-01-23 07:28:58 -05:00
Christoph Blecker b57845341f
Force use of Makefile for update 2018-01-22 15:11:16 -08:00
Tim Hockin adf53a2f39 Don't run godep restore in jenkins verify 2018-01-22 08:49:27 -08:00
Kubernetes Submit Queue bfac95e71b
Merge pull request #58548 from yujuhong/simplify-ds
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>.

dockershim: remove the use of kubelet's internal API

We let dockershim implement the kubelet's internal (CRI) API as an
intermediary step before transitioning fully to communicate using gRPC.
Now that kubelet has been communicating to the runtime over gRPC for
multiple releases, we can safely retire the extra interface in
dockershim.

This PR also moves the legacy functions to a separate file and clean up
the interfaces.
2018-01-19 20:45:07 -08:00
Kubernetes Submit Queue 7ba13c26d1
Merge pull request #58543 from dims/fix-bad-param-provider-id
Automatic merge from submit-queue (batch tested with PRs 58300, 58530, 57942, 58543). 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 provider-id bad param in local-up-cluster

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

mea culpa .. provider-id should be in kubelet not controller manager

**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-19 20:00:39 -08:00
Yu-Ju Hong 20910289b8 Fix all the unit tests and update the bazel files 2018-01-19 16:31:18 -08:00
Davanum Srinivas 23fb34ff5d fix provider-id bad param in local-up-cluster
mea culpa .. provider-id should be in kubelet not controller manager
2018-01-19 16:49:40 -05:00
Shyam Jeedigunta 60bd9ab906 Benchmarking script pretty-prints results into a separate file 2018-01-19 18:33:30 +01:00
Kubernetes Submit Queue 630b943e00
Merge pull request #58496 from liggitt/hack-owner
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>.

Add liggitt to hack approvers

* Authored ~60 commits involving this folder
* Already an approver on things with components in hack (CLI tests, apiserver changes requiring local-up-cluster changes, fixtures and testdata, etc)

```release-note
NONE
```
2018-01-19 06:21:56 -08:00
Jordan Liggitt 1f815b9e8c
Add liggitt to hack approvers 2018-01-18 20:50:18 -05:00
Balu Dontu 4683a9471f Add multi-vc configuration for e2e tests 2018-01-18 15:29:27 -08:00
Davanum Srinivas f2093f1da3 Enable --external-cloud-volume-plugin/--provider-id for local-up-cluster
See the following commit for more information about the
--external-cloud-volume-plugin flag:
070a7b5823

We need this flag for EXTERNAL_CLOUD_PROVIDER flag to work properly with
volume plugins

Also add --provider-id defaulting to hostname as we seem to pick
up the ip address otherwise causing problem with looking up the
node in the cloud provider
2018-01-17 22:10:54 -05: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 a490ac5cca
Merge pull request #58351 from php-coder/update_swagger_spec_show_log
Automatic merge from submit-queue (batch tested with PRs 58008, 58351). 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-swagger-spec.sh: when API server fails to start, show the last lines of logs

**What this PR does / why we need it**:
When API server fails to start there is no easy way to know why. You have to read the script where you will find that there is a log file that could have some useful info. This PR simplifies debugging:
1) it includes the path to the log file in the error message
2) it also shows the last 10 lines from this log

Before this change:
```
+++ [0116 19:33:49] Starting kube-apiserver
!!! [0116 19:34:19] Timed out waiting for apiserver:  to answer at 127.0.0.1:8050/healthz; tried 30 waiting 1 between each
!!! Error in ./hack/update-swagger-spec.sh:42
  Error in ./hack/update-swagger-spec.sh:42. 'return 1' exited with status 1
Call stack:
  1: ./hack/update-swagger-spec.sh:42 main(...)
Exiting with status 1
+++ [0116 19:34:19] Clean up complete
```

After this change:
```
+++ [0116 19:42:41] Starting kube-apiserver
!!! [0116 19:42:51] Timed out waiting for apiserver:  to answer at 127.0.0.1:8050/healthz; tried 30 waiting 1 between each
!!! [0116 19:42:51] Here are the last 10 lines from kube-apiserver (/tmp/swagger-api-server.log)
!!! [0116 19:42:51] === BEGIN OF LOG ===
I0116 19:42:41.689355   30809 server.go:122] Version: v1.10.0-alpha.1.877+a02cb7c1f7d0d6-dirty
I0116 19:42:41.942601   30809 serving.go:295] Generated self-signed cert (/tmp/update-swagger-spec.2Udp/certs/apiserver.crt, /tmp/update-swagger-spec.2Udp/certs/apiserver.key)
I0116 19:42:41.942611   30809 server.go:647] external host was not specified, using 10.10.10.10
W0116 19:42:41.942618   30809 authentication.go:378] AnonymousAuth is not allowed with the AllowAll authorizer.  Resetting AnonymousAuth to false. You should use a different authorizer
error in initializing storage factory: group version podsecuritypolicy.admission.k8s.io/v1beta1 that has not been registered
!!! [0116 19:42:51] === END OF LOG ===
+++ [0116 19:42:51] Clean up complete
```

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

PTAL @cblecker @sttts 
CC @simo5
2018-01-17 00:56:34 -08:00
Slava Semushin 380f1c49e1 hack/update-swagger-spec.sh: when API server fails to start, show the last lines of logs. 2018-01-16 19:49:01 +01:00
Kubernetes Submit Queue d3428a5736
Merge pull request #58301 from liggitt/all-category-single-group
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>.

Limit all category to apps group for ds/deployment/replicaset

There's lots of confusion around the resources we are moving out of the extensions api group appearing twice when using the `kubectl get all` category. Fortunately, we control that category serverside. For resources that appear in multiple API groups (deployments, daemonsets, replicasets), this updates the server to only include the `apps` resources in the `all` category, so they only appear once.

Fixes https://github.com/kubernetes/kubectl/issues/189
Fixes https://github.com/kubernetes/kubectl/issues/167
Fixes https://github.com/kubernetes/kubernetes/issues/55720
Fixes https://github.com/kubernetes/kubernetes/issues/57270
Fixes https://github.com/kubernetes/kubernetes/issues/57931

```release-note
NONE
```
2018-01-15 13:51:14 -08: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
Jordan Liggitt 0a1b76cb11
Limit all category to apps group for ds/deployment/replicaset 2018-01-15 14:41:42 -05: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
Kubernetes Submit Queue d047218fc5
Merge pull request #58160 from shyamjvs/script-for-benchmark-integration-tests
Automatic merge from submit-queue (batch tested with PRs 56408, 58224, 58160). 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 script to run integration benchmark tests in dockerized env

Ref https://github.com/kubernetes/kubernetes/issues/58154

/cc @kubernetes/sig-testing-pr-reviews @krzyzacy 
fyi @porridge 

```release-note
NONE
```
2018-01-15 09:21:30 -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
Shyam Jeedigunta 1bdc99d2ec Add script to run integration benchmark tests in dockerized env 2018-01-15 14:04:19 +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
Jeff Grafton c1554d08d8 Install gazelle from bazelbuild/bazel-gazelle instead of rules_go 2018-01-12 12:27:34 -08:00
Slava Semushin 296ae178d9 hack/generate-bindata.sh: make output cleanly by suppressing pushd/popd output. 2018-01-12 16:31:10 +01:00
Kubernetes Submit Queue 4bc286f025
Merge pull request #57571 from spiffxp/mk-staging-repos-authoritative
Automatic merge from submit-queue (batch tested with PRs 58025, 57112, 57879, 57571, 58062). 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>.

Treat staging repos as authoritative source for all files

Add CONTRIBUTING.md files to remind people not to PR directly into the published repos.

/hold
I believe this requires removing these files from the published repos if any copies exist there

ref: kubernetes/kubernetes#57559
2018-01-10 11:46:49 -08:00
Kubernetes Submit Queue b873fc4453
Merge pull request #57879 from bowei/gce-gen
Automatic merge from submit-queue (batch tested with PRs 58025, 57112, 57879, 57571, 58062). 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>.

Code generation for GCE compute interface

Use code generation to "write" most of the GCE cloud provider library. This enables the following:

- Consistent interfaces, including handling of the different API versions (GA, alpha, beta)
- Efficient implementation of cross cutting features such as metrics, logging, tracing etc. Adding such features has in the past been a tedious and error prone endeavor. 
- High fidelity mocks for all of the compute API. What this means is that most of our controller logic can be tested as unit tests in a consistent way without creating individual mocks by hand.

```release-note
NONE
```
2018-01-10 11:46:46 -08:00
Scott Creeley 8b5f293b3d fix for local-up-cluster.sh bad cloud_config_arg 2018-01-10 10:21:44 -05:00
Bowei Du 3cde2613ff Fix lint and bazel 2018-01-09 23:09:08 -08:00
Bowei Du e609cda0d2 hack/ scripts to keep the generated code in sync 2018-01-09 17:07:10 -08:00
Bowei Du adaaed1028 Ignore golint failures for bad compute API names 2018-01-09 16:40:15 -08:00
Aaron Crickenberger d9b5773101 Treat staging repos as authoritative for all files
Move files from kubernetes/foo root back to
kubernetes/kubernetes/staging/src/k8s.io/foo root

Then:
- add CONTRIBUTING.md for all staging repos
- add .PULL_REQUEST_TEMPLATE to all staging repos
- ignore .github while diffing generated protobuf
2018-01-09 15:18:27 -08:00
Lantao Liu f64c508e2e Add getCRIClient and set default values for CRI related flags 2018-01-09 22:59:17 +00:00
Kubernetes Submit Queue 32c026c1f8
Merge pull request #57757 from dims/support-cloud-controller-manager-in-local-up-cluster
Automatic merge from submit-queue (batch tested with PRs 55910, 57757). 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 support for cloud-controller-manager in local-up-cluster.sh

**What this PR does / why we need it**:
We need an easy way to test the new external cloud provider. So
let's keep the existing CLOUD_PROVIDER and CLOUD_CONFIG as-is and
add a flag EXTERNAL_CLOUD_PROVIDER to run a separate process.

Since we use hyperkube to run controller-manager, let's add support
for cloud-controller-manager as well to support this use case.

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

```dev-release-note
Ability to run the cloud-controller-manager from local-up-cluster for easy testing
```
2018-01-09 01:33:44 -08:00
Davanum Srinivas 77c71170eb Add support for cloud-controller-manager in local-up-cluster.sh
We need an easy way to test the new external cloud provider. So
let's keep the existing CLOUD_PROVIDER and CLOUD_CONFIG as-is and
add a flag EXTERNAL_CLOUD_PROVIDER to run a separate process.
2018-01-08 07:04:29 -05:00
Kubernetes Submit Queue 7b4c9f99b9
Merge pull request #57521 from misterikkit/integrationTimeout
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>.

Allow integration test timeout override.

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

This allows the test timeout to be overridden at the command line for
integration tests. The default behavior is unchanged.

e.g.
```
make test-integration WHAT="./test/integration/scheduler" KUBE_TEST_ARGS="-run=. -count=10" KUBE_TIMEOUT="-timeout=1h"
```



**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-07 11:02:24 -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
Kubernetes Submit Queue afbbd394c1
Merge pull request #57517 from verb/paws-bump
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 pause container used by kubelet and tests to 3.1

This updates the version of the pause container used by the kubelet and
various test utilities to 3.1.

**What this PR does / why we need it**: The pause container hasn't been rebuilt in quite a while and needs an update to reap zombies (#50865) and for schema2 manifest (#56253).

**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 #50865, Fixes #56253

**Special notes for your reviewer**:

**Release note**:

```release-note
The kubelet uses a new release 3.1 of the pause container with the Docker runtime. This version will clean up orphaned zombie processes that it inherits.
```
2018-01-04 17:06:48 -08:00
Lee Verberne 1ea697044a Update pause container version to 3.1
This updates the version of the pause container used by the kubelet and
various test utilities to 3.1.

This also adds a CHANGELOG.md for build/pause
2018-01-04 11:35:29 +01:00
Kubernetes Submit Queue 17ffacc37f
Merge pull request #57805 from liggitt/test-grep-pipe-fix
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>.

Avoid error on closed pipe

fixes https://github.com/kubernetes/kubernetes/issues/57706

from @stevekuznetsov:
> If you do `echo | grep -q`, `grep` will exit when it finds the first match
> If the `echo` is still writing to stdout it fails because there's no reader on that pipe anymore
> So we always use `grep -q <<<"${content}"` now
> since that uses a FIFO
  
```release-note
NONE
```
2018-01-03 15:40:43 -08:00
Jordan Liggitt 0d5b9dd3d4
Avoid error on closed pipe 2018-01-03 16:44:50 -05:00
Lion-Wei 071200128f remove /k8s.io/kubernetes/pkg/kubectl/testing 2018-01-03 09:39:33 +08:00
Christoph Blecker 83bc631bee
Add generated runtime and generated device plugin to update-all 2018-01-02 00:15:05 -08:00
Christoph Blecker bec420875e
Update boilerplate for 2018 2018-01-01 22:57:59 -08:00
Jeff Grafton 924fd3b058 Update helper scripts to find binaries in new bazel-bin paths 2017-12-23 13:13:09 -08:00
Jeff Grafton efee0704c6 Autogenerate BUILD files 2017-12-23 13:12:11 -08:00
Jeff Grafton b13263eeb3 Bump rules_go to 0.8.1 2017-12-23 13:12:02 -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
Kubernetes Submit Queue 475d5c32e8
Merge pull request #57564 from spiffxp/follow-gazelle-repo
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>.

Handle gazelle moving to a new repo

Gazelle moved to a new repo, and out of bazebuild/rules_go.  At first I tried the same approach I used for kubernetes/test-infra and just bumped to the new repo.  Turns out that version was later than what is used here in kubernetes/kubernetes.  Now I'm trying to use a rewritten version of `go_install_from_commit` to support installing packages that aren't available at HEAD

ref kubernetes/test-infra#6075

/priority critical-urgent
https://k8s-testgrid.appspot.com/presubmits-kubernetes-blocking#pull-kubernetes-verify is blocked until this is addressed
2017-12-22 13:51:14 -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
Kubernetes Submit Queue db9029324f
Merge pull request #57101 from php-coder/local_up_cluster_daemon_msgs
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>.

local-up-cluster.sh: improve messages when running with ENABLE_DAEMON=true

**What this PR does / why we need it**:
Don't suggest to use `Ctrl+C` or open up another terminal when the script was running with `ENABLE_DAEMON=true`.

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

CC @simo5
2017-12-21 11:23:03 -08:00
Jonathan Basseri 4df4c8bdd2 Allow integration test timeout override.
This allows the test timeout to be overridden at the command line for
integration tests. The default behavior is unchanged.

e.g.
    make test-integration WHAT="./test/integration/scheduler" \
        KUBE_TEST_ARGS="-run=. -count=10" \
	KUBE_TIMEOUT="-timeout 1h"
2017-12-21 10:55:09 -08:00
Slava Semushin 9d34fee57c hack/local-up-cluster.sh: improve messages when script was running with ENABLE_DAEMON=true 2017-12-21 12:24:54 +01:00
Kubernetes Submit Queue 324991bd67
Merge pull request #56274 from surajssd/enable-podpreset-localup-cluster
Automatic merge from submit-queue (batch tested with PRs 57292, 56274, 57435, 57438, 57429). 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>.

enable podpreset by default in local up cluster

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

This PR enables PodPreset in Admission control and also for that
to work on the apiserver level enalbes the API group
settings.k8s.io/v1alpha1.

**Release note**:

```release-note
NONE
```
2017-12-20 22:16:43 -08:00
Kubernetes Submit Queue d78c0652c1
Merge pull request #57417 from fabianofranz/no_longer
Automatic merge from submit-queue (batch tested with PRs 57434, 57221, 57417, 57474, 57481). 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>.

fabiano no longer a thing

**What this PR does / why we need it**: Removes me from lists of reviewers and approvers.

**Release note**:

```release-note
NONE
```
2017-12-20 17:42:40 -08:00
Davanum Srinivas 6738da1d28 Fix problem accessing private docker registries
In 027c8b9ef2, we added code to
move from .dockercfg to config.json file. But we forgot to use
the right secret type and the key to store the base64'ed creds
2017-12-20 12:37:40 -05:00
Ryan Phillips 63e2eacd22 add semver metadata regex
* supports v1.9.0+stable.0
2017-12-19 15:04:56 -06:00
Fabiano Franz b8af5964af fabiano no longer a thing 2017-12-19 16:37:12 -02:00
Kubernetes Submit Queue 8deab51767
Merge pull request #56403 from sttts/sttts-client-gen-main-reuse
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>.

code-gen: reusable main.go logic, preparation for kube-gen

Split main.go files into plumbing and calls to NewDefaults, AddFlags and Validate. This will allow us to create kube-gen without duplicating much code, at least no generator logic (with the exception of a little loop in client-gen adding the group path to the input dirs).
2017-12-19 05:15:32 -08: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
Kubernetes Submit Queue 3ef674188d
Merge pull request #56864 from juanvallejo/jvallejo/add-selector-kubectl-drain
Automatic merge from submit-queue (batch tested with PRs 55751, 57337, 56406, 56864, 57347). 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 pod-selector kubectl drain

**Release note**:
```release-note
Added the ability to select pods in a chosen node to be drained, based on given pod label-selector
```

This patch adds the ability to select pods in a chosen node to be drained, based on given pod label-selector. Related downstream issue: https://github.com/openshift/origin/issues/17554

Further, it removes explicit, specific, pod-controller check. The `drain` command currently fails if a pod has a controller of a `kind` [not explicitly handled in the command itself](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubectl/cmd/drain.go#L331). This causes `drain` to be unusable if a node contains pods managed by third-party, or "unknown" controllers.

Based on [this comment](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubectl/cmd/drain.go#L353), the expectation was to fail if a pod's controller was not found for whatever reason. I believe that the `drain` command should not care about the existence of a pod controller. It should only care whether a pod has one, and act according to that controller kind. This solves a downstream bug: https://github.com/openshift/origin/issues/17563

cc @fabianofranz @deads2k @kubernetes/sig-cli-misc
2017-12-18 18:50:45 -08:00
Kubernetes Submit Queue e5abffca6f
Merge pull request #54174 from thockin/gcr-vanity
Automatic merge from submit-queue (batch tested with PRs 54379, 56593, 56685, 54174, 57309). 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 k8s.gcr.io vanity domain for container images

Related issue: https://github.com/kubernetes/release/issues/281

```release-note
Use "k8s.gcr.io" for container images rather than "gcr.io/google_containers".  This is just a redirect, for now, so should not impact anyone materially.  

Documentation and tools should all convert to the new name. Users should take note of this in case they see this new name in the system.
```
2017-12-18 14:45:45 -08:00
Rohit Jog 015e20cb15 e2e test layout changes for vsphere (#398) 2017-12-18 10:19:18 -08:00
Tim Hockin eba5b6092a Use k8s.gcr.io vanity domain for container images 2017-12-18 09:18:34 -08:00
juanvallejo 151398e961
add --pod-selector opt kubectl drain 2017-12-18 10:15:06 -05:00
Kubernetes Submit Queue fa78f3445d
Merge pull request #56878 from perotinus/fix-comment-mistake
Automatic merge from submit-queue (batch tested with PRs 54902, 56831, 56702, 56287, 56878). 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 a comment in hack/lib/version.sh about which tags are used to get the version

The `--tags` flag to `git describe` specifically adds in lightweight tags. This just makes the comment correct.

Alternatively, that flag could be removed from the command, but I think that requires more detailed thinking.

**Release note**:
```release-note
NONE
```
2017-12-16 09:33:45 -08:00
Kubernetes Submit Queue 9188e99119
Merge pull request #55598 from xiangpengzhao/fix-cp-title
Automatic merge from submit-queue (batch tested with PRs 56390, 56334, 55572, 55598, 56563). 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 parent PR title to cherry-picked PR title

**What this PR does / why we need it**:
Currently the cherry-picked PR title is like this: `Automated cherry pick of #55558`. This is not so readable when reading from PR list. This PR adds the original title to the cherry-picked PR title. This will make the title a bit long though...

See example: https://github.com/kubernetes/kubernetes/pull/55597
`Automated cherry pick of #55558: Apply taint when a volume is stuck in attaching state on node`

**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
```
2017-12-15 22:51:45 -08:00
Kubernetes Submit Queue 6c5f0799bd
Merge pull request #56200 from stewart-yu/testPriority
Automatic merge from submit-queue (batch tested with PRs 56217, 56268, 56263, 56328, 56200). 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>.

export ENABLE_POD_PP=true to enable Pod priority and preemption

**What this PR does / why we need it**:
Though pod priority and preemption is disabled by default in Kubernetes 1.8, it too many steps if you want to enable the feature manually. It is important to enable it in `local-up` cluster by `export` variable.

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

**Special notes for your reviewer**:
cc @shashidharatd @sttts @lavalamp

**Release note**:

```release-note
NONE
```
2017-12-14 23:37:51 -08:00
xialonglee 4a999d73e3 make sure that 'ldflags' are spaces safe 2017-12-15 11:15:24 +08:00
Kubernetes Submit Queue 654b63e701
Merge pull request #56158 from php-coder/improve_make_quick_output
Automatic merge from submit-queue (batch tested with PRs 57172, 55382, 56147, 56146, 56158). 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 quick-verify: show script names without full paths

**What this PR does / why we need it**:
This PR modifies the output of `make quick-verify` by showing script names without full paths. This simplifies reading its output during debugging session.

Before:
```
FAILED   hack/make-rules/../../hack/verify-boilerplate.sh	1s
Skipping hack/make-rules/../../hack/verify-cli-conventions.sh in quick mode
Skipping hack/make-rules/../../hack/verify-codegen.sh in quick mode
Skipping hack/make-rules/../../hack/verify-description.sh in quick mode
Skipping hack/make-rules/../../hack/verify-generated-device-plugin.sh in quick mode
Skipping hack/make-rules/../../hack/verify-generated-docs.sh in quick mode
Skipping hack/make-rules/../../hack/verify-generated-files-remake.sh in quick mode
Skipping hack/make-rules/../../hack/verify-generated-protobuf.sh in quick mode
Skipping hack/make-rules/../../hack/verify-generated-runtime.sh in quick mode
Skipping hack/make-rules/../../hack/verify-generated-swagger-docs.sh in quick mode
Verifying hack/make-rules/../../hack/verify-godep-licenses.sh
Checking for 'Godeps/' changes against 'upstream/master'
SUCCESS  hack/make-rules/../../hack/verify-godep-licenses.sh	14s
```

After:
```
FAILED   verify-boilerplate.sh	1s
Skipping verify-cli-conventions.sh in quick mode
Skipping verify-codegen.sh in quick mode
Skipping verify-description.sh in quick mode
Skipping verify-generated-device-plugin.sh in quick mode
Skipping verify-generated-docs.sh in quick mode
Skipping verify-generated-files-remake.sh in quick mode
Skipping verify-generated-protobuf.sh in quick mode
Skipping verify-generated-runtime.sh in quick mode
Skipping verify-generated-swagger-docs.sh in quick mode
Verifying verify-godep-licenses.sh
Checking for 'Godeps/' changes against 'upstream/master'
SUCCESS  verify-godep-licenses.sh	14s
```

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

CC @simo5
2017-12-14 12:38:22 -08:00
Kubernetes Submit Queue e34a00afce
Merge pull request #56231 from ericchiang/update-godep-license-fix-gopkgin
Automatic merge from submit-queue (batch tested with PRs 54410, 56184, 56199, 56191, 56231). 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>.

hack: fix godep license parsing for gopkg.in packages

The script incorrectly thinks that `gopkg.in/square/go-jose.v2/cipher`
doesn't have a license because it parses `gopkg.in/square` as the
root of the repo, even though `gopkg.in/square/go-jose.v2` is the
root.

Add special handling for gopkg.in packages by grep'ing for the
version that gopkg.in appends to the package name.

Extracted from https://github.com/kubernetes/kubernetes/pull/56161

cc @thockin 

```release-note
NONE
```
2017-12-14 05:33:20 -08:00
Suraj Deshmukh 6a7aca3129 enable podpreset by default in local up cluster
This commit enables PodPreset in Admission control and also for that
to work on the apiserver level enalbes the API group
settings.k8s.io/v1alpha1.
2017-12-06 14:37:01 +05:30
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
Kubernetes Submit Queue 23e67142c1
Merge pull request #56687 from sttts/sttts-enable-admissionregistration
Automatic merge from submit-queue (batch tested with PRs 55360, 56444, 56687, 56791, 56802). 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>.

kube-apiserver: enable admissionregistration v1beta1 api by default

We have this enabled in the GCE cluster and in local-cluster-up, but forgot to switch the default. If we want people to use this feature by default in production clusters, we better enable the API.

Moreover, this PR fixes that beta works without alpha.

```release-note
Enable admissionregistration.k8s.io/v1beta1 by default in kube-apiserver.
```
2017-12-04 13:40:16 -08:00
Kubernetes Submit Queue 3bbe9bafc5
Merge pull request #53046 from maciaszczykm/dashboard-1.7.0
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 Dashboard addon to version 1.8.0 and align /ui redirect with it

**What this PR does / why we need it**: In Dashboard 1.8.0 we have introduced a couple of changes (security, settings, new resources etc.) and fixed a lot of bugs. You can check release notes at https://github.com/kubernetes/dashboard/releases/tag/v1.8.0.

**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
Updated Dashboard add-on to version 1.8.0.

- The Dashboard add-on now deploys with https enabled
- The Dashboard can be accessed via kubectl proxy at http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/
- The /ui redirect is deprecated and will be removed in 1.10
```
2017-12-01 06:40:47 -08:00
Dr. Stefan Schimanski 3f7c762648 kube-apiserver: enable admission registration v1beta by default 2017-12-01 12:14:07 +01:00
Dr. Stefan Schimanski 94d2a67263 client-gen: use --output-package instead of --clientset-path 2017-11-30 10:18:29 +01:00
Dr. Stefan Schimanski 916812ea1d code-gen: uniform reusable main.go logic
Split main.go into plumbing and calls to NewDefaults, AddFlags and Validate.
2017-11-30 10:18:29 +01:00
Marcin Maciaszczyk a8bf90f85e Update Dashboard add-on to version 1.8.0 2017-11-28 17:53:02 +01:00
Marcin Owsiany 69dd010a41 Unmute curl when fetching cfssl. 2017-11-27 08:09:13 +01:00
xiangpengzhao 776525f572 Add parent PR title to cherry-picked PR title 2017-11-25 13:36:13 +08:00
stewart-yu e0edce33ef export ENABLE_POD_PRIORITY_PREEMPTION=true to enable Pod priority and preemption 2017-11-24 18:57:40 +08:00
Kubernetes Submit Queue 84b3dcca08
Merge pull request #56249 from ixdy/git-archive-source-tarballs
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>.

Use `git archive` to produce kubernetes-src.tar.gz when git tree is clean

**What this PR does / why we need it**: uses `git archive` to embed version information in the kubernetes source tarball produced in releases. Due to recent changes, the version information was missing from the source tarball, causing builds from these source tarballs to potentially fail.

This also includes a fix inspired by #56216, since the ld flags in `hack/lib/version.sh` are not space-safe.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```

/assign @david-mcmahon 
/priority urgent-soon
/sig release
cc @mrueg
2017-11-22 23:58:42 -08:00
Kubernetes Submit Queue 60c2090191
Merge pull request #49112 from gmarek/eventAPI
Automatic merge from submit-queue (batch tested with PRs 55952, 49112, 55450, 56178, 56151). 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>.

New API group for Events.

Fix kubernetes/features#383

cc @shyamjvs 

```release-note
Add events.k8s.io api group with v1beta1 API containing redesigned Event type.
```
2017-11-22 21:48:42 -08:00
Kubernetes Submit Queue 83e46f0a9e
Merge pull request #55902 from yguo0905/annotations
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>.

Expose single annotation/label via downward API

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

https://github.com/kubernetes/community/blob/master/contributors/design-proposals/node/annotations-downward-api.md

Support exposing single annotation via both env and volume downward API using the following syntax:

```
metadata.annotations['key']
metadata.labels['key']
```

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

#31218

**Special notes for your reviewer**:

This PR takes over the work in https://github.com/kubernetes/kubernetes/pull/41648.

**Release note**:

```
A single value in metadata.annotations/metadata.labels can be passed into the containers via Downward API
```

/assign @thockin @vishh
2017-11-22 18:54:29 -08:00
Kubernetes Submit Queue 5fcaff419f
Merge pull request #56136 from CaoShuFeng/storageclass
Automatic merge from submit-queue (batch tested with PRs 55545, 55548, 55815, 56136, 56185). 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 storageclass unit tests

Before this change, a unit test fails:
```
make test WHAT=k8s.io/kubernetes/pkg/registry/storage/storageclass/storage
```

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

/assign @saad-ali 
/assign @thockin
2017-11-22 16:52:31 -08:00
Jeff Grafton 2b04a66df7 Rename tree state from 'git archive' to 'archive' 2017-11-22 12:19:38 -08:00
gmarek 69e2a9cb48 Add new Events API group 2017-11-22 18:40:09 +00:00
Eric Chiang d0fac451e0 hack: fix godep license parsing for gopkg.in packages
The script incorrectly thinks that `gopkg.in/square/go-jose.v2/cipher`
doesn't have a license because it parses `gopkg.in/square` as the
root of the repo, even though `gopkg.in/square/go-jose.v2` is the
root.

Add special handling for gopkg.in packages by grep'ing for the
version that gopkg.in appends to the package name.
2017-11-22 09:38:17 -08:00
Chao Xu 8e8e32fa05 move the MutatingAdmissionWebhook to the last in the mutating amdission
plugin chain.
2017-11-22 08:55:16 -08:00
Jordan Liggitt ae7dccf2e9
Revert "Kubelet flags take precedence over config from files/ConfigMaps"
This reverts commit cbebb61450.
2017-11-21 23:55:43 -05:00
Kubernetes Submit Queue d7a96d5e88
Merge pull request #56097 from mtaufen/kc-file-e2e-test
Automatic merge from submit-queue (batch tested with PRs 51494, 56097, 56072, 56175). 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>.

Kubelet flags take precedence over config from files/ConfigMaps

Changes the Kubelet configuration flag precedence order so that flags
take precedence over config from files/ConfigMaps.

See:
https://docs.google.com/document/d/18-MsChpTkrMGCSqAQN9QGgWuuFoK90SznBbwVkfZryo/

Also modifies e2e node test suite to transform all relevant Kubelet flags into
a config file before starting tests when the KubeletConfigFile feature gate is
true, and turns on the KubeletConfigFile gate for all e2e node tests.
This allows the alpha dynamic Kubelet config feature to continue to 
work in tests after the precedence change.

fixes #56171

Related: https://github.com/kubernetes/features/issues/281


```release-note
CLI flags passed to the Kubelet now take precedence over Kubelet config files and dynamic Kubelet config. This helps ensure backwards compatible behavior across Kubelet binary updates.
```
2017-11-21 19:49:27 -08:00
Yang Guo 82c9eec164 Expose single annotation/label via downward API 2017-11-21 19:21:10 -08:00
Kubernetes Submit Queue 25ebf875b4
Merge pull request #55812 from deads2k/admission-17-external
Automatic merge from submit-queue (batch tested with PRs 55812, 55752, 55447, 55848, 50984). 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 versioned types for webhook admission config

Versioned webhook admission config type as promised in https://github.com/kubernetes/kubernetes/pull/54414.  

@kubernetes/sig-api-machinery-pr-reviews 
@ericchiang as promised.  fyi.

```yaml
kind: AdmissionConfiguration
apiVersion: apiserver.k8s.io/v1alpha1
plugins:
- name: GenericAdmissionWebhook
  configuration:
    kind: WebhookAdmission
    apiVersion: apiserver.config.k8s.io/v1alpha1
    kubeConfigFile: /path/to/my/file
```

`ADMISSION_CONTROL_CONFIG_FILE=../foo.yaml hack/local-up-cluster.sh`
2017-11-21 17:57:29 -08:00