jiebi/CodeConvo huggingface dataset:
Change:
"github.com/GoogleCloudPlatform/kubernetes/pkg/labels" ) <del> type MockPodRegistry struct { err  error pod  *api.Pod pods []api.Pod } </del> func expectNoError(t *testing.T, err error) { if err != nil { t.Errorf("Unexpected error: %#v", err) } } <del> func (registry *MockPodRegistry) ListPods(query labels.Query) ([]api.Pod, error) { if registry.err != nil { return registry.pods, registry.err } var filtered []api.Pod for _, pod := range registry.pods { if query.Matches(labels.Set(pod.Labels)) { filtered = append(filtered, pod) } } return filtered, nil } func (registry *MockPodRegistry) GetPod(podId string) (*api.Pod, error) { return registry.pod, registry.err } func (registry *MockPodRegistry) CreatePod(machine string, pod api.Pod) error { return registry.err } func (registry *MockPodRegistry) UpdatePod(pod api.Pod) error { return registry.err } func (registry *MockPodRegistry) DeletePod(podId string) error { return registry.err } </del> func TestListPodsError(t *testing.T) { mockRegistry := MockPodRegistry{ err: fmt.Errorf("test error"),

Discussion:
Which jobs are failing: cip-postsubmit-push-to-staging (cip-postsubmit-push-to-staging) Since when has it been failing: This is a postsubmit of repository. Testgrid link: Reason for failure: Anything else we need to know: /cc /priority critical-urgent /milestone v1.18
So this is the "create a staging image of the promoter upon a merge to its master branch" job so that I don't have to do it manually myself. As for the failure, I am probably doing something wrong but from the logs it's hard to tell what I'm doing wrong. I don't think this is critical as it is not blocking the official promoter or anything.
I think the error could be that the service account for doesn't have creds to push to the buckets. I'll post another update later.
Thanks for the quick response. So, since this job is not critical, can we removed it from testgrid or is there a good reason to keep it there and just ignore the alerts?
I should be able to fix it this week; if that deadline passes then we can move it to another testgrid dashboard.
/sig release
/reopen Let's observe the job first before closing.
Reopened this issue. <detailsIn response to : /reopen Instructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
Do we have to rerun the job to make sure that it's fixed or wait for the next PR to be merge?
The behavior I have observed is that the job will re-run for each PR merge. I am now seeing that the latest build is failing due to a MemoryError when joining the heaviest Docker layer that contains gcloud: I am going to change the machine settings in another PR; stay tuned.
Looks like the last couple PRs did the trick. It's green now!
Thanks ! /close
Closing this issue. <detailsIn response to : Thanks ! Instructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
Change:
if err == nil { setHairpin := plugin.hairpinMode == componentconfig.HairpinVeth // Set bridge address to first address in IPNet <del> cidr.IP.To4()[3] += 1 </del> <ins> cidr.IP[len(cidr.IP)-1] += 1 </ins> json := fmt.Sprintf(NET_CONFIG_TEMPLATE, BridgeName, plugin.mtu, network.DefaultInterfaceName, setHairpin, podCIDR, cidr.IP.String()) glog.V(2).Infof("CNI network config set to %v", json)

Discussion:
<!-- This form is for bug reports and feature requests ONLY! If you're looking for help check and the . --Is this a BUG REPORT or FEATURE REQUEST?: BUG REPORT What happened: Using Kubenet with IPv6 causes a panic panic: runtime error: index out of range goroutine 625 [running]: (kubenetNetworkPlugin).Event(0xc4203bf440, 0x462ebd1, 0xf, 0xc4219deae0) +0x889 This is due to IPv4 specific code in What you expected to happen: Kubenet should support IPv6 How to reproduce it (as minimally and precisely as possible): Running local-up-, use kubenet, and set the parameters for kubenet with ipv6 nodecidrargs="--allocate-node-cidrs=true --cluster-cidr=2001:beef::/48 --node-cidr-mask-size=64 " Anything else we need to know?: Environment: Kubernetes version (use ): latest as of June 26, 2017 Cloud provider or hardware configuration*: local on a VM OS (e.g. from /etc/os-release): CentOS Kernel (e.g. ): Linux localhost.localdomain 3.10.0-514.el7.x8664 SMP Tue Nov 22 16:42:41 UTC 2016 x8664 x8664 x86_64 GNU/Linux Install tools: Others:
There are no sig labels on this issue. Please by:<br(1) mentioning a sig: <bre.g., for API Machinery<br(2) specifying the label manually: <bre.g., for sig/scalability<br<brNote: method (1) will trigger a notification to the team. You can find the team list and label list
/area ipv6
/sig network /remove-sig api-machinery
/assign
Change:
} var ( <del> googleDNSHostname = "google-public-dns-a.google.com" </del> <ins> googleDNSHostname = "dns.google" </ins> // The ConfigMap update mechanism takes longer than the standard // wait.ForeverTestTimeout. moreForeverTestTimeout = 2 * 60 * time.Second

Discussion:
<!-- Please only use this template for submitting reports about failing tests in Kubernetes CI jobs --Which jobs are failing: ci-kubernetes-e2e-gce-cos-k8sstable1-serial. Which test(s) are failing: [sig-network] DNS configMap nameserver [IPv4] Forward PTR lookup should forward PTR records lookup to upstream nameserver [Slow][Serial]. Since when has it been failing: 06-20. Testgrid link: Reason for failure: Anything else we need to know: The test is failing on master branch and all stable releases. cc since it would also block all following releases.
/triage unresolved Comment when the issue is assessed and confirmed. I am a bot run by vllry. ‍
cc:
This test is looking up PTR record for 8.8.8.8 and gets "", but is actually expecting "google-public-dns-" When I run the dig command on a non-k8s environment, I see "" as well. $ dig +short -x 8.8.8.8 Both "" and "google-public-dns-" resolve to 8.8.8.8. So looks like this test is not an actual failure.
Could you help to file a PR and fix the test case?
I'm on vacation for the next 2 weeks, so won't be able to look at it before that. Tagging
/assign
We are seeing the same issue in master branch: testgrid: job: ci-kubernetes-e2e-gci-gce-serial (adding for context for others) this one issue references the v1.14 ci jobs in: /milestone v1.16
this is failing back to 1.12 /reopen /assign filing cherry picks of fix
Reopened this issue. <detailsIn response to : this is failing back to 1.12 /reopen /assign filing cherry picks of fix Instructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
15 14 13 12
only 1.12 is missing
If this issue has been triaged, please comment . If you aren't able to handle this issue, consider unassigning yourself and/or adding the label. I am a bot run by vllry.

‍
12 is closed for patches /close
Closing this issue. <detailsIn response to : 1.12 is closed for patches /close Instructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
Change:
# Upload build start time and k8s version to GCS, but not on PR Jenkins. # On PR Jenkins this is done before the build. if [[ ! "${JOB_NAME}" =~ -pull- ]]; then <del> JENKINS_BUILD_STARTED=true bash <(curl -fsS --retry 3 "https://raw.githubusercontent.com/kubernetes/kubernetes/master/hack/jenkins/upload-to-gcs.sh") </del> <ins> JENKINS_BUILD_STARTED=true bash <(curl -fsS --retry 3 --keepalive-time 2 "https://raw.githubusercontent.com/kubernetes/kubernetes/master/hack/jenkins/upload-to-gcs.sh") </ins> fi # Have cmd/e2e run by goe2e.sh generate JUnit report in ${WORKSPACE}/junit*.xml

Discussion:
http://pr- Seems like a flake? Could probably retry this, but not sure whether it's worth it.
we most definitely want to retry! Will you send a PR?
I just hit this in PR
We should close this, should be fixed by:
that didn't actually solve the problem. Per the docs, only works on "transient" errors, which the manpage defines as We might want to try passing , which some googling suggests might help. The default is 60s, which may be too long.
Please reactive this if you see it after June 15
Change:
v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" <del> utilfeature "k8s.io/apiserver/pkg/util/feature" featuregatetesting "k8s.io/component-base/featuregate/testing" </del> runtimeapi "k8s.io/cri-api/pkg/apis/runtime/v1" <del> "k8s.io/kubernetes/pkg/features" </del> <ins> "k8s.io/kubernetes/pkg/kubelet/winstats" </ins> ) func TestApplyPlatformSpecificContainerConfig(t *testing.T) {

Discussion:
When submitting a windows pod using resource limits on a node with more than one processor group, the specified count is incorrect due to the usage of which does not take processor groups into account. For example: node with 96 cores cpu limit 94 returns This results in a CPU maximum of since the range is from [1, ]: Our initial goal for this was to limit a process to not use all available CPU and therefore render the node uncontrollable. A CPU maximum of instead of for that specific case. For the calculation, it should use the CPU count for all available processor groups instead of just the current one. Launch a node with a lot of CPUs, for example and schedule the following pod on it: Then SSH into the node and inspect the running container using . The value will be set to . (which just uses ) is able to correctly find out the number of CPUs available to a system. Using for calculation or incorporating that code might solve this issue. <details</details<detailsAzure in-tree </details<details</details<details</details<detailscontainerd://1.6.10 </details<details</details
This issue is currently awaiting triage. If a SIG or subproject determines this is a relevant issue, they will accept it by applying the label and provide further guidance. The label can be by org members by writing in a comment. <detailsInstructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
/sig windows
There is already some code which uses GetActiveProcessorCount:
/assign
/triage accepted
Change:
// Unreachable code return err } <del> err = wait.Poll(encryptedCheckInterval, encryptedCheckTimeout, func() (done bool, err error) { </del> <ins> time.Sleep(5 * time.Second) backoff := wait.Backoff{ Duration: volumeCreateInitialDelay, Factor:   volumeCreateBackoffFactor, Steps:    volumeCreateBackoffSteps, } err = wait.ExponentialBackoff(backoff, func() (done bool, err error) { </ins> vol, err := disk.describeVolume() if err != nil { return true, err

Discussion:
What happened: When creating an EBS volume, we're currently waiting for the volume be in the correct state before proceeding: However, we're using the interval defined in (e.g., 1 second), which was meant to be used for another reason and might be too soon for this specific case. Also, this might contribute to the API quota being exceeded. CC /sig storage /sig aws
Yeah I think, this should be considered a regression. Many of our AWS clusters run on very thin margin of API quota and this would tip them over the edge.
Change:
}, }), }, <ins> { name:          "invalid-multiple-terms", expectSuccess: false, pv: testVolumeWithNodeAffinity(t, &v1.VolumeNodeAffinity{ Required: &v1.NodeSelector{ NodeSelectorTerms: []v1.NodeSelectorTerm{ { MatchExpressions: []v1.NodeSelectorRequirement{ { Key:      "test-key3", Operator: v1.NodeSelectorOpIn, Values:   []string{"test-value1", "test-value3"}, }, }, }, { MatchExpressions: []v1.NodeSelectorRequirement{ { Key:      "test-key2", Operator: v1.NodeSelectorOpIn, Values:   []string{"test-value0", "test-value1"}, }, }, }, }, }, }), }, </ins> } for _, c := range cases {

Discussion:
<!-- This form is for bug reports and feature requests ONLY! If you're looking for help check and the . --Is this a BUG REPORT or FEATURE REQUEST?: /assign What happened: The terms are ANDed, which is not correct:
cc
Change:
"-A", string(kubeServicesChain), "-m", "comment", "--comment", fmt.Sprintf(`"%s cluster IP"`, svcNameString), "-m", protocol, "-p", protocol, <del> "-d", fmt.Sprintf("%s/32", svcInfo.clusterIP.String()), </del> <ins> "-d", utilproxy.ToCIDR(svcInfo.clusterIP), </ins> "--dport", strconv.Itoa(svcInfo.port), ) if proxier.masqueradeAll {

Discussion:
We are working migrating ipv4 to ipv6, we should support ipv6 for IPVS. We should do the following things: remove ipv4 constraints of Node IPs() remove ipv4 in pkg/util/ipvs() use ipv6 conntrack tools use ipv6 iptables tools <!-- This form is for bug reports and feature requests ONLY! If you're looking for help check and the . --Is this a BUG REPORT or FEATURE REQUEST?: /kind feature /sig network /assign /cc
/area ipv6
FYI: I've just posted a PR (PR ) to fix the way that kube-proxy was calling conntrack without the required "-f ipv6" CLI flag whenever conntrack was being executed for a service that's using IPv6 addresses. There were a couple of lines in that needed to be changed. I don't think I can add UT coverage for those lines until more support for IPv6 addresses is to Cc
ACK! I will take care of , please feel free to ping me when you want my hand :)
Sounds good, is all yours. :) Likewise, let me know if I can help.
Sure, mate.
Change:
<del> // +build !windows /* Copyright 2018 The Kubernetes Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. */ package util import ( "os" "os/exec" "path/filepath" "strings" "testing" ) // Can't just call Chroot() because it will affect other tests in the // same process.  Golang makes it hard to just call fork(), so instead // we exec ourselves again, and run the test in the new subprocess. func testChrootReal(t *testing.T) { testfile := filepath.FromSlash("/" + filepath.Base(os.Args[0])) dir := filepath.Dir(os.Args[0]) if dir == "." { t.Skip("skipping: running test at root somehow") } if err := Chroot(dir); err != nil { if strings.Contains(err.Error(), "operation not permitted") { t.Skip("skipping: insufficient permissions to chroot") } t.Fatalf("chroot error: %v", err) } // All file access should now be relative to `dir` if _, err := os.Stat(testfile); err != nil { t.Errorf("Expected file %q to exist, but got %v", testfile, err) } } func TestChroot(t *testing.T) { if os.Getenv("GO_TEST_CHROOT_FOR_REALZ") == "1" { testChrootReal(t) return } cmd := exec.Command(os.Args[0], "-test.v", "-test.run=TestChroot") cmd.Env = []string{"GO_TEST_CHROOT_FOR_REALZ=1"} out, err := cmd.Output() t.Logf("subprocess output:n%s", out) if err != nil { t.Errorf("subprocess error: %v", err) } } </del>

Discussion:
<!-- Please only use this template for submitting reports about failing tests in Kubernetes CI jobs --Which jobs are failing: Which test(s) are failing: () Since when has it been failing: Failing 4/27. Testgrid link: Reason for failure: /kind failing-test /priority critical-urgent /milestone v1.15 /sig cluster-lifecycle /cc
cc
testing locally
PR sent: feel free to LGTM.
Thank you very much and for jumping on this so quickly
Change:
glog.V(2).Infof("Deleted obsolete listener: %s", listener.ID) } <del> status := &v1.LoadBalancerStatus{} status.Ingress = []v1.LoadBalancerIngress{{IP: loadbalancer.VipAddress}} </del> portID := loadbalancer.VipPortID floatIP, err := getFloatingIPByPortID(lbaas.network, portID) if err != nil && err != ErrNotFound {

Discussion:
When creating a service passing the annotation , two IPs are created in the service, a private and a public: Having a private IP is not a desired scenario for service discovery in federated global environments. If we have, for example, a cluster in GKE and join a local OpenStack cluster, this private IP is written in the DNS zone but the GKE cluster won't be able to access it. We could add an annotation to say we don't want the private IP to be registered in service's LoadBalancer Ingress field, like: or And when it's false, only the public IP would be written in the service, therefore in the DNS zone /kind feature
There are no sig labels on this issue. Please by: a sig: e.g., to notify the contributor experience sig, OR the label manually: e.g., to apply the label Note: Method 1 will trigger an email to the group. You can find the group list and label list . The in the method 1 has to be replaced with one of these: bugs, feature-requests, pr-reviews, test-failures, proposals
/sig openstack /sig federation
'' sounds better.
I don't like adding annotations just to make things work. I counter-propose just not publishing the private IP whenever there is also a floating-ip (without a configuration option to control this behaviour).
Change:
dnsImage := GetGenericArchImage(cfg.ImageRepository, "k8s-dns-kube-dns", constants.KubeDNSVersion) if features.Enabled(cfg.FeatureGates, features.CoreDNS) { <del> dnsImage = GetGenericArchImage(cfg.ImageRepository, "coredns", constants.CoreDNSVersion) </del> <ins> dnsImage = fmt.Sprintf("%s/%s:%s", cfg.ImageRepository, constants.CoreDNS, constants.CoreDNSVersion) </ins> } imgs = append(imgs, dnsImage) return imgs

Discussion:
Is this a BUG REPORT or FEATURE REQUEST?: What happened: The output of my kubeadm: When I pull the image with docker pull, I get such output: But other images are successfully pulled as we can see from previous log. Why?
/sig cluster-lifecycle cc
Ugh can you fix this please? I missed this in the PR that just got merged, should be without the arch suffix as this is a manifest list
Getting on with this ASAP.
fyi ,
Change:
import ( "fmt" <ins> "sync" </ins> "testing" "github.com/coreos/go-etcd/etcd"

Discussion:
Detected by
Create a Pod as follows: Name: jenkins Using image: jenkins In a new Kubenetes namespace named website-frontend kubectl create ns website-frontend apiVersion: v1 kind: Pod metadata: name: jenkins namespace: website-frontend spec: containers: name: jenkins image: jenkins kubectl create -f
Change:
- name: kube-addon-manager # When updating version also bump it in cluster/images/hyperkube/static-pods/addon-manager.json image: gcr.io/google-containers/kube-addon-manager:v5.2 <ins> command: - /bin/bash - -c - /opt/kube-addons.sh 1>>/var/log/kube-addon-manager.log 2>&1 </ins> resources: requests: cpu: 5m

Discussion:
Addon Manager was broken a few times recently by some indirect-related changes(like ) made in the code base. Addon Manager's logs would be very helpful for narrowing down the problem. And I don't think there is an obvious way to retrieve Addon Manager's logs for Jenkins tests currently. This can be achieved in the same way as what we did for the components like and (mounting /var/log). I will try it through this way for addon manager. cc
Change:
k.BirthCry() go kubelet.GarbageCollectLoop(k) <del> go kubelet.MonitorCAdvisor(k) </del> <ins> go kubelet.MonitorCAdvisor(k, kc.CAdvisorPort) </ins> kubelet.InitHealthChecking(k) return k

Discussion:
Currently, kubelet uses a for communicating with cAdvisor. , were having an issue because we didn't realize making port available was required for kubernetes.
I prefer not do this since we plan to make 4194 publically reserved port for cAdvisor. Also cAdvisor is the default deamon running on every node of a kubernetes cluster. The issue you encountered sounds like a bad document issue we had for cAdvisor. We should fix the document instead of allow the port being configurable.
can you expound on 'bad document' issue?
Change:
"k8s.io/apimachinery/pkg/types" utilsets "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apiserver/pkg/audit" <ins> "k8s.io/apiserver/pkg/authentication/user" </ins> "k8s.io/apiserver/pkg/endpoints/request" "k8s.io/apiserver/pkg/features" utilfeature "k8s.io/apiserver/pkg/util/feature"

Discussion:
Currently we don't have an easy way of determining what number of requests are apiserver self-requests. This has historically bitten us, since we used to have a 50(?) QPS limit on apiserver self-requests (which thus has been removed). Even so, it would be a good idea to know this generally, since this may be helpful in pinpointing performance regressions for apiserver. /sig api-machinery instrumentation
Can this issue be considered a newbie one? I'm hunting for issues which might be a good first PR.
In the triage meeting was mentioned that would be good to have similar issues to track other well known actors like controller-manager and kubelet. But let's keep this one for api-server calling itself to have it done. /cc
/cc
Change:
"//pkg/apis/core/validation:go_default_library", "//pkg/kubelet/types:go_default_library", "//pkg/securitycontext:go_default_library", <ins> "//vendor/github.com/stretchr/testify/assert:go_default_library", </ins> "//vendor/k8s.io/api/core/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",

Discussion:
<!-- This form is for bug reports and feature requests ONLY! If you're looking for help check and the . --Is this a BUG REPORT or FEATURE REQUEST?: What happened: I created a static pod for etcd as following with vsphere as cloud provider: But the hostname is using upper name, and when kubelet start the etcd static pod, it will report error as follows: I think that the vsphere should not return upper case hostname, but only lower case hostname. What you expected to happen: How to reproduce it (as minimally and precisely as possible): Anything else we need to know?: Environment: Kubernetes version (use ): Cloud provider or hardware configuration: OS (e.g. from /etc/os-release): Kernel (e.g. ): Install tools: Others:
/area cloudprovider
Here is a quick
/sig node
Change:
| xargs -n1 dirname                                              | LC_ALL=C sort -u                                               ) CONVERSION_FILES := $(addsuffix /$(CONVERSION_FILENAME), $(CONVERSION_DIRS)) <del> CONVERSION_EXTRA_PEER_DIRS := k8s.io/kubernetes/pkg/apis/core,k8s.io/kubernetes/pkg/apis/core/v1,k8s.io/api/core/v1 </del> <ins> CONVERSION_EXTRA_PEER_PKGS :=  k8s.io/kubernetes/pkg/apis/core  k8s.io/kubernetes/pkg/apis/core/v1  k8s.io/api/core/v1 CONVERSION_EXTRA_PKGS := $(addprefix $(PRJ_SRC_PATH)/, $(CONVERSION_DIRS)) </ins> # Reset the list of packages that need generation. $(shell mkdir -p $$(dirname $(META_DIR)/$(CONVERSION_GEN)))

Discussion:
In the codegenerator we have: So basically we process only packages that are explicitly requested by the user and ignore ones that are imported. So in order to have the conversion func imported by the generator, the package where it lives has to be explicitly imported. So we should basically always pass all input packages to conversion generator. This is problematic, when regenerating conversions, we simply pass to input directories only those that were changed in the meantime: We should fix that - probably by passing all CONVERSIONDIRS as inputs to conversion-gen /kind-bug
I think this caused Not sure if was related yet.
It's the other way around - this is the main bug and root cause and the other that you linked is a consequence.
Also - FYI
I actually already started looking into it - so let me assign this.
is out for review
/triage accepted