{"push_id":1322551840,"size":1000,"distinct_size":87,"ref":"refs/heads/master","head":"9b1e2069a67da001f9a7ed8a70b19e930cf2a7cd","before":"9de9405be76ab733505502fc2d4e121d0a18c712","commits":[{"sha":"f2951a54f9166c1905805380f3ad84533a8b3e02","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #30674 from ivan4th/add-e2e-tests-for-wrapped-volume-race\n\nAutomatic merge from submit-queue\n\nAdd e2e tests that check for wrapped volume race\n\nThis PR adds two new e2e tests that reproduce the race condition fixed in #29641 (see e.g. #29297)\r\n\r\nIn order to observe the race, you need to revert the PR that fixes it, via e.g.\r\n```\r\ngit revert -n df1e925143daf34199b55ffb91d0598244888cce\r\n```\r\nor\r\n```\r\ncurl -sL https://github.com/kubernetes/kubernetes/pull/29641.patch | patch -p1 -R\r\n```\r\n\r\nThe 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.\r\n\r\nManaged 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.\r\n\r\nThe 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.\r\n\r\nThe test failures look like this:\r\n\r\nconfigmap:\r\n```\r\n• Failure [435.547 seconds]\r\n[k8s.io] Wrapped EmptyDir volumes\r\n/go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/framework/framework.go:709\r\n  should not cause race condition when used for configmaps [Serial] [Slow] [It]\r\n  /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/wrapped_empty_dir.go:170\r\n\r\n  Failed waiting for pod wrapped-volume-race-8c097734-6376-11e6-9ffa-5254003793ad-acbtt to enter running state\r\n  Expected error:\r\n      <*errors.errorString | 0xc8201758d0>: {\r\n          s: \"timed out waiting for the condition\",\r\n      }\r\n      timed out waiting for the condition\r\n  not to have occurred\r\n\r\n  /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/wrapped_empty_dir.go:395\r\n```\r\nYou'll see errors like this in kubelet log on the first node in the cluster:\r\n```\r\nE0816 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\r\nE0816 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\r\n```\r\n\r\ngit_repo:\r\n```\r\n• Failure [455.035 seconds]                                                                                                                                                                                                                           [0/1882]\r\n[k8s.io] Wrapped EmptyDir volumes\r\n/go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/framework/framework.go:709\r\n  should not cause race condition when used for git_repo [Serial] [Slow] [It]\r\n  /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/wrapped_empty_dir.go:179\r\n\r\n  Failed waiting for pod wrapped-volume-race-71b12b3d-6375-11e6-9ffa-5254003793ad-b0slz to enter running state\r\n  Expected error:\r\n      <*errors.errorString | 0xc8201758d0>: {\r\n          s: \"timed out waiting for the condition\",\r\n      }\r\n      timed out waiting for the condition\r\n  not to have occurred\r\n\r\n  /go/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/test/e2e/wrapped_empty_dir.go:395\r\n```\r\nErrors in kubelet log:\r\n```\r\nE0815 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\r\n```\r\n\r\nGenerally, the races cause unexpected \"no such directory\" errors in kubelet logs with subsequent volume mount failures.\r\n\r\nI'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(...)`.","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/f2951a54f9166c1905805380f3ad84533a8b3e02"},{"sha":"d06321f7febfe14a290438a1ebb0b8e065fdc4a0","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32166 from nikhiljindal/removeVar\n\nAutomatic merge from submit-queue\n\nRemove DeprecatedStorageVersion\n\nIts not used anymore.\r\nRef https://github.com/kubernetes/kubernetes/pull/24787#discussion_r61513902\r\n\r\ncc @lavalamp @smarterclayton @deads2k","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/d06321f7febfe14a290438a1ebb0b8e065fdc4a0"},{"sha":"469698a80385a67aff2df405f726d7272cbc67e3","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32169 from ixdy/node-e2e-flake\n\nAutomatic merge from submit-queue\n\nMake error more useful when failing to list node e2e images\n\nTo help investigate https://github.com/kubernetes/kubernetes/issues/31694 if it happens again.","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/469698a80385a67aff2df405f726d7272cbc67e3"},{"sha":"8306fba9b032321018182f3dac8faccf04976b57","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #28469 from asalkeld/local-e2e\n\nAutomatic merge from submit-queue\n\nAdd detect-master to local provider to get e2e working\n\nMake it possible to run some e2e tests using the local provider (./hack/local-up-cluster.sh)\r\n\r\nThis will now work for tests that don't need more than one node:\r\nexport  KUBERNETES_PROVIDER=local\r\ngo run hack/e2e.go -v -test --check_node_count=false --check_version_skew=false --test_args=\"--ginkgo.focus=Cadvisor\"\r\n\r\nNote: without this commit, the port and ip address are wrong and require the --host option (which is inconsistent with the other providers).","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/8306fba9b032321018182f3dac8faccf04976b57"},{"sha":"64f5d9c3f4b3997b59638448c76e58a56328b984","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32092 from asalkeld/get-strange-output\n\nAutomatic merge from submit-queue\n\nImprove the get output for completed pods\n\n**What this PR does / why we need it**:\r\n\r\n- rename FinishPrint() to AfterPrint()\r\n- add a newline to separate it from the table\r\n- remove the \"objects\" and ()\r\n- assume plural\r\n\r\n**Which issue this PR fixes** \r\nfixes #31160\r\n\r\n**Special notes for your reviewer**:\r\nNone\r\n\r\n**Release note**:\r\n```release-note\r\nImprove the get output for completed pods\r\n```","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/64f5d9c3f4b3997b59638448c76e58a56328b984"},{"sha":"beb4789265bd32c6872540098fd8e4487c3ff1b0","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32091 from ZTE-PaaS/zhangke-patch-038\n\nAutomatic merge from submit-queue\n\nwrong word of comment in cache.go","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/beb4789265bd32c6872540098fd8e4487c3ff1b0"},{"sha":"3f5132aa798e126e0f0845623966007477c9543b","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32170 from bprashanth/ingress_leak\n\nAutomatic merge from submit-queue\n\nReplace gcloud shelling out with cloudprovider calls.\n\ngcloud 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.","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/3f5132aa798e126e0f0845623966007477c9543b"},{"sha":"dd46d19d4d122173473b0a18b9c1d0f4e27969cc","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32186 from zhouhaibing089/typo-fix\n\nAutomatic merge from submit-queue\n\nthe image policy webhook missing field log\n\nsimple and naive fix. :) cc @ecordell","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/dd46d19d4d122173473b0a18b9c1d0f4e27969cc"},{"sha":"a57f128a2a287fcd8f44db94ceb17c2859b3a615","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32209 from errordeveloper/move-node-csr-helper\n\nAutomatic merge from submit-queue\n\nMove CSR helper for nodes out of kubelet\n\n**What this PR does / why we need it**:\r\n\r\nIncluding `cmd/kubelet/app` in kubeadm causes flag leakage.\r\n\r\nNamelly, the problem is with `pkg/credentialprovider/gcp`, which\r\nleaks `--google-json-key` and changing the behaviour of `init()`\r\ndoesn't sound reasonable, given kubelet is the only one who uses\r\nthis packages and obviously the flag is part of the functionality.\r\n\r\nThe helper is already generic enough, it has already been exported\r\nand works well for kubeadm, so moving it should be fine.\r\n\r\n**Special notes for your reviewer**: cc @mikedanese @yifan-gu @gtank\r\n\r\n**Release note**:\r\n\r\n```release-note\r\nNONE\r\n```","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/a57f128a2a287fcd8f44db94ceb17c2859b3a615"},{"sha":"ce1c113442cc85a982410e10df39477b06ec2622","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32046 from guangxuli/close_readBytesFromFile\n\nAutomatic merge from submit-queue\n\nclose the open file\n\nthe open file should be close.","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/ce1c113442cc85a982410e10df39477b06ec2622"},{"sha":"0c63bd03fa944b4530ea842e8b7f665c888f812f","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32084 from jsafrane/create-zone-check\n\nAutomatic merge from submit-queue\n\nDo not allow creation of GCE PDs in unmanaged zones.\n\nSuch volumes then couldn't be deleted as `getDiskByNameUnknownZone` goes through managed zones only.\r\n\r\nFixes: #31948\r\n@kubernetes/rh-storage \r\n@saad-ali, PTAL.","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/0c63bd03fa944b4530ea842e8b7f665c888f812f"},{"sha":"b2a1296b4d11a748c56fbd9489a9d8e312bb217d","author":{"name":"Clayton Coleman","email":"0bd1fab444e30d2463526ac93ff48a59f482abfe@redhat.com"},"message":"Endpoints controller is logspamming","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/b2a1296b4d11a748c56fbd9489a9d8e312bb217d"},{"sha":"8b71007601ca6a3d9ae01caa8b18c40486899d6f","author":{"name":"Clayton Coleman","email":"0bd1fab444e30d2463526ac93ff48a59f482abfe@redhat.com"},"message":"ScheduledJob controller is too chatty\n\nSync information is printed far too often","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/8b71007601ca6a3d9ae01caa8b18c40486899d6f"},{"sha":"5cb9b3a3b7bd06e426cf87dcccf6c31e5b18f28d","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32176 from lojies/addaliasforcreateservice\n\nAutomatic merge from submit-queue\n\nadd alias svc for create_service.go\n\nadd 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:\r\n```shell\r\n$ kubectl create svc -h\r\nCreate a service using specified subcommand.\r\n\r\nAliases:\r\nservice, svc\r\n\r\nAvailable Commands:\r\n  clusterip    Create a clusterIP service.\r\n  loadbalancer Create a LoadBalancer service.\r\n  nodeport     Create a NodePort service.\r\n\r\nUsage:\r\n  kubectl create service [options]\r\n```","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/5cb9b3a3b7bd06e426cf87dcccf6c31e5b18f28d"},{"sha":"b93860d61ae5c34ba4c2e7908678d04452d64689","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32229 from errordeveloper/cosmetic-newline-kubectl-describe\n\nAutomatic merge from submit-queue\n\nAdd missing new line after \"No events.\"\n\n**What this PR does / why we need it**: Make `kubectl describe` output pretty again.\r\n\r\n**Special notes for your reviewer**: Should probably get rolled into the release branch.\r\n\r\n**Release note**:\r\n<!--  Steps to write your release note:\r\n1. Use the release-note-* labels to set the release note state (if you have access) \r\n2. 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`. \r\n-->\r\n```release-note\r\nNONE\r\n```","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/b93860d61ae5c34ba4c2e7908678d04452d64689"},{"sha":"2076319020bbc2472d2f1aa9f20ec1d2fa5320d1","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32362 from piosz/heap\n\nAutomatic merge from submit-queue\n\nBumped Heapster to v1.2.0-beta.3\n\nThe new version contains Kubernetes deps in version `1.4.0-beta.0`","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/2076319020bbc2472d2f1aa9f20ec1d2fa5320d1"},{"sha":"b4c09192bcd57af508ccba211dd8ba50f866e56e","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #31841 from fraenkel/replace_force\n\nAutomatic merge from submit-queue\n\nReplace force\n\nfixes #28115","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/b4c09192bcd57af508ccba211dd8ba50f866e56e"},{"sha":"27c5e5dca7cc24e9c45acd84295d9e9d7360694e","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #31110 from AdoHe/rollout_dry_run\n\nAutomatic merge from submit-queue\n\nRollout dry run\n\n**What this PR does / why we need it**: rollout undo add dry-run implementation\r\n\r\n**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #28219\r\n\r\n**Release note**:\r\n<!--  Steps to write your release note:\r\n1. Use the release-note-* labels to set the release note state (if you have access) \r\n2. 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`. \r\n-->\r\n```\r\nrollout undo add dry-run option\r\n```","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/27c5e5dca7cc24e9c45acd84295d9e9d7360694e"},{"sha":"8f350198a9b08f59d266dd9e66806303c5c1db05","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32204 from jszczepkowski/ha-port-fix\n\nAutomatic merge from submit-queue\n\nUpdated port for HA master etcd.","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/8f350198a9b08f59d266dd9e66806303c5c1db05"},{"sha":"a7571aa36728869f64e43f6593447213718a939e","author":{"name":"Kubernetes Submit Queue","email":"260061d766fe633e5411cb223defd984f1ece7b6@users.noreply.github.com"},"message":"Merge pull request #32230 from juanvallejo/jvallejo_update-kubectl-expose-output-to-usage-error\n\nAutomatic merge from submit-queue\n\nupdate `kubectl expose` output to UsageError\n\n**Release note**:\r\n```release-note\r\nNONE\r\n```\r\n\r\nThis patch updates `kubectl expose` output (with no resources provided)\r\nto a UsageError so that the `kubectl expose -h` suggestion is displayed.\r\n\r\n##### Before\r\n`$ kubectl expose`\r\n```\r\nerror: You must provide one or more resources by argument or filename.\r\nExample resource specifications include:\r\n   '-f rsrc.yaml'\r\n   '--filename=rsrc.json'\r\n   'pods my-pod'\r\n   'services'\r\n```\r\n\r\n##### After\r\n```\r\nerror: You must provide one or more resources by argument or filename.\r\nExample resource specifications include:\r\n   '-f rsrc.yaml'\r\n   '--filename=rsrc.json'\r\n   'pods my-pod'\r\n   'services'\r\nSee 'kubectl expose -h' for help and examples.\r\n```","distinct":false,"url":"https://api.github.com/repos/ixdy/kubernetes/commits/a7571aa36728869f64e43f6593447213718a939e"}]}
{"actor":{"display_login":"ixdy"}}