1. 12 Sep, 2016 9 commits
  2. 11 Sep, 2016 28 commits
    • Kubernetes Submit Queue's avatar
      Merge pull request #32230 from juanvallejo/jvallejo_update-kubectl-expose-output-to-usage-error · a7571aa3
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      update `kubectl expose` output to UsageError
      
      **Release note**:
      ```release-note
      NONE
      ```
      
      This patch updates `kubectl expose` output (with no resources provided)
      to a UsageError so that the `kubectl expose -h` suggestion is displayed.
      
      ##### Before
      `$ kubectl expose`
      ```
      error: You must provide one or more resources by argument or filename.
      Example resource specifications include:
         '-f rsrc.yaml'
         '--filename=rsrc.json'
         'pods my-pod'
         'services'
      ```
      
      ##### After
      ```
      error: You must provide one or more resources by argument or filename.
      Example resource specifications include:
         '-f rsrc.yaml'
         '--filename=rsrc.json'
         'pods my-pod'
         'services'
      See 'kubectl expose -h' for help and examples.
      ```
      a7571aa3
    • Kubernetes Submit Queue's avatar
      Merge pull request #32204 from jszczepkowski/ha-port-fix · 8f350198
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Updated port for HA master etcd.
      8f350198
    • Kubernetes Submit Queue's avatar
      Merge pull request #31110 from AdoHe/rollout_dry_run · 27c5e5dc
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Rollout dry run
      
      **What this PR does / why we need it**: rollout undo add dry-run implementation
      
      **Which issue this PR fixes** *(optional, in `fixes #<issue number>(, #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #28219
      
      **Release note**:
      <!--  Steps to write your release note:
      1. Use the release-note-* labels to set the release note state (if you have access) 
      2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
      -->
      ```
      rollout undo add dry-run option
      ```
      27c5e5dc
    • Kubernetes Submit Queue's avatar
      Merge pull request #31841 from fraenkel/replace_force · b4c09192
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Replace force
      
      fixes #28115
      b4c09192
    • Kubernetes Submit Queue's avatar
      Merge pull request #32362 from piosz/heap · 20763190
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Bumped Heapster to v1.2.0-beta.3
      
      The new version contains Kubernetes deps in version `1.4.0-beta.0`
      20763190
    • Kubernetes Submit Queue's avatar
      Merge pull request #32229 from errordeveloper/cosmetic-newline-kubectl-describe · b93860d6
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Add missing new line after "No events."
      
      **What this PR does / why we need it**: Make `kubectl describe` output pretty again.
      
      **Special notes for your reviewer**: Should probably get rolled into the release branch.
      
      **Release note**:
      <!--  Steps to write your release note:
      1. Use the release-note-* labels to set the release note state (if you have access) 
      2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
      -->
      ```release-note
      NONE
      ```
      b93860d6
    • Kubernetes Submit Queue's avatar
      Merge pull request #32176 from lojies/addaliasforcreateservice · 5cb9b3a3
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      add alias svc for create_service.go
      
      add alias 'svc' for service in create_service.go so that  alias 'svc'  can be used and also can be seen in help message's Aliases like below:
      ```shell
      $ kubectl create svc -h
      Create a service using specified subcommand.
      
      Aliases:
      service, svc
      
      Available Commands:
        clusterip    Create a clusterIP service.
        loadbalancer Create a LoadBalancer service.
        nodeport     Create a NodePort service.
      
      Usage:
        kubectl create service [options]
      ```
      5cb9b3a3
    • Kubernetes Submit Queue's avatar
      Merge pull request #32084 from jsafrane/create-zone-check · 0c63bd03
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Do not allow creation of GCE PDs in unmanaged zones.
      
      Such volumes then couldn't be deleted as `getDiskByNameUnknownZone` goes through managed zones only.
      
      Fixes: #31948
      @kubernetes/rh-storage 
      @saad-ali, PTAL.
      0c63bd03
    • Kubernetes Submit Queue's avatar
      Merge pull request #32046 from guangxuli/close_readBytesFromFile · ce1c1134
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      close the open file
      
      the open file should be close.
      ce1c1134
    • Kubernetes Submit Queue's avatar
      Merge pull request #32209 from errordeveloper/move-node-csr-helper · a57f128a
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Move CSR helper for nodes out of kubelet
      
      **What this PR does / why we need it**:
      
      Including `cmd/kubelet/app` in kubeadm causes flag leakage.
      
      Namelly, the problem is with `pkg/credentialprovider/gcp`, which
      leaks `--google-json-key` and changing the behaviour of `init()`
      doesn't sound reasonable, given kubelet is the only one who uses
      this packages and obviously the flag is part of the functionality.
      
      The helper is already generic enough, it has already been exported
      and works well for kubeadm, so moving it should be fine.
      
      **Special notes for your reviewer**: cc @mikedanese @yifan-gu @gtank
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      a57f128a
    • Kubernetes Submit Queue's avatar
      Merge pull request #32186 from zhouhaibing089/typo-fix · dd46d19d
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      the image policy webhook missing field log
      
      simple and naive fix. :) cc @ecordell
      dd46d19d
    • Kubernetes Submit Queue's avatar
      Merge pull request #32170 from bprashanth/ingress_leak · 3f5132aa
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Replace gcloud shelling out with cloudprovider calls.
      
      gcloud flakes a lot leading to resource leak. Also fixes https://github.com/kubernetes/kubernetes/issues/16636 by verifying instance-groups, ssl-certs and firewall-rules and cleaned up.
      3f5132aa
    • Kubernetes Submit Queue's avatar
      Merge pull request #32091 from ZTE-PaaS/zhangke-patch-038 · beb47892
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      wrong word of comment in cache.go
      beb47892
    • Kubernetes Submit Queue's avatar
      Merge pull request #32092 from asalkeld/get-strange-output · 64f5d9c3
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Improve the get output for completed pods
      
      **What this PR does / why we need it**:
      
      - rename FinishPrint() to AfterPrint()
      - add a newline to separate it from the table
      - remove the "objects" and ()
      - assume plural
      
      **Which issue this PR fixes** 
      fixes #31160
      
      **Special notes for your reviewer**:
      None
      
      **Release note**:
      ```release-note
      Improve the get output for completed pods
      ```
      64f5d9c3
    • Kubernetes Submit Queue's avatar
      Merge pull request #28469 from asalkeld/local-e2e · 8306fba9
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Add detect-master to local provider to get e2e working
      
      Make it possible to run some e2e tests using the local provider (./hack/local-up-cluster.sh)
      
      This will now work for tests that don't need more than one node:
      export  KUBERNETES_PROVIDER=local
      go run hack/e2e.go -v -test --check_node_count=false --check_version_skew=false --test_args="--ginkgo.focus=Cadvisor"
      
      Note: without this commit, the port and ip address are wrong and require the --host option (which is inconsistent with the other providers).
      8306fba9
    • Kubernetes Submit Queue's avatar
      Merge pull request #32169 from ixdy/node-e2e-flake · 469698a8
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Make error more useful when failing to list node e2e images
      
      To help investigate https://github.com/kubernetes/kubernetes/issues/31694 if it happens again.
      469698a8
    • Kubernetes Submit Queue's avatar
      Merge pull request #32166 from nikhiljindal/removeVar · d06321f7
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Remove DeprecatedStorageVersion
      
      Its not used anymore.
      Ref https://github.com/kubernetes/kubernetes/pull/24787#discussion_r61513902
      
      cc @lavalamp @smarterclayton @deads2k
      d06321f7
    • Kubernetes Submit Queue's avatar
      Merge pull request #30674 from ivan4th/add-e2e-tests-for-wrapped-volume-race · f2951a54
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Add e2e tests that check for wrapped volume race
      
      This PR adds two new e2e tests that reproduce the race condition fixed in #29641 (see e.g. #29297)
      
      In order to observe the race, you need to revert the PR that fixes it, via e.g.
      ```
      git revert -n df1e9251
      ```
      or
      ```
      curl -sL https://github.com/kubernetes/kubernetes/pull/29641.patch | patch -p1 -R
      ```
      
      The tests are `[Slow]` because they need to run several passes that involve creating pods with many volumes. They also are `[Serial]` because the load on the cluster may affect reproducibility of the race. They take about ~450s each when they fail on standard GCE cluster created by `go run hack/e2e.go -v --up`. `git_repo` test takes about 66s to run when it succeeds (fix PR not reverted) and `configmap` test takes about 546s in this case because configmap mounting is slower and still requires 3 passes x 5 pods x 50 configmap volumes to fail constantly with fix PR reverted. Probably these times can be reduced but frankly I've already spent quite a bit of time on tuning the numbers to find a balance between reproducibility and speed.
      
      Managed to reproduce the problem in more or less reliable way for `configMap` and `gitRepo` volumes. Tried to reproduce it for `secret` volumes too but without success so far because they use tmpfs-based `emptyDir` variety. For `downwardAPI` volumes I expect the same problems with race reproducibility as with `secret` volumes, although I think some e2e races were caused by the bug, e.g. #29633.
      
      The tests operate by creating several pods (via an RC) with many volumes and waiting for them to become Running. It sets node affinity for pods so that they all get created on a single node (the first one in the node list). The race condition leads to volume mount failures with slow retries, thus causing the test to time out.
      
      The test failures look like this:
      
      configmap:
      ```
      • Failure [435.547 seconds]
      [k8s.io] Wrapped EmptyDir volumes
      /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/framework/framework.go:709
        should not cause race condition when used for configmaps [Serial] [Slow] [It]
        /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/wrapped_empty_dir.go:170
      
        Failed waiting for pod wrapped-volume-race-8c097734-6376-11e6-9ffa-5254003793ad-acbtt to enter running state
        Expected error:
            <*errors.errorString | 0xc8201758d0>: {
                s: "timed out waiting for the condition",
            }
            timed out waiting for the condition
        not to have occurred
      
        /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/wrapped_empty_dir.go:395
      ```
      You'll see errors like this in kubelet log on the first node in the cluster:
      ```
      E0816 00:27:23.319431    3510 configmap.go:174] Error creating atomic writer: stat /var/lib/kubelet/pods/e5986355-6347-11e6-a5d7-42010af00002/volumes/kubernetes.io~configmap/racey-configmap-14: no such file or directory
      E0816 00:27:23.319478    3510 nestedpendingoperations.go:232] Operation for "\"kubernetes.io/configmap/e5986355-6347-11e6-a5d7-42010af00002-racey-configmap-14\" (\"e5986355-6347-11e6-a5d7-42010af00002\")" failed. No retries permitted until 2016-08-16 00:28:27.319450118 +0000 UTC (durationBeforeRetry 1m4s). Error: MountVolume.SetUp failed for volume "kubernetes.io/configmap/e5986355-6347-11e6-a5d7-42010af00002-racey-configmap-14" (spec.Name: "racey-configmap-14") pod "e5986355-6347-11e6-a5d7-42010af00002" (UID: "e5986355-6347-11e6-a5d7-42010af00002") with: stat /var/lib/kubelet/pods/e5986355-6347-11e6-a5d7-42010af00002/volumes/kubernetes.io~configmap/racey-configmap-14: no such file or directory
      ```
      
      git_repo:
      ```
      • Failure [455.035 seconds]                                                                                                                                                                                                                           [0/1882]
      [k8s.io] Wrapped EmptyDir volumes
      /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/framework/framework.go:709
        should not cause race condition when used for git_repo [Serial] [Slow] [It]
        /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/wrapped_empty_dir.go:179
      
        Failed waiting for pod wrapped-volume-race-71b12b3d-6375-11e6-9ffa-5254003793ad-b0slz to enter running state
        Expected error:
            <*errors.errorString | 0xc8201758d0>: {
                s: "timed out waiting for the condition",
            }
            timed out waiting for the condition
        not to have occurred
      
        /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/wrapped_empty_dir.go:395
      ```
      Errors in kubelet log:
      ```
      E0815 23:41:08.670203    3510 nestedpendingoperations.go:232] Operation for "\"kubernetes.io/git-repo/97636bd8-6341-11e6-a5d7-42010af00002-racey-git-repo-8\" (\"97636bd8-6341-11e6-a5d7-42010af00002\")" failed. No retries permitted until 2016-08-15 23:42:12.670181604 +0000 UTC (durationBeforeRetry 1m4s). Error: MountVolume.SetUp failed for volume "kubernetes.io/git-repo/97636bd8-6341-11e6-a5d7-42010af00002-racey-git-repo-8" (spec.Name: "racey-git-repo-8") pod "97636bd8-6341-11e6-a5d7-42010af00002" (UID: "97636bd8-6341-11e6-a5d7-42010af00002") with: failed to exec 'git clone http://10.0.68.35:2345 test': : chdir /var/lib/kubelet/pods/97636bd8-6341-11e6-a5d7-42010af00002/volumes/kubernetes.io~git-repo/racey-git-repo-8: no such file or directory
      ```
      
      Generally, the races cause unexpected "no such directory" errors in kubelet logs with subsequent volume mount failures.
      
      I've added race tests to e2e test `empty_dir_wrapper.go` ("EmptyDir wrapper volumes"). This test was added in #18445, the same PR that introduced the race bug. The original purpose of the test was making sure that no conflicts occur between different wrapped emptyDir volumes, so I've replaced "should becomes" with "should not conflict" in the first `It(...)`.
      f2951a54
    • Kubernetes Submit Queue's avatar
      Merge pull request #30777 from k82cn/use_k8petstore_ns · 5541e18a
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Updated k8petstore example to use non-default namespace.
      
      fixes #24314
      5541e18a
    • Kubernetes Submit Queue's avatar
      Merge pull request #31767 from asalkeld/bad-context-error · 60b63b7c
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Add a check in ConfirmUsable() to validate the contextName
      
      **What this PR does / why we need it**:
      When a context name is provided, but can't be found (miss spelling), it currently
      uses the defaults. This PR will cause the command to fail, to prevent unexpected side effects
      of using the wrong configuration.
      
      **Which issue this PR fixes**
      fixes #21062
      
      **Special notes for your reviewer**:
      None
      
      **Release note**:
      ```release-note
      Error if a contextName is provided but not found in the kubeconfig.
      ```
      60b63b7c
    • Kubernetes Submit Queue's avatar
      Merge pull request #32101 from ping035627/ping035627-patch-0906 · e0d7425b
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Delete empty value in the log
      
      When err isn't nil, it has printed log and returned, so it needn't to print err to the log later (it's nil).
      e0d7425b
    • Kubernetes Submit Queue's avatar
      Merge pull request #32127 from pmorie/node-update-status · 4e509606
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Improve style of kubelet node status test
      
      Report: man fails to idiomatically use `FakeClient`.
      4e509606
    • Kubernetes Submit Queue's avatar
      Merge pull request #26244 from asalkeld/kconfig-common.sh · 2673ce4c
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Teach create-kubeconfig() to deal with multi path KUBECONFIG
      
      When KUBECONFIG is in the form "A:B:C" make sure each file is
      created.
      
      fixes #17778
      2673ce4c
    • Kubernetes Submit Queue's avatar
      Merge pull request #32110 from soltysh/issue31009 · b73aa599
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Set Job's labels from PodTemplateSpec if none are specified
      
      Fixes #31009 and replaces #32033.
      
      @AdoHe I've picked your changes, added the additional ones for 'batch/v2alpha1' and most importantly added tests for job's defaulting. ptal
      b73aa599
    • Kubernetes Submit Queue's avatar
      Merge pull request #32018 from MrHohn/kubedns-deployment · fdd3cf89
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Use a Deployment for kube-dns
      
      Attempt to fix #31554 
      
      Switching kube-dns from using Replication Controller to Deployment.
      
      The outdated kube-dns YAML file in coreos and juju dir is also updated. Most of the specific memory limit in the files remain unchanged because it seems like people were modifying it explicitly(c8d82fc2). Only the memory limit for healthz is increased due to this pending investigation(#29688).
      
      YAML files stay in *-rc.yaml format considering there are a lots of scripts in cluster and hack dirs are using this format. But it may be fine to changed them all.
      
      @bprashanth @girishkalele
      fdd3cf89
    • Kubernetes Submit Queue's avatar
      Merge pull request #32067 from erikh/vagrant-fixups · f27f607c
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Vagrant fixups
      
      <!--  Thanks for sending a pull request!  Here are some tips for you:
      1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
      2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
      3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
      -->
      
      **What this PR does / why we need it**:
      
      Vagrant 1.8.5 contains a bug where it does not insert a newly generated private key into the VM correctly. This prevents usage by both provisioners and the vagrant subsystem itself, essentially bricking the VM.
      
      See https://github.com/mitchellh/vagrant/issues/7760 for some more information.
      
      **Which issue this PR fixes** *(optional, in `fixes #<issue number>(, #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
      
      I honestly haven't searched; this is something I encountered setting it up.
      
      **Special notes for your reviewer**:
      
      I'm a new contributor so please be kind, happy to do anything that's required though!
      
      **Release note**:
      <!--  Steps to write your release note:
      1. Use the release-note-* labels to set the release note state (if you have access) 
      2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
      -->
      ```release-note
      NONE
      ```
      f27f607c
    • Kubernetes Submit Queue's avatar
      Merge pull request #32003 from Random-Liu/change-docker-validation-config-file · 51d996e5
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Automated Docker Validation: Change wrong name in perf config.
      
      The config key `containervm-density*` is improper, remove it.
      
      /cc @coufon
      51d996e5
    • Kubernetes Submit Queue's avatar
      Merge pull request #30836 from abrarshivani/vsphere_dynamic_proviosioning · 5b23de5b
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue
      
      Fix: Dynamic provisioning for vSphere
      
      This PR does the following,
      
      1. Fixes an error 'A specified parameter was not correct:' occurs while dynamically provisioning the volumes.
      2. Adds VSAN support for dynamic provisioning.
      5b23de5b
  3. 10 Sep, 2016 3 commits